Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

863 lines
41 KiB

  1. #if !defined(__gls_h_)
  2. #define __gls_h_
  3. /*
  4. ** Copyright 1995-2095, Silicon Graphics, Inc.
  5. ** All Rights Reserved.
  6. **
  7. ** This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
  8. ** the contents of this file may not be disclosed to third parties, copied or
  9. ** duplicated in any form, in whole or in part, without the prior written
  10. ** permission of Silicon Graphics, Inc.
  11. **
  12. ** RESTRICTED RIGHTS LEGEND:
  13. ** Use, duplication or disclosure by the Government is subject to restrictions
  14. ** as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
  15. ** and Computer Software clause at DFARS 252.227-7013, and/or in similar or
  16. ** successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
  17. ** rights reserved under the Copyright Laws of the United States.
  18. */
  19. #define GLS_LINKAGE
  20. #include <GL/gl.h>
  21. #include <stddef.h>
  22. #include <stdio.h>
  23. #if defined(__cplusplus)
  24. extern "C" {
  25. #endif /* defined(__cplusplus) */
  26. typedef long long GLlong;
  27. typedef unsigned long long GLulong;
  28. typedef GLuint GLSenum;
  29. typedef GLuint GLSopcode;
  30. typedef struct {
  31. GLuint mask;
  32. GLuint value;
  33. } GLScommandAlignment;
  34. typedef void (*GLScaptureFunc)(GLSopcode inOpcode);
  35. typedef size_t (*GLSreadFunc)(size_t inCount, GLubyte *outBuf);
  36. typedef size_t (*GLSwriteFunc)(size_t inCount, const GLubyte *inBuf);
  37. #if defined(__cplusplus)
  38. typedef void (*GLSfunc)(...);
  39. #else /* !defined(__cplusplus) */
  40. typedef void (*GLSfunc)();
  41. #endif /* defined(__cplusplus) */
  42. #define glsCSTR(p) ((const GLubyte*)(p))
  43. #define glsSTR(p) ((GLubyte*)(p))
  44. /*************************************************************/
  45. /* CaptureFlags */
  46. /* GLS_NONE */
  47. #define GLS_CAPTURE_EXECUTE_BIT 0x00000001
  48. #define GLS_CAPTURE_WRITE_BIT 0x00000002
  49. /* CommandAttrib */
  50. /* GLS_NONE */
  51. #define GLS_COMMAND_GEN_BIT 0x00000001
  52. #define GLS_COMMAND_GET_BIT 0x00000002
  53. #define GLS_COMMAND_REPLY_BIT 0x00000004
  54. /* ImageFlags */
  55. /* GLS_NONE */
  56. #define GLS_IMAGE_NULL_BIT 0x00000001
  57. /* StreamAttrib */
  58. /* GLS_NONE */
  59. #define GLS_STREAM_CONTEXT_BIT 0x00000001
  60. #define GLS_STREAM_NAMED_BIT 0x00000002
  61. #define GLS_STREAM_READABLE_BIT 0x00000004
  62. #define GLS_STREAM_SEEKABLE_BIT 0x00000008
  63. #define GLS_STREAM_WRITABLE_BIT 0x00000010
  64. /* WriteFlags */
  65. /* GLS_NONE */
  66. #define GLS_WRITE_APPEND_BIT 0x00000001
  67. /* Fundamental */
  68. #define GLS_NONE 0x0000
  69. /* AbortMode */
  70. /* GLS_NONE */
  71. #define GLS_ALL 0x0010
  72. #define GLS_LAST 0x0011
  73. /* API */
  74. #define GLS_API_GLS 0x0020
  75. #define GLS_API_GL 0x0021
  76. /* BlockType */
  77. #define GLS_FRAME 0x0030
  78. #define GLS_HEADER 0x0031
  79. #define GLS_INIT 0x0032
  80. #define GLS_STATIC 0x0033
  81. /* CaptureFuncTarget */
  82. #define GLS_CAPTURE_ENTRY_FUNC 0x0040
  83. #define GLS_CAPTURE_EXIT_FUNC 0x0041
  84. /* CaptureStreamType */
  85. #define GLS_CONTEXT 0x0050
  86. #define GLS_BINARY_LSB_FIRST 0x0051
  87. #define GLS_BINARY_MSB_FIRST 0x0052
  88. #define GLS_TEXT 0x0053
  89. /* ChannelTarget */
  90. #define GLS_DEFAULT_READ_CHANNEL 0x0060
  91. #define GLS_DEFAULT_WRITE_CHANNEL 0x0061
  92. /* Consti */
  93. #define GLS_API_COUNT 0x0070
  94. #define GLS_MAX_CALL_NESTING 0x0071
  95. #define GLS_MAX_CAPTURE_NESTING 0x0072
  96. #define GLS_VERSION_MAJOR 0x0073
  97. #define GLS_VERSION_MINOR 0x0074
  98. /* Constiv */
  99. #define GLS_ALL_APIS 0x0080
  100. /* Constubz */
  101. #define GLS_EXTENSIONS 0x0090
  102. #define GLS_PLATFORM 0x0091
  103. #define GLS_RELEASE 0x0092
  104. #define GLS_VENDOR 0x0093
  105. /* ContextFunc */
  106. /* GLS_CAPTURE_ENTRY_FUNC */
  107. /* GLS_CAPTURE_EXIT_FUNC */
  108. #define GLS_READ_FUNC 0x00A1
  109. #define GLS_UNREAD_FUNC 0x00A2
  110. #define GLS_WRITE_FUNC 0x00A3
  111. /* ContextListl */
  112. #define GLS_OUT_ARG_LIST 0x00B0
  113. /* ContextListubz */
  114. #define GLS_CONTEXT_STREAM_LIST 0x00C0
  115. #define GLS_READ_PREFIX_LIST 0x00C1
  116. /* ContextPointer */
  117. /* GLS_DEFAULT_READ_CHANNEL */
  118. /* GLS_DEFAULT_WRITE_CHANNEL */
  119. #define GLS_DATA_POINTER 0x00E0
  120. /* Contexti */
  121. #define GLS_ABORT_MODE 0x00E0
  122. #define GLS_BLOCK_TYPE 0x00E1
  123. #define GLS_CALL_NESTING 0x00E2
  124. #define GLS_CAPTURE_NESTING 0x00E3
  125. #define GLS_CONTEXT_STREAM_COUNT 0x00E4
  126. #define GLS_CURRENT_GLRC 0x00E5
  127. #define GLS_OUT_ARG_COUNT 0x00E6
  128. #define GLS_PIXEL_SETUP_GEN 0x00E7
  129. #define GLS_READ_PREFIX_COUNT 0x00E8
  130. #define GLS_STREAM_VERSION_MAJOR 0x00E9
  131. #define GLS_STREAM_VERSION_MINOR 0x00EA
  132. /* Contextubz */
  133. #define GLS_WRITE_PREFIX 0x0100
  134. /* CopyStreamType */
  135. /* GLS_NONE */
  136. /* GLS_CONTEXT */
  137. /* GLS_BINARY_LSB_FIRST */
  138. /* GLS_BINARY_MSB_FIRST */
  139. /* GLS_TEXT */
  140. /* DisplayFormat */
  141. #define GLS_IIII 0x0110
  142. #define GLS_RGBA 0x0111
  143. #define GLS_RRRA 0x0112
  144. /* DisplayMap */
  145. #define GLS_DISPLAY_MAP_I_TO_R 0x0120
  146. #define GLS_DISPLAY_MAP_I_TO_G 0x0121
  147. #define GLS_DISPLAY_MAP_I_TO_B 0x0122
  148. #define GLS_DISPLAY_MAP_I_TO_A 0x0123
  149. /* ErrorCode */
  150. /* GLS_NONE */
  151. #define GLS_CALL_OVERFLOW 0x0130
  152. #define GLS_DECODE_ERROR 0x0131
  153. #define GLS_ENCODE_ERROR 0x0132
  154. #define GLS_INVALID_ENUM 0x0133
  155. #define GLS_INVALID_OPERATION 0x0134
  156. #define GLS_INVALID_STREAM 0x0135
  157. #define GLS_INVALID_STRING 0x0136
  158. #define GLS_INVALID_VALUE 0x0137
  159. #define GLS_NOT_FOUND 0x0138
  160. #define GLS_OUT_OF_MEMORY 0x0139
  161. #define GLS_STREAM_CLOSE_ERROR 0x013A
  162. #define GLS_STREAM_DELETE_ERROR 0x013B
  163. #define GLS_STREAM_OPEN_ERROR 0x013C
  164. #define GLS_STREAM_READ_ERROR 0x013D
  165. #define GLS_STREAM_WRITE_ERROR 0x013E
  166. #define GLS_UNSUPPORTED_COMMAND 0x013F
  167. #define GLS_UNSUPPORTED_EXTENSION 0x0140
  168. /* ExternStreamType */
  169. /* GLS_BINARY_LSB_FIRST */
  170. /* GLS_BINARY_MSB_FIRST */
  171. /* GLS_TEXT */
  172. /* FlushType */
  173. /* GLS_ALL */
  174. /* GLS_LAST */
  175. /* GetStreamType */
  176. /* GLS_NONE */
  177. /* GLS_CONTEXT */
  178. /* GLS_BINARY_LSB_FIRST */
  179. /* GLS_BINARY_MSB_FIRST */
  180. /* GLS_TEXT */
  181. #define GLS_UNKNOWN 0x0150
  182. /* GLRCi */
  183. #define GLS_LAYER 0x0160
  184. #define GLS_READ_LAYER 0x0161
  185. #define GLS_SHARE_GLRC 0x0162
  186. /* Headerf */
  187. #define GLS_ASPECT 0x0170
  188. #define GLS_BORDER_WIDTH 0x0171
  189. #define GLS_CONTRAST_RATIO 0x0172
  190. #define GLS_HEIGHT_MM 0x0173
  191. /* Headerfv */
  192. #define GLS_BORDER_COLOR 0x0180
  193. #define GLS_GAMMA 0x0181
  194. #define GLS_ORIGIN 0x0182
  195. #define GLS_PAGE_COLOR 0x0183
  196. #define GLS_PAGE_SIZE 0x0184
  197. #define GLS_RED_POINT 0x0185
  198. #define GLS_GREEN_POINT 0x0186
  199. #define GLS_BLUE_POINT 0x0187
  200. #define GLS_WHITE_POINT 0x0188
  201. /* Headeri */
  202. #define GLS_FRAME_COUNT 0x01A0
  203. #define GLS_GLRC_COUNT 0x01A1
  204. #define GLS_HEIGHT_PIXELS 0x01A2
  205. #define GLS_LAYER_COUNT 0x01A3
  206. #define GLS_TILEABLE 0x01A4
  207. /* Headeriv */
  208. #define GLS_CREATE_TIME 0x01B0
  209. #define GLS_MODIFY_TIME 0x01B1
  210. /* Headerubz */
  211. /* GLS_EXTENSIONS */
  212. #define GLS_AUTHOR 0x01C0
  213. #define GLS_DESCRIPTION 0x01C1
  214. #define GLS_NOTES 0x01C2
  215. #define GLS_TITLE 0x01C3
  216. #define GLS_TOOLS 0x01C4
  217. #define GLS_VERSION 0x01C5
  218. /* Layerf */
  219. #define GLS_INVISIBLE_ASPECT 0x01D0
  220. /* Layeri */
  221. #define GLS_DISPLAY_FORMAT 0x01E0
  222. #define GLS_DOUBLEBUFFER 0x01E1
  223. #define GLS_INVISIBLE 0x01E2
  224. #define GLS_INVISIBLE_HEIGHT_PIXELS 0x01E3
  225. #define GLS_LEVEL 0x01E4
  226. #define GLS_STEREO 0x01E5
  227. #define GLS_TRANSPARENT 0x01E6
  228. #define GLS_INDEX_BITS 0x01E7
  229. #define GLS_RED_BITS 0x01E8
  230. #define GLS_GREEN_BITS 0x01E9
  231. #define GLS_BLUE_BITS 0x01EA
  232. #define GLS_ALPHA_BITS 0x01EB
  233. #define GLS_DEPTH_BITS 0x01EC
  234. #define GLS_STENCIL_BITS 0x01ED
  235. #define GLS_ACCUM_RED_BITS 0x01EE
  236. #define GLS_ACCUM_GREEN_BITS 0x01EF
  237. #define GLS_ACCUM_BLUE_BITS 0x01F0
  238. #define GLS_ACCUM_ALPHA_BITS 0x01F1
  239. #define GLS_AUX_BUFFERS 0x01F2
  240. /* GLS_SAMPLE_BUFFERS_SGIS */
  241. /* GLS_SAMPLES_SGIS */
  242. /* ListOp */
  243. #define GLS_APPEND 0x0200
  244. #define GLS_PREPEND 0x0201
  245. /* GL_SGIS_multisample */
  246. #define GLS_SAMPLE_BUFFERS_SGIS 0x0400
  247. #define GLS_SAMPLES_SGIS 0x0401
  248. /* GLS opcodes */
  249. #define GLS_OP_glsBeginGLS 16
  250. #define GLS_OP_glsBlock 17
  251. #define GLS_OP_glsCallStream 18
  252. #define GLS_OP_glsEndGLS 19
  253. #define GLS_OP_glsError 20
  254. #define GLS_OP_glsGLRC 21
  255. #define GLS_OP_glsGLRCLayer 22
  256. #define GLS_OP_glsHeaderGLRCi 23
  257. #define GLS_OP_glsHeaderLayerf 24
  258. #define GLS_OP_glsHeaderLayeri 25
  259. #define GLS_OP_glsHeaderf 26
  260. #define GLS_OP_glsHeaderfv 27
  261. #define GLS_OP_glsHeaderi 28
  262. #define GLS_OP_glsHeaderiv 29
  263. #define GLS_OP_glsHeaderubz 30
  264. #define GLS_OP_glsRequireExtension 31
  265. #define GLS_OP_glsUnsupportedCommand 32
  266. #define GLS_OP_glsAppRef 33
  267. #define GLS_OP_glsBeginObj 34
  268. #define GLS_OP_glsCharubz 35
  269. #define GLS_OP_glsComment 36
  270. #define GLS_OP_glsDisplayMapfv 37
  271. #define GLS_OP_glsEndObj 38
  272. #define GLS_OP_glsNumb 39
  273. #define GLS_OP_glsNumbv 40
  274. #define GLS_OP_glsNumd 41
  275. #define GLS_OP_glsNumdv 42
  276. #define GLS_OP_glsNumf 43
  277. #define GLS_OP_glsNumfv 44
  278. #define GLS_OP_glsNumi 45
  279. #define GLS_OP_glsNumiv 46
  280. #define GLS_OP_glsNuml 47
  281. #define GLS_OP_glsNumlv 48
  282. #define GLS_OP_glsNums 49
  283. #define GLS_OP_glsNumsv 50
  284. #define GLS_OP_glsNumub 51
  285. #define GLS_OP_glsNumubv 52
  286. #define GLS_OP_glsNumui 53
  287. #define GLS_OP_glsNumuiv 54
  288. #define GLS_OP_glsNumul 55
  289. #define GLS_OP_glsNumulv 56
  290. #define GLS_OP_glsNumus 57
  291. #define GLS_OP_glsNumusv 58
  292. #define GLS_OP_glsPad 59
  293. #define GLS_OP_glsSwapBuffers 60
  294. /* GL opcodes */
  295. #define GLS_OP_glAccum 277
  296. #define GLS_OP_glAlphaFunc 304
  297. #define GLS_OP_glAreTexturesResidentEXT 65502
  298. #define GLS_OP_glArrayElementEXT 65493
  299. #define GLS_OP_glBegin 71
  300. #define GLS_OP_glBindTextureEXT 65503
  301. #define GLS_OP_glBitmap 72
  302. #define GLS_OP_glBlendColorEXT 65520
  303. #define GLS_OP_glBlendEquationEXT 65521
  304. #define GLS_OP_glBlendFunc 305
  305. #define GLS_OP_glCallList 66
  306. #define GLS_OP_glCallLists 67
  307. #define GLS_OP_glClear 267
  308. #define GLS_OP_glClearAccum 268
  309. #define GLS_OP_glClearColor 270
  310. #define GLS_OP_glClearDepth 272
  311. #define GLS_OP_glClearIndex 269
  312. #define GLS_OP_glClearStencil 271
  313. #define GLS_OP_glClipPlane 214
  314. #define GLS_OP_glColor3b 73
  315. #define GLS_OP_glColor3bv 74
  316. #define GLS_OP_glColor3d 75
  317. #define GLS_OP_glColor3dv 76
  318. #define GLS_OP_glColor3f 77
  319. #define GLS_OP_glColor3fv 78
  320. #define GLS_OP_glColor3i 79
  321. #define GLS_OP_glColor3iv 80
  322. #define GLS_OP_glColor3s 81
  323. #define GLS_OP_glColor3sv 82
  324. #define GLS_OP_glColor3ub 83
  325. #define GLS_OP_glColor3ubv 84
  326. #define GLS_OP_glColor3ui 85
  327. #define GLS_OP_glColor3uiv 86
  328. #define GLS_OP_glColor3us 87
  329. #define GLS_OP_glColor3usv 88
  330. #define GLS_OP_glColor4b 89
  331. #define GLS_OP_glColor4bv 90
  332. #define GLS_OP_glColor4d 91
  333. #define GLS_OP_glColor4dv 92
  334. #define GLS_OP_glColor4f 93
  335. #define GLS_OP_glColor4fv 94
  336. #define GLS_OP_glColor4i 95
  337. #define GLS_OP_glColor4iv 96
  338. #define GLS_OP_glColor4s 97
  339. #define GLS_OP_glColor4sv 98
  340. #define GLS_OP_glColor4ub 99
  341. #define GLS_OP_glColor4ubv 100
  342. #define GLS_OP_glColor4ui 101
  343. #define GLS_OP_glColor4uiv 102
  344. #define GLS_OP_glColor4us 103
  345. #define GLS_OP_glColor4usv 104
  346. #define GLS_OP_glColorMask 274
  347. #define GLS_OP_glColorMaterial 215
  348. #define GLS_OP_glColorPointerEXT 65494
  349. #define GLS_OP_glColorTableParameterfvSGI 65477
  350. #define GLS_OP_glColorTableParameterivSGI 65478
  351. #define GLS_OP_glColorTableSGI 65476
  352. #define GLS_OP_glConvolutionFilter1DEXT 65528
  353. #define GLS_OP_glConvolutionFilter2DEXT 65529
  354. #define GLS_OP_glConvolutionParameterfEXT 65530
  355. #define GLS_OP_glConvolutionParameterfvEXT 65531
  356. #define GLS_OP_glConvolutionParameteriEXT 65532
  357. #define GLS_OP_glConvolutionParameterivEXT 65533
  358. #define GLS_OP_glCopyColorTableSGI 65479
  359. #define GLS_OP_glCopyConvolutionFilter1DEXT 65534
  360. #define GLS_OP_glCopyConvolutionFilter2DEXT 65535
  361. #define GLS_OP_glCopyPixels 319
  362. #define GLS_OP_glCopyTexImage1DEXT 65487
  363. #define GLS_OP_glCopyTexImage2DEXT 65456
  364. #define GLS_OP_glCopyTexSubImage1DEXT 65457
  365. #define GLS_OP_glCopyTexSubImage2DEXT 65458
  366. #define GLS_OP_glCopyTexSubImage3DEXT 65459
  367. #define GLS_OP_glCullFace 216
  368. #define GLS_OP_glDeleteLists 68
  369. #define GLS_OP_glDeleteTexturesEXT 65472
  370. #define GLS_OP_glDepthFunc 309
  371. #define GLS_OP_glDepthMask 275
  372. #define GLS_OP_glDepthRange 352
  373. #define GLS_OP_glDetailTexFuncSGIS 65489
  374. #define GLS_OP_glDisable 278
  375. #define GLS_OP_glDrawArraysEXT 65495
  376. #define GLS_OP_glDrawBuffer 266
  377. #define GLS_OP_glDrawPixels 321
  378. #define GLS_OP_glEdgeFlag 105
  379. #define GLS_OP_glEdgeFlagPointerEXT 65496
  380. #define GLS_OP_glEdgeFlagv 106
  381. #define GLS_OP_glEnable 279
  382. #define GLS_OP_glEnd 107
  383. #define GLS_OP_glEndList 65
  384. #define GLS_OP_glEvalCoord1d 292
  385. #define GLS_OP_glEvalCoord1dv 293
  386. #define GLS_OP_glEvalCoord1f 294
  387. #define GLS_OP_glEvalCoord1fv 295
  388. #define GLS_OP_glEvalCoord2d 296
  389. #define GLS_OP_glEvalCoord2dv 297
  390. #define GLS_OP_glEvalCoord2f 298
  391. #define GLS_OP_glEvalCoord2fv 299
  392. #define GLS_OP_glEvalMesh1 300
  393. #define GLS_OP_glEvalMesh2 302
  394. #define GLS_OP_glEvalPoint1 301
  395. #define GLS_OP_glEvalPoint2 303
  396. #define GLS_OP_glFeedbackBuffer 258
  397. #define GLS_OP_glFinish 280
  398. #define GLS_OP_glFlush 281
  399. #define GLS_OP_glFogf 217
  400. #define GLS_OP_glFogfv 218
  401. #define GLS_OP_glFogi 219
  402. #define GLS_OP_glFogiv 220
  403. #define GLS_OP_glFrontFace 221
  404. #define GLS_OP_glFrustum 353
  405. #define GLS_OP_glGenLists 69
  406. #define GLS_OP_glGenTexturesEXT 65473
  407. #define GLS_OP_glGetBooleanv 322
  408. #define GLS_OP_glGetClipPlane 323
  409. #define GLS_OP_glGetColorTableParameterfvSGI 65481
  410. #define GLS_OP_glGetColorTableParameterivSGI 65482
  411. #define GLS_OP_glGetColorTableSGI 65480
  412. #define GLS_OP_glGetConvolutionFilterEXT 65504
  413. #define GLS_OP_glGetConvolutionParameterfvEXT 65505
  414. #define GLS_OP_glGetConvolutionParameterivEXT 65506
  415. #define GLS_OP_glGetDetailTexFuncSGIS 65490
  416. #define GLS_OP_glGetDoublev 324
  417. #define GLS_OP_glGetError 325
  418. #define GLS_OP_glGetFloatv 326
  419. #define GLS_OP_glGetHistogramEXT 65509
  420. #define GLS_OP_glGetHistogramParameterfvEXT 65510
  421. #define GLS_OP_glGetHistogramParameterivEXT 65511
  422. #define GLS_OP_glGetIntegerv 327
  423. #define GLS_OP_glGetLightfv 328
  424. #define GLS_OP_glGetLightiv 329
  425. #define GLS_OP_glGetMapdv 330
  426. #define GLS_OP_glGetMapfv 331
  427. #define GLS_OP_glGetMapiv 332
  428. #define GLS_OP_glGetMaterialfv 333
  429. #define GLS_OP_glGetMaterialiv 334
  430. #define GLS_OP_glGetMinmaxEXT 65512
  431. #define GLS_OP_glGetMinmaxParameterfvEXT 65513
  432. #define GLS_OP_glGetMinmaxParameterivEXT 65514
  433. #define GLS_OP_glGetPixelMapfv 335
  434. #define GLS_OP_glGetPixelMapuiv 336
  435. #define GLS_OP_glGetPixelMapusv 337
  436. #define GLS_OP_glGetPointervEXT 65497
  437. #define GLS_OP_glGetPolygonStipple 338
  438. #define GLS_OP_glGetSeparableFilterEXT 65507
  439. #define GLS_OP_glGetSharpenTexFuncSGIS 65492
  440. #define GLS_OP_glGetString 339
  441. #define GLS_OP_glGetTexColorTableParameterfvSGI 65483
  442. #define GLS_OP_glGetTexColorTableParameterivSGI 65484
  443. #define GLS_OP_glGetTexEnvfv 340
  444. #define GLS_OP_glGetTexEnviv 341
  445. #define GLS_OP_glGetTexGendv 342
  446. #define GLS_OP_glGetTexGenfv 343
  447. #define GLS_OP_glGetTexGeniv 344
  448. #define GLS_OP_glGetTexImage 345
  449. #define GLS_OP_glGetTexLevelParameterfv 348
  450. #define GLS_OP_glGetTexLevelParameteriv 349
  451. #define GLS_OP_glGetTexParameterfv 346
  452. #define GLS_OP_glGetTexParameteriv 347
  453. #define GLS_OP_glHint 222
  454. #define GLS_OP_glHistogramEXT 65515
  455. #define GLS_OP_glIndexMask 276
  456. #define GLS_OP_glIndexPointerEXT 65498
  457. #define GLS_OP_glIndexd 108
  458. #define GLS_OP_glIndexdv 109
  459. #define GLS_OP_glIndexf 110
  460. #define GLS_OP_glIndexfv 111
  461. #define GLS_OP_glIndexi 112
  462. #define GLS_OP_glIndexiv 113
  463. #define GLS_OP_glIndexs 114
  464. #define GLS_OP_glIndexsv 115
  465. #define GLS_OP_glInitNames 261
  466. #define GLS_OP_glIsEnabled 350
  467. #define GLS_OP_glIsList 351
  468. #define GLS_OP_glIsTextureEXT 65474
  469. #define GLS_OP_glLightModelf 227
  470. #define GLS_OP_glLightModelfv 228
  471. #define GLS_OP_glLightModeli 229
  472. #define GLS_OP_glLightModeliv 230
  473. #define GLS_OP_glLightf 223
  474. #define GLS_OP_glLightfv 224
  475. #define GLS_OP_glLighti 225
  476. #define GLS_OP_glLightiv 226
  477. #define GLS_OP_glLineStipple 231
  478. #define GLS_OP_glLineWidth 232
  479. #define GLS_OP_glListBase 70
  480. #define GLS_OP_glLoadIdentity 354
  481. #define GLS_OP_glLoadMatrixd 356
  482. #define GLS_OP_glLoadMatrixf 355
  483. #define GLS_OP_glLoadName 262
  484. #define GLS_OP_glLogicOp 306
  485. #define GLS_OP_glMap1d 284
  486. #define GLS_OP_glMap1f 285
  487. #define GLS_OP_glMap2d 286
  488. #define GLS_OP_glMap2f 287
  489. #define GLS_OP_glMapGrid1d 288
  490. #define GLS_OP_glMapGrid1f 289
  491. #define GLS_OP_glMapGrid2d 290
  492. #define GLS_OP_glMapGrid2f 291
  493. #define GLS_OP_glMaterialf 233
  494. #define GLS_OP_glMaterialfv 234
  495. #define GLS_OP_glMateriali 235
  496. #define GLS_OP_glMaterialiv 236
  497. #define GLS_OP_glMatrixMode 357
  498. #define GLS_OP_glMinmaxEXT 65516
  499. #define GLS_OP_glMultMatrixd 359
  500. #define GLS_OP_glMultMatrixf 358
  501. #define GLS_OP_glNewList 64
  502. #define GLS_OP_glNormal3b 116
  503. #define GLS_OP_glNormal3bv 117
  504. #define GLS_OP_glNormal3d 118
  505. #define GLS_OP_glNormal3dv 119
  506. #define GLS_OP_glNormal3f 120
  507. #define GLS_OP_glNormal3fv 121
  508. #define GLS_OP_glNormal3i 122
  509. #define GLS_OP_glNormal3iv 123
  510. #define GLS_OP_glNormal3s 124
  511. #define GLS_OP_glNormal3sv 125
  512. #define GLS_OP_glNormalPointerEXT 65499
  513. #define GLS_OP_glOrtho 360
  514. #define GLS_OP_glPassThrough 263
  515. #define GLS_OP_glPixelMapfv 315
  516. #define GLS_OP_glPixelMapuiv 316
  517. #define GLS_OP_glPixelMapusv 317
  518. #define GLS_OP_glPixelStoref 313
  519. #define GLS_OP_glPixelStorei 314
  520. #define GLS_OP_glPixelTexGenSGIX 65462
  521. #define GLS_OP_glPixelTransferf 311
  522. #define GLS_OP_glPixelTransferi 312
  523. #define GLS_OP_glPixelZoom 310
  524. #define GLS_OP_glPointSize 237
  525. #define GLS_OP_glPolygonMode 238
  526. #define GLS_OP_glPolygonOffsetEXT 65522
  527. #define GLS_OP_glPolygonStipple 239
  528. #define GLS_OP_glPopAttrib 282
  529. #define GLS_OP_glPopMatrix 361
  530. #define GLS_OP_glPopName 264
  531. #define GLS_OP_glPrioritizeTexturesEXT 65475
  532. #define GLS_OP_glPushAttrib 283
  533. #define GLS_OP_glPushMatrix 362
  534. #define GLS_OP_glPushName 265
  535. #define GLS_OP_glRasterPos2d 126
  536. #define GLS_OP_glRasterPos2dv 127
  537. #define GLS_OP_glRasterPos2f 128
  538. #define GLS_OP_glRasterPos2fv 129
  539. #define GLS_OP_glRasterPos2i 130
  540. #define GLS_OP_glRasterPos2iv 131
  541. #define GLS_OP_glRasterPos2s 132
  542. #define GLS_OP_glRasterPos2sv 133
  543. #define GLS_OP_glRasterPos3d 134
  544. #define GLS_OP_glRasterPos3dv 135
  545. #define GLS_OP_glRasterPos3f 136
  546. #define GLS_OP_glRasterPos3fv 137
  547. #define GLS_OP_glRasterPos3i 138
  548. #define GLS_OP_glRasterPos3iv 139
  549. #define GLS_OP_glRasterPos3s 140
  550. #define GLS_OP_glRasterPos3sv 141
  551. #define GLS_OP_glRasterPos4d 142
  552. #define GLS_OP_glRasterPos4dv 143
  553. #define GLS_OP_glRasterPos4f 144
  554. #define GLS_OP_glRasterPos4fv 145
  555. #define GLS_OP_glRasterPos4i 146
  556. #define GLS_OP_glRasterPos4iv 147
  557. #define GLS_OP_glRasterPos4s 148
  558. #define GLS_OP_glRasterPos4sv 149
  559. #define GLS_OP_glReadBuffer 318
  560. #define GLS_OP_glReadPixels 320
  561. #define GLS_OP_glRectd 150
  562. #define GLS_OP_glRectdv 151
  563. #define GLS_OP_glRectf 152
  564. #define GLS_OP_glRectfv 153
  565. #define GLS_OP_glRecti 154
  566. #define GLS_OP_glRectiv 155
  567. #define GLS_OP_glRects 156
  568. #define GLS_OP_glRectsv 157
  569. #define GLS_OP_glRenderMode 260
  570. #define GLS_OP_glResetHistogramEXT 65517
  571. #define GLS_OP_glResetMinmaxEXT 65518
  572. #define GLS_OP_glRotated 363
  573. #define GLS_OP_glRotatef 364
  574. #define GLS_OP_glSampleMaskSGIS 65525
  575. #define GLS_OP_glSamplePatternSGIS 65526
  576. #define GLS_OP_glScaled 365
  577. #define GLS_OP_glScalef 366
  578. #define GLS_OP_glScissor 240
  579. #define GLS_OP_glSelectBuffer 259
  580. #define GLS_OP_glSeparableFilter2DEXT 65508
  581. #define GLS_OP_glShadeModel 241
  582. #define GLS_OP_glSharpenTexFuncSGIS 65491
  583. #define GLS_OP_glStencilFunc 307
  584. #define GLS_OP_glStencilMask 273
  585. #define GLS_OP_glStencilOp 308
  586. #define GLS_OP_glTagSampleBufferSGIX 65527
  587. #define GLS_OP_glTexColorTableParameterfvSGI 65485
  588. #define GLS_OP_glTexColorTableParameterivSGI 65486
  589. #define GLS_OP_glTexCoord1d 158
  590. #define GLS_OP_glTexCoord1dv 159
  591. #define GLS_OP_glTexCoord1f 160
  592. #define GLS_OP_glTexCoord1fv 161
  593. #define GLS_OP_glTexCoord1i 162
  594. #define GLS_OP_glTexCoord1iv 163
  595. #define GLS_OP_glTexCoord1s 164
  596. #define GLS_OP_glTexCoord1sv 165
  597. #define GLS_OP_glTexCoord2d 166
  598. #define GLS_OP_glTexCoord2dv 167
  599. #define GLS_OP_glTexCoord2f 168
  600. #define GLS_OP_glTexCoord2fv 169
  601. #define GLS_OP_glTexCoord2i 170
  602. #define GLS_OP_glTexCoord2iv 171
  603. #define GLS_OP_glTexCoord2s 172
  604. #define GLS_OP_glTexCoord2sv 173
  605. #define GLS_OP_glTexCoord3d 174
  606. #define GLS_OP_glTexCoord3dv 175
  607. #define GLS_OP_glTexCoord3f 176
  608. #define GLS_OP_glTexCoord3fv 177
  609. #define GLS_OP_glTexCoord3i 178
  610. #define GLS_OP_glTexCoord3iv 179
  611. #define GLS_OP_glTexCoord3s 180
  612. #define GLS_OP_glTexCoord3sv 181
  613. #define GLS_OP_glTexCoord4d 182
  614. #define GLS_OP_glTexCoord4dv 183
  615. #define GLS_OP_glTexCoord4f 184
  616. #define GLS_OP_glTexCoord4fv 185
  617. #define GLS_OP_glTexCoord4i 186
  618. #define GLS_OP_glTexCoord4iv 187
  619. #define GLS_OP_glTexCoord4s 188
  620. #define GLS_OP_glTexCoord4sv 189
  621. #define GLS_OP_glTexCoordPointerEXT 65500
  622. #define GLS_OP_glTexEnvf 248
  623. #define GLS_OP_glTexEnvfv 249
  624. #define GLS_OP_glTexEnvi 250
  625. #define GLS_OP_glTexEnviv 251
  626. #define GLS_OP_glTexGend 252
  627. #define GLS_OP_glTexGendv 253
  628. #define GLS_OP_glTexGenf 254
  629. #define GLS_OP_glTexGenfv 255
  630. #define GLS_OP_glTexGeni 256
  631. #define GLS_OP_glTexGeniv 257
  632. #define GLS_OP_glTexImage1D 246
  633. #define GLS_OP_glTexImage2D 247
  634. #define GLS_OP_glTexImage3DEXT 65519
  635. #define GLS_OP_glTexImage4DSGIS 65460
  636. #define GLS_OP_glTexParameterf 242
  637. #define GLS_OP_glTexParameterfv 243
  638. #define GLS_OP_glTexParameteri 244
  639. #define GLS_OP_glTexParameteriv 245
  640. #define GLS_OP_glTexSubImage1DEXT 65523
  641. #define GLS_OP_glTexSubImage2DEXT 65524
  642. #define GLS_OP_glTexSubImage3DEXT 65488
  643. #define GLS_OP_glTexSubImage4DSGIS 65461
  644. #define GLS_OP_glTranslated 367
  645. #define GLS_OP_glTranslatef 368
  646. #define GLS_OP_glVertex2d 190
  647. #define GLS_OP_glVertex2dv 191
  648. #define GLS_OP_glVertex2f 192
  649. #define GLS_OP_glVertex2fv 193
  650. #define GLS_OP_glVertex2i 194
  651. #define GLS_OP_glVertex2iv 195
  652. #define GLS_OP_glVertex2s 196
  653. #define GLS_OP_glVertex2sv 197
  654. #define GLS_OP_glVertex3d 198
  655. #define GLS_OP_glVertex3dv 199
  656. #define GLS_OP_glVertex3f 200
  657. #define GLS_OP_glVertex3fv 201
  658. #define GLS_OP_glVertex3i 202
  659. #define GLS_OP_glVertex3iv 203
  660. #define GLS_OP_glVertex3s 204
  661. #define GLS_OP_glVertex3sv 205
  662. #define GLS_OP_glVertex4d 206
  663. #define GLS_OP_glVertex4dv 207
  664. #define GLS_OP_glVertex4f 208
  665. #define GLS_OP_glVertex4fv 209
  666. #define GLS_OP_glVertex4i 210
  667. #define GLS_OP_glVertex4iv 211
  668. #define GLS_OP_glVertex4s 212
  669. #define GLS_OP_glVertex4sv 213
  670. #define GLS_OP_glVertexPointerEXT 65501
  671. #define GLS_OP_glViewport 369
  672. /*************************************************************/
  673. /* GLS global commands */
  674. extern GLSenum glsBinary (GLboolean inSwapped);
  675. extern GLSenum glsCommandAPI (GLSopcode inOpcode);
  676. extern const GLubyte* glsCommandString (GLSopcode inOpcode);
  677. extern void glsContext (GLuint inContext);
  678. extern void glsDeleteContext (GLuint inContext);
  679. extern const GLubyte* glsEnumString (GLSenum inAPI, GLSenum inEnum);
  680. extern GLuint glsGenContext (void);
  681. extern GLuint* glsGetAllContexts (void);
  682. extern GLScommandAlignment* glsGetCommandAlignment (GLSopcode inOpcode, GLSenum inExternStreamType, GLScommandAlignment *outAlignment);
  683. extern GLbitfield glsGetCommandAttrib (GLSopcode inOpcode);
  684. extern GLint glsGetConsti (GLSenum inAttrib);
  685. extern const GLint* glsGetConstiv (GLSenum inAttrib);
  686. extern const GLubyte* glsGetConstubz (GLSenum inAttrib);
  687. extern GLuint glsGetCurrentContext (void);
  688. extern GLint* glsGetCurrentTime (GLint *outTime);
  689. extern GLSenum glsGetError (GLboolean inClear);
  690. extern GLint glsGetOpcodeCount (GLSenum inAPI);
  691. extern const GLSopcode* glsGetOpcodes (GLSenum inAPI);
  692. extern GLboolean glsIsContext (GLuint inContext);
  693. extern GLboolean glsIsExtensionSupported (const GLubyte *inExtension);
  694. extern GLboolean glsIsUTF8String (const GLubyte *inString);
  695. extern GLlong glsLong (GLint inHigh, GLuint inLow);
  696. extern GLint glsLongHigh (GLlong inVal);
  697. extern GLuint glsLongLow (GLlong inVal);
  698. extern GLSfunc glsNullCommandFunc (GLSopcode inOpcode);
  699. extern void glsPixelSetup (void);
  700. extern GLulong glsULong (GLuint inHigh, GLuint inLow);
  701. extern GLuint glsULongHigh (GLulong inVal);
  702. extern GLuint glsULongLow (GLulong inVal);
  703. extern GLint glsUCS4toUTF8 (GLuint inUCS4, GLubyte *outUTF8);
  704. extern GLubyte* glsUCStoUTF8z (size_t inUCSbytes, const GLvoid *inUCSz, size_t inUTF8max, GLubyte *outUTF8z);
  705. extern GLubyte* glsUCS1toUTF8z (const GLubyte *inUCS1z, size_t inUTF8max, GLubyte *outUTF8z);
  706. extern GLubyte* glsUCS2toUTF8z (const GLushort *inUCS2z, size_t inUTF8max, GLubyte *outUTF8z);
  707. extern GLubyte* glsUCS4toUTF8z (const GLuint *inUCS4z, size_t inUTF8max, GLubyte *outUTF8z);
  708. extern GLint glsUTF8toUCS4 (const GLubyte *inUTF8, GLuint *outUCS4);
  709. extern GLboolean glsUTF8toUCSz (size_t inUCSbytes, const GLubyte *inUTF8z, size_t inUCSmax, GLvoid *outUCSz);
  710. extern GLboolean glsUTF8toUCS1z (const GLubyte *inUTF8z, size_t inUCS1max, GLubyte *outUCS1z);
  711. extern GLboolean glsUTF8toUCS2z (const GLubyte *inUTF8z, size_t inUCS2max, GLushort *outUCS2z);
  712. extern GLboolean glsUTF8toUCS4z (const GLubyte *inUTF8z, size_t inUCS4max, GLuint *outUCS4z);
  713. /* GLS immediate commands */
  714. extern void glsAbortCall (GLSenum inMode);
  715. extern GLboolean glsBeginCapture (const GLubyte *inStreamName, GLSenum inCaptureStreamType, GLbitfield inWriteFlags);
  716. extern void glsCallArray (GLSenum inExternStreamType, size_t inCount, const GLubyte *inArray);
  717. extern void glsCaptureFlags (GLSopcode inOpcode, GLbitfield inFlags);
  718. extern void glsCaptureFunc (GLSenum inTarget, GLScaptureFunc inFunc);
  719. extern void glsChannel (GLSenum inTarget, FILE *inChannel);
  720. extern void glsCommandFunc (GLSopcode inOpcode, GLSfunc inFunc);
  721. extern GLSenum glsCopyStream (const GLubyte *inSource, const GLubyte *inDest, GLSenum inDestType, GLbitfield inWriteFlags);
  722. extern void glsDataPointer (GLvoid *inPointer);
  723. extern void glsDeleteReadPrefix (GLuint inIndex);
  724. extern void glsDeleteStream (const GLubyte *inName);
  725. extern void glsEndCapture (void);
  726. extern void glsFlush (GLSenum inFlushType);
  727. extern GLbitfield glsGetCaptureFlags (GLSopcode inOpcode);
  728. extern GLSfunc glsGetCommandFunc (GLSopcode inOpcode);
  729. extern GLSfunc glsGetContextFunc (GLSenum inAttrib);
  730. extern GLlong glsGetContextListl (GLSenum inAttrib, GLuint inIndex);
  731. extern const GLubyte* glsGetContextListubz (GLSenum inAttrib, GLuint inIndex);
  732. extern GLvoid* glsGetContextPointer (GLSenum inAttrib);
  733. extern GLint glsGetContexti (GLSenum inAttrib);
  734. extern const GLubyte* glsGetContextubz (GLSenum inAttrib);
  735. extern GLint glsGetGLRCi (GLuint inGLRC, GLSenum inAttrib);
  736. extern GLfloat glsGetHeaderf (GLSenum inAttrib);
  737. extern GLfloat* glsGetHeaderfv (GLSenum inAttrib, GLfloat *outVec);
  738. extern GLint glsGetHeaderi (GLSenum inAttrib);
  739. extern GLint* glsGetHeaderiv (GLSenum inAttrib, GLint *outVec);
  740. extern const GLubyte* glsGetHeaderubz (GLSenum inAttrib);
  741. extern GLfloat glsGetLayerf (GLuint inLayer, GLSenum inAttrib);
  742. extern GLint glsGetLayeri (GLuint inLayer, GLSenum inAttrib);
  743. extern GLbitfield glsGetStreamAttrib (const GLubyte *inName);
  744. extern GLuint glsGetStreamCRC32 (const GLubyte *inName);
  745. extern const GLubyte* glsGetStreamReadName (const GLubyte *inName);
  746. extern size_t glsGetStreamSize (const GLubyte *inName);
  747. extern GLSenum glsGetStreamType (const GLubyte *inName);
  748. extern GLboolean glsIsContextStream (const GLubyte *inName);
  749. extern void glsPixelSetupGen (GLboolean inEnabled);
  750. extern void glsReadFunc (GLSreadFunc inFunc);
  751. extern void glsReadPrefix (GLSenum inListOp, const GLubyte *inPrefix);
  752. extern void glsUnreadFunc (GLSwriteFunc inFunc);
  753. extern void glsWriteFunc (GLSwriteFunc inFunc);
  754. extern void glsWritePrefix (const GLubyte *inPrefix);
  755. /* GLS encodable commands */
  756. extern void glsBeginGLS (GLint inVersionMajor, GLint inVersionMinor);
  757. extern void glsBlock (GLSenum inBlockType);
  758. extern GLSenum glsCallStream (const GLubyte *inName);
  759. extern void glsEndGLS (void);
  760. extern void glsError (GLSopcode inOpcode, GLSenum inError);
  761. extern void glsGLRC (GLuint inGLRC);
  762. extern void glsGLRCLayer (GLuint inGLRC, GLuint inLayer, GLuint inReadLayer);
  763. extern void glsHeaderGLRCi (GLuint inGLRC, GLSenum inAttrib, GLint inVal);
  764. extern void glsHeaderLayerf (GLuint inLayer, GLSenum inAttrib, GLfloat inVal);
  765. extern void glsHeaderLayeri (GLuint inLayer, GLSenum inAttrib, GLint inVal);
  766. extern void glsHeaderf (GLSenum inAttrib, GLfloat inVal);
  767. extern void glsHeaderfv (GLSenum inAttrib, const GLfloat *inVec);
  768. extern void glsHeaderi (GLSenum inAttrib, GLint inVal);
  769. extern void glsHeaderiv (GLSenum inAttrib, const GLint *inVec);
  770. extern void glsHeaderubz (GLSenum inAttrib, const GLubyte *inString);
  771. extern void glsRequireExtension (const GLubyte *inExtension);
  772. extern void glsUnsupportedCommand (void);
  773. /* GLS encodable-nop commands */
  774. extern void glsAppRef (GLulong inAddress, GLuint inCount);
  775. extern void glsBeginObj (const GLubyte *inTag);
  776. extern void glsCharubz (const GLubyte *inTag, const GLubyte *inString);
  777. extern void glsComment (const GLubyte *inComment);
  778. extern void glsDisplayMapfv (GLuint inLayer, GLSenum inMap, GLuint inCount, const GLfloat *inVec);
  779. extern void glsEndObj (void);
  780. extern void glsNumb (const GLubyte *inTag, GLbyte inVal);
  781. extern void glsNumbv (const GLubyte *inTag, GLuint inCount, const GLbyte *inVec);
  782. extern void glsNumd (const GLubyte *inTag, GLdouble inVal);
  783. extern void glsNumdv (const GLubyte *inTag, GLuint inCount, const GLdouble *inVec);
  784. extern void glsNumf (const GLubyte *inTag, GLfloat inVal);
  785. extern void glsNumfv (const GLubyte *inTag, GLuint inCount, const GLfloat *inVec);
  786. extern void glsNumi (const GLubyte *inTag, GLint inVal);
  787. extern void glsNumiv (const GLubyte *inTag, GLuint inCount, const GLint *inVec);
  788. extern void glsNuml (const GLubyte *inTag, GLlong inVal);
  789. extern void glsNumlv (const GLubyte *inTag, GLuint inCount, const GLlong *inVec);
  790. extern void glsNums (const GLubyte *inTag, GLshort inVal);
  791. extern void glsNumsv (const GLubyte *inTag, GLuint inCount, const GLshort *inVec);
  792. extern void glsNumub (const GLubyte *inTag, GLubyte inVal);
  793. extern void glsNumubv (const GLubyte *inTag, GLuint inCount, const GLubyte *inVec);
  794. extern void glsNumui (const GLubyte *inTag, GLuint inVal);
  795. extern void glsNumuiv (const GLubyte *inTag, GLuint inCount, const GLuint *inVec);
  796. extern void glsNumul (const GLubyte *inTag, GLulong inVal);
  797. extern void glsNumulv (const GLubyte *inTag, GLuint inCount, const GLulong *inVec);
  798. extern void glsNumus (const GLubyte *inTag, GLushort inVal);
  799. extern void glsNumusv (const GLubyte *inTag, GLuint inCount, const GLushort *inVec);
  800. extern void glsPad (void);
  801. extern void glsSwapBuffers (GLuint inLayer);
  802. #if defined(__cplusplus)
  803. }
  804. #endif /* defined(__cplusplus) */
  805. #endif /* defined(__gls_h_) */