myopengl.h 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873
  1. /*
  2. Copyright (C) 2005 Michael Liebscher
  3. This program is free software; you can redistribute it and/or
  4. modify it under the terms of the GNU General Public License
  5. as published by the Free Software Foundation; either version 2
  6. of the License, or (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program; if not, write to the Free Software
  13. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  14. */
  15. /*
  16. * MyOpenGL.h: OpenGL Interface
  17. *
  18. * Author: Michael Liebscher <johnnycanuck@users.sourceforge.net>
  19. *
  20. */
  21. /*
  22. Notes:
  23. This module is implemented by opengl_win.c.
  24. */
  25. #ifndef __MYOPENGL_H__
  26. #define __MYOPENGL_H__
  27. #ifdef _WIN32
  28. #define WIN32_LEAN_AND_MEAN 1
  29. #include <windows.h>
  30. #endif
  31. #ifdef IPHONE
  32. #include <OpenGLES/ES1/gl.h>
  33. #include <OpenGLES/ES1/glext.h>
  34. #else
  35. #include <GL/gl.h>
  36. #endif
  37. #ifdef __unix__
  38. #include <GL/glx.h>
  39. #endif
  40. extern int OpenGL_Init( const char *dllname );
  41. extern void OpenGL_Shutdown( void );
  42. #ifndef APIENTRY
  43. #define APIENTRY
  44. #endif
  45. #ifndef APIENTRYP
  46. #define APIENTRYP APIENTRY *
  47. #endif
  48. typedef GLvoid ( APIENTRYP GLACCUM )(GLenum op, GLfloat value);
  49. typedef GLvoid ( APIENTRYP GLALPHAFUNC )(GLenum func, GLclampf ref);
  50. typedef GLboolean ( APIENTRYP GLARETEXTURESRESIDENT )(GLsizei n, const GLuint *textures, GLboolean *residences);
  51. typedef GLvoid ( APIENTRYP GLARRAYELEMENT )(GLint i);
  52. typedef GLvoid ( APIENTRYP GLBEGIN )(GLenum mode);
  53. typedef GLvoid ( APIENTRYP GLBINDTEXTURE )(GLenum target, GLuint texture);
  54. typedef GLvoid ( APIENTRYP GLBITMAP )(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap);
  55. typedef GLvoid ( APIENTRYP GLBLENDFUNC )(GLenum sfactor, GLenum dfactor);
  56. typedef GLvoid ( APIENTRYP GLCALLLIST )(GLuint list);
  57. typedef GLvoid ( APIENTRYP GLCALLLISTS )(GLsizei n, GLenum type, const GLvoid *lists);
  58. typedef GLvoid ( APIENTRYP GLCLEAR )(GLbitfield mask);
  59. typedef GLvoid ( APIENTRYP GLCLEARACCUM )(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  60. typedef GLvoid ( APIENTRYP GLCLEARCOLOR )(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha);
  61. typedef GLvoid ( APIENTRYP GLCLEARDEPTH )(GLclampd depth);
  62. typedef GLvoid ( APIENTRYP GLCLEARINDEX )(GLfloat c);
  63. typedef GLvoid ( APIENTRYP GLCLEARSTENCIL )(GLint s);
  64. typedef GLvoid ( APIENTRYP GLCLIPPLANE )(GLenum plane, const GLdouble *equation);
  65. typedef GLvoid ( APIENTRYP GLCOLOR3B )(GLbyte red, GLbyte green, GLbyte blue);
  66. typedef GLvoid ( APIENTRYP GLCOLOR3BV )(const GLbyte *v);
  67. typedef GLvoid ( APIENTRYP GLCOLOR3D )(GLdouble red, GLdouble green, GLdouble blue);
  68. typedef GLvoid ( APIENTRYP GLCOLOR3DV )(const GLdouble *v);
  69. typedef GLvoid ( APIENTRYP GLCOLOR3F )(GLfloat red, GLfloat green, GLfloat blue);
  70. typedef GLvoid ( APIENTRYP GLCOLOR3FV )(const GLfloat *v);
  71. typedef GLvoid ( APIENTRYP GLCOLOR3I )(GLint red, GLint green, GLint blue);
  72. typedef GLvoid ( APIENTRYP GLCOLOR3IV )(const GLint *v);
  73. typedef GLvoid ( APIENTRYP GLCOLOR3S )(GLshort red, GLshort green, GLshort blue);
  74. typedef GLvoid ( APIENTRYP GLCOLOR3SV )(const GLshort *v);
  75. typedef GLvoid ( APIENTRYP GLCOLOR3UB )(GLubyte red, GLubyte green, GLubyte blue);
  76. typedef GLvoid ( APIENTRYP GLCOLOR3UBV )(const GLubyte *v);
  77. typedef GLvoid ( APIENTRYP GLCOLOR3UI )(GLuint red, GLuint green, GLuint blue);
  78. typedef GLvoid ( APIENTRYP GLCOLOR3UIV )(const GLuint *v);
  79. typedef GLvoid ( APIENTRYP GLCOLOR3US )(GLushort red, GLushort green, GLushort blue);
  80. typedef GLvoid ( APIENTRYP GLCOLOR3USV )(const GLushort *v);
  81. typedef GLvoid ( APIENTRYP GLCOLOR4B )(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha);
  82. typedef GLvoid ( APIENTRYP GLCOLOR4BV )(const GLbyte *v);
  83. typedef GLvoid ( APIENTRYP GLCOLOR4D )(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha);
  84. typedef GLvoid ( APIENTRYP GLCOLOR4DV )(const GLdouble *v);
  85. typedef GLvoid ( APIENTRYP GLCOLOR4F )(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
  86. typedef GLvoid ( APIENTRYP GLCOLOR4FV )(const GLfloat *v);
  87. typedef GLvoid ( APIENTRYP GLCOLOR4I )(GLint red, GLint green, GLint blue, GLint alpha);
  88. typedef GLvoid ( APIENTRYP GLCOLOR4IV )(const GLint *v);
  89. typedef GLvoid ( APIENTRYP GLCOLOR4S )(GLshort red, GLshort green, GLshort blue, GLshort alpha);
  90. typedef GLvoid ( APIENTRYP GLCOLOR4SV )(const GLshort *v);
  91. typedef GLvoid ( APIENTRYP GLCOLOR4UB )(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha);
  92. typedef GLvoid ( APIENTRYP GLCOLOR4UBV )(const GLubyte *v);
  93. typedef GLvoid ( APIENTRYP GLCOLOR4UI )(GLuint red, GLuint green, GLuint blue, GLuint alpha);
  94. typedef GLvoid ( APIENTRYP GLCOLOR4UIV )(const GLuint *v);
  95. typedef GLvoid ( APIENTRYP GLCOLOR4US )(GLushort red, GLushort green, GLushort blue, GLushort alpha);
  96. typedef GLvoid ( APIENTRYP GLCOLOR4USV )(const GLushort *v);
  97. typedef GLvoid ( APIENTRYP GLCOLORMASK )(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
  98. typedef GLvoid ( APIENTRYP GLCOLORMATERIAL )(GLenum face, GLenum mode);
  99. typedef GLvoid ( APIENTRYP GLCOLORPOINTER )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  100. typedef GLvoid ( APIENTRYP GLCOPYPIXELS )(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type);
  101. typedef GLvoid ( APIENTRYP GLCOPYTEXIMAGE1D )(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLint border);
  102. typedef GLvoid ( APIENTRYP GLCOPYTEXIMAGE2D )(GLenum target, GLint level, GLenum internalFormat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
  103. typedef GLvoid ( APIENTRYP GLCOPYTEXSUBIMAGE1D )(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width);
  104. typedef GLvoid ( APIENTRYP GLCOPYTEXSUBIMAGE2D )(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
  105. typedef GLvoid ( APIENTRYP GLCULLFACE )(GLenum mode);
  106. typedef GLvoid ( APIENTRYP GLDELETELISTS )(GLuint list, GLsizei range);
  107. typedef GLvoid ( APIENTRYP GLDELETETEXTURES )(GLsizei n, const GLuint *textures);
  108. typedef GLvoid ( APIENTRYP GLDEPTHFUNC )(GLenum func);
  109. typedef GLvoid ( APIENTRYP GLDEPTHMASK )(GLboolean flag);
  110. typedef GLvoid ( APIENTRYP GLDEPTHRANGE )(GLclampd zNear, GLclampd zFar);
  111. typedef GLvoid ( APIENTRYP GLDISABLE )(GLenum cap);
  112. typedef GLvoid ( APIENTRYP GLDISABLECLIENTSTATE )(GLenum array);
  113. typedef GLvoid ( APIENTRYP GLDRAWARRAYS )(GLenum mode, GLint first, GLsizei count);
  114. typedef GLvoid ( APIENTRYP GLDRAWBUFFER )(GLenum mode);
  115. typedef GLvoid ( APIENTRYP GLDRAWELEMENTS )(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices);
  116. typedef GLvoid ( APIENTRYP GLDRAWPIXELS )(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
  117. typedef GLvoid ( APIENTRYP GLEDGEFLAG )(GLboolean flag);
  118. typedef GLvoid ( APIENTRYP GLEDGEFLAGPOINTER )(GLsizei stride, const GLvoid *pointer);
  119. typedef GLvoid ( APIENTRYP GLEDGEFLAGV )(const GLboolean *flag);
  120. typedef GLvoid ( APIENTRYP GLENABLE )(GLenum cap);
  121. typedef GLvoid ( APIENTRYP GLENABLECLIENTSTATE )(GLenum array);
  122. typedef GLvoid ( APIENTRYP GLEND )(void);
  123. typedef GLvoid ( APIENTRYP GLENDLIST )(void);
  124. typedef GLvoid ( APIENTRYP GLEVALCOORD1D )(GLdouble u);
  125. typedef GLvoid ( APIENTRYP GLEVALCOORD1DV )(const GLdouble *u);
  126. typedef GLvoid ( APIENTRYP GLEVALCOORD1F )(GLfloat u);
  127. typedef GLvoid ( APIENTRYP GLEVALCOORD1FV )(const GLfloat *u);
  128. typedef GLvoid ( APIENTRYP GLEVALCOORD2D )(GLdouble u, GLdouble v);
  129. typedef GLvoid ( APIENTRYP GLEVALCOORD2DV )(const GLdouble *u);
  130. typedef GLvoid ( APIENTRYP GLEVALCOORD2F )(GLfloat u, GLfloat v);
  131. typedef GLvoid ( APIENTRYP GLEVALCOORD2FV )(const GLfloat *u);
  132. typedef GLvoid ( APIENTRYP GLEVALMESH1 )(GLenum mode, GLint i1, GLint i2);
  133. typedef GLvoid ( APIENTRYP GLEVALMESH2 )(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2);
  134. typedef GLvoid ( APIENTRYP GLEVALPOINT1 )(GLint i);
  135. typedef GLvoid ( APIENTRYP GLEVALPOINT2 )(GLint i, GLint j);
  136. typedef GLvoid ( APIENTRYP GLFEEDBACKBUFFER )(GLsizei size, GLenum type, GLfloat *buffer);
  137. typedef GLvoid ( APIENTRYP GLFINISH )(void);
  138. typedef GLvoid ( APIENTRYP GLFLUSH )(void);
  139. typedef GLvoid ( APIENTRYP GLFOGF )(GLenum pname, GLfloat param);
  140. typedef GLvoid ( APIENTRYP GLFOGFV )(GLenum pname, const GLfloat *params);
  141. typedef GLvoid ( APIENTRYP GLFOGI )(GLenum pname, GLint param);
  142. typedef GLvoid ( APIENTRYP GLFOGIV )(GLenum pname, const GLint *params);
  143. typedef GLvoid ( APIENTRYP GLFRONTFACE )(GLenum mode);
  144. typedef GLvoid ( APIENTRYP GLFRUSTUM )(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
  145. typedef GLuint ( APIENTRYP GLGENLISTS )(GLsizei range);
  146. typedef GLvoid ( APIENTRYP GLGENTEXTURES )(GLsizei n, GLuint *textures);
  147. typedef GLvoid ( APIENTRYP GLGETBOOLEANV )(GLenum pname, GLboolean *params);
  148. typedef GLvoid ( APIENTRYP GLGETCLIPPLANE )(GLenum plane, GLdouble *equation);
  149. typedef GLvoid ( APIENTRYP GLGETDOUBLEV )(GLenum pname, GLdouble *params);
  150. typedef GLenum ( APIENTRYP GLGETERROR )(void);
  151. typedef GLvoid ( APIENTRYP GLGETFLOATV )(GLenum pname, GLfloat *params);
  152. typedef GLvoid ( APIENTRYP GLGETINTEGERV )(GLenum pname, GLint *params);
  153. typedef GLvoid ( APIENTRYP GLGETLIGHTFV )(GLenum light, GLenum pname, GLfloat *params);
  154. typedef GLvoid ( APIENTRYP GLGETLIGHTIV )(GLenum light, GLenum pname, GLint *params);
  155. typedef GLvoid ( APIENTRYP GLGETMAPDV )(GLenum target, GLenum query, GLdouble *v);
  156. typedef GLvoid ( APIENTRYP GLGETMAPFV )(GLenum target, GLenum query, GLfloat *v);
  157. typedef GLvoid ( APIENTRYP GLGETMAPIV )(GLenum target, GLenum query, GLint *v);
  158. typedef GLvoid ( APIENTRYP GLGETMATERIALFV )(GLenum face, GLenum pname, GLfloat *params);
  159. typedef GLvoid ( APIENTRYP GLGETMATERIALIV )(GLenum face, GLenum pname, GLint *params);
  160. typedef GLvoid ( APIENTRYP GLGETPIXELMAPFV )(GLenum map, GLfloat *values);
  161. typedef GLvoid ( APIENTRYP GLGETPIXELMAPUIV )(GLenum map, GLuint *values);
  162. typedef GLvoid ( APIENTRYP GLGETPIXELMAPUSV )(GLenum map, GLushort *values);
  163. typedef GLvoid ( APIENTRYP GLGETPOINTERV )(GLenum pname, GLvoid* *params);
  164. typedef GLvoid ( APIENTRYP GLGETPOLYGONSTIPPLE )(GLubyte *mask);
  165. typedef const GLubyte * ( APIENTRYP GLGETSTRING )(GLenum name);
  166. typedef GLvoid ( APIENTRYP GLGETTEXENVFV )(GLenum target, GLenum pname, GLfloat *params);
  167. typedef GLvoid ( APIENTRYP GLGETTEXENVIV )(GLenum target, GLenum pname, GLint *params);
  168. typedef GLvoid ( APIENTRYP GLGETTEXGENDV )(GLenum coord, GLenum pname, GLdouble *params);
  169. typedef GLvoid ( APIENTRYP GLGETTEXGENFV )(GLenum coord, GLenum pname, GLfloat *params);
  170. typedef GLvoid ( APIENTRYP GLGETTEXGENIV )(GLenum coord, GLenum pname, GLint *params);
  171. typedef GLvoid ( APIENTRYP GLGETTEXIMAGE )(GLenum target, GLint level, GLenum format, GLenum type, GLvoid *pixels);
  172. typedef GLvoid ( APIENTRYP GLGETTEXPARAMETERFV )(GLenum target, GLenum pname, GLfloat *params);
  173. typedef GLvoid ( APIENTRYP GLGETTEXPARAMETERIV )(GLenum target, GLenum pname, GLint *params);
  174. typedef GLvoid ( APIENTRYP GLHINT )(GLenum target, GLenum mode);
  175. typedef GLvoid ( APIENTRYP GLINDEXMASK )(GLuint mask);
  176. typedef GLvoid ( APIENTRYP GLINDEXPOINTER )(GLenum type, GLsizei stride, const GLvoid *pointer);
  177. typedef GLvoid ( APIENTRYP GLINDEXD )(GLdouble c);
  178. typedef GLvoid ( APIENTRYP GLINDEXDV )(const GLdouble *c);
  179. typedef GLvoid ( APIENTRYP GLINDEXF )(GLfloat c);
  180. typedef GLvoid ( APIENTRYP GLINDEXFV )(const GLfloat *c);
  181. typedef GLvoid ( APIENTRYP GLINDEXI )(GLint c);
  182. typedef GLvoid ( APIENTRYP GLINDEXIV )(const GLint *c);
  183. typedef GLvoid ( APIENTRYP GLINDEXS )(GLshort c);
  184. typedef GLvoid ( APIENTRYP GLINDEXSV )(const GLshort *c);
  185. typedef GLvoid ( APIENTRYP GLINDEXUB )(GLubyte c);
  186. typedef GLvoid ( APIENTRYP GLINDEXUBV )(const GLubyte *c);
  187. typedef GLvoid ( APIENTRYP GLINITNAMES )(void);
  188. typedef GLvoid ( APIENTRYP GLINTERLEAVEDARRAYS )(GLenum format, GLsizei stride, const GLvoid *pointer);
  189. typedef GLboolean ( APIENTRYP GLISENABLED )(GLenum cap);
  190. typedef GLboolean ( APIENTRYP GLISLIST )(GLuint list);
  191. typedef GLboolean ( APIENTRYP GLISTEXTURE )(GLuint texture);
  192. typedef GLvoid ( APIENTRYP GLLIGHTMODELF )(GLenum pname, GLfloat param);
  193. typedef GLvoid ( APIENTRYP GLLIGHTMODELFV )(GLenum pname, const GLfloat *params);
  194. typedef GLvoid ( APIENTRYP GLLIGHTMODELI )(GLenum pname, GLint param);
  195. typedef GLvoid ( APIENTRYP GLLIGHTMODELIV )(GLenum pname, const GLint *params);
  196. typedef GLvoid ( APIENTRYP GLLIGHTF )(GLenum light, GLenum pname, GLfloat param);
  197. typedef GLvoid ( APIENTRYP GLLIGHTFV )(GLenum light, GLenum pname, const GLfloat *params);
  198. typedef GLvoid ( APIENTRYP GLLIGHTI )(GLenum light, GLenum pname, GLint param);
  199. typedef GLvoid ( APIENTRYP GLLIGHTIV )(GLenum light, GLenum pname, const GLint *params);
  200. typedef GLvoid ( APIENTRYP GLLINESTIPPLE )(GLint factor, GLushort pattern);
  201. typedef GLvoid ( APIENTRYP GLLINEWIDTH )(GLfloat width);
  202. typedef GLvoid ( APIENTRYP GLLISTBASE )(GLuint base);
  203. typedef GLvoid ( APIENTRYP GLLOADIDENTITY )(void);
  204. typedef GLvoid ( APIENTRYP GLLOADMATRIXD )(const GLdouble *m);
  205. typedef GLvoid ( APIENTRYP GLLOADMATRIXF )(const GLfloat *m);
  206. typedef GLvoid ( APIENTRYP GLLOADNAME )(GLuint name);
  207. typedef GLvoid ( APIENTRYP GLLOGICOP )(GLenum opcode);
  208. typedef GLvoid ( APIENTRYP GLMAP1D )(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points);
  209. typedef GLvoid ( APIENTRYP GLMAP1F )(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points);
  210. typedef GLvoid ( APIENTRYP GLMAP2D )(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points);
  211. typedef GLvoid ( APIENTRYP GLMAP2F )(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points);
  212. typedef GLvoid ( APIENTRYP GLMAPGRID1D )(GLint un, GLdouble u1, GLdouble u2);
  213. typedef GLvoid ( APIENTRYP GLMAPGRID1F )(GLint un, GLfloat u1, GLfloat u2);
  214. typedef GLvoid ( APIENTRYP GLMAPGRID2D )(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2);
  215. typedef GLvoid ( APIENTRYP GLMAPGRID2F )(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2);
  216. typedef GLvoid ( APIENTRYP GLMATERIALF )(GLenum face, GLenum pname, GLfloat param);
  217. typedef GLvoid ( APIENTRYP GLMATERIALFV )(GLenum face, GLenum pname, const GLfloat *params);
  218. typedef GLvoid ( APIENTRYP GLMATERIALI )(GLenum face, GLenum pname, GLint param);
  219. typedef GLvoid ( APIENTRYP GLMATERIALIV )(GLenum face, GLenum pname, const GLint *params);
  220. typedef GLvoid ( APIENTRYP GLMATRIXMODE )(GLenum mode);
  221. typedef GLvoid ( APIENTRYP GLMULTMATRIXD )(const GLdouble *m);
  222. typedef GLvoid ( APIENTRYP GLMULTMATRIXF )(const GLfloat *m);
  223. typedef GLvoid ( APIENTRYP GLNEWLIST )(GLuint list, GLenum mode);
  224. typedef GLvoid ( APIENTRYP GLNORMAL3B )(GLbyte nx, GLbyte ny, GLbyte nz);
  225. typedef GLvoid ( APIENTRYP GLNORMAL3BV )(const GLbyte *v);
  226. typedef GLvoid ( APIENTRYP GLNORMAL3D )(GLdouble nx, GLdouble ny, GLdouble nz);
  227. typedef GLvoid ( APIENTRYP GLNORMAL3DV )(const GLdouble *v);
  228. typedef GLvoid ( APIENTRYP GLNORMAL3F )(GLfloat nx, GLfloat ny, GLfloat nz);
  229. typedef GLvoid ( APIENTRYP GLNORMAL3FV )(const GLfloat *v);
  230. typedef GLvoid ( APIENTRYP GLNORMAL3I )(GLint nx, GLint ny, GLint nz);
  231. typedef GLvoid ( APIENTRYP GLNORMAL3IV )(const GLint *v);
  232. typedef GLvoid ( APIENTRYP GLNORMAL3S )(GLshort nx, GLshort ny, GLshort nz);
  233. typedef GLvoid ( APIENTRYP GLNORMAL3SV )(const GLshort *v);
  234. typedef GLvoid ( APIENTRYP GLNORMALPOINTER )(GLenum type, GLsizei stride, const GLvoid *pointer);
  235. typedef GLvoid ( APIENTRYP GLORTHO )(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
  236. typedef GLvoid ( APIENTRYP GLPASSTHROUGH )(GLfloat token);
  237. typedef GLvoid ( APIENTRYP GLPIXELMAPFV )(GLenum map, GLsizei mapsize, const GLfloat *values);
  238. typedef GLvoid ( APIENTRYP GLPIXELMAPUIV )(GLenum map, GLsizei mapsize, const GLuint *values);
  239. typedef GLvoid ( APIENTRYP GLPIXELMAPUSV )(GLenum map, GLsizei mapsize, const GLushort *values);
  240. typedef GLvoid ( APIENTRYP GLPIXELSTOREF )(GLenum pname, GLfloat param);
  241. typedef GLvoid ( APIENTRYP GLPIXELSTOREI )(GLenum pname, GLint param);
  242. typedef GLvoid ( APIENTRYP GLPIXELTRANSFERF )(GLenum pname, GLfloat param);
  243. typedef GLvoid ( APIENTRYP GLPIXELTRANSFERI )(GLenum pname, GLint param);
  244. typedef GLvoid ( APIENTRYP GLPIXELZOOM )(GLfloat xfactor, GLfloat yfactor);
  245. typedef GLvoid ( APIENTRYP GLPOINTSIZE )(GLfloat size);
  246. typedef GLvoid ( APIENTRYP GLPOLYGONMODE )(GLenum face, GLenum mode);
  247. typedef GLvoid ( APIENTRYP GLPOLYGONOFFSET )(GLfloat factor, GLfloat units);
  248. typedef GLvoid ( APIENTRYP GLPOLYGONSTIPPLE )(const GLubyte *mask);
  249. typedef GLvoid ( APIENTRYP GLPOPATTRIB )(void);
  250. typedef GLvoid ( APIENTRYP GLPOPCLIENTATTRIB )(void);
  251. typedef GLvoid ( APIENTRYP GLPOPMATRIX )(void);
  252. typedef GLvoid ( APIENTRYP GLPOPNAME )(void);
  253. typedef GLvoid ( APIENTRYP GLPRIORITIZETEXTURES )(GLsizei n, const GLuint *textures, const GLclampf *priorities);
  254. typedef GLvoid ( APIENTRYP GLPUSHATTRIB )(GLbitfield mask);
  255. typedef GLvoid ( APIENTRYP GLPUSHCLIENTATTRIB )(GLbitfield mask);
  256. typedef GLvoid ( APIENTRYP GLPUSHMATRIX )(void);
  257. typedef GLvoid ( APIENTRYP GLPUSHNAME )(GLuint name);
  258. typedef GLvoid ( APIENTRYP GLRASTERPOS2D )(GLdouble x, GLdouble y);
  259. typedef GLvoid ( APIENTRYP GLRASTERPOS2DV )(const GLdouble *v);
  260. typedef GLvoid ( APIENTRYP GLRASTERPOS2F )(GLfloat x, GLfloat y);
  261. typedef GLvoid ( APIENTRYP GLRASTERPOS2FV )(const GLfloat *v);
  262. typedef GLvoid ( APIENTRYP GLRASTERPOS2I )(GLint x, GLint y);
  263. typedef GLvoid ( APIENTRYP GLRASTERPOS2IV )(const GLint *v);
  264. typedef GLvoid ( APIENTRYP GLRASTERPOS2S )(GLshort x, GLshort y);
  265. typedef GLvoid ( APIENTRYP GLRASTERPOS2SV )(const GLshort *v);
  266. typedef GLvoid ( APIENTRYP GLRASTERPOS3D )(GLdouble x, GLdouble y, GLdouble z);
  267. typedef GLvoid ( APIENTRYP GLRASTERPOS3DV )(const GLdouble *v);
  268. typedef GLvoid ( APIENTRYP GLRASTERPOS3F )(GLfloat x, GLfloat y, GLfloat z);
  269. typedef GLvoid ( APIENTRYP GLRASTERPOS3FV )(const GLfloat *v);
  270. typedef GLvoid ( APIENTRYP GLRASTERPOS3I )(GLint x, GLint y, GLint z);
  271. typedef GLvoid ( APIENTRYP GLRASTERPOS3IV )(const GLint *v);
  272. typedef GLvoid ( APIENTRYP GLRASTERPOS3S )(GLshort x, GLshort y, GLshort z);
  273. typedef GLvoid ( APIENTRYP GLRASTERPOS3SV )(const GLshort *v);
  274. typedef GLvoid ( APIENTRYP GLRASTERPOS4D )(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  275. typedef GLvoid ( APIENTRYP GLRASTERPOS4DV )(const GLdouble *v);
  276. typedef GLvoid ( APIENTRYP GLRASTERPOS4F )(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
  277. typedef GLvoid ( APIENTRYP GLRASTERPOS4FV )(const GLfloat *v);
  278. typedef GLvoid ( APIENTRYP GLRASTERPOS4I )(GLint x, GLint y, GLint z, GLint w);
  279. typedef GLvoid ( APIENTRYP GLRASTERPOS4IV )(const GLint *v);
  280. typedef GLvoid ( APIENTRYP GLRASTERPOS4S )(GLshort x, GLshort y, GLshort z, GLshort w);
  281. typedef GLvoid ( APIENTRYP GLRASTERPOS4SV )(const GLshort *v);
  282. typedef GLvoid ( APIENTRYP GLREADBUFFER )(GLenum mode);
  283. typedef GLvoid ( APIENTRYP GLREADPIXELS )(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels);
  284. typedef GLvoid ( APIENTRYP GLRECTD )(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2);
  285. typedef GLvoid ( APIENTRYP GLRECTDV )(const GLdouble *v1, const GLdouble *v2);
  286. typedef GLvoid ( APIENTRYP GLRECTF )(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);
  287. typedef GLvoid ( APIENTRYP GLRECTFV )(const GLfloat *v1, const GLfloat *v2);
  288. typedef GLvoid ( APIENTRYP GLRECTI )(GLint x1, GLint y1, GLint x2, GLint y2);
  289. typedef GLvoid ( APIENTRYP GLRECTIV )(const GLint *v1, const GLint *v2);
  290. typedef GLvoid ( APIENTRYP GLRECTS )(GLshort x1, GLshort y1, GLshort x2, GLshort y2);
  291. typedef GLvoid ( APIENTRYP GLRECTSV )(const GLshort *v1, const GLshort *v2);
  292. typedef GLint ( APIENTRYP GLRENDERMODE )(GLenum mode);
  293. typedef GLvoid ( APIENTRYP GLROTATED )(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
  294. typedef GLvoid ( APIENTRYP GLROTATEF )(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
  295. typedef GLvoid ( APIENTRYP GLSCALED )(GLdouble x, GLdouble y, GLdouble z);
  296. typedef GLvoid ( APIENTRYP GLSCALEF )(GLfloat x, GLfloat y, GLfloat z);
  297. typedef GLvoid ( APIENTRYP GLSCISSOR )(GLint x, GLint y, GLsizei width, GLsizei height);
  298. typedef GLvoid ( APIENTRYP GLSELECTBUFFER )(GLsizei size, GLuint *buffer);
  299. typedef GLvoid ( APIENTRYP GLSHADEMODEL )(GLenum mode);
  300. typedef GLvoid ( APIENTRYP GLSTENCILFUNC )(GLenum func, GLint ref, GLuint mask);
  301. typedef GLvoid ( APIENTRYP GLSTENCILMASK )(GLuint mask);
  302. typedef GLvoid ( APIENTRYP GLSTENCILOP )(GLenum fail, GLenum zfail, GLenum zpass);
  303. typedef GLvoid ( APIENTRYP GLTEXCOORD1D )(GLdouble s);
  304. typedef GLvoid ( APIENTRYP GLTEXCOORD1DV )(const GLdouble *v);
  305. typedef GLvoid ( APIENTRYP GLTEXCOORD1F )(GLfloat s);
  306. typedef GLvoid ( APIENTRYP GLTEXCOORD1FV )(const GLfloat *v);
  307. typedef GLvoid ( APIENTRYP GLTEXCOORD1I )(GLint s);
  308. typedef GLvoid ( APIENTRYP GLTEXCOORD1IV )(const GLint *v);
  309. typedef GLvoid ( APIENTRYP GLTEXCOORD1S )(GLshort s);
  310. typedef GLvoid ( APIENTRYP GLTEXCOORD1SV )(const GLshort *v);
  311. typedef GLvoid ( APIENTRYP GLTEXCOORD2D )(GLdouble s, GLdouble t);
  312. typedef GLvoid ( APIENTRYP GLTEXCOORD2DV )(const GLdouble *v);
  313. typedef GLvoid ( APIENTRYP GLTEXCOORD2F )(GLfloat s, GLfloat t);
  314. typedef GLvoid ( APIENTRYP GLTEXCOORD2FV )(const GLfloat *v);
  315. typedef GLvoid ( APIENTRYP GLTEXCOORD2I )(GLint s, GLint t);
  316. typedef GLvoid ( APIENTRYP GLTEXCOORD2IV )(const GLint *v);
  317. typedef GLvoid ( APIENTRYP GLTEXCOORD2S )(GLshort s, GLshort t);
  318. typedef GLvoid ( APIENTRYP GLTEXCOORD2SV )(const GLshort *v);
  319. typedef GLvoid ( APIENTRYP GLTEXCOORD3D )(GLdouble s, GLdouble t, GLdouble r);
  320. typedef GLvoid ( APIENTRYP GLTEXCOORD3DV )(const GLdouble *v);
  321. typedef GLvoid ( APIENTRYP GLTEXCOORD3F )(GLfloat s, GLfloat t, GLfloat r);
  322. typedef GLvoid ( APIENTRYP GLTEXCOORD3FV )(const GLfloat *v);
  323. typedef GLvoid ( APIENTRYP GLTEXCOORD3I )(GLint s, GLint t, GLint r);
  324. typedef GLvoid ( APIENTRYP GLTEXCOORD3IV )(const GLint *v);
  325. typedef GLvoid ( APIENTRYP GLTEXCOORD3S )(GLshort s, GLshort t, GLshort r);
  326. typedef GLvoid ( APIENTRYP GLTEXCOORD3SV )(const GLshort *v);
  327. typedef GLvoid ( APIENTRYP GLTEXCOORD4D )(GLdouble s, GLdouble t, GLdouble r, GLdouble q);
  328. typedef GLvoid ( APIENTRYP GLTEXCOORD4DV )(const GLdouble *v);
  329. typedef GLvoid ( APIENTRYP GLTEXCOORD4F )(GLfloat s, GLfloat t, GLfloat r, GLfloat q);
  330. typedef GLvoid ( APIENTRYP GLTEXCOORD4FV )(const GLfloat *v);
  331. typedef GLvoid ( APIENTRYP GLTEXCOORD4I )(GLint s, GLint t, GLint r, GLint q);
  332. typedef GLvoid ( APIENTRYP GLTEXCOORD4IV )(const GLint *v);
  333. typedef GLvoid ( APIENTRYP GLTEXCOORD4S )(GLshort s, GLshort t, GLshort r, GLshort q);
  334. typedef GLvoid ( APIENTRYP GLTEXCOORD4SV )(const GLshort *v);
  335. typedef GLvoid ( APIENTRYP GLTEXCOORDPOINTER )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  336. typedef GLvoid ( APIENTRYP GLTEXENVF )(GLenum target, GLenum pname, GLfloat param);
  337. typedef GLvoid ( APIENTRYP GLTEXENVFV )(GLenum target, GLenum pname, const GLfloat *params);
  338. typedef GLvoid ( APIENTRYP GLTEXENVI )(GLenum target, GLenum pname, GLint param);
  339. typedef GLvoid ( APIENTRYP GLTEXENVIV )(GLenum target, GLenum pname, const GLint *params);
  340. typedef GLvoid ( APIENTRYP GLTEXGEND )(GLenum coord, GLenum pname, GLdouble param);
  341. typedef GLvoid ( APIENTRYP GLTEXGENDV )(GLenum coord, GLenum pname, const GLdouble *params);
  342. typedef GLvoid ( APIENTRYP GLTEXGENF )(GLenum coord, GLenum pname, GLfloat param);
  343. typedef GLvoid ( APIENTRYP GLTEXGENFV )(GLenum coord, GLenum pname, const GLfloat *params);
  344. typedef GLvoid ( APIENTRYP GLTEXGENI )(GLenum coord, GLenum pname, GLint param);
  345. typedef GLvoid ( APIENTRYP GLTEXGENIV )(GLenum coord, GLenum pname, const GLint *params);
  346. typedef GLvoid ( APIENTRYP GLTEXIMAGE1D )(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
  347. typedef GLvoid ( APIENTRYP GLTEXIMAGE2D )(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
  348. typedef GLvoid ( APIENTRYP GLTEXPARAMETERF )(GLenum target, GLenum pname, GLfloat param);
  349. typedef GLvoid ( APIENTRYP GLTEXPARAMETERFV )(GLenum target, GLenum pname, const GLfloat *params);
  350. typedef GLvoid ( APIENTRYP GLTEXPARAMETERI )(GLenum target, GLenum pname, GLint param);
  351. typedef GLvoid ( APIENTRYP GLTEXPARAMETERIV )(GLenum target, GLenum pname, const GLint *params);
  352. typedef GLvoid ( APIENTRYP GLTEXSUBIMAGE1D )(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid *pixels);
  353. typedef GLvoid ( APIENTRYP GLTEXSUBIMAGE2D )(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels);
  354. typedef GLvoid ( APIENTRYP GLTRANSLATED )(GLdouble x, GLdouble y, GLdouble z);
  355. typedef GLvoid ( APIENTRYP GLTRANSLATEF )(GLfloat x, GLfloat y, GLfloat z);
  356. typedef GLvoid ( APIENTRYP GLVERTEX2D )(GLdouble x, GLdouble y);
  357. typedef GLvoid ( APIENTRYP GLVERTEX2DV )(const GLdouble *v);
  358. typedef GLvoid ( APIENTRYP GLVERTEX2F )(GLfloat x, GLfloat y);
  359. typedef GLvoid ( APIENTRYP GLVERTEX2FV )(const GLfloat *v);
  360. typedef GLvoid ( APIENTRYP GLVERTEX2I )(GLint x, GLint y);
  361. typedef GLvoid ( APIENTRYP GLVERTEX2IV )(const GLint *v);
  362. typedef GLvoid ( APIENTRYP GLVERTEX2S )(GLshort x, GLshort y);
  363. typedef GLvoid ( APIENTRYP GLVERTEX2SV )(const GLshort *v);
  364. typedef GLvoid ( APIENTRYP GLVERTEX3D )(GLdouble x, GLdouble y, GLdouble z);
  365. typedef GLvoid ( APIENTRYP GLVERTEX3DV )(const GLdouble *v);
  366. typedef GLvoid ( APIENTRYP GLVERTEX3F )(GLfloat x, GLfloat y, GLfloat z);
  367. typedef GLvoid ( APIENTRYP GLVERTEX3FV )(const GLfloat *v);
  368. typedef GLvoid ( APIENTRYP GLVERTEX3I )(GLint x, GLint y, GLint z);
  369. typedef GLvoid ( APIENTRYP GLVERTEX3IV )(const GLint *v);
  370. typedef GLvoid ( APIENTRYP GLVERTEX3S )(GLshort x, GLshort y, GLshort z);
  371. typedef GLvoid ( APIENTRYP GLVERTEX3SV )(const GLshort *v);
  372. typedef GLvoid ( APIENTRYP GLVERTEX4D )(GLdouble x, GLdouble y, GLdouble z, GLdouble w);
  373. typedef GLvoid ( APIENTRYP GLVERTEX4DV )(const GLdouble *v);
  374. typedef GLvoid ( APIENTRYP GLVERTEX4F )(GLfloat x, GLfloat y, GLfloat z, GLfloat w);
  375. typedef GLvoid ( APIENTRYP GLVERTEX4FV )(const GLfloat *v);
  376. typedef GLvoid ( APIENTRYP GLVERTEX4I )(GLint x, GLint y, GLint z, GLint w);
  377. typedef GLvoid ( APIENTRYP GLVERTEX4IV )(const GLint *v);
  378. typedef GLvoid ( APIENTRYP GLVERTEX4S )(GLshort x, GLshort y, GLshort z, GLshort w);
  379. typedef GLvoid ( APIENTRYP GLVERTEX4SV )(const GLshort *v);
  380. typedef GLvoid ( APIENTRYP GLVERTEXPOINTER )(GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
  381. typedef GLvoid ( APIENTRYP GLVIEWPORT )(GLint x, GLint y, GLsizei width, GLsizei height);
  382. //GLACCUM pfglAccum;
  383. GLALPHAFUNC pfglAlphaFunc;
  384. GLARETEXTURESRESIDENT pfglAreTexturesResident;
  385. //GLARRAYELEMENT pfglArrayElement;
  386. GLBEGIN pfglBegin;
  387. GLBINDTEXTURE pfglBindTexture;
  388. //GLBITMAP pfglBitmap;
  389. GLBLENDFUNC pfglBlendFunc;
  390. GLCALLLIST pfglCallList;
  391. GLCALLLISTS pfglCallLists;
  392. GLCLEAR pfglClear;
  393. //GLCLEARACCUM pfglClearAccum;
  394. GLCLEARCOLOR pfglClearColor;
  395. GLCLEARDEPTH pfglClearDepth;
  396. //GLCLEARINDEX pfglClearIndex;
  397. //GLCLEARSTENCIL pfglClearStencil;
  398. //GLCLIPPLANE pfglClipPlane;
  399. GLCOLOR3B pfglColor3b;
  400. GLCOLOR3BV pfglColor3bv;
  401. GLCOLOR3D pfglColor3d;
  402. GLCOLOR3DV pfglColor3dv;
  403. GLCOLOR3F pfglColor3f;
  404. GLCOLOR3FV pfglColor3fv;
  405. GLCOLOR3I pfglColor3i;
  406. GLCOLOR3IV pfglColor3iv;
  407. GLCOLOR3S pfglColor3s;
  408. GLCOLOR3SV pfglColor3sv;
  409. GLCOLOR3UB pfglColor3ub;
  410. GLCOLOR3UBV pfglColor3ubv;
  411. GLCOLOR3UI pfglColor3ui;
  412. GLCOLOR3UIV pfglColor3uiv;
  413. GLCOLOR3US pfglColor3us;
  414. GLCOLOR3USV pfglColor3usv;
  415. GLCOLOR4B pfglColor4b;
  416. GLCOLOR4BV pfglColor4bv;
  417. GLCOLOR4D pfglColor4d;
  418. GLCOLOR4DV pfglColor4dv;
  419. GLCOLOR4F pfglColor4f;
  420. GLCOLOR4FV pfglColor4fv;
  421. GLCOLOR4I pfglColor4i;
  422. GLCOLOR4IV pfglColor4iv;
  423. GLCOLOR4S pfglColor4s;
  424. GLCOLOR4SV pfglColor4sv;
  425. GLCOLOR4UB pfglColor4ub;
  426. GLCOLOR4UBV pfglColor4ubv;
  427. GLCOLOR4UI pfglColor4ui;
  428. GLCOLOR4UIV pfglColor4uiv;
  429. GLCOLOR4US pfglColor4us;
  430. GLCOLOR4USV pfglColor4usv;
  431. GLCOLORMASK pfglColorMask;
  432. GLCOLORMATERIAL pfglColorMaterial;
  433. GLCOLORPOINTER pfglColorPointer;
  434. GLCOPYPIXELS pfglCopyPixels;
  435. GLCOPYTEXIMAGE1D pfglCopyTexImage1D;
  436. GLCOPYTEXIMAGE2D pfglCopyTexImage2D;
  437. GLCOPYTEXSUBIMAGE1D pfglCopyTexSubImage1D;
  438. GLCOPYTEXSUBIMAGE2D pfglCopyTexSubImage2D;
  439. GLCULLFACE pfglCullFace;
  440. GLDELETELISTS pfglDeleteLists;
  441. GLDELETETEXTURES pfglDeleteTextures;
  442. GLDEPTHFUNC pfglDepthFunc;
  443. GLDEPTHMASK pfglDepthMask;
  444. GLDEPTHRANGE pfglDepthRange;
  445. GLDISABLE pfglDisable;
  446. GLDISABLECLIENTSTATE pfglDisableClientState;
  447. GLDRAWARRAYS pfglDrawArrays;
  448. GLDRAWBUFFER pfglDrawBuffer;
  449. GLDRAWELEMENTS pfglDrawElements;
  450. GLDRAWPIXELS pfglDrawPixels;
  451. GLEDGEFLAG pfglEdgeFlag;
  452. GLEDGEFLAGPOINTER pfglEdgeFlagPointer;
  453. GLEDGEFLAGV pfglEdgeFlagv;
  454. GLENABLE pfglEnable;
  455. GLENABLECLIENTSTATE pfglEnableClientState;
  456. GLEND pfglEnd;
  457. GLENDLIST pfglEndList;
  458. GLEVALCOORD1D pfglEvalCoord1d;
  459. GLEVALCOORD1DV pfglEvalCoord1dv;
  460. GLEVALCOORD1F pfglEvalCoord1f;
  461. GLEVALCOORD1FV pfglEvalCoord1fv;
  462. GLEVALCOORD2D pfglEvalCoord2d;
  463. GLEVALCOORD2DV pfglEvalCoord2dv;
  464. GLEVALCOORD2F pfglEvalCoord2f;
  465. GLEVALCOORD2FV pfglEvalCoord2fv;
  466. GLEVALMESH1 pfglEvalMesh1;
  467. GLEVALMESH2 pfglEvalMesh2;
  468. GLEVALPOINT1 pfglEvalPoint1;
  469. GLEVALPOINT2 pfglEvalPoint2;
  470. GLFEEDBACKBUFFER pfglFeedbackBuffer;
  471. GLFINISH pfglFinish;
  472. GLFLUSH pfglFlush;
  473. GLFOGF pfglFogf;
  474. GLFOGFV pfglFogfv;
  475. GLFOGI pfglFogi;
  476. GLFOGIV pfglFogiv;
  477. GLFRONTFACE pfglFrontFace;
  478. GLFRUSTUM pfglFrustum;
  479. GLGENLISTS pfglGenLists;
  480. GLGENTEXTURES pfglGenTextures;
  481. GLGETBOOLEANV pfglGetBooleanv;
  482. GLGETCLIPPLANE pfglGetClipPlane;
  483. GLGETDOUBLEV pfglGetDoublev;
  484. GLGETERROR pfglGetError;
  485. GLGETFLOATV pfglGetFloatv;
  486. GLGETINTEGERV pfglGetIntegerv;
  487. GLGETLIGHTFV pfglGetLightfv;
  488. GLGETLIGHTIV pfglGetLightiv;
  489. GLGETMAPDV pfglGetMapdv;
  490. GLGETMAPFV pfglGetMapfv;
  491. GLGETMAPIV pfglGetMapiv;
  492. GLGETMATERIALFV pfglGetMaterialfv;
  493. GLGETMATERIALIV pfglGetMaterialiv;
  494. GLGETPIXELMAPFV pfglGetPixelMapfv;
  495. GLGETPIXELMAPUIV pfglGetPixelMapuiv;
  496. GLGETPIXELMAPUSV pfglGetPixelMapusv;
  497. GLGETPOINTERV pfglGetPointerv;
  498. GLGETPOLYGONSTIPPLE pfglGetPolygonStipple;
  499. GLGETSTRING pfglGetString;
  500. GLGETTEXENVFV pfglGetTexEnvfv;
  501. GLGETTEXENVIV pfglGetTexEnviv;
  502. GLGETTEXGENDV pfglGetTexGendv;
  503. GLGETTEXGENFV pfglGetTexGenfv;
  504. GLGETTEXGENIV pfglGetTexGeniv;
  505. GLGETTEXIMAGE pfglGetTexImage;
  506. GLGETTEXPARAMETERFV pfglGetTexParameterfv;
  507. GLGETTEXPARAMETERIV pfglGetTexParameteriv;
  508. GLHINT pfglHint;
  509. GLINDEXMASK pfglIndexMask;
  510. GLINDEXPOINTER pfglIndexPointer;
  511. GLINDEXD pfglIndexd;
  512. GLINDEXDV pfglIndexdv;
  513. GLINDEXF pfglIndexf;
  514. GLINDEXFV pfglIndexfv;
  515. GLINDEXI pfglIndexi;
  516. GLINDEXIV pfglIndexiv;
  517. GLINDEXS pfglIndexs;
  518. GLINDEXSV pfglIndexsv;
  519. GLINDEXUB pfglIndexub;
  520. GLINDEXUBV pfglIndexubv;
  521. GLINITNAMES pfglInitNames;
  522. GLINTERLEAVEDARRAYS pfglInterleavedArrays;
  523. GLISENABLED pfglIsEnabled;
  524. GLISLIST pfglIsList;
  525. GLISTEXTURE pfglIsTexture;
  526. GLLIGHTMODELF pfglLightModelf;
  527. GLLIGHTMODELFV pfglLightModelfv;
  528. GLLIGHTMODELI pfglLightModeli;
  529. GLLIGHTMODELIV pfglLightModeliv;
  530. GLLIGHTF pfglLightf;
  531. GLLIGHTFV pfglLightfv;
  532. GLLIGHTI pfglLighti;
  533. GLLIGHTIV pfglLightiv;
  534. GLLINESTIPPLE pfglLineStipple;
  535. GLLINEWIDTH pfglLineWidth;
  536. GLLISTBASE pfglListBase;
  537. GLLOADIDENTITY pfglLoadIdentity;
  538. GLLOADMATRIXD pfglLoadMatrixd;
  539. GLLOADMATRIXF pfglLoadMatrixf;
  540. GLLOADNAME pfglLoadName;
  541. GLLOGICOP pfglLogicOp;
  542. GLMAP1D pfglMap1d;
  543. GLMAP1F pfglMap1f;
  544. GLMAP2D pfglMap2d;
  545. GLMAP2F pfglMap2f;
  546. GLMAPGRID1D pfglMapGrid1d;
  547. GLMAPGRID1F pfglMapGrid1f;
  548. GLMAPGRID2D pfglMapGrid2d;
  549. GLMAPGRID2F pfglMapGrid2f;
  550. GLMATERIALF pfglMaterialf;
  551. GLMATERIALFV pfglMaterialfv;
  552. GLMATERIALI pfglMateriali;
  553. GLMATERIALIV pfglMaterialiv;
  554. GLMATRIXMODE pfglMatrixMode;
  555. GLMULTMATRIXD pfglMultMatrixd;
  556. GLMULTMATRIXF pfglMultMatrixf;
  557. GLNEWLIST pfglNewList;
  558. GLNORMAL3B pfglNormal3b;
  559. GLNORMAL3BV pfglNormal3bv;
  560. GLNORMAL3D pfglNormal3d;
  561. GLNORMAL3DV pfglNormal3dv;
  562. GLNORMAL3F pfglNormal3f;
  563. GLNORMAL3FV pfglNormal3fv;
  564. GLNORMAL3I pfglNormal3i;
  565. GLNORMAL3IV pfglNormal3iv;
  566. GLNORMAL3S pfglNormal3s;
  567. GLNORMAL3SV pfglNormal3sv;
  568. GLNORMALPOINTER pfglNormalPointer;
  569. GLORTHO pfglOrtho;
  570. GLPASSTHROUGH pfglPassThrough;
  571. GLPIXELMAPFV pfglPixelMapfv;
  572. GLPIXELMAPUIV pfglPixelMapuiv;
  573. GLPIXELMAPUSV pfglPixelMapusv;
  574. GLPIXELSTOREF pfglPixelStoref;
  575. GLPIXELSTOREI pfglPixelStorei;
  576. GLPIXELTRANSFERF pfglPixelTransferf;
  577. GLPIXELTRANSFERI pfglPixelTransferi;
  578. GLPIXELZOOM pfglPixelZoom;
  579. GLPOINTSIZE pfglPointSize;
  580. GLPOLYGONMODE pfglPolygonMode;
  581. GLPOLYGONOFFSET pfglPolygonOffset;
  582. GLPOLYGONSTIPPLE pfglPolygonStipple;
  583. GLPOPATTRIB pfglPopAttrib;
  584. GLPOPCLIENTATTRIB pfglPopClientAttrib;
  585. GLPOPMATRIX pfglPopMatrix;
  586. GLPOPNAME pfglPopName;
  587. GLPRIORITIZETEXTURES pfglPrioritizeTextures;
  588. GLPUSHATTRIB pfglPushAttrib;
  589. GLPUSHCLIENTATTRIB pfglPushClientAttrib;
  590. GLPUSHMATRIX pfglPushMatrix;
  591. GLPUSHNAME pfglPushName;
  592. GLRASTERPOS2D pfglRasterPos2d;
  593. GLRASTERPOS2DV pfglRasterPos2dv;
  594. GLRASTERPOS2F pfglRasterPos2f;
  595. GLRASTERPOS2FV pfglRasterPos2fv;
  596. GLRASTERPOS2I pfglRasterPos2i;
  597. GLRASTERPOS2IV pfglRasterPos2iv;
  598. GLRASTERPOS2S pfglRasterPos2s;
  599. GLRASTERPOS2SV pfglRasterPos2sv;
  600. GLRASTERPOS3D pfglRasterPos3d;
  601. GLRASTERPOS3DV pfglRasterPos3dv;
  602. GLRASTERPOS3F pfglRasterPos3f;
  603. GLRASTERPOS3FV pfglRasterPos3fv;
  604. GLRASTERPOS3I pfglRasterPos3i;
  605. GLRASTERPOS3IV pfglRasterPos3iv;
  606. GLRASTERPOS3S pfglRasterPos3s;
  607. GLRASTERPOS3SV pfglRasterPos3sv;
  608. GLRASTERPOS4D pfglRasterPos4d;
  609. GLRASTERPOS4DV pfglRasterPos4dv;
  610. GLRASTERPOS4F pfglRasterPos4f;
  611. GLRASTERPOS4FV pfglRasterPos4fv;
  612. GLRASTERPOS4I pfglRasterPos4i;
  613. GLRASTERPOS4IV pfglRasterPos4iv;
  614. GLRASTERPOS4S pfglRasterPos4s;
  615. GLRASTERPOS4SV pfglRasterPos4sv;
  616. GLREADBUFFER pfglReadBuffer;
  617. GLREADPIXELS pfglReadPixels;
  618. GLRECTD pfglRectd;
  619. GLRECTDV pfglRectdv;
  620. GLRECTF pfglRectf;
  621. GLRECTFV pfglRectfv;
  622. GLRECTI pfglRecti;
  623. GLRECTIV pfglRectiv;
  624. GLRECTS pfglRects;
  625. GLRECTSV pfglRectsv;
  626. GLRENDERMODE pfglRenderMode;
  627. GLROTATED pfglRotated;
  628. GLROTATEF pfglRotatef;
  629. GLSCALED pfglScaled;
  630. GLSCALEF pfglScalef;
  631. GLSCISSOR pfglScissor;
  632. GLSELECTBUFFER pfglSelectBuffer;
  633. GLSHADEMODEL pfglShadeModel;
  634. GLSTENCILFUNC pfglStencilFunc;
  635. GLSTENCILMASK pfglStencilMask;
  636. GLSTENCILOP pfglStencilOp;
  637. GLTEXCOORD1D pfglTexCoord1d;
  638. GLTEXCOORD1DV pfglTexCoord1dv;
  639. GLTEXCOORD1F pfglTexCoord1f;
  640. GLTEXCOORD1FV pfglTexCoord1fv;
  641. GLTEXCOORD1I pfglTexCoord1i;
  642. GLTEXCOORD1IV pfglTexCoord1iv;
  643. GLTEXCOORD1S pfglTexCoord1s;
  644. GLTEXCOORD1SV pfglTexCoord1sv;
  645. GLTEXCOORD2D pfglTexCoord2d;
  646. GLTEXCOORD2DV pfglTexCoord2dv;
  647. GLTEXCOORD2F pfglTexCoord2f;
  648. GLTEXCOORD2FV pfglTexCoord2fv;
  649. GLTEXCOORD2I pfglTexCoord2i;
  650. GLTEXCOORD2IV pfglTexCoord2iv;
  651. GLTEXCOORD2S pfglTexCoord2s;
  652. GLTEXCOORD2SV pfglTexCoord2sv;
  653. GLTEXCOORD3D pfglTexCoord3d;
  654. GLTEXCOORD3DV pfglTexCoord3dv;
  655. GLTEXCOORD3F pfglTexCoord3f;
  656. GLTEXCOORD3FV pfglTexCoord3fv;
  657. GLTEXCOORD3I pfglTexCoord3i;
  658. GLTEXCOORD3IV pfglTexCoord3iv;
  659. GLTEXCOORD3S pfglTexCoord3s;
  660. GLTEXCOORD3SV pfglTexCoord3sv;
  661. GLTEXCOORD4D pfglTexCoord4d;
  662. GLTEXCOORD4DV pfglTexCoord4dv;
  663. GLTEXCOORD4F pfglTexCoord4f;
  664. GLTEXCOORD4FV pfglTexCoord4fv;
  665. GLTEXCOORD4I pfglTexCoord4i;
  666. GLTEXCOORD4IV pfglTexCoord4iv;
  667. GLTEXCOORD4S pfglTexCoord4s;
  668. GLTEXCOORD4SV pfglTexCoord4sv;
  669. GLTEXCOORDPOINTER pfglTexCoordPointer;
  670. GLTEXENVF pfglTexEnvf;
  671. GLTEXENVFV pfglTexEnvfv;
  672. GLTEXENVI pfglTexEnvi;
  673. GLTEXENVIV pfglTexEnviv;
  674. GLTEXGEND pfglTexGend;
  675. GLTEXGENDV pfglTexGendv;
  676. GLTEXGENF pfglTexGenf;
  677. GLTEXGENFV pfglTexGenfv;
  678. GLTEXGENI pfglTexGeni;
  679. GLTEXGENIV pfglTexGeniv;
  680. GLTEXIMAGE1D pfglTexImage1D;
  681. GLTEXIMAGE2D pfglTexImage2D;
  682. GLTEXPARAMETERF pfglTexParameterf;
  683. GLTEXPARAMETERFV pfglTexParameterfv;
  684. GLTEXPARAMETERI pfglTexParameteri;
  685. GLTEXPARAMETERIV pfglTexParameteriv;
  686. GLTEXSUBIMAGE1D pfglTexSubImage1D;
  687. GLTEXSUBIMAGE2D pfglTexSubImage2D;
  688. GLTRANSLATED pfglTranslated;
  689. GLTRANSLATEF pfglTranslatef;
  690. GLVERTEX2D pfglVertex2d;
  691. GLVERTEX2DV pfglVertex2dv;
  692. GLVERTEX2F pfglVertex2f;
  693. GLVERTEX2FV pfglVertex2fv;
  694. GLVERTEX2I pfglVertex2i;
  695. GLVERTEX2IV pfglVertex2iv;
  696. GLVERTEX2S pfglVertex2s;
  697. GLVERTEX2SV pfglVertex2sv;
  698. GLVERTEX3D pfglVertex3d;
  699. GLVERTEX3DV pfglVertex3dv;
  700. GLVERTEX3F pfglVertex3f;
  701. GLVERTEX3FV pfglVertex3fv;
  702. GLVERTEX3I pfglVertex3i;
  703. GLVERTEX3IV pfglVertex3iv;
  704. GLVERTEX3S pfglVertex3s;
  705. GLVERTEX3SV pfglVertex3sv;
  706. GLVERTEX4D pfglVertex4d;
  707. GLVERTEX4DV pfglVertex4dv;
  708. GLVERTEX4F pfglVertex4f;
  709. GLVERTEX4FV pfglVertex4fv;
  710. GLVERTEX4I pfglVertex4i;
  711. GLVERTEX4IV pfglVertex4iv;
  712. GLVERTEX4S pfglVertex4s;
  713. GLVERTEX4SV pfglVertex4sv;
  714. GLVERTEXPOINTER pfglVertexPointer;
  715. GLVIEWPORT pfglViewport;
  716. #ifdef _WIN32
  717. typedef BOOL (WINAPI *WGLCOPYCONTEXT)(HGLRC, HGLRC, UINT);
  718. typedef HGLRC (WINAPI *WGLCREATECONTEXT)(HDC);
  719. typedef HGLRC (WINAPI *WGLCREATELAYERCONTEXT)(HDC, int);
  720. typedef BOOL (WINAPI *WGLDELETECONTEXT)(HGLRC);
  721. typedef BOOL (WINAPI *WGLDESCRIBELAYERPLANE)(HDC, int, int, UINT, LPLAYERPLANEDESCRIPTOR);
  722. typedef HGLRC (WINAPI *WGLGETCURRENTCONTEXT)(VOID);
  723. typedef HDC (WINAPI *WGLGETCURRENTDC)(VOID);
  724. typedef int (WINAPI *WGLGETLAYERPALETTEENTRIES)(HDC, int, int, int, COLORREF *);
  725. typedef PROC (WINAPI *WGLGETPROCADDRESS)(LPCSTR);
  726. typedef BOOL (WINAPI *WGLMAKECURRENT)(HDC, HGLRC);
  727. typedef BOOL (WINAPI *WGLREALIZELAYERPALETTE)(HDC, int, BOOL);
  728. typedef int (WINAPI *WGLSETLAYERPALETTEENTRIES)(HDC, int, int, int, CONST COLORREF *);
  729. typedef BOOL (WINAPI *WGLSHARELISTS)(HGLRC, HGLRC);
  730. typedef BOOL (WINAPI *WGLSWAPLAYERBUFFERS)(HDC, UINT);
  731. typedef BOOL (WINAPI *WGLUSEFONTBITMAPS)(HDC, DWORD, DWORD, DWORD);
  732. typedef BOOL (WINAPI *WGLUSEFONTOUTLINES)(HDC, DWORD, DWORD, DWORD, FLOAT, FLOAT, int, LPGLYPHMETRICSFLOAT);
  733. WGLCOPYCONTEXT pfwglCopyContext;
  734. WGLCREATECONTEXT pfwglCreateContext;
  735. WGLCREATELAYERCONTEXT pfwglCreateLayerContext;
  736. WGLDELETECONTEXT pfwglDeleteContext;
  737. WGLDESCRIBELAYERPLANE pfwglDescribeLayerPlane;
  738. WGLGETCURRENTCONTEXT pfwglGetCurrentContext;
  739. WGLGETCURRENTDC pfwglGetCurrentDC;
  740. WGLGETLAYERPALETTEENTRIES pfwglGetLayerPaletteEntries;
  741. WGLGETPROCADDRESS pfwglGetProcAddress;
  742. WGLMAKECURRENT pfwglMakeCurrent;
  743. WGLREALIZELAYERPALETTE pfwglRealizeLayerPalette;
  744. WGLSETLAYERPALETTEENTRIES pfwglSetLayerPaletteEntries;
  745. WGLSHARELISTS pfwglShareLists;
  746. WGLSWAPLAYERBUFFERS pfwglSwapLayerBuffers;
  747. WGLUSEFONTBITMAPS pfwglUseFontBitmaps;
  748. WGLUSEFONTOUTLINES pfwglUseFontOutlines;
  749. typedef int ( WINAPI *WGLCHOOSEPIXELFORMAT )(HDC, CONST PIXELFORMATDESCRIPTOR *);
  750. typedef int ( WINAPI *WGLDESCRIBEPIXELFORMAT) (HDC, int, UINT, LPPIXELFORMATDESCRIPTOR);
  751. typedef int ( WINAPI *WGLGETPIXELFORMAT)(HDC);
  752. typedef BOOL ( WINAPI *WGLSETPIXELFORMAT)(HDC, int, CONST PIXELFORMATDESCRIPTOR *);
  753. typedef BOOL ( WINAPI *WGLSWAPBUFFERS)(HDC);
  754. WGLCHOOSEPIXELFORMAT pfwglChoosePixelFormat;
  755. WGLDESCRIBEPIXELFORMAT pfwglDescribePixelFormat;
  756. WGLGETPIXELFORMAT pfwglGetPixelFormat;
  757. WGLSETPIXELFORMAT pfwglSetPixelFormat;
  758. WGLSWAPBUFFERS pfwglSwapBuffers;
  759. typedef BOOL (WINAPI *WGLSWAPINTERVALEXT)( int );
  760. typedef int (WINAPI *WGLGETSWAPINTERVALEXT)( void );
  761. WGLSWAPINTERVALEXT pfwglSwapIntervalEXT;
  762. WGLGETSWAPINTERVALEXT pfwglGetSwapIntervalEXT;
  763. void *(WINAPI *pfwglAllocateMemoryNV)( GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority );
  764. void *(WINAPI *pfwglFreeMemoryNV)( void *pointer );
  765. #ifndef HPBUFFERARB
  766. DECLARE_HANDLE( HPBUFFERARB );
  767. #endif
  768. HPBUFFERARB (WINAPI *pfwglCreatePbufferARB)( HDC hDC, int iPixelFormat, int iWidth, int iHeight, const int *piAttribList );
  769. HDC (WINAPI *pfwglGetPbufferDCARB)( HPBUFFERARB hPbuffer );
  770. int (WINAPI *pfwglReleasePbufferDCARB)( HPBUFFERARB hPbuffer, HDC hDC );
  771. BOOL (WINAPI *pfwglDestroyPbufferARB)(HPBUFFERARB hPbuffer);
  772. BOOL (WINAPI *pfwglQueryPbufferARB)( HPBUFFERARB hPbuffer, int iAttribute, int *piValue );
  773. BOOL (WINAPI *pfwglGetPixelFormatAttribivARB)( HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, int *piValues);
  774. BOOL (WINAPI *pfwglGetPixelFormatAttribfvARB)( HDC hdc, int iPixelFormat, int iLayerPlane, UINT nAttributes, const int *piAttributes, FLOAT *pfValues);
  775. BOOL (WINAPI *pfwglChoosePixelFormatARB)( HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats);
  776. #endif /* _WIN32 */
  777. #ifdef __unix__
  778. // Local function in dll
  779. extern void *pfwglGetProcAddress( const char *symbol );
  780. void *(*pfwglAllocateMemoryNV)( GLsizei size, GLfloat readFrequency, GLfloat writeFrequency, GLfloat priority );
  781. void *(*pfwglFreeMemoryNV)( void *pointer );
  782. // GLX Functions
  783. XVisualInfo * (*pfglXChooseVisual)( Display *dpy, int screen, int *attribList );
  784. void (*pfglXCopyContext)( Display *dpy, GLXContext src, GLXContext dst, GLuint mask );
  785. GLXContext (*pfglXCreateContext)( Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct );
  786. GLXPixmap (*pfglXCreateGLXPixmap)( Display *dpy, XVisualInfo *vis, Pixmap pixmap );
  787. void (*pfglXDestroyContext)( Display *dpy, GLXContext ctx );
  788. void (*pfglXDestroyGLXPixmap)( Display *dpy, GLXPixmap pix );
  789. int (*pfglXGetConfig)( Display *dpy, XVisualInfo *vis, int attrib, int *value );
  790. GLXContext (*pfglXGetCurrentContext)( void );
  791. GLXDrawable (*pfglXGetCurrentDrawable)( void );
  792. Bool (*pfglXIsDirect)( Display *dpy, GLXContext ctx );
  793. Bool (*pfglXMakeCurrent)( Display *dpy, GLXDrawable drawable, GLXContext ctx);
  794. Bool (*pfglXQueryExtension)( Display *dpy, int *errorBase, int *eventBase );
  795. Bool (*pfglXQueryVersion)( Display *dpy, int *major, int *minor );
  796. void (*pfglXSwapBuffers)( Display *dpy, GLXDrawable drawable );
  797. void (*pfglXUseXFont)( Font font, int first, int count, int listBase );
  798. void (*pfglXWaitGL)( void );
  799. void (*pfglXWaitX)( void );
  800. #endif /* __unix__ */
  801. #endif /* __MYOPENGL_H__ */