/support/gambit/glut/glut-header.scm

http://github.com/dharmatech/abstracting · Scheme · 236 lines · 168 code · 22 blank · 46 comment · 0 complexity · d40b42581ab3eed4293eba4a577b1cfc MD5 · raw file

  1. (include "glu-header.scm")
  2. (c-define-type int* (pointer int))
  3. ;; /*
  4. ;; * The freeglut and GLUT API versions
  5. ;; */
  6. (define FREEGLUT 1)
  7. (define VERSION 4)
  8. ;(define 0 1)
  9. (define IMPLEMENTATION 13)
  10. ;; /*
  11. ;; * GLUT API macro definitions -- the special key codes:
  12. ;; */
  13. (define GLUT_KEY_F1 #x0001)
  14. (define GLUT_KEY_F2 #x0002)
  15. (define GLUT_KEY_F3 #x0003)
  16. (define GLUT_KEY_F4 #x0004)
  17. (define GLUT_KEY_F5 #x0005)
  18. (define GLUT_KEY_F6 #x0006)
  19. (define GLUT_KEY_F7 #x0007)
  20. (define GLUT_KEY_F8 #x0008)
  21. (define GLUT_KEY_F9 #x0009)
  22. (define GLUT_KEY_F10 #x000A)
  23. (define GLUT_KEY_F11 #x000B)
  24. (define GLUT_KEY_F12 #x000C)
  25. (define GLUT_KEY_LEFT #x0064)
  26. (define GLUT_KEY_UP #x0065)
  27. (define GLUT_KEY_RIGHT #x0066)
  28. (define GLUT_KEY_DOWN #x0067)
  29. (define GLUT_KEY_PAGE_UP #x0068)
  30. (define GLUT_KEY_PAGE_DOWN #x0069)
  31. (define GLUT_KEY_HOME #x006A)
  32. (define GLUT_KEY_END #x006B)
  33. (define GLUT_KEY_INSERT #x006C)
  34. ;; /*
  35. ;; * GLUT API macro definitions -- mouse state definitions
  36. ;; */
  37. (define GLUT_LEFT_BUTTON #x0000)
  38. (define GLUT_MIDDLE_BUTTON #x0001)
  39. (define GLUT_RIGHT_BUTTON #x0002)
  40. (define GLUT_DOWN #x0000)
  41. (define GLUT_UP #x0001)
  42. (define GLUT_LEFT #x0000)
  43. (define GLUT_ENTERED #x0001)
  44. ;; /*
  45. ;; * GLUT API macro definitions -- the display mode definitions
  46. ;; */
  47. (define GLUT_RGB #x0000)
  48. (define GLUT_RGBA #x0000)
  49. (define GLUT_INDEX #x0001)
  50. (define GLUT_SINGLE #x0000)
  51. (define GLUT_DOUBLE #x0002)
  52. (define GLUT_ACCUM #x0004)
  53. (define GLUT_ALPHA #x0008)
  54. (define GLUT_DEPTH #x0010)
  55. (define GLUT_STENCIL #x0020)
  56. (define GLUT_MULTISAMPLE #x0080)
  57. (define GLUT_STEREO #x0100)
  58. (define GLUT_LUMINANCE #x0200)
  59. ;; /*
  60. ;; * GLUT API macro definitions -- windows and menu related definitions
  61. ;; */
  62. (define GLUT_MENU_NOT_IN_USE #x0000)
  63. (define GLUT_MENU_IN_USE #x0001)
  64. (define GLUT_NOT_VISIBLE #x0000)
  65. (define GLUT_VISIBLE #x0001)
  66. (define GLUT_HIDDEN #x0000)
  67. (define GLUT_FULLY_RETAINED #x0001)
  68. (define GLUT_PARTIALLY_RETAINED #x0002)
  69. (define GLUT_FULLY_COVERED #x0003)
  70. ;; /*
  71. ;; * GLUT API macro definitions -- the glutGet parameters
  72. ;; */
  73. (define GLUT_WINDOW_X #x0064)
  74. (define GLUT_WINDOW_Y #x0065)
  75. (define GLUT_WINDOW_WIDTH #x0066)
  76. (define GLUT_WINDOW_HEIGHT #x0067)
  77. (define GLUT_WINDOW_BUFFER_SIZE #x0068)
  78. (define GLUT_WINDOW_STENCIL_SIZE #x0069)
  79. (define GLUT_WINDOW_DEPTH_SIZE #x006A)
  80. (define GLUT_WINDOW_RED_SIZE #x006B)
  81. (define GLUT_WINDOW_GREEN_SIZE #x006C)
  82. (define GLUT_WINDOW_BLUE_SIZE #x006D)
  83. (define GLUT_WINDOW_ALPHA_SIZE #x006E)
  84. (define GLUT_WINDOW_ACCUM_RED_SIZE #x006F)
  85. (define GLUT_WINDOW_ACCUM_GREEN_SIZE #x0070)
  86. (define GLUT_WINDOW_ACCUM_BLUE_SIZE #x0071)
  87. (define GLUT_WINDOW_ACCUM_ALPHA_SIZE #x0072)
  88. (define GLUT_WINDOW_DOUBLEBUFFER #x0073)
  89. (define GLUT_WINDOW_RGBA #x0074)
  90. (define GLUT_WINDOW_PARENT #x0075)
  91. (define GLUT_WINDOW_NUM_CHILDREN #x0076)
  92. (define GLUT_WINDOW_COLORMAP_SIZE #x0077)
  93. (define GLUT_WINDOW_NUM_SAMPLES #x0078)
  94. (define GLUT_WINDOW_STEREO #x0079)
  95. (define GLUT_WINDOW_CURSOR #x007A)
  96. (define GLUT_SCREEN_WIDTH #x00C8)
  97. (define GLUT_SCREEN_HEIGHT #x00C9)
  98. (define GLUT_SCREEN_WIDTH_MM #x00CA)
  99. (define GLUT_SCREEN_HEIGHT_MM #x00CB)
  100. (define GLUT_MENU_NUM_ITEMS #x012C)
  101. (define GLUT_DISPLAY_MODE_POSSIBLE #x0190)
  102. (define GLUT_INIT_WINDOW_X #x01F4)
  103. (define GLUT_INIT_WINDOW_Y #x01F5)
  104. (define GLUT_INIT_WINDOW_WIDTH #x01F6)
  105. (define GLUT_INIT_WINDOW_HEIGHT #x01F7)
  106. (define GLUT_INIT_DISPLAY_MODE #x01F8)
  107. (define GLUT_ELAPSED_TIME #x02BC)
  108. (define GLUT_WINDOW_FORMAT_ID #x007B)
  109. (define GLUT_INIT_STATE #x007C)
  110. ;; /*
  111. ;; * GLUT API macro definitions -- the glutDeviceGet parameters
  112. ;; */
  113. (define GLUT_HAS_KEYBOARD #x0258)
  114. (define GLUT_HAS_MOUSE #x0259)
  115. (define GLUT_HAS_SPACEBALL #x025A)
  116. (define GLUT_HAS_DIAL_AND_BUTTON_BOX #x025B)
  117. (define GLUT_HAS_TABLET #x025C)
  118. (define GLUT_NUM_MOUSE_BUTTONS #x025D)
  119. (define GLUT_NUM_SPACEBALL_BUTTONS #x025E)
  120. (define GLUT_NUM_BUTTON_BOX_BUTTONS #x025F)
  121. (define GLUT_NUM_DIALS #x0260)
  122. (define GLUT_NUM_TABLET_BUTTONS #x0261)
  123. (define GLUT_DEVICE_IGNORE_KEY_REPEAT #x0262)
  124. (define GLUT_DEVICE_KEY_REPEAT #x0263)
  125. (define GLUT_HAS_JOYSTICK #x0264)
  126. (define GLUT_OWNS_JOYSTICK #x0265)
  127. (define GLUT_JOYSTICK_BUTTONS #x0266)
  128. (define GLUT_JOYSTICK_AXES #x0267)
  129. (define GLUT_JOYSTICK_POLL_RATE #x0268)
  130. ;; /*
  131. ;; * GLUT API macro definitions -- the glutLayerGet parameters
  132. ;; */
  133. (define GLUT_OVERLAY_POSSIBLE #x0320)
  134. (define GLUT_LAYER_IN_USE #x0321)
  135. (define GLUT_HAS_OVERLAY #x0322)
  136. (define GLUT_TRANSPARENT_INDEX #x0323)
  137. (define GLUT_NORMAL_DAMAGED #x0324)
  138. (define GLUT_OVERLAY_DAMAGED #x0325)
  139. ;; /*
  140. ;; * GLUT API macro definitions -- the glutVideoResizeGet parameters
  141. ;; */
  142. (define GLUT_VIDEO_RESIZE_POSSIBLE #x0384)
  143. (define GLUT_VIDEO_RESIZE_IN_USE #x0385)
  144. (define GLUT_VIDEO_RESIZE_X_DELTA #x0386)
  145. (define GLUT_VIDEO_RESIZE_Y_DELTA #x0387)
  146. (define GLUT_VIDEO_RESIZE_WIDTH_DELTA #x0388)
  147. (define GLUT_VIDEO_RESIZE_HEIGHT_DELTA #x0389)
  148. (define GLUT_VIDEO_RESIZE_X #x038A)
  149. (define GLUT_VIDEO_RESIZE_Y #x038B)
  150. (define GLUT_VIDEO_RESIZE_WIDTH #x038C)
  151. (define GLUT_VIDEO_RESIZE_HEIGHT #x038D)
  152. ;; /*
  153. ;; * GLUT API macro definitions -- the glutUseLayer parameters
  154. ;; */
  155. (define GLUT_NORMAL #x0000)
  156. (define GLUT_OVERLAY #x0001)
  157. ;; /*
  158. ;; * GLUT API macro definitions -- the glutGetModifiers parameters
  159. ;; */
  160. (define GLUT_ACTIVE_SHIFT #x0001)
  161. (define GLUT_ACTIVE_CTRL #x0002)
  162. (define GLUT_ACTIVE_ALT #x0004)
  163. ;; /*
  164. ;; * GLUT API macro definitions -- the glutSetCursor parameters
  165. ;; */
  166. (define GLUT_CURSOR_RIGHT_ARROW #x0000)
  167. (define GLUT_CURSOR_LEFT_ARROW #x0001)
  168. (define GLUT_CURSOR_INFO #x0002)
  169. (define GLUT_CURSOR_DESTROY #x0003)
  170. (define GLUT_CURSOR_HELP #x0004)
  171. (define GLUT_CURSOR_CYCLE #x0005)
  172. (define GLUT_CURSOR_SPRAY #x0006)
  173. (define GLUT_CURSOR_WAIT #x0007)
  174. (define GLUT_CURSOR_TEXT #x0008)
  175. (define GLUT_CURSOR_CROSSHAIR #x0009)
  176. (define GLUT_CURSOR_UP_DOWN #x000A)
  177. (define GLUT_CURSOR_LEFT_RIGHT #x000B)
  178. (define GLUT_CURSOR_TOP_SIDE #x000C)
  179. (define GLUT_CURSOR_BOTTOM_SIDE #x000D)
  180. (define GLUT_CURSOR_LEFT_SIDE #x000E)
  181. (define GLUT_CURSOR_RIGHT_SIDE #x000F)
  182. (define GLUT_CURSOR_TOP_LEFT_CORNER #x0010)
  183. (define GLUT_CURSOR_TOP_RIGHT_CORNER #x0011)
  184. (define GLUT_CURSOR_BOTTOM_RIGHT_CORNER #x0012)
  185. (define GLUT_CURSOR_BOTTOM_LEFT_CORNER #x0013)
  186. (define GLUT_CURSOR_INHERIT #x0064)
  187. (define GLUT_CURSOR_NONE #x0065)
  188. (define GLUT_CURSOR_FULL_CROSSHAIR #x0066)
  189. ;; /*
  190. ;; * GLUT API macro definitions -- RGB color component specification definitions
  191. ;; */
  192. (define GLUT_RED #x0000)
  193. (define GLUT_GREEN #x0001)
  194. (define GLUT_BLUE #x0002)
  195. ;; /*
  196. ;; * GLUT API macro definitions -- additional keyboard and joystick definitions
  197. ;; */
  198. (define GLUT_KEY_REPEAT_OFF #x0000)
  199. (define GLUT_KEY_REPEAT_ON #x0001)
  200. (define GLUT_KEY_REPEAT_DEFAULT #x0002)
  201. (define GLUT_JOYSTICK_BUTTON_A #x0001)
  202. (define GLUT_JOYSTICK_BUTTON_B #x0002)
  203. (define GLUT_JOYSTICK_BUTTON_C #x0004)
  204. (define GLUT_JOYSTICK_BUTTON_D #x0008)
  205. ;; /*
  206. ;; * GLUT API macro definitions -- game mode definitions
  207. ;; */
  208. (define GLUT_GAME_MODE_ACTIVE #x0000)
  209. (define GLUT_GAME_MODE_POSSIBLE #x0001)
  210. (define GLUT_GAME_MODE_WIDTH #x0002)
  211. (define GLUT_GAME_MODE_HEIGHT #x0003)
  212. (define GLUT_GAME_MODE_PIXEL_DEPTH #x0004)
  213. (define GLUT_GAME_MODE_REFRESH_RATE #x0005)
  214. (define GLUT_GAME_MODE_DISPLAY_CHANGED #x0006)