qopenglfunctions_2_1.sip 109 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920
  1. // qopenglfunctions_2_1.sip generated by MetaSIP
  2. //
  3. // This file is part of the QtOpenGL Python extension module.
  4. //
  5. // Copyright (c) 2026 Riverbank Computing Limited <info@riverbankcomputing.com>
  6. //
  7. // This file is part of PyQt6.
  8. //
  9. // This file may be used under the terms of the GNU General Public License
  10. // version 3.0 as published by the Free Software Foundation and appearing in
  11. // the file LICENSE included in the packaging of this file. Please review the
  12. // following information to ensure the GNU General Public License version 3.0
  13. // requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  14. //
  15. // If you do not wish to use this file under the terms of the GPL version 3.0
  16. // then you may purchase a commercial license. For more information contact
  17. // info@riverbankcomputing.com.
  18. //
  19. // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  20. // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  21. %If (!PyQt_OpenGL_ES2)
  22. class QOpenGLFunctions_2_1 : public QAbstractOpenGLFunctions
  23. {
  24. %TypeHeaderCode
  25. #include <qopenglfunctions_2_1.h>
  26. %End
  27. public:
  28. QOpenGLFunctions_2_1();
  29. virtual ~QOpenGLFunctions_2_1();
  30. virtual bool initializeOpenGLFunctions();
  31. void glViewport(GLint x, GLint y, GLsizei width, GLsizei height);
  32. void glDepthRange(GLdouble nearVal, GLdouble farVal);
  33. GLboolean glIsEnabled(GLenum cap);
  34. void glGetTexLevelParameteriv(GLenum target, GLint level, GLenum pname, SIP_PYOBJECT *params /TypeHint="int"/);
  35. %MethodCode
  36. GLint params[1];
  37. sipCpp->glGetTexLevelParameteriv(a0, a1, a2, params);
  38. a3 = qpyopengl_from_GLint(&sipIsErr, params, 1);
  39. %End
  40. void glGetTexLevelParameterfv(GLenum target, GLint level, GLenum pname, SIP_PYOBJECT *params /TypeHint="float"/);
  41. %MethodCode
  42. GLfloat params[1];
  43. sipCpp->glGetTexLevelParameterfv(a0, a1, a2, params);
  44. a3 = qpyopengl_from_GLfloat(&sipIsErr, params, 1);
  45. %End
  46. void glGetTexParameteriv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int, int]]"/);
  47. %MethodCode
  48. GLint params[4];
  49. Py_ssize_t nr_params;
  50. switch (a1)
  51. {
  52. #if defined(GL_TEXTURE_SWIZZLE_RGBA) || defined(GL_TEXTURE_BORDER_COLOR)
  53. #if defined(GL_TEXTURE_SWIZZLE_RGBA)
  54. case GL_TEXTURE_SWIZZLE_RGBA:
  55. #endif
  56. #if defined(GL_TEXTURE_BORDER_COLOR)
  57. case GL_TEXTURE_BORDER_COLOR:
  58. #endif
  59. nr_params = 4;
  60. break;
  61. #endif
  62. default:
  63. nr_params = 1;
  64. }
  65. sipCpp->glGetTexParameteriv(a0, a1, params);
  66. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  67. %End
  68. void glGetTexParameterfv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  69. %MethodCode
  70. GLfloat params[4];
  71. Py_ssize_t nr_params;
  72. switch (a1)
  73. {
  74. #if defined(GL_TEXTURE_SWIZZLE_RGBA) || defined(GL_TEXTURE_BORDER_COLOR)
  75. #if defined(GL_TEXTURE_SWIZZLE_RGBA)
  76. case GL_TEXTURE_SWIZZLE_RGBA:
  77. #endif
  78. #if defined(GL_TEXTURE_BORDER_COLOR)
  79. case GL_TEXTURE_BORDER_COLOR:
  80. #endif
  81. nr_params = 4;
  82. break;
  83. #endif
  84. default:
  85. nr_params = 1;
  86. }
  87. sipCpp->glGetTexParameterfv(a0, a1, params);
  88. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  89. %End
  90. const char *glGetString(GLenum name);
  91. %MethodCode
  92. sipRes = reinterpret_cast<const char *>(sipCpp->glGetString(a0));
  93. %End
  94. void glGetIntegerv(GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, ...]]"/);
  95. %MethodCode
  96. GLint fixed_params[16], *params;
  97. GLint nr_params;
  98. GLenum query;
  99. nr_params = qpyopengl_get(a0, &query);
  100. if (nr_params == 0)
  101. {
  102. sipCpp->glGetIntegerv(query, &nr_params);
  103. params = new GLint[nr_params];
  104. }
  105. else
  106. {
  107. params = fixed_params;
  108. }
  109. sipCpp->glGetIntegerv(a0, params);
  110. a1 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  111. if (params != fixed_params)
  112. delete[] params;
  113. %End
  114. void glGetFloatv(GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, ...]]"/);
  115. %MethodCode
  116. GLfloat fixed_params[16], *params;
  117. GLint nr_params;
  118. GLenum query;
  119. nr_params = qpyopengl_get(a0, &query);
  120. if (nr_params == 0)
  121. {
  122. sipCpp->glGetIntegerv(query, &nr_params);
  123. params = new GLfloat[nr_params];
  124. }
  125. else
  126. {
  127. params = fixed_params;
  128. }
  129. sipCpp->glGetFloatv(a0, params);
  130. a1 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  131. if (params != fixed_params)
  132. delete[] params;
  133. %End
  134. GLenum glGetError();
  135. void glGetDoublev(GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, ...]]"/);
  136. %MethodCode
  137. GLdouble fixed_params[16], *params;
  138. GLint nr_params;
  139. GLenum query;
  140. nr_params = qpyopengl_get(a0, &query);
  141. if (nr_params == 0)
  142. {
  143. sipCpp->glGetIntegerv(query, &nr_params);
  144. params = new GLdouble[nr_params];
  145. }
  146. else
  147. {
  148. params = fixed_params;
  149. }
  150. sipCpp->glGetDoublev(a0, params);
  151. a1 = qpyopengl_from_GLdouble(&sipIsErr, params, nr_params);
  152. if (params != fixed_params)
  153. delete[] params;
  154. %End
  155. void glGetBooleanv(GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[bool, Tuple[bool, ...]]"/);
  156. %MethodCode
  157. GLboolean fixed_params[16], *params;
  158. GLint nr_params;
  159. GLenum query;
  160. nr_params = qpyopengl_get(a0, &query);
  161. if (nr_params == 0)
  162. {
  163. sipCpp->glGetIntegerv(query, &nr_params);
  164. params = new GLboolean[nr_params];
  165. }
  166. else
  167. {
  168. params = fixed_params;
  169. }
  170. sipCpp->glGetBooleanv(a0, params);
  171. a1 = qpyopengl_from_GLboolean(&sipIsErr, params, nr_params);
  172. if (params != fixed_params)
  173. delete[] params;
  174. %End
  175. SIP_PYOBJECT glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type) /TypeHint="Union[Tuple[float, ...], Tuple[int, ...]]"/;
  176. %MethodCode
  177. int components;
  178. switch (a4)
  179. {
  180. case GL_BGR:
  181. case GL_RGB:
  182. {
  183. components = 3;
  184. break;
  185. }
  186. case GL_BGRA:
  187. case GL_RGBA:
  188. {
  189. components = 4;
  190. break;
  191. }
  192. case GL_RED:
  193. case GL_GREEN:
  194. case GL_BLUE:
  195. case GL_ALPHA:
  196. case GL_DEPTH_COMPONENT:
  197. case GL_STENCIL_INDEX:
  198. case GL_DEPTH_STENCIL:
  199. {
  200. components = 1;
  201. break;
  202. }
  203. default:
  204. components = 0;
  205. }
  206. Py_ssize_t length = components * a2 * a3;
  207. switch (a5)
  208. {
  209. case GL_FLOAT:
  210. {
  211. GLfloat *data = new GLfloat[length];
  212. sipCpp->glReadPixels(a0, a1, a2, a3, a4, a5, data);
  213. sipRes = qpyopengl_from_GLfloat(&sipIsErr, data, length);
  214. delete [] data;
  215. break;
  216. }
  217. case GL_INT:
  218. {
  219. GLint *data = new GLint[length];
  220. sipCpp->glReadPixels(a0, a1, a2, a3, a4, a5, data);
  221. sipRes = qpyopengl_from_GLint(&sipIsErr, data, length);
  222. delete [] data;
  223. break;
  224. }
  225. case GL_UNSIGNED_INT:
  226. case GL_UNSIGNED_INT_8_8_8_8:
  227. case GL_UNSIGNED_INT_8_8_8_8_REV:
  228. case GL_UNSIGNED_INT_10_10_10_2:
  229. case GL_UNSIGNED_INT_2_10_10_10_REV:
  230. case GL_UNSIGNED_INT_24_8:
  231. case GL_UNSIGNED_INT_10F_11F_11F_REV:
  232. case GL_UNSIGNED_INT_5_9_9_9_REV:
  233. {
  234. GLuint *data = new GLuint[length];
  235. sipCpp->glReadPixels(a0, a1, a2, a3, a4, a5, data);
  236. sipRes = qpyopengl_from_GLuint(&sipIsErr, data, length);
  237. delete [] data;
  238. break;
  239. }
  240. case GL_SHORT:
  241. case GL_UNSIGNED_SHORT:
  242. case GL_UNSIGNED_SHORT_5_6_5:
  243. case GL_UNSIGNED_SHORT_5_6_5_REV:
  244. case GL_UNSIGNED_SHORT_4_4_4_4:
  245. case GL_UNSIGNED_SHORT_4_4_4_4_REV:
  246. case GL_UNSIGNED_SHORT_5_5_5_1:
  247. case GL_UNSIGNED_SHORT_1_5_5_5_REV:
  248. case GL_BYTE:
  249. case GL_UNSIGNED_BYTE:
  250. case GL_UNSIGNED_BYTE_3_3_2:
  251. case GL_UNSIGNED_BYTE_2_3_3_REV:
  252. case GL_HALF_FLOAT:
  253. case GL_FLOAT_32_UNSIGNED_INT_24_8_REV:
  254. default:
  255. sipIsErr = 1;
  256. PyErr_SetString(PyExc_ValueError, "pixel data format not supported");
  257. }
  258. %End
  259. void glReadBuffer(GLenum mode);
  260. void glPixelStorei(GLenum pname, GLint param);
  261. void glPixelStoref(GLenum pname, GLfloat param);
  262. void glDepthFunc(GLenum func);
  263. void glStencilOp(GLenum fail, GLenum zfail, GLenum zpass);
  264. void glStencilFunc(GLenum func, GLint ref, GLuint mask);
  265. void glLogicOp(GLenum opcode);
  266. void glBlendFunc(GLenum sfactor, GLenum dfactor);
  267. void glFlush();
  268. void glFinish();
  269. void glEnable(GLenum cap);
  270. void glDisable(GLenum cap);
  271. void glDepthMask(GLboolean flag);
  272. void glColorMask(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
  273. void glStencilMask(GLuint mask);
  274. void glClearDepth(GLdouble depth);
  275. void glClearStencil(GLint s);
  276. void glClearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  277. void glClear(GLbitfield mask);
  278. void glDrawBuffer(GLenum mode);
  279. void glTexImage2D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  280. %MethodCode
  281. const GLvoid *array = qpyopengl_value_array(&sipError, a8, a7, sipSelf);
  282. if (sipError == sipErrorNone)
  283. sipCpp->glTexImage2D(a0, a1, a2, a3, a4, a5, a6, a7, array);
  284. %End
  285. void glTexImage1D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  286. %MethodCode
  287. const GLvoid *array = qpyopengl_value_array(&sipError, a7, a6, sipSelf);
  288. if (sipError == sipErrorNone)
  289. sipCpp->glTexImage1D(a0, a1, a2, a3, a4, a5, a6, array);
  290. %End
  291. void glTexParameteriv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  292. %MethodCode
  293. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  294. if (sipError == sipErrorNone)
  295. sipCpp->glTexParameteriv(a0, a1, reinterpret_cast<const GLint *>(array));
  296. %End
  297. void glTexParameteri(GLenum target, GLenum pname, GLint param);
  298. void glTexParameterfv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  299. %MethodCode
  300. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  301. if (sipError == sipErrorNone)
  302. sipCpp->glTexParameterfv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  303. %End
  304. void glTexParameterf(GLenum target, GLenum pname, GLfloat param);
  305. void glScissor(GLint x, GLint y, GLsizei width, GLsizei height);
  306. void glPolygonMode(GLenum face, GLenum mode);
  307. void glPointSize(GLfloat size);
  308. void glLineWidth(GLfloat width);
  309. void glHint(GLenum target, GLenum mode);
  310. void glFrontFace(GLenum mode);
  311. void glCullFace(GLenum mode);
  312. void glIndexubv(SIP_PYOBJECT c /TypeHint="PYQT_OPENGL_ARRAY"/);
  313. %MethodCode
  314. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_BYTE,
  315. sipSelf);
  316. if (sipError == sipErrorNone)
  317. sipCpp->glIndexubv(reinterpret_cast<const GLubyte *>(array));
  318. %End
  319. void glIndexub(GLubyte c);
  320. GLboolean glIsTexture(GLuint texture);
  321. void glGenTextures(GLsizei n, SIP_PYOBJECT *textures /TypeHint="Union[int, Tuple[int, ...]]"/);
  322. %MethodCode
  323. GLuint *params = new GLuint[a0];
  324. sipCpp->glGenTextures(a0, params);
  325. a1 = qpyopengl_from_GLuint(&sipIsErr, params, a0);
  326. delete[] params;
  327. %End
  328. void glDeleteTextures(GLsizei n, SIP_PYOBJECT textures /TypeHint="PYQT_OPENGL_ARRAY"/);
  329. %MethodCode
  330. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_INT,
  331. sipSelf);
  332. if (sipError == sipErrorNone)
  333. sipCpp->glDeleteTextures(a0, reinterpret_cast<const GLuint *>(array));
  334. %End
  335. void glBindTexture(GLenum target, GLuint texture);
  336. void glTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  337. %MethodCode
  338. const GLvoid *array = qpyopengl_value_array(&sipError, a8, a7, sipSelf);
  339. if (sipError == sipErrorNone)
  340. sipCpp->glTexSubImage2D(a0, a1, a2, a3, a4, a5, a6, a7, array);
  341. %End
  342. void glTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  343. %MethodCode
  344. const GLvoid *array = qpyopengl_value_array(&sipError, a6, a5, sipSelf);
  345. if (sipError == sipErrorNone)
  346. sipCpp->glTexSubImage1D(a0, a1, a2, a3, a4, a5, array);
  347. %End
  348. void glCopyTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  349. void glCopyTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
  350. void glCopyTexImage2D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
  351. void glCopyTexImage1D(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border);
  352. void glPolygonOffset(GLfloat factor, GLfloat units);
  353. void glDrawElements(GLenum mode, GLsizei count, GLenum type, SIP_PYOBJECT indices /TypeHint="PYQT_OPENGL_ARRAY"/);
  354. %MethodCode
  355. const GLvoid *array = qpyopengl_value_array(&sipError, a3, a2, sipSelf);
  356. if (sipError == sipErrorNone)
  357. sipCpp->glDrawElements(a0, a1, a2, array);
  358. %End
  359. void glDrawArrays(GLenum mode, GLint first, GLsizei count);
  360. void glCopyTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  361. void glTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  362. %MethodCode
  363. const GLvoid *array = qpyopengl_value_array(&sipError, a10, a9, sipSelf);
  364. if (sipError == sipErrorNone)
  365. sipCpp->glTexSubImage3D(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, array);
  366. %End
  367. void glTexImage3D(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  368. %MethodCode
  369. const GLvoid *array = qpyopengl_value_array(&sipError, a9, a8, sipSelf);
  370. if (sipError == sipErrorNone)
  371. sipCpp->glTexImage3D(a0, a1, a2, a3, a4, a5, a6, a7, a8, array);
  372. %End
  373. void glDrawRangeElements(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, SIP_PYOBJECT indices /TypeHint="PYQT_OPENGL_ARRAY"/);
  374. %MethodCode
  375. const GLvoid *array = qpyopengl_value_array(&sipError, a5, a4, sipSelf);
  376. if (sipError == sipErrorNone)
  377. sipCpp->glDrawRangeElements(a0, a1, a2, a3, a4, array);
  378. %End
  379. void glBlendEquation(GLenum mode);
  380. void glBlendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  381. void glCompressedTexSubImage1D(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  382. %MethodCode
  383. const GLvoid *array = qpyopengl_value_array(&sipError, a6, GL_UNSIGNED_BYTE,
  384. sipSelf);
  385. if (sipError == sipErrorNone)
  386. sipCpp->glCompressedTexSubImage1D(a0, a1, a2, a3, a4, a5, array);
  387. %End
  388. void glCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  389. %MethodCode
  390. const GLvoid *array = qpyopengl_value_array(&sipError, a8, GL_UNSIGNED_BYTE,
  391. sipSelf);
  392. if (sipError == sipErrorNone)
  393. sipCpp->glCompressedTexSubImage2D(a0, a1, a2, a3, a4, a5, a6, a7, array);
  394. %End
  395. void glCompressedTexSubImage3D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  396. %MethodCode
  397. const GLvoid *array = qpyopengl_value_array(&sipError, a10, GL_UNSIGNED_BYTE,
  398. sipSelf);
  399. if (sipError == sipErrorNone)
  400. sipCpp->glCompressedTexSubImage3D(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,
  401. array);
  402. %End
  403. void glCompressedTexImage1D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  404. %MethodCode
  405. const GLvoid *array = qpyopengl_value_array(&sipError, a6, GL_UNSIGNED_BYTE,
  406. sipSelf);
  407. if (sipError == sipErrorNone)
  408. sipCpp->glCompressedTexImage1D(a0, a1, a2, a3, a4, a5, array);
  409. %End
  410. void glCompressedTexImage2D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  411. %MethodCode
  412. const GLvoid *array = qpyopengl_value_array(&sipError, a7, GL_UNSIGNED_BYTE,
  413. sipSelf);
  414. if (sipError == sipErrorNone)
  415. sipCpp->glCompressedTexImage2D(a0, a1, a2, a3, a4, a5, a6, array);
  416. %End
  417. void glCompressedTexImage3D(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  418. %MethodCode
  419. const GLvoid *array = qpyopengl_value_array(&sipError, a8, GL_UNSIGNED_BYTE,
  420. sipSelf);
  421. if (sipError == sipErrorNone)
  422. sipCpp->glCompressedTexImage3D(a0, a1, a2, a3, a4, a5, a6, a7, array);
  423. %End
  424. void glSampleCoverage(GLfloat value, GLboolean invert);
  425. void glActiveTexture(GLenum texture);
  426. void glPointParameteriv(GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  427. %MethodCode
  428. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  429. if (sipError == sipErrorNone)
  430. sipCpp->glPointParameteriv(a0, reinterpret_cast<const GLint *>(array));
  431. %End
  432. void glPointParameteri(GLenum pname, GLint param);
  433. void glPointParameterfv(GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  434. %MethodCode
  435. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  436. if (sipError == sipErrorNone)
  437. sipCpp->glPointParameterfv(a0, reinterpret_cast<const GLfloat *>(array));
  438. %End
  439. void glPointParameterf(GLenum pname, GLfloat param);
  440. void glBlendFuncSeparate(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
  441. void glGetBufferParameteriv(GLenum target, GLenum pname, GLint *params);
  442. GLboolean glUnmapBuffer(GLenum target);
  443. void glBufferSubData(GLenum target, GLintptr offset, GLsizeiptr size, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  444. %MethodCode
  445. const GLvoid *array;
  446. if (a3 == Py_None)
  447. array = 0;
  448. else
  449. array = qpyopengl_value_array(&sipError, a3, GL_UNSIGNED_BYTE, sipSelf);
  450. if (sipError == sipErrorNone)
  451. sipCpp->glBufferSubData(a0, a1, a2, array);
  452. %End
  453. void glBufferData(GLenum target, GLsizeiptr size, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/, GLenum usage);
  454. %MethodCode
  455. const GLvoid *array;
  456. if (a2 == Py_None)
  457. array = 0;
  458. else
  459. array = qpyopengl_value_array(&sipError, a2, GL_UNSIGNED_BYTE, sipSelf);
  460. if (sipError == sipErrorNone)
  461. sipCpp->glBufferData(a0, a1, array, a3);
  462. %End
  463. GLboolean glIsBuffer(GLuint buffer);
  464. void glGenBuffers(GLsizei n, SIP_PYOBJECT *buffers /TypeHint="Union[int, Tuple[int, ...]]"/);
  465. %MethodCode
  466. GLuint *params = new GLuint[a0];
  467. sipCpp->glGenBuffers(a0, params);
  468. a1 = qpyopengl_from_GLuint(&sipIsErr, params, a0);
  469. delete[] params;
  470. %End
  471. void glDeleteBuffers(GLsizei n, SIP_PYOBJECT buffers /TypeHint="PYQT_OPENGL_ARRAY"/);
  472. %MethodCode
  473. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_INT,
  474. sipSelf);
  475. if (sipError == sipErrorNone)
  476. sipCpp->glDeleteBuffers(a0, reinterpret_cast<const GLuint *>(array));
  477. %End
  478. void glBindBuffer(GLenum target, GLuint buffer);
  479. void glGetQueryiv(GLenum target, GLenum pname, GLint *params);
  480. void glEndQuery(GLenum target);
  481. void glBeginQuery(GLenum target, GLuint id);
  482. GLboolean glIsQuery(GLuint id);
  483. void glDeleteQueries(GLsizei n, SIP_PYOBJECT ids /TypeHint="PYQT_OPENGL_ARRAY"/);
  484. %MethodCode
  485. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_INT,
  486. sipSelf);
  487. if (sipError == sipErrorNone)
  488. sipCpp->glDeleteQueries(a0, reinterpret_cast<const GLuint *>(array));
  489. %End
  490. void glGenQueries(GLsizei n, SIP_PYOBJECT *ids /TypeHint="Union[int, Tuple[int, ...]]"/);
  491. %MethodCode
  492. GLuint *params = new GLuint[a0];
  493. sipCpp->glGenQueries(a0, params);
  494. a1 = qpyopengl_from_GLuint(&sipIsErr, params, a0);
  495. delete[] params;
  496. %End
  497. void glVertexAttribPointer(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  498. %MethodCode
  499. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a5, a2, sipSelf,
  500. "VertexAttribPointer", a0);
  501. if (sipError == sipErrorNone)
  502. sipCpp->glVertexAttribPointer(a0, a1, a2, a3, a4, array);
  503. %End
  504. void glValidateProgram(GLuint program);
  505. void glUniformMatrix4fv(GLint location, GLsizei count, GLboolean transpose, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  506. %MethodCode
  507. const GLvoid *array = qpyopengl_value_array(&sipError, a3, GL_FLOAT, sipSelf);
  508. if (sipError == sipErrorNone)
  509. sipCpp->glUniformMatrix4fv(a0, a1, a2,
  510. reinterpret_cast<const GLfloat *>(array));
  511. %End
  512. void glUniformMatrix3fv(GLint location, GLsizei count, GLboolean transpose, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  513. %MethodCode
  514. const GLvoid *array = qpyopengl_value_array(&sipError, a3, GL_FLOAT, sipSelf);
  515. if (sipError == sipErrorNone)
  516. sipCpp->glUniformMatrix3fv(a0, a1, a2,
  517. reinterpret_cast<const GLfloat *>(array));
  518. %End
  519. void glUniformMatrix2fv(GLint location, GLsizei count, GLboolean transpose, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  520. %MethodCode
  521. const GLvoid *array = qpyopengl_value_array(&sipError, a3, GL_FLOAT, sipSelf);
  522. if (sipError == sipErrorNone)
  523. sipCpp->glUniformMatrix2fv(a0, a1, a2,
  524. reinterpret_cast<const GLfloat *>(array));
  525. %End
  526. void glUniform4iv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  527. %MethodCode
  528. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  529. if (sipError == sipErrorNone)
  530. sipCpp->glUniform4iv(a0, a1, reinterpret_cast<const GLint *>(array));
  531. %End
  532. void glUniform3iv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  533. %MethodCode
  534. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  535. if (sipError == sipErrorNone)
  536. sipCpp->glUniform3iv(a0, a1, reinterpret_cast<const GLint *>(array));
  537. %End
  538. void glUniform2iv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  539. %MethodCode
  540. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  541. if (sipError == sipErrorNone)
  542. sipCpp->glUniform2iv(a0, a1, reinterpret_cast<const GLint *>(array));
  543. %End
  544. void glUniform1iv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  545. %MethodCode
  546. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  547. if (sipError == sipErrorNone)
  548. sipCpp->glUniform1iv(a0, a1, reinterpret_cast<const GLint *>(array));
  549. %End
  550. void glUniform4fv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  551. %MethodCode
  552. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  553. if (sipError == sipErrorNone)
  554. sipCpp->glUniform4fv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  555. %End
  556. void glUniform3fv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  557. %MethodCode
  558. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  559. if (sipError == sipErrorNone)
  560. sipCpp->glUniform3fv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  561. %End
  562. void glUniform2fv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  563. %MethodCode
  564. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  565. if (sipError == sipErrorNone)
  566. sipCpp->glUniform2fv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  567. %End
  568. void glUniform1fv(GLint location, GLsizei count, SIP_PYOBJECT value /TypeHint="PYQT_OPENGL_ARRAY"/);
  569. %MethodCode
  570. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  571. if (sipError == sipErrorNone)
  572. sipCpp->glUniform1fv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  573. %End
  574. void glUniform4i(GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
  575. void glUniform3i(GLint location, GLint v0, GLint v1, GLint v2);
  576. void glUniform2i(GLint location, GLint v0, GLint v1);
  577. void glUniform1i(GLint location, GLint v0);
  578. void glUniform4f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
  579. void glUniform3f(GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
  580. void glUniform2f(GLint location, GLfloat v0, GLfloat v1);
  581. void glUniform1f(GLint location, GLfloat v0);
  582. void glUseProgram(GLuint program);
  583. void glLinkProgram(GLuint program);
  584. GLboolean glIsShader(GLuint shader);
  585. GLboolean glIsProgram(GLuint program);
  586. void glGetVertexAttribiv(GLuint index, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int, int]]"/);
  587. %MethodCode
  588. GLint params[4];
  589. Py_ssize_t nr_params;
  590. switch (a1)
  591. {
  592. case GL_CURRENT_VERTEX_ATTRIB:
  593. nr_params = 4;
  594. break;
  595. default:
  596. nr_params = 1;
  597. }
  598. sipCpp->glGetVertexAttribiv(a0, a1, params);
  599. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  600. %End
  601. void glGetVertexAttribfv(GLuint index, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  602. %MethodCode
  603. GLfloat params[4];
  604. Py_ssize_t nr_params;
  605. switch (a1)
  606. {
  607. case GL_CURRENT_VERTEX_ATTRIB:
  608. nr_params = 4;
  609. break;
  610. default:
  611. nr_params = 1;
  612. }
  613. sipCpp->glGetVertexAttribfv(a0, a1, params);
  614. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  615. %End
  616. void glGetVertexAttribdv(GLuint index, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  617. %MethodCode
  618. GLdouble params[4];
  619. Py_ssize_t nr_params;
  620. switch (a1)
  621. {
  622. case GL_CURRENT_VERTEX_ATTRIB:
  623. nr_params = 4;
  624. break;
  625. default:
  626. nr_params = 1;
  627. }
  628. sipCpp->glGetVertexAttribdv(a0, a1, params);
  629. a2 = qpyopengl_from_GLdouble(&sipIsErr, params, nr_params);
  630. %End
  631. GLint glGetUniformLocation(GLuint program, const GLchar *name);
  632. SIP_PYOBJECT glGetShaderSource(GLuint shader) /TypeHint="bytes"/;
  633. %MethodCode
  634. GLint bufsize;
  635. sipCpp->glGetShaderiv(a0, GL_SHADER_SOURCE_LENGTH, &bufsize);
  636. if (bufsize > 0)
  637. {
  638. GLchar *source = new GLchar[bufsize];
  639. sipCpp->glGetShaderSource(a0, bufsize, 0, source);
  640. sipRes = PyBytes_FromString(source);
  641. delete[] source;
  642. }
  643. else
  644. {
  645. sipRes = PyBytes_FromString("");
  646. }
  647. %End
  648. SIP_PYOBJECT glGetShaderInfoLog(GLuint shader) /TypeHint="bytes"/;
  649. %MethodCode
  650. GLint bufsize;
  651. sipCpp->glGetShaderiv(a0, GL_INFO_LOG_LENGTH, &bufsize);
  652. if (bufsize > 0)
  653. {
  654. GLchar *log = new GLchar[bufsize];
  655. sipCpp->glGetShaderInfoLog(a0, bufsize, 0, log);
  656. sipRes = PyBytes_FromString(log);
  657. delete[] log;
  658. }
  659. else
  660. {
  661. sipRes = PyBytes_FromString("");
  662. }
  663. %End
  664. void glGetShaderiv(GLuint shader, GLenum pname, GLint *params);
  665. SIP_PYOBJECT glGetProgramInfoLog(GLuint program) /TypeHint="bytes"/;
  666. %MethodCode
  667. GLint bufsize;
  668. sipCpp->glGetProgramiv(a0, GL_INFO_LOG_LENGTH, &bufsize);
  669. if (bufsize > 0)
  670. {
  671. GLchar *log = new GLchar[bufsize];
  672. sipCpp->glGetProgramInfoLog(a0, bufsize, 0, log);
  673. sipRes = PyBytes_FromString(log);
  674. delete[] log;
  675. }
  676. else
  677. {
  678. sipRes = PyBytes_FromString("");
  679. }
  680. %End
  681. void glGetProgramiv(GLuint program, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int]]"/);
  682. %MethodCode
  683. GLint params[3];
  684. Py_ssize_t nr_params;
  685. switch (a1)
  686. {
  687. #if defined(GL_COMPUTE_LOCAL_WORK_SIZE)
  688. case GL_COMPUTE_LOCAL_WORK_SIZE:
  689. nr_params = 3;
  690. break;
  691. #endif
  692. default:
  693. nr_params = 1;
  694. }
  695. sipCpp->glGetProgramiv(a0, a1, params);
  696. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  697. %End
  698. GLint glGetAttribLocation(GLuint program, const GLchar *name);
  699. SIP_PYOBJECT glGetAttachedShaders(GLuint program) /TypeHint="Tuple[int, ...]"/;
  700. %MethodCode
  701. GLint nr_shaders;
  702. sipCpp->glGetProgramiv(a0, GL_ATTACHED_SHADERS, &nr_shaders);
  703. if (nr_shaders < 1)
  704. {
  705. sipRes = PyTuple_New(0);
  706. }
  707. else
  708. {
  709. GLuint *shaders = new GLuint[nr_shaders];
  710. sipCpp->glGetAttachedShaders(a0, nr_shaders, 0, shaders);
  711. sipRes = PyTuple_New(nr_shaders);
  712. if (sipRes)
  713. {
  714. for (GLint i = 0; i < nr_shaders; ++i)
  715. {
  716. PyObject *itm = PyLong_FromLong(shaders[i]);
  717. if (!itm)
  718. {
  719. Py_DECREF(sipRes);
  720. sipRes = 0;
  721. break;
  722. }
  723. PyTuple_SetItem(sipRes, i, itm);
  724. }
  725. }
  726. delete[] shaders;
  727. }
  728. if (!sipRes)
  729. sipIsErr = 1;
  730. %End
  731. SIP_PYOBJECT glGetActiveUniform(GLuint program, GLuint index) /TypeHint="Tuple[str, int, int]"/;
  732. %MethodCode
  733. GLint bufsize;
  734. sipCpp->glGetProgramiv(a0, GL_ACTIVE_UNIFORM_MAX_LENGTH, &bufsize);
  735. GLchar *name = new GLchar[bufsize];
  736. GLint size;
  737. GLenum type;
  738. sipCpp->glGetActiveUniform(a0, a1, bufsize, 0, &size, &type, name);
  739. sipRes = Py_BuildValue("siI", name, size, type);
  740. if (!sipRes)
  741. sipIsErr = 1;
  742. delete[] name;
  743. %End
  744. SIP_PYOBJECT glGetActiveAttrib(GLuint program, GLuint index) /TypeHint="Tuple[str, int, int]"/;
  745. %MethodCode
  746. GLint bufsize;
  747. sipCpp->glGetProgramiv(a0, GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, &bufsize);
  748. GLchar *name = new GLchar[bufsize];
  749. GLint size;
  750. GLenum type;
  751. sipCpp->glGetActiveAttrib(a0, a1, bufsize, 0, &size, &type, name);
  752. sipRes = Py_BuildValue("siI", name, size, type);
  753. if (!sipRes)
  754. sipIsErr = 1;
  755. delete[] name;
  756. %End
  757. void glEnableVertexAttribArray(GLuint index);
  758. void glDisableVertexAttribArray(GLuint index);
  759. void glDetachShader(GLuint program, GLuint shader);
  760. void glDeleteShader(GLuint shader);
  761. void glDeleteProgram(GLuint program);
  762. GLuint glCreateShader(GLenum type);
  763. GLuint glCreateProgram();
  764. void glCompileShader(GLuint shader);
  765. void glBindAttribLocation(GLuint program, GLuint index, const GLchar *name);
  766. void glAttachShader(GLuint program, GLuint shader);
  767. void glStencilMaskSeparate(GLenum face, GLuint mask);
  768. void glStencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask);
  769. void glStencilOpSeparate(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
  770. void glDrawBuffers(GLsizei n, SIP_PYOBJECT bufs /TypeHint="PYQT_OPENGL_ARRAY"/);
  771. %MethodCode
  772. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_INT,
  773. sipSelf);
  774. if (sipError == sipErrorNone)
  775. sipCpp->glDrawBuffers(a0, reinterpret_cast<const GLenum *>(array));
  776. %End
  777. void glBlendEquationSeparate(GLenum modeRGB, GLenum modeAlpha);
  778. void glTranslatef(GLfloat x, GLfloat y, GLfloat z);
  779. void glTranslated(GLdouble x, GLdouble y, GLdouble z);
  780. void glScalef(GLfloat x, GLfloat y, GLfloat z);
  781. void glScaled(GLdouble x, GLdouble y, GLdouble z);
  782. void glRotatef(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
  783. void glRotated(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
  784. void glPushMatrix();
  785. void glPopMatrix();
  786. void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
  787. void glMultMatrixd(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  788. %MethodCode
  789. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  790. if (sipError == sipErrorNone)
  791. sipCpp->glMultMatrixd(reinterpret_cast<const GLdouble *>(array));
  792. %End
  793. void glMultMatrixf(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  794. %MethodCode
  795. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  796. if (sipError == sipErrorNone)
  797. sipCpp->glMultMatrixf(reinterpret_cast<const GLfloat *>(array));
  798. %End
  799. void glMatrixMode(GLenum mode);
  800. void glLoadMatrixd(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  801. %MethodCode
  802. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  803. if (sipError == sipErrorNone)
  804. sipCpp->glLoadMatrixd(reinterpret_cast<const GLdouble *>(array));
  805. %End
  806. void glLoadMatrixf(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  807. %MethodCode
  808. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  809. if (sipError == sipErrorNone)
  810. sipCpp->glLoadMatrixf(reinterpret_cast<const GLfloat *>(array));
  811. %End
  812. void glLoadIdentity();
  813. void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
  814. GLboolean glIsList(GLuint list);
  815. void glGetTexGeniv(GLenum coord, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int, int]]"/);
  816. %MethodCode
  817. GLint params[4];
  818. Py_ssize_t nr_params;
  819. switch (a1)
  820. {
  821. case GL_OBJECT_PLANE:
  822. case GL_EYE_PLANE:
  823. nr_params = 4;
  824. break;
  825. default:
  826. nr_params = 1;
  827. }
  828. sipCpp->glGetTexGeniv(a0, a1, params);
  829. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  830. %End
  831. void glGetTexGenfv(GLenum coord, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  832. %MethodCode
  833. GLfloat params[4];
  834. Py_ssize_t nr_params;
  835. switch (a1)
  836. {
  837. case GL_OBJECT_PLANE:
  838. case GL_EYE_PLANE:
  839. nr_params = 4;
  840. break;
  841. default:
  842. nr_params = 1;
  843. }
  844. sipCpp->glGetTexGenfv(a0, a1, params);
  845. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  846. %End
  847. void glGetTexGendv(GLenum coord, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  848. %MethodCode
  849. GLdouble params[4];
  850. Py_ssize_t nr_params;
  851. switch (a1)
  852. {
  853. case GL_OBJECT_PLANE:
  854. case GL_EYE_PLANE:
  855. nr_params = 4;
  856. break;
  857. default:
  858. nr_params = 1;
  859. }
  860. sipCpp->glGetTexGendv(a0, a1, params);
  861. a2 = qpyopengl_from_GLdouble(&sipIsErr, params, nr_params);
  862. %End
  863. void glGetTexEnviv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int, int]]"/);
  864. %MethodCode
  865. GLint params[4];
  866. Py_ssize_t nr_params;
  867. switch (a1)
  868. {
  869. case GL_TEXTURE_ENV_COLOR:
  870. nr_params = 4;
  871. break;
  872. default:
  873. nr_params = 1;
  874. }
  875. sipCpp->glGetTexEnviv(a0, a1, params);
  876. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  877. %End
  878. void glGetTexEnvfv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  879. %MethodCode
  880. GLfloat params[4];
  881. Py_ssize_t nr_params;
  882. switch (a1)
  883. {
  884. case GL_TEXTURE_ENV_COLOR:
  885. nr_params = 4;
  886. break;
  887. default:
  888. nr_params = 1;
  889. }
  890. sipCpp->glGetTexEnvfv(a0, a1, params);
  891. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  892. %End
  893. void glGetMaterialiv(GLenum face, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int], Tuple[int, int, int, int]]"/);
  894. %MethodCode
  895. GLint params[4];
  896. Py_ssize_t nr_params;
  897. switch (a1)
  898. {
  899. case GL_SHININESS:
  900. nr_params = 1;
  901. break;
  902. case GL_COLOR_INDEXES:
  903. nr_params = 3;
  904. break;
  905. default:
  906. nr_params = 4;
  907. }
  908. sipCpp->glGetMaterialiv(a0, a1, params);
  909. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  910. %End
  911. void glGetMaterialfv(GLenum face, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float], Tuple[float, float, float, float]]"/);
  912. %MethodCode
  913. GLfloat params[4];
  914. Py_ssize_t nr_params;
  915. switch (a1)
  916. {
  917. case GL_SHININESS:
  918. nr_params = 1;
  919. break;
  920. case GL_COLOR_INDEXES:
  921. nr_params = 3;
  922. break;
  923. default:
  924. nr_params = 4;
  925. }
  926. sipCpp->glGetMaterialfv(a0, a1, params);
  927. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  928. %End
  929. void glGetLightiv(GLenum light, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int], Tuple[int, int, int, int]]"/);
  930. %MethodCode
  931. GLint params[4];
  932. Py_ssize_t nr_params;
  933. switch (a1)
  934. {
  935. case GL_AMBIENT:
  936. case GL_DIFFUSE:
  937. case GL_SPECULAR:
  938. case GL_POSITION:
  939. nr_params = 4;
  940. break;
  941. case GL_SPOT_DIRECTION:
  942. nr_params = 3;
  943. break;
  944. default:
  945. nr_params = 1;
  946. }
  947. sipCpp->glGetLightiv(a0, a1, params);
  948. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  949. %End
  950. void glGetLightfv(GLenum light, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float], Tuple[float, float, float, float]]"/);
  951. %MethodCode
  952. GLfloat params[4];
  953. Py_ssize_t nr_params;
  954. switch (a1)
  955. {
  956. case GL_AMBIENT:
  957. case GL_DIFFUSE:
  958. case GL_SPECULAR:
  959. case GL_POSITION:
  960. nr_params = 4;
  961. break;
  962. case GL_SPOT_DIRECTION:
  963. nr_params = 3;
  964. break;
  965. default:
  966. nr_params = 1;
  967. }
  968. sipCpp->glGetLightfv(a0, a1, params);
  969. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  970. %End
  971. void glGetClipPlane(GLenum plane, SIP_PYOBJECT *equation /TypeHint="Tuple[float, float, float, float]"/);
  972. %MethodCode
  973. GLdouble params[4];
  974. sipCpp->glGetClipPlane(a0, params);
  975. a1 = qpyopengl_from_GLdouble(&sipIsErr, params, 4);
  976. %End
  977. void glDrawPixels(GLsizei width, GLsizei height, GLenum format, GLenum type, SIP_PYOBJECT pixels /TypeHint="PYQT_OPENGL_ARRAY"/);
  978. %MethodCode
  979. const GLvoid *array = qpyopengl_value_array(&sipError, a4, a3, sipSelf);
  980. if (sipError == sipErrorNone)
  981. sipCpp->glDrawPixels(a0, a1, a2, a3, array);
  982. %End
  983. void glCopyPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
  984. void glPixelMapusv(GLenum map, GLint mapsize, SIP_PYOBJECT values /TypeHint="PYQT_OPENGL_ARRAY"/);
  985. %MethodCode
  986. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_UNSIGNED_SHORT,
  987. sipSelf);
  988. if (sipError == sipErrorNone)
  989. sipCpp->glPixelMapusv(a0, a1, reinterpret_cast<const GLushort *>(array));
  990. %End
  991. void glPixelMapuiv(GLenum map, GLint mapsize, SIP_PYOBJECT values /TypeHint="PYQT_OPENGL_ARRAY"/);
  992. %MethodCode
  993. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_UNSIGNED_INT,
  994. sipSelf);
  995. if (sipError == sipErrorNone)
  996. sipCpp->glPixelMapuiv(a0, a1, reinterpret_cast<const GLuint *>(array));
  997. %End
  998. void glPixelMapfv(GLenum map, GLint mapsize, SIP_PYOBJECT values /TypeHint="PYQT_OPENGL_ARRAY"/);
  999. %MethodCode
  1000. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1001. if (sipError == sipErrorNone)
  1002. sipCpp->glPixelMapfv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  1003. %End
  1004. void glPixelTransferi(GLenum pname, GLint param);
  1005. void glPixelTransferf(GLenum pname, GLfloat param);
  1006. void glPixelZoom(GLfloat xfactor, GLfloat yfactor);
  1007. void glAlphaFunc(GLenum func, GLfloat ref);
  1008. void glEvalPoint2(GLint i, GLint j);
  1009. void glEvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
  1010. void glEvalPoint1(GLint i);
  1011. void glEvalMesh1(GLenum mode, GLint i1, GLint i2);
  1012. void glEvalCoord2fv(SIP_PYOBJECT u /TypeHint="PYQT_OPENGL_ARRAY"/);
  1013. %MethodCode
  1014. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1015. if (sipError == sipErrorNone)
  1016. sipCpp->glEvalCoord2fv(reinterpret_cast<const GLfloat *>(array));
  1017. %End
  1018. void glEvalCoord2f(GLfloat u, GLfloat v);
  1019. void glEvalCoord2dv(SIP_PYOBJECT u /TypeHint="PYQT_OPENGL_ARRAY"/);
  1020. %MethodCode
  1021. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1022. if (sipError == sipErrorNone)
  1023. sipCpp->glEvalCoord2dv(reinterpret_cast<const GLdouble *>(array));
  1024. %End
  1025. void glEvalCoord2d(GLdouble u, GLdouble v);
  1026. void glEvalCoord1fv(SIP_PYOBJECT u /TypeHint="PYQT_OPENGL_ARRAY"/);
  1027. %MethodCode
  1028. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1029. if (sipError == sipErrorNone)
  1030. sipCpp->glEvalCoord1fv(reinterpret_cast<const GLfloat *>(array));
  1031. %End
  1032. void glEvalCoord1f(GLfloat u);
  1033. void glEvalCoord1dv(SIP_PYOBJECT u /TypeHint="PYQT_OPENGL_ARRAY"/);
  1034. %MethodCode
  1035. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1036. if (sipError == sipErrorNone)
  1037. sipCpp->glEvalCoord1dv(reinterpret_cast<const GLdouble *>(array));
  1038. %End
  1039. void glEvalCoord1d(GLdouble u);
  1040. void glMapGrid2f(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
  1041. void glMapGrid2d(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
  1042. void glMapGrid1f(GLint un, GLfloat u1, GLfloat u2);
  1043. void glMapGrid1d(GLint un, GLdouble u1, GLdouble u2);
  1044. void glMap2f(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, SIP_PYOBJECT points /TypeHint="PYQT_OPENGL_ARRAY"/);
  1045. %MethodCode
  1046. const GLvoid *array = qpyopengl_value_array(&sipError, a9, GL_FLOAT, sipSelf);
  1047. if (sipError == sipErrorNone)
  1048. sipCpp->glMap2f(a0, a1, a2, a3, a4, a5, a6, a7, a8,
  1049. reinterpret_cast<const GLfloat *>(array));
  1050. %End
  1051. void glMap2d(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, SIP_PYOBJECT points /TypeHint="PYQT_OPENGL_ARRAY"/);
  1052. %MethodCode
  1053. const GLvoid *array = qpyopengl_value_array(&sipError, a9, GL_DOUBLE, sipSelf);
  1054. if (sipError == sipErrorNone)
  1055. sipCpp->glMap2d(a0, a1, a2, a3, a4, a5, a6, a7, a8,
  1056. reinterpret_cast<const GLdouble *>(array));
  1057. %End
  1058. void glMap1f(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, SIP_PYOBJECT points /TypeHint="PYQT_OPENGL_ARRAY"/);
  1059. %MethodCode
  1060. const GLvoid *array = qpyopengl_value_array(&sipError, a5, GL_FLOAT, sipSelf);
  1061. if (sipError == sipErrorNone)
  1062. sipCpp->glMap1f(a0, a1, a2, a3, a4,
  1063. reinterpret_cast<const GLfloat *>(array));
  1064. %End
  1065. void glMap1d(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, SIP_PYOBJECT points /TypeHint="PYQT_OPENGL_ARRAY"/);
  1066. %MethodCode
  1067. const GLvoid *array = qpyopengl_value_array(&sipError, a5, GL_DOUBLE, sipSelf);
  1068. if (sipError == sipErrorNone)
  1069. sipCpp->glMap1d(a0, a1, a2, a3, a4,
  1070. reinterpret_cast<const GLdouble *>(array));
  1071. %End
  1072. void glPushAttrib(GLbitfield mask);
  1073. void glPopAttrib();
  1074. void glAccum(GLenum op, GLfloat value);
  1075. void glIndexMask(GLuint mask);
  1076. void glClearIndex(GLfloat c);
  1077. void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  1078. void glPushName(GLuint name);
  1079. void glPopName();
  1080. void glPassThrough(GLfloat token);
  1081. void glLoadName(GLuint name);
  1082. void glInitNames();
  1083. GLint glRenderMode(GLenum mode);
  1084. void glTexGeniv(GLenum coord, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1085. %MethodCode
  1086. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  1087. if (sipError == sipErrorNone)
  1088. sipCpp->glTexGeniv(a0, a1, reinterpret_cast<const GLint *>(array));
  1089. %End
  1090. void glTexGeni(GLenum coord, GLenum pname, GLint param);
  1091. void glTexGenfv(GLenum coord, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1092. %MethodCode
  1093. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1094. if (sipError == sipErrorNone)
  1095. sipCpp->glTexGenfv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  1096. %End
  1097. void glTexGenf(GLenum coord, GLenum pname, GLfloat param);
  1098. void glTexGendv(GLenum coord, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1099. %MethodCode
  1100. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_DOUBLE, sipSelf);
  1101. if (sipError == sipErrorNone)
  1102. sipCpp->glTexGendv(a0, a1, reinterpret_cast<const GLdouble *>(array));
  1103. %End
  1104. void glTexGend(GLenum coord, GLenum pname, GLdouble param);
  1105. void glTexEnviv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1106. %MethodCode
  1107. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  1108. if (sipError == sipErrorNone)
  1109. sipCpp->glTexEnviv(a0, a1, reinterpret_cast<const GLint *>(array));
  1110. %End
  1111. void glTexEnvi(GLenum target, GLenum pname, GLint param);
  1112. void glTexEnvfv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1113. %MethodCode
  1114. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1115. if (sipError == sipErrorNone)
  1116. sipCpp->glTexEnvfv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  1117. %End
  1118. void glTexEnvf(GLenum target, GLenum pname, GLfloat param);
  1119. void glShadeModel(GLenum mode);
  1120. void glPolygonStipple(SIP_PYOBJECT mask /TypeHint="PYQT_OPENGL_ARRAY"/);
  1121. %MethodCode
  1122. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_BYTE,
  1123. sipSelf);
  1124. if (sipError == sipErrorNone)
  1125. sipCpp->glPolygonStipple(reinterpret_cast<const GLubyte *>(array));
  1126. %End
  1127. void glMaterialiv(GLenum face, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1128. %MethodCode
  1129. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  1130. if (sipError == sipErrorNone)
  1131. sipCpp->glMaterialiv(a0, a1, reinterpret_cast<const GLint *>(array));
  1132. %End
  1133. void glMateriali(GLenum face, GLenum pname, GLint param);
  1134. void glMaterialfv(GLenum face, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1135. %MethodCode
  1136. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1137. if (sipError == sipErrorNone)
  1138. sipCpp->glMaterialfv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  1139. %End
  1140. void glMaterialf(GLenum face, GLenum pname, GLfloat param);
  1141. void glLineStipple(GLint factor, GLushort pattern);
  1142. void glLightModeliv(GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1143. %MethodCode
  1144. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  1145. if (sipError == sipErrorNone)
  1146. sipCpp->glLightModeliv(a0, reinterpret_cast<const GLint *>(array));
  1147. %End
  1148. void glLightModeli(GLenum pname, GLint param);
  1149. void glLightModelfv(GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1150. %MethodCode
  1151. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  1152. if (sipError == sipErrorNone)
  1153. sipCpp->glLightModelfv(a0, reinterpret_cast<const GLfloat *>(array));
  1154. %End
  1155. void glLightModelf(GLenum pname, GLfloat param);
  1156. void glLightiv(GLenum light, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1157. %MethodCode
  1158. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  1159. if (sipError == sipErrorNone)
  1160. sipCpp->glLightiv(a0, a1, reinterpret_cast<const GLint *>(array));
  1161. %End
  1162. void glLighti(GLenum light, GLenum pname, GLint param);
  1163. void glLightfv(GLenum light, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1164. %MethodCode
  1165. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1166. if (sipError == sipErrorNone)
  1167. sipCpp->glLightfv(a0, a1, reinterpret_cast<const GLfloat *>(array));
  1168. %End
  1169. void glLightf(GLenum light, GLenum pname, GLfloat param);
  1170. void glFogiv(GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1171. %MethodCode
  1172. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  1173. if (sipError == sipErrorNone)
  1174. sipCpp->glFogiv(a0, reinterpret_cast<const GLint *>(array));
  1175. %End
  1176. void glFogi(GLenum pname, GLint param);
  1177. void glFogfv(GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1178. %MethodCode
  1179. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  1180. if (sipError == sipErrorNone)
  1181. sipCpp->glFogfv(a0, reinterpret_cast<const GLfloat *>(array));
  1182. %End
  1183. void glFogf(GLenum pname, GLfloat param);
  1184. void glColorMaterial(GLenum face, GLenum mode);
  1185. void glClipPlane(GLenum plane, SIP_PYOBJECT equation /TypeHint="PYQT_OPENGL_ARRAY"/);
  1186. %MethodCode
  1187. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  1188. if (sipError == sipErrorNone)
  1189. sipCpp->glClipPlane(a0, reinterpret_cast<const GLdouble *>(array));
  1190. %End
  1191. void glVertex4sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1192. %MethodCode
  1193. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1194. if (sipError == sipErrorNone)
  1195. sipCpp->glVertex4sv(reinterpret_cast<const GLshort *>(array));
  1196. %End
  1197. void glVertex4s(GLshort x, GLshort y, GLshort z, GLshort w);
  1198. void glVertex4iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1199. %MethodCode
  1200. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1201. if (sipError == sipErrorNone)
  1202. sipCpp->glVertex4iv(reinterpret_cast<const GLint *>(array));
  1203. %End
  1204. void glVertex4i(GLint x, GLint y, GLint z, GLint w);
  1205. void glVertex4fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1206. %MethodCode
  1207. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1208. if (sipError == sipErrorNone)
  1209. sipCpp->glVertex4fv(reinterpret_cast<const GLfloat *>(array));
  1210. %End
  1211. void glVertex4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
  1212. void glVertex4dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1213. %MethodCode
  1214. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1215. if (sipError == sipErrorNone)
  1216. sipCpp->glVertex4dv(reinterpret_cast<const GLdouble *>(array));
  1217. %End
  1218. void glVertex4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  1219. void glVertex3sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1220. %MethodCode
  1221. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1222. if (sipError == sipErrorNone)
  1223. sipCpp->glVertex3sv(reinterpret_cast<const GLshort *>(array));
  1224. %End
  1225. void glVertex3s(GLshort x, GLshort y, GLshort z);
  1226. void glVertex3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1227. %MethodCode
  1228. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1229. if (sipError == sipErrorNone)
  1230. sipCpp->glVertex3iv(reinterpret_cast<const GLint *>(array));
  1231. %End
  1232. void glVertex3i(GLint x, GLint y, GLint z);
  1233. void glVertex3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1234. %MethodCode
  1235. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1236. if (sipError == sipErrorNone)
  1237. sipCpp->glVertex3fv(reinterpret_cast<const GLfloat *>(array));
  1238. %End
  1239. void glVertex3f(GLfloat x, GLfloat y, GLfloat z);
  1240. void glVertex3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1241. %MethodCode
  1242. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1243. if (sipError == sipErrorNone)
  1244. sipCpp->glVertex3dv(reinterpret_cast<const GLdouble *>(array));
  1245. %End
  1246. void glVertex3d(GLdouble x, GLdouble y, GLdouble z);
  1247. void glVertex2sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1248. %MethodCode
  1249. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1250. if (sipError == sipErrorNone)
  1251. sipCpp->glVertex2sv(reinterpret_cast<const GLshort *>(array));
  1252. %End
  1253. void glVertex2s(GLshort x, GLshort y);
  1254. void glVertex2iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1255. %MethodCode
  1256. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1257. if (sipError == sipErrorNone)
  1258. sipCpp->glVertex2iv(reinterpret_cast<const GLint *>(array));
  1259. %End
  1260. void glVertex2i(GLint x, GLint y);
  1261. void glVertex2fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1262. %MethodCode
  1263. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1264. if (sipError == sipErrorNone)
  1265. sipCpp->glVertex2fv(reinterpret_cast<const GLfloat *>(array));
  1266. %End
  1267. void glVertex2f(GLfloat x, GLfloat y);
  1268. void glVertex2dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1269. %MethodCode
  1270. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1271. if (sipError == sipErrorNone)
  1272. sipCpp->glVertex2dv(reinterpret_cast<const GLdouble *>(array));
  1273. %End
  1274. void glVertex2d(GLdouble x, GLdouble y);
  1275. void glTexCoord4sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1276. %MethodCode
  1277. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1278. if (sipError == sipErrorNone)
  1279. sipCpp->glTexCoord4sv(reinterpret_cast<const GLshort *>(array));
  1280. %End
  1281. void glTexCoord4s(GLshort s, GLshort t, GLshort r, GLshort q);
  1282. void glTexCoord4iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1283. %MethodCode
  1284. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1285. if (sipError == sipErrorNone)
  1286. sipCpp->glTexCoord4iv(reinterpret_cast<const GLint *>(array));
  1287. %End
  1288. void glTexCoord4i(GLint s, GLint t, GLint r, GLint q);
  1289. void glTexCoord4fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1290. %MethodCode
  1291. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1292. if (sipError == sipErrorNone)
  1293. sipCpp->glTexCoord4fv(reinterpret_cast<const GLfloat *>(array));
  1294. %End
  1295. void glTexCoord4f(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
  1296. void glTexCoord4dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1297. %MethodCode
  1298. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1299. if (sipError == sipErrorNone)
  1300. sipCpp->glTexCoord4dv(reinterpret_cast<const GLdouble *>(array));
  1301. %End
  1302. void glTexCoord4d(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
  1303. void glTexCoord3sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1304. %MethodCode
  1305. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1306. if (sipError == sipErrorNone)
  1307. sipCpp->glTexCoord3sv(reinterpret_cast<const GLshort *>(array));
  1308. %End
  1309. void glTexCoord3s(GLshort s, GLshort t, GLshort r);
  1310. void glTexCoord3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1311. %MethodCode
  1312. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1313. if (sipError == sipErrorNone)
  1314. sipCpp->glTexCoord3iv(reinterpret_cast<const GLint *>(array));
  1315. %End
  1316. void glTexCoord3i(GLint s, GLint t, GLint r);
  1317. void glTexCoord3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1318. %MethodCode
  1319. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1320. if (sipError == sipErrorNone)
  1321. sipCpp->glTexCoord3fv(reinterpret_cast<const GLfloat *>(array));
  1322. %End
  1323. void glTexCoord3f(GLfloat s, GLfloat t, GLfloat r);
  1324. void glTexCoord3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1325. %MethodCode
  1326. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1327. if (sipError == sipErrorNone)
  1328. sipCpp->glTexCoord3dv(reinterpret_cast<const GLdouble *>(array));
  1329. %End
  1330. void glTexCoord3d(GLdouble s, GLdouble t, GLdouble r);
  1331. void glTexCoord2sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1332. %MethodCode
  1333. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1334. if (sipError == sipErrorNone)
  1335. sipCpp->glTexCoord2sv(reinterpret_cast<const GLshort *>(array));
  1336. %End
  1337. void glTexCoord2s(GLshort s, GLshort t);
  1338. void glTexCoord2iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1339. %MethodCode
  1340. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1341. if (sipError == sipErrorNone)
  1342. sipCpp->glTexCoord2iv(reinterpret_cast<const GLint *>(array));
  1343. %End
  1344. void glTexCoord2i(GLint s, GLint t);
  1345. void glTexCoord2fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1346. %MethodCode
  1347. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1348. if (sipError == sipErrorNone)
  1349. sipCpp->glTexCoord2fv(reinterpret_cast<const GLfloat *>(array));
  1350. %End
  1351. void glTexCoord2f(GLfloat s, GLfloat t);
  1352. void glTexCoord2dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1353. %MethodCode
  1354. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1355. if (sipError == sipErrorNone)
  1356. sipCpp->glTexCoord2dv(reinterpret_cast<const GLdouble *>(array));
  1357. %End
  1358. void glTexCoord2d(GLdouble s, GLdouble t);
  1359. void glTexCoord1sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1360. %MethodCode
  1361. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1362. if (sipError == sipErrorNone)
  1363. sipCpp->glTexCoord1sv(reinterpret_cast<const GLshort *>(array));
  1364. %End
  1365. void glTexCoord1s(GLshort s);
  1366. void glTexCoord1iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1367. %MethodCode
  1368. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1369. if (sipError == sipErrorNone)
  1370. sipCpp->glTexCoord1iv(reinterpret_cast<const GLint *>(array));
  1371. %End
  1372. void glTexCoord1i(GLint s);
  1373. void glTexCoord1fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1374. %MethodCode
  1375. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1376. if (sipError == sipErrorNone)
  1377. sipCpp->glTexCoord1fv(reinterpret_cast<const GLfloat *>(array));
  1378. %End
  1379. void glTexCoord1f(GLfloat s);
  1380. void glTexCoord1dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1381. %MethodCode
  1382. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1383. if (sipError == sipErrorNone)
  1384. sipCpp->glTexCoord1dv(reinterpret_cast<const GLdouble *>(array));
  1385. %End
  1386. void glTexCoord1d(GLdouble s);
  1387. void glRects(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
  1388. void glRecti(GLint x1, GLint y1, GLint x2, GLint y2);
  1389. void glRectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
  1390. void glRectd(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
  1391. void glRasterPos4sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1392. %MethodCode
  1393. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1394. if (sipError == sipErrorNone)
  1395. sipCpp->glRasterPos4sv(reinterpret_cast<const GLshort *>(array));
  1396. %End
  1397. void glRasterPos4s(GLshort x, GLshort y, GLshort z, GLshort w);
  1398. void glRasterPos4iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1399. %MethodCode
  1400. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1401. if (sipError == sipErrorNone)
  1402. sipCpp->glRasterPos4iv(reinterpret_cast<const GLint *>(array));
  1403. %End
  1404. void glRasterPos4i(GLint x, GLint y, GLint z, GLint w);
  1405. void glRasterPos4fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1406. %MethodCode
  1407. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1408. if (sipError == sipErrorNone)
  1409. sipCpp->glRasterPos4fv(reinterpret_cast<const GLfloat *>(array));
  1410. %End
  1411. void glRasterPos4f(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
  1412. void glRasterPos4dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1413. %MethodCode
  1414. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1415. if (sipError == sipErrorNone)
  1416. sipCpp->glRasterPos4dv(reinterpret_cast<const GLdouble *>(array));
  1417. %End
  1418. void glRasterPos4d(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  1419. void glRasterPos3sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1420. %MethodCode
  1421. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1422. if (sipError == sipErrorNone)
  1423. sipCpp->glRasterPos3sv(reinterpret_cast<const GLshort *>(array));
  1424. %End
  1425. void glRasterPos3s(GLshort x, GLshort y, GLshort z);
  1426. void glRasterPos3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1427. %MethodCode
  1428. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1429. if (sipError == sipErrorNone)
  1430. sipCpp->glRasterPos3iv(reinterpret_cast<const GLint *>(array));
  1431. %End
  1432. void glRasterPos3i(GLint x, GLint y, GLint z);
  1433. void glRasterPos3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1434. %MethodCode
  1435. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1436. if (sipError == sipErrorNone)
  1437. sipCpp->glRasterPos3fv(reinterpret_cast<const GLfloat *>(array));
  1438. %End
  1439. void glRasterPos3f(GLfloat x, GLfloat y, GLfloat z);
  1440. void glRasterPos3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1441. %MethodCode
  1442. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1443. if (sipError == sipErrorNone)
  1444. sipCpp->glRasterPos3dv(reinterpret_cast<const GLdouble *>(array));
  1445. %End
  1446. void glRasterPos3d(GLdouble x, GLdouble y, GLdouble z);
  1447. void glRasterPos2sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1448. %MethodCode
  1449. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1450. if (sipError == sipErrorNone)
  1451. sipCpp->glRasterPos2sv(reinterpret_cast<const GLshort *>(array));
  1452. %End
  1453. void glRasterPos2s(GLshort x, GLshort y);
  1454. void glRasterPos2iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1455. %MethodCode
  1456. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1457. if (sipError == sipErrorNone)
  1458. sipCpp->glRasterPos2iv(reinterpret_cast<const GLint *>(array));
  1459. %End
  1460. void glRasterPos2i(GLint x, GLint y);
  1461. void glRasterPos2fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1462. %MethodCode
  1463. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1464. if (sipError == sipErrorNone)
  1465. sipCpp->glRasterPos2fv(reinterpret_cast<const GLfloat *>(array));
  1466. %End
  1467. void glRasterPos2f(GLfloat x, GLfloat y);
  1468. void glRasterPos2dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1469. %MethodCode
  1470. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1471. if (sipError == sipErrorNone)
  1472. sipCpp->glRasterPos2dv(reinterpret_cast<const GLdouble *>(array));
  1473. %End
  1474. void glRasterPos2d(GLdouble x, GLdouble y);
  1475. void glNormal3sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1476. %MethodCode
  1477. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1478. if (sipError == sipErrorNone)
  1479. sipCpp->glNormal3sv(reinterpret_cast<const GLshort *>(array));
  1480. %End
  1481. void glNormal3s(GLshort nx, GLshort ny, GLshort nz);
  1482. void glNormal3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1483. %MethodCode
  1484. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1485. if (sipError == sipErrorNone)
  1486. sipCpp->glNormal3iv(reinterpret_cast<const GLint *>(array));
  1487. %End
  1488. void glNormal3i(GLint nx, GLint ny, GLint nz);
  1489. void glNormal3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1490. %MethodCode
  1491. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1492. if (sipError == sipErrorNone)
  1493. sipCpp->glNormal3fv(reinterpret_cast<const GLfloat *>(array));
  1494. %End
  1495. void glNormal3f(GLfloat nx, GLfloat ny, GLfloat nz);
  1496. void glNormal3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1497. %MethodCode
  1498. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1499. if (sipError == sipErrorNone)
  1500. sipCpp->glNormal3dv(reinterpret_cast<const GLdouble *>(array));
  1501. %End
  1502. void glNormal3d(GLdouble nx, GLdouble ny, GLdouble nz);
  1503. void glNormal3bv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1504. %MethodCode
  1505. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_BYTE, sipSelf);
  1506. if (sipError == sipErrorNone)
  1507. sipCpp->glNormal3bv(reinterpret_cast<const GLbyte *>(array));
  1508. %End
  1509. void glNormal3b(GLbyte nx, GLbyte ny, GLbyte nz);
  1510. void glIndexsv(SIP_PYOBJECT c /TypeHint="PYQT_OPENGL_ARRAY"/);
  1511. %MethodCode
  1512. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1513. if (sipError == sipErrorNone)
  1514. sipCpp->glIndexsv(reinterpret_cast<const GLshort *>(array));
  1515. %End
  1516. void glIndexs(GLshort c);
  1517. void glIndexiv(SIP_PYOBJECT c /TypeHint="PYQT_OPENGL_ARRAY"/);
  1518. %MethodCode
  1519. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1520. if (sipError == sipErrorNone)
  1521. sipCpp->glIndexiv(reinterpret_cast<const GLint *>(array));
  1522. %End
  1523. void glIndexi(GLint c);
  1524. void glIndexfv(SIP_PYOBJECT c /TypeHint="PYQT_OPENGL_ARRAY"/);
  1525. %MethodCode
  1526. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1527. if (sipError == sipErrorNone)
  1528. sipCpp->glIndexfv(reinterpret_cast<const GLfloat *>(array));
  1529. %End
  1530. void glIndexf(GLfloat c);
  1531. void glIndexdv(SIP_PYOBJECT c /TypeHint="PYQT_OPENGL_ARRAY"/);
  1532. %MethodCode
  1533. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1534. if (sipError == sipErrorNone)
  1535. sipCpp->glIndexdv(reinterpret_cast<const GLdouble *>(array));
  1536. %End
  1537. void glIndexd(GLdouble c);
  1538. void glEnd();
  1539. void glEdgeFlagv(SIP_PYOBJECT flag /TypeHint="PYQT_OPENGL_ARRAY"/);
  1540. %MethodCode
  1541. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_BYTE,
  1542. sipSelf);
  1543. if (sipError == sipErrorNone)
  1544. sipCpp->glEdgeFlagv(reinterpret_cast<const GLboolean *>(array));
  1545. %End
  1546. void glEdgeFlag(GLboolean flag);
  1547. void glColor4usv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1548. %MethodCode
  1549. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_SHORT,
  1550. sipSelf);
  1551. if (sipError == sipErrorNone)
  1552. sipCpp->glColor4usv(reinterpret_cast<const GLushort *>(array));
  1553. %End
  1554. void glColor4us(GLushort red, GLushort green, GLushort blue, GLushort alpha);
  1555. void glColor4uiv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1556. %MethodCode
  1557. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_INT,
  1558. sipSelf);
  1559. if (sipError == sipErrorNone)
  1560. sipCpp->glColor4uiv(reinterpret_cast<const GLuint *>(array));
  1561. %End
  1562. void glColor4ui(GLuint red, GLuint green, GLuint blue, GLuint alpha);
  1563. void glColor4ubv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1564. %MethodCode
  1565. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_BYTE,
  1566. sipSelf);
  1567. if (sipError == sipErrorNone)
  1568. sipCpp->glColor4ubv(reinterpret_cast<const GLubyte *>(array));
  1569. %End
  1570. void glColor4ub(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
  1571. void glColor4sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1572. %MethodCode
  1573. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1574. if (sipError == sipErrorNone)
  1575. sipCpp->glColor4sv(reinterpret_cast<const GLshort *>(array));
  1576. %End
  1577. void glColor4s(GLshort red, GLshort green, GLshort blue, GLshort alpha);
  1578. void glColor4iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1579. %MethodCode
  1580. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1581. if (sipError == sipErrorNone)
  1582. sipCpp->glColor4iv(reinterpret_cast<const GLint *>(array));
  1583. %End
  1584. void glColor4i(GLint red, GLint green, GLint blue, GLint alpha);
  1585. void glColor4fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1586. %MethodCode
  1587. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1588. if (sipError == sipErrorNone)
  1589. sipCpp->glColor4fv(reinterpret_cast<const GLfloat *>(array));
  1590. %End
  1591. void glColor4f(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  1592. void glColor4dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1593. %MethodCode
  1594. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1595. if (sipError == sipErrorNone)
  1596. sipCpp->glColor4dv(reinterpret_cast<const GLdouble *>(array));
  1597. %End
  1598. void glColor4d(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
  1599. void glColor4bv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1600. %MethodCode
  1601. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_BYTE, sipSelf);
  1602. if (sipError == sipErrorNone)
  1603. sipCpp->glColor4bv(reinterpret_cast<const GLbyte *>(array));
  1604. %End
  1605. void glColor4b(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
  1606. void glColor3usv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1607. %MethodCode
  1608. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_SHORT,
  1609. sipSelf);
  1610. if (sipError == sipErrorNone)
  1611. sipCpp->glColor3usv(reinterpret_cast<const GLushort *>(array));
  1612. %End
  1613. void glColor3us(GLushort red, GLushort green, GLushort blue);
  1614. void glColor3uiv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1615. %MethodCode
  1616. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_INT,
  1617. sipSelf);
  1618. if (sipError == sipErrorNone)
  1619. sipCpp->glColor3uiv(reinterpret_cast<const GLuint *>(array));
  1620. %End
  1621. void glColor3ui(GLuint red, GLuint green, GLuint blue);
  1622. void glColor3ubv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1623. %MethodCode
  1624. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_BYTE,
  1625. sipSelf);
  1626. if (sipError == sipErrorNone)
  1627. sipCpp->glColor3ubv(reinterpret_cast<const GLubyte *>(array));
  1628. %End
  1629. void glColor3ub(GLubyte red, GLubyte green, GLubyte blue);
  1630. void glColor3sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1631. %MethodCode
  1632. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1633. if (sipError == sipErrorNone)
  1634. sipCpp->glColor3sv(reinterpret_cast<const GLshort *>(array));
  1635. %End
  1636. void glColor3s(GLshort red, GLshort green, GLshort blue);
  1637. void glColor3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1638. %MethodCode
  1639. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  1640. if (sipError == sipErrorNone)
  1641. sipCpp->glColor3iv(reinterpret_cast<const GLint *>(array));
  1642. %End
  1643. void glColor3i(GLint red, GLint green, GLint blue);
  1644. void glColor3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1645. %MethodCode
  1646. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1647. if (sipError == sipErrorNone)
  1648. sipCpp->glColor3fv(reinterpret_cast<const GLfloat *>(array));
  1649. %End
  1650. void glColor3f(GLfloat red, GLfloat green, GLfloat blue);
  1651. void glColor3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1652. %MethodCode
  1653. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1654. if (sipError == sipErrorNone)
  1655. sipCpp->glColor3dv(reinterpret_cast<const GLdouble *>(array));
  1656. %End
  1657. void glColor3d(GLdouble red, GLdouble green, GLdouble blue);
  1658. void glColor3bv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1659. %MethodCode
  1660. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_BYTE, sipSelf);
  1661. if (sipError == sipErrorNone)
  1662. sipCpp->glColor3bv(reinterpret_cast<const GLbyte *>(array));
  1663. %End
  1664. void glColor3b(GLbyte red, GLbyte green, GLbyte blue);
  1665. void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, SIP_PYOBJECT bitmap /TypeHint="PYQT_OPENGL_ARRAY"/);
  1666. %MethodCode
  1667. const GLvoid *array = qpyopengl_value_array(&sipError, a6, GL_UNSIGNED_BYTE,
  1668. sipSelf);
  1669. if (sipError == sipErrorNone)
  1670. sipCpp->glBitmap(a0, a1, a2, a3, a4, a5,
  1671. reinterpret_cast<const GLubyte *>(array));
  1672. %End
  1673. void glBegin(GLenum mode);
  1674. void glListBase(GLuint base);
  1675. GLuint glGenLists(GLsizei range);
  1676. void glDeleteLists(GLuint list, GLsizei range);
  1677. void glCallList(GLuint list);
  1678. void glEndList();
  1679. void glNewList(GLuint list, GLenum mode);
  1680. void glPushClientAttrib(GLbitfield mask);
  1681. void glPopClientAttrib();
  1682. void glVertexPointer(GLint size, GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  1683. %MethodCode
  1684. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a3, a1, sipSelf,
  1685. "VertexPointer", 0);
  1686. if (sipError == sipErrorNone)
  1687. sipCpp->glVertexPointer(a0, a1, a2, array);
  1688. %End
  1689. void glTexCoordPointer(GLint size, GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  1690. %MethodCode
  1691. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a3, a1, sipSelf,
  1692. "TexCoordPointer", 0);
  1693. if (sipError == sipErrorNone)
  1694. sipCpp->glTexCoordPointer(a0, a1, a2, array);
  1695. %End
  1696. void glNormalPointer(GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  1697. %MethodCode
  1698. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a2, a0, sipSelf,
  1699. "NormalPointer", 0);
  1700. if (sipError == sipErrorNone)
  1701. sipCpp->glNormalPointer(a0, a1, array);
  1702. %End
  1703. void glIndexPointer(GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  1704. %MethodCode
  1705. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a2, a0, sipSelf,
  1706. "IndexPointer", 0);
  1707. if (sipError == sipErrorNone)
  1708. sipCpp->glIndexPointer(a0, a1, array);
  1709. %End
  1710. void glEnableClientState(GLenum array);
  1711. void glEdgeFlagPointer(GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  1712. %MethodCode
  1713. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a1,
  1714. GL_UNSIGNED_BYTE, sipSelf, "EdgeFlagPointer", 0);
  1715. if (sipError == sipErrorNone)
  1716. sipCpp->glEdgeFlagPointer(a0, array);
  1717. %End
  1718. void glDisableClientState(GLenum array);
  1719. void glColorPointer(GLint size, GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_BOUND_ARRAY"/);
  1720. %MethodCode
  1721. const GLvoid *array = qpyopengl_value_array_cached(&sipError, a3, a1, sipSelf,
  1722. "ColorPointer", 0);
  1723. if (sipError == sipErrorNone)
  1724. sipCpp->glColorPointer(a0, a1, a2, array);
  1725. %End
  1726. void glArrayElement(GLint i);
  1727. void glResetMinmax(GLenum target);
  1728. void glResetHistogram(GLenum target);
  1729. void glMinmax(GLenum target, GLenum internalformat, GLboolean sink);
  1730. void glHistogram(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
  1731. void glGetConvolutionParameteriv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int, int]]"/);
  1732. %MethodCode
  1733. GLint params[4];
  1734. Py_ssize_t nr_params;
  1735. switch (a1)
  1736. {
  1737. case GL_CONVOLUTION_BORDER_COLOR:
  1738. case GL_CONVOLUTION_FILTER_SCALE:
  1739. case GL_CONVOLUTION_FILTER_BIAS:
  1740. nr_params = 4;
  1741. break;
  1742. default:
  1743. nr_params = 1;
  1744. }
  1745. sipCpp->glGetConvolutionParameteriv(a0, a1, params);
  1746. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  1747. %End
  1748. void glGetConvolutionParameterfv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  1749. %MethodCode
  1750. GLfloat params[4];
  1751. Py_ssize_t nr_params;
  1752. switch (a1)
  1753. {
  1754. case GL_CONVOLUTION_BORDER_COLOR:
  1755. case GL_CONVOLUTION_FILTER_SCALE:
  1756. case GL_CONVOLUTION_FILTER_BIAS:
  1757. nr_params = 4;
  1758. break;
  1759. default:
  1760. nr_params = 1;
  1761. }
  1762. sipCpp->glGetConvolutionParameterfv(a0, a1, params);
  1763. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  1764. %End
  1765. void glCopyConvolutionFilter2D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
  1766. void glCopyConvolutionFilter1D(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
  1767. void glConvolutionParameteriv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1768. %MethodCode
  1769. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  1770. if (sipError == sipErrorNone)
  1771. sipCpp->glConvolutionParameteriv(a0, a1,
  1772. reinterpret_cast<const GLint *>(array));
  1773. %End
  1774. void glConvolutionParameteri(GLenum target, GLenum pname, GLint params);
  1775. void glConvolutionParameterfv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1776. %MethodCode
  1777. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1778. if (sipError == sipErrorNone)
  1779. sipCpp->glConvolutionParameterfv(a0, a1,
  1780. reinterpret_cast<const GLfloat *>(array));
  1781. %End
  1782. void glConvolutionParameterf(GLenum target, GLenum pname, GLfloat params);
  1783. void glConvolutionFilter2D(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, SIP_PYOBJECT image /TypeHint="PYQT_OPENGL_ARRAY"/);
  1784. %MethodCode
  1785. const GLvoid *array = qpyopengl_value_array(&sipError, a6, a5, sipSelf);
  1786. if (sipError == sipErrorNone)
  1787. sipCpp->glConvolutionFilter2D(a0, a1, a2, a3, a4, a5, array);
  1788. %End
  1789. void glConvolutionFilter1D(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, SIP_PYOBJECT image /TypeHint="PYQT_OPENGL_ARRAY"/);
  1790. %MethodCode
  1791. const GLvoid *array = qpyopengl_value_array(&sipError, a5, a4, sipSelf);
  1792. if (sipError == sipErrorNone)
  1793. sipCpp->glConvolutionFilter1D(a0, a1, a2, a3, a4, array);
  1794. %End
  1795. void glCopyColorSubTable(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
  1796. void glColorSubTable(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, SIP_PYOBJECT data /TypeHint="PYQT_OPENGL_ARRAY"/);
  1797. %MethodCode
  1798. const GLvoid *array = qpyopengl_value_array(&sipError, a5, a4, sipSelf);
  1799. if (sipError == sipErrorNone)
  1800. sipCpp->glColorSubTable(a0, a1, a2, a3, a4, array);
  1801. %End
  1802. void glGetColorTableParameteriv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[int, Tuple[int, int, int, int]]"/);
  1803. %MethodCode
  1804. GLint params[4];
  1805. Py_ssize_t nr_params;
  1806. switch (a1)
  1807. {
  1808. case GL_COLOR_TABLE:
  1809. case GL_POST_CONVOLUTION_COLOR_TABLE:
  1810. case GL_POST_COLOR_MATRIX_COLOR_TABLE:
  1811. nr_params = 4;
  1812. break;
  1813. default:
  1814. nr_params = 1;
  1815. }
  1816. sipCpp->glGetColorTableParameteriv(a0, a1, params);
  1817. a2 = qpyopengl_from_GLint(&sipIsErr, params, nr_params);
  1818. %End
  1819. void glGetColorTableParameterfv(GLenum target, GLenum pname, SIP_PYOBJECT *params /TypeHint="Union[float, Tuple[float, float, float, float]]"/);
  1820. %MethodCode
  1821. GLfloat params[4];
  1822. Py_ssize_t nr_params;
  1823. switch (a1)
  1824. {
  1825. case GL_COLOR_TABLE:
  1826. case GL_POST_CONVOLUTION_COLOR_TABLE:
  1827. case GL_POST_COLOR_MATRIX_COLOR_TABLE:
  1828. nr_params = 4;
  1829. break;
  1830. default:
  1831. nr_params = 1;
  1832. }
  1833. sipCpp->glGetColorTableParameterfv(a0, a1, params);
  1834. a2 = qpyopengl_from_GLfloat(&sipIsErr, params, nr_params);
  1835. %End
  1836. void glCopyColorTable(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
  1837. void glColorTableParameteriv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1838. %MethodCode
  1839. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_INT, sipSelf);
  1840. if (sipError == sipErrorNone)
  1841. sipCpp->glColorTableParameteriv(a0, a1,
  1842. reinterpret_cast<const GLint *>(array));
  1843. %End
  1844. void glColorTableParameterfv(GLenum target, GLenum pname, SIP_PYOBJECT params /TypeHint="PYQT_OPENGL_ARRAY"/);
  1845. %MethodCode
  1846. const GLvoid *array = qpyopengl_value_array(&sipError, a2, GL_FLOAT, sipSelf);
  1847. if (sipError == sipErrorNone)
  1848. sipCpp->glColorTableParameterfv(a0, a1,
  1849. reinterpret_cast<const GLfloat *>(array));
  1850. %End
  1851. void glColorTable(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, SIP_PYOBJECT table /TypeHint="PYQT_OPENGL_ARRAY"/);
  1852. %MethodCode
  1853. const GLvoid *array = qpyopengl_value_array(&sipError, a5, a4, sipSelf);
  1854. if (sipError == sipErrorNone)
  1855. sipCpp->glColorTable(a0, a1, a2, a3, a4, array);
  1856. %End
  1857. void glMultTransposeMatrixd(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  1858. %MethodCode
  1859. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1860. if (sipError == sipErrorNone)
  1861. sipCpp->glMultTransposeMatrixd(reinterpret_cast<const GLdouble *>(array));
  1862. %End
  1863. void glMultTransposeMatrixf(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  1864. %MethodCode
  1865. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1866. if (sipError == sipErrorNone)
  1867. sipCpp->glMultTransposeMatrixf(reinterpret_cast<const GLfloat *>(array));
  1868. %End
  1869. void glLoadTransposeMatrixd(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  1870. %MethodCode
  1871. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  1872. if (sipError == sipErrorNone)
  1873. sipCpp->glLoadTransposeMatrixd(reinterpret_cast<const GLdouble *>(array));
  1874. %End
  1875. void glLoadTransposeMatrixf(SIP_PYOBJECT m /TypeHint="PYQT_OPENGL_ARRAY"/);
  1876. %MethodCode
  1877. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  1878. if (sipError == sipErrorNone)
  1879. sipCpp->glLoadTransposeMatrixf(reinterpret_cast<const GLfloat *>(array));
  1880. %End
  1881. void glMultiTexCoord4sv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1882. %MethodCode
  1883. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  1884. if (sipError == sipErrorNone)
  1885. sipCpp->glMultiTexCoord4sv(a0, reinterpret_cast<const GLshort *>(array));
  1886. %End
  1887. void glMultiTexCoord4s(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
  1888. void glMultiTexCoord4iv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1889. %MethodCode
  1890. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  1891. if (sipError == sipErrorNone)
  1892. sipCpp->glMultiTexCoord4iv(a0, reinterpret_cast<const GLint *>(array));
  1893. %End
  1894. void glMultiTexCoord4i(GLenum target, GLint s, GLint t, GLint r, GLint q);
  1895. void glMultiTexCoord4fv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1896. %MethodCode
  1897. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  1898. if (sipError == sipErrorNone)
  1899. sipCpp->glMultiTexCoord4fv(a0, reinterpret_cast<const GLfloat *>(array));
  1900. %End
  1901. void glMultiTexCoord4f(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
  1902. void glMultiTexCoord4dv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1903. %MethodCode
  1904. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  1905. if (sipError == sipErrorNone)
  1906. sipCpp->glMultiTexCoord4dv(a0, reinterpret_cast<const GLdouble *>(array));
  1907. %End
  1908. void glMultiTexCoord4d(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
  1909. void glMultiTexCoord3sv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1910. %MethodCode
  1911. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  1912. if (sipError == sipErrorNone)
  1913. sipCpp->glMultiTexCoord3sv(a0, reinterpret_cast<const GLshort *>(array));
  1914. %End
  1915. void glMultiTexCoord3s(GLenum target, GLshort s, GLshort t, GLshort r);
  1916. void glMultiTexCoord3iv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1917. %MethodCode
  1918. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  1919. if (sipError == sipErrorNone)
  1920. sipCpp->glMultiTexCoord3iv(a0, reinterpret_cast<const GLint *>(array));
  1921. %End
  1922. void glMultiTexCoord3i(GLenum target, GLint s, GLint t, GLint r);
  1923. void glMultiTexCoord3fv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1924. %MethodCode
  1925. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  1926. if (sipError == sipErrorNone)
  1927. sipCpp->glMultiTexCoord3fv(a0, reinterpret_cast<const GLfloat *>(array));
  1928. %End
  1929. void glMultiTexCoord3f(GLenum target, GLfloat s, GLfloat t, GLfloat r);
  1930. void glMultiTexCoord3dv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1931. %MethodCode
  1932. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  1933. if (sipError == sipErrorNone)
  1934. sipCpp->glMultiTexCoord3dv(a0, reinterpret_cast<const GLdouble *>(array));
  1935. %End
  1936. void glMultiTexCoord3d(GLenum target, GLdouble s, GLdouble t, GLdouble r);
  1937. void glMultiTexCoord2sv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1938. %MethodCode
  1939. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  1940. if (sipError == sipErrorNone)
  1941. sipCpp->glMultiTexCoord2sv(a0, reinterpret_cast<const GLshort *>(array));
  1942. %End
  1943. void glMultiTexCoord2s(GLenum target, GLshort s, GLshort t);
  1944. void glMultiTexCoord2iv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1945. %MethodCode
  1946. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  1947. if (sipError == sipErrorNone)
  1948. sipCpp->glMultiTexCoord2iv(a0, reinterpret_cast<const GLint *>(array));
  1949. %End
  1950. void glMultiTexCoord2i(GLenum target, GLint s, GLint t);
  1951. void glMultiTexCoord2fv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1952. %MethodCode
  1953. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  1954. if (sipError == sipErrorNone)
  1955. sipCpp->glMultiTexCoord2fv(a0, reinterpret_cast<const GLfloat *>(array));
  1956. %End
  1957. void glMultiTexCoord2f(GLenum target, GLfloat s, GLfloat t);
  1958. void glMultiTexCoord2dv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1959. %MethodCode
  1960. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  1961. if (sipError == sipErrorNone)
  1962. sipCpp->glMultiTexCoord2dv(a0, reinterpret_cast<const GLdouble *>(array));
  1963. %End
  1964. void glMultiTexCoord2d(GLenum target, GLdouble s, GLdouble t);
  1965. void glMultiTexCoord1sv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1966. %MethodCode
  1967. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  1968. if (sipError == sipErrorNone)
  1969. sipCpp->glMultiTexCoord1sv(a0, reinterpret_cast<const GLshort *>(array));
  1970. %End
  1971. void glMultiTexCoord1s(GLenum target, GLshort s);
  1972. void glMultiTexCoord1iv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1973. %MethodCode
  1974. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  1975. if (sipError == sipErrorNone)
  1976. sipCpp->glMultiTexCoord1iv(a0, reinterpret_cast<const GLint *>(array));
  1977. %End
  1978. void glMultiTexCoord1i(GLenum target, GLint s);
  1979. void glMultiTexCoord1fv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1980. %MethodCode
  1981. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  1982. if (sipError == sipErrorNone)
  1983. sipCpp->glMultiTexCoord1fv(a0, reinterpret_cast<const GLfloat *>(array));
  1984. %End
  1985. void glMultiTexCoord1f(GLenum target, GLfloat s);
  1986. void glMultiTexCoord1dv(GLenum target, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1987. %MethodCode
  1988. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  1989. if (sipError == sipErrorNone)
  1990. sipCpp->glMultiTexCoord1dv(a0, reinterpret_cast<const GLdouble *>(array));
  1991. %End
  1992. void glMultiTexCoord1d(GLenum target, GLdouble s);
  1993. void glClientActiveTexture(GLenum texture);
  1994. void glWindowPos3sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  1995. %MethodCode
  1996. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  1997. if (sipError == sipErrorNone)
  1998. sipCpp->glWindowPos3sv(reinterpret_cast<const GLshort *>(array));
  1999. %End
  2000. void glWindowPos3s(GLshort x, GLshort y, GLshort z);
  2001. void glWindowPos3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2002. %MethodCode
  2003. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  2004. if (sipError == sipErrorNone)
  2005. sipCpp->glWindowPos3iv(reinterpret_cast<const GLint *>(array));
  2006. %End
  2007. void glWindowPos3i(GLint x, GLint y, GLint z);
  2008. void glWindowPos3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2009. %MethodCode
  2010. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  2011. if (sipError == sipErrorNone)
  2012. sipCpp->glWindowPos3fv(reinterpret_cast<const GLfloat *>(array));
  2013. %End
  2014. void glWindowPos3f(GLfloat x, GLfloat y, GLfloat z);
  2015. void glWindowPos3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2016. %MethodCode
  2017. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  2018. if (sipError == sipErrorNone)
  2019. sipCpp->glWindowPos3dv(reinterpret_cast<const GLdouble *>(array));
  2020. %End
  2021. void glWindowPos3d(GLdouble x, GLdouble y, GLdouble z);
  2022. void glWindowPos2sv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2023. %MethodCode
  2024. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  2025. if (sipError == sipErrorNone)
  2026. sipCpp->glWindowPos2sv(reinterpret_cast<const GLshort *>(array));
  2027. %End
  2028. void glWindowPos2s(GLshort x, GLshort y);
  2029. void glWindowPos2iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2030. %MethodCode
  2031. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  2032. if (sipError == sipErrorNone)
  2033. sipCpp->glWindowPos2iv(reinterpret_cast<const GLint *>(array));
  2034. %End
  2035. void glWindowPos2i(GLint x, GLint y);
  2036. void glWindowPos2fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2037. %MethodCode
  2038. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  2039. if (sipError == sipErrorNone)
  2040. sipCpp->glWindowPos2fv(reinterpret_cast<const GLfloat *>(array));
  2041. %End
  2042. void glWindowPos2f(GLfloat x, GLfloat y);
  2043. void glWindowPos2dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2044. %MethodCode
  2045. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  2046. if (sipError == sipErrorNone)
  2047. sipCpp->glWindowPos2dv(reinterpret_cast<const GLdouble *>(array));
  2048. %End
  2049. void glWindowPos2d(GLdouble x, GLdouble y);
  2050. void glSecondaryColorPointer(GLint size, GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_ARRAY"/);
  2051. %MethodCode
  2052. const GLvoid *array = qpyopengl_value_array(&sipError, a3, a1, sipSelf);
  2053. if (sipError == sipErrorNone)
  2054. sipCpp->glSecondaryColorPointer(a0, a1, a2, array);
  2055. %End
  2056. void glSecondaryColor3usv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2057. %MethodCode
  2058. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_SHORT,
  2059. sipSelf);
  2060. if (sipError == sipErrorNone)
  2061. sipCpp->glSecondaryColor3usv(reinterpret_cast<const GLushort *>(array));
  2062. %End
  2063. void glSecondaryColor3us(GLushort red, GLushort green, GLushort blue);
  2064. void glSecondaryColor3uiv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2065. %MethodCode
  2066. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_INT,
  2067. sipSelf);
  2068. if (sipError == sipErrorNone)
  2069. sipCpp->glSecondaryColor3uiv(reinterpret_cast<const GLuint *>(array));
  2070. %End
  2071. void glSecondaryColor3ui(GLuint red, GLuint green, GLuint blue);
  2072. void glSecondaryColor3ubv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2073. %MethodCode
  2074. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_UNSIGNED_BYTE,
  2075. sipSelf);
  2076. if (sipError == sipErrorNone)
  2077. sipCpp->glSecondaryColor3ubv(reinterpret_cast<const GLubyte *>(array));
  2078. %End
  2079. void glSecondaryColor3ub(GLubyte red, GLubyte green, GLubyte blue);
  2080. void glSecondaryColor3sv(SIP_PYBUFFER v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2081. %MethodCode
  2082. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_SHORT, sipSelf);
  2083. if (sipError == sipErrorNone)
  2084. sipCpp->glSecondaryColor3sv(reinterpret_cast<const GLshort *>(array));
  2085. %End
  2086. void glSecondaryColor3s(GLshort red, GLshort green, GLshort blue);
  2087. void glSecondaryColor3iv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2088. %MethodCode
  2089. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_INT, sipSelf);
  2090. if (sipError == sipErrorNone)
  2091. sipCpp->glSecondaryColor3iv(reinterpret_cast<const GLint *>(array));
  2092. %End
  2093. void glSecondaryColor3i(GLint red, GLint green, GLint blue);
  2094. void glSecondaryColor3fv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2095. %MethodCode
  2096. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  2097. if (sipError == sipErrorNone)
  2098. sipCpp->glSecondaryColor3fv(reinterpret_cast<const GLfloat *>(array));
  2099. %End
  2100. void glSecondaryColor3f(GLfloat red, GLfloat green, GLfloat blue);
  2101. void glSecondaryColor3dv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2102. %MethodCode
  2103. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  2104. if (sipError == sipErrorNone)
  2105. sipCpp->glSecondaryColor3dv(reinterpret_cast<const GLdouble *>(array));
  2106. %End
  2107. void glSecondaryColor3d(GLdouble red, GLdouble green, GLdouble blue);
  2108. void glSecondaryColor3bv(SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2109. %MethodCode
  2110. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_BYTE, sipSelf);
  2111. if (sipError == sipErrorNone)
  2112. sipCpp->glSecondaryColor3bv(reinterpret_cast<const GLbyte *>(array));
  2113. %End
  2114. void glSecondaryColor3b(GLbyte red, GLbyte green, GLbyte blue);
  2115. void glFogCoordPointer(GLenum type, GLsizei stride, SIP_PYOBJECT pointer /TypeHint="PYQT_OPENGL_ARRAY"/);
  2116. %MethodCode
  2117. const GLvoid *array = qpyopengl_value_array(&sipError, a2, a0, sipSelf);
  2118. if (sipError == sipErrorNone)
  2119. sipCpp->glFogCoordPointer(a0, a1, array);
  2120. %End
  2121. void glFogCoorddv(SIP_PYOBJECT coord /TypeHint="PYQT_OPENGL_ARRAY"/);
  2122. %MethodCode
  2123. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_DOUBLE, sipSelf);
  2124. if (sipError == sipErrorNone)
  2125. sipCpp->glFogCoorddv(reinterpret_cast<const GLdouble *>(array));
  2126. %End
  2127. void glFogCoordd(GLdouble coord);
  2128. void glFogCoordfv(SIP_PYOBJECT coord /TypeHint="PYQT_OPENGL_ARRAY"/);
  2129. %MethodCode
  2130. const GLvoid *array = qpyopengl_value_array(&sipError, a0, GL_FLOAT, sipSelf);
  2131. if (sipError == sipErrorNone)
  2132. sipCpp->glFogCoordfv(reinterpret_cast<const GLfloat *>(array));
  2133. %End
  2134. void glFogCoordf(GLfloat coord);
  2135. void glVertexAttrib4usv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2136. %MethodCode
  2137. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_SHORT,
  2138. sipSelf);
  2139. if (sipError == sipErrorNone)
  2140. sipCpp->glVertexAttrib4usv(a0, reinterpret_cast<const GLushort *>(array));
  2141. %End
  2142. void glVertexAttrib4uiv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2143. %MethodCode
  2144. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_INT,
  2145. sipSelf);
  2146. if (sipError == sipErrorNone)
  2147. sipCpp->glVertexAttrib4uiv(a0, reinterpret_cast<const GLuint *>(array));
  2148. %End
  2149. void glVertexAttrib4ubv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2150. %MethodCode
  2151. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_BYTE,
  2152. sipSelf);
  2153. if (sipError == sipErrorNone)
  2154. sipCpp->glVertexAttrib4ubv(a0, reinterpret_cast<const GLubyte *>(array));
  2155. %End
  2156. void glVertexAttrib4sv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2157. %MethodCode
  2158. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  2159. if (sipError == sipErrorNone)
  2160. sipCpp->glVertexAttrib4sv(a0, reinterpret_cast<const GLshort *>(array));
  2161. %End
  2162. void glVertexAttrib4s(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w);
  2163. void glVertexAttrib4iv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2164. %MethodCode
  2165. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  2166. if (sipError == sipErrorNone)
  2167. sipCpp->glVertexAttrib4iv(a0, reinterpret_cast<const GLint *>(array));
  2168. %End
  2169. void glVertexAttrib4fv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2170. %MethodCode
  2171. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  2172. if (sipError == sipErrorNone)
  2173. sipCpp->glVertexAttrib4fv(a0, reinterpret_cast<const GLfloat *>(array));
  2174. %End
  2175. void glVertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
  2176. void glVertexAttrib4dv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2177. %MethodCode
  2178. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  2179. if (sipError == sipErrorNone)
  2180. sipCpp->glVertexAttrib4dv(a0, reinterpret_cast<const GLdouble *>(array));
  2181. %End
  2182. void glVertexAttrib4d(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  2183. void glVertexAttrib4bv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2184. %MethodCode
  2185. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_BYTE, sipSelf);
  2186. if (sipError == sipErrorNone)
  2187. sipCpp->glVertexAttrib4bv(a0, reinterpret_cast<const GLbyte *>(array));
  2188. %End
  2189. void glVertexAttrib4Nusv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2190. %MethodCode
  2191. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_SHORT,
  2192. sipSelf);
  2193. if (sipError == sipErrorNone)
  2194. sipCpp->glVertexAttrib4Nusv(a0, reinterpret_cast<const GLushort *>(array));
  2195. %End
  2196. void glVertexAttrib4Nuiv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2197. %MethodCode
  2198. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_INT,
  2199. sipSelf);
  2200. if (sipError == sipErrorNone)
  2201. sipCpp->glVertexAttrib4Nuiv(a0, reinterpret_cast<const GLuint *>(array));
  2202. %End
  2203. void glVertexAttrib4Nubv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2204. %MethodCode
  2205. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_UNSIGNED_BYTE,
  2206. sipSelf);
  2207. if (sipError == sipErrorNone)
  2208. sipCpp->glVertexAttrib4Nubv(a0, reinterpret_cast<const GLubyte *>(array));
  2209. %End
  2210. void glVertexAttrib4Nub(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
  2211. void glVertexAttrib4Nsv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2212. %MethodCode
  2213. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  2214. if (sipError == sipErrorNone)
  2215. sipCpp->glVertexAttrib4Nsv(a0, reinterpret_cast<const GLshort *>(array));
  2216. %End
  2217. void glVertexAttrib4Niv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2218. %MethodCode
  2219. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_INT, sipSelf);
  2220. if (sipError == sipErrorNone)
  2221. sipCpp->glVertexAttrib4Niv(a0, reinterpret_cast<const GLint *>(array));
  2222. %End
  2223. void glVertexAttrib4Nbv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2224. %MethodCode
  2225. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_BYTE, sipSelf);
  2226. if (sipError == sipErrorNone)
  2227. sipCpp->glVertexAttrib4Nbv(a0, reinterpret_cast<const GLbyte *>(array));
  2228. %End
  2229. void glVertexAttrib3sv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2230. %MethodCode
  2231. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  2232. if (sipError == sipErrorNone)
  2233. sipCpp->glVertexAttrib3sv(a0, reinterpret_cast<const GLshort *>(array));
  2234. %End
  2235. void glVertexAttrib3s(GLuint index, GLshort x, GLshort y, GLshort z);
  2236. void glVertexAttrib3fv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2237. %MethodCode
  2238. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  2239. if (sipError == sipErrorNone)
  2240. sipCpp->glVertexAttrib3fv(a0, reinterpret_cast<const GLfloat *>(array));
  2241. %End
  2242. void glVertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z);
  2243. void glVertexAttrib3dv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2244. %MethodCode
  2245. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  2246. if (sipError == sipErrorNone)
  2247. sipCpp->glVertexAttrib3dv(a0, reinterpret_cast<const GLdouble *>(array));
  2248. %End
  2249. void glVertexAttrib3d(GLuint index, GLdouble x, GLdouble y, GLdouble z);
  2250. void glVertexAttrib2sv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2251. %MethodCode
  2252. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  2253. if (sipError == sipErrorNone)
  2254. sipCpp->glVertexAttrib2sv(a0, reinterpret_cast<const GLshort *>(array));
  2255. %End
  2256. void glVertexAttrib2s(GLuint index, GLshort x, GLshort y);
  2257. void glVertexAttrib2fv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2258. %MethodCode
  2259. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  2260. if (sipError == sipErrorNone)
  2261. sipCpp->glVertexAttrib2fv(a0, reinterpret_cast<const GLfloat *>(array));
  2262. %End
  2263. void glVertexAttrib2f(GLuint index, GLfloat x, GLfloat y);
  2264. void glVertexAttrib2dv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2265. %MethodCode
  2266. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  2267. if (sipError == sipErrorNone)
  2268. sipCpp->glVertexAttrib2dv(a0, reinterpret_cast<const GLdouble *>(array));
  2269. %End
  2270. void glVertexAttrib2d(GLuint index, GLdouble x, GLdouble y);
  2271. void glVertexAttrib1sv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2272. %MethodCode
  2273. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_SHORT, sipSelf);
  2274. if (sipError == sipErrorNone)
  2275. sipCpp->glVertexAttrib1sv(a0, reinterpret_cast<const GLshort *>(array));
  2276. %End
  2277. void glVertexAttrib1s(GLuint index, GLshort x);
  2278. void glVertexAttrib1fv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2279. %MethodCode
  2280. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_FLOAT, sipSelf);
  2281. if (sipError == sipErrorNone)
  2282. sipCpp->glVertexAttrib1fv(a0, reinterpret_cast<const GLfloat *>(array));
  2283. %End
  2284. void glVertexAttrib1f(GLuint index, GLfloat x);
  2285. void glVertexAttrib1dv(GLuint index, SIP_PYOBJECT v /TypeHint="PYQT_OPENGL_ARRAY"/);
  2286. %MethodCode
  2287. const GLvoid *array = qpyopengl_value_array(&sipError, a1, GL_DOUBLE, sipSelf);
  2288. if (sipError == sipErrorNone)
  2289. sipCpp->glVertexAttrib1dv(a0, reinterpret_cast<const GLdouble *>(array));
  2290. %End
  2291. void glVertexAttrib1d(GLuint index, GLdouble x);
  2292. };
  2293. %End