home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 19 / AACD19.BIN / AACD / Programming / MCC_GLArea / MCC_GLArea_Dev / Include / inline / aglu.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-07-29  |  10.3 KB  |  181 lines

  1. #ifndef _INLINE_AGLU_H
  2. #define _INLINE_AGLU_H
  3.  
  4. #ifndef __INLINE_MACROS_H
  5. #include <inline/macros.h>
  6. #endif
  7.  
  8. #ifndef AGLU_BASE_NAME
  9. #define AGLU_BASE_NAME gluBase
  10. #endif
  11.  
  12. #define registerGLU(ptr) \
  13.     LP1NR(0x1E, registerGLU, struct glureg *, ptr, a0, \
  14.     , AGLU_BASE_NAME)
  15.  
  16. #define gluLookAt(GLdouble_eyex, GLdouble_eyey, GLdouble_eyez, GLdouble_centerx, GLdouble_centery, GLdouble_centerz, GLdouble_upx, GLdouble_upy, GLdouble_upz) \
  17.     LP9NR(0x24, gluLookAt, GLdouble, GLdouble_eyex, fp0, GLdouble, GLdouble_eyey, fp1, GLdouble, GLdouble_eyez, fp2, GLdouble, GLdouble_centerx, fp3, GLdouble, GLdouble_centery, fp4, GLdouble, GLdouble_centerz, fp5, GLdouble, GLdouble_upx, fp6, GLdouble, GLdouble_upy, fp7, GLdouble, GLdouble_upz, d0, \
  18.     , AGLU_BASE_NAME)
  19.  
  20. #define gluOrtho2D(GLdouble_left, GLdouble_right, GLdouble_bottom, GLdouble_top) \
  21.     LP4NR(0x2A, gluOrtho2D, GLdouble, GLdouble_left, fp0, GLdouble, GLdouble_right, fp1, GLdouble, GLdouble_bottom, fp2, GLdouble, GLdouble_top, fp3, \
  22.     , AGLU_BASE_NAME)
  23.  
  24. #define gluPerspective(GLdouble_fovy, GLdouble_aspect, GLdouble_zNear, GLdouble_zFar) \
  25.     LP4NR(0x30, gluPerspective, GLdouble, GLdouble_fovy, fp0, GLdouble, GLdouble_aspect, fp1, GLdouble, GLdouble_zNear, fp2, GLdouble, GLdouble_zFar, fp3, \
  26.     , AGLU_BASE_NAME)
  27.  
  28. #define gluPickMatrix(GLdouble_x, GLdouble_y, GLdouble_width, GLdouble_height, GLint_viewport) \
  29.     LP5NR(0x36, gluPickMatrix, GLdouble, GLdouble_x, fp0, GLdouble, GLdouble_y, fp1, GLdouble, GLdouble_width, fp2, GLdouble, GLdouble_height, fp3, const GLint, GLint_viewport, a0, \
  30.     , AGLU_BASE_NAME)
  31.  
  32. #define gluProject(GLdouble_objx, GLdouble_objy, GLdouble_objz, GLdouble_modelMatrix, GLdouble_projMatrix, GLint_viewport, GLdouble_winx, GLdouble_winy, GLdouble_winz) \
  33.     LP9(0x3C, GLint, gluProject, GLdouble, GLdouble_objx, fp0, GLdouble, GLdouble_objy, fp1, GLdouble, GLdouble_objz, fp2, const GLdouble, GLdouble_modelMatrix, a0, const GLdouble, GLdouble_projMatrix, a1, const GLint, GLint_viewport, a2, GLdouble *, GLdouble_winx, a3, GLdouble *, GLdouble_winy, d0, GLdouble *, GLdouble_winz, d1, \
  34.     , AGLU_BASE_NAME)
  35.  
  36. #define gluUnProject(GLdouble_winx, GLdouble_winy, GLdouble_winz, GLdouble_modelMatrix, GLdouble_projMatrix, GLint_viewport, GLdouble_objx, GLdouble_objy, GLdouble_objz) \
  37.     LP9(0x42, GLint, gluUnProject, GLdouble, GLdouble_winx, fp0, GLdouble, GLdouble_winy, fp1, GLdouble, GLdouble_winz, fp2, const GLdouble, GLdouble_modelMatrix, a0, const GLdouble, GLdouble_projMatrix, a1, const GLint, GLint_viewport, a2, GLdouble *, GLdouble_objx, a3, GLdouble *, GLdouble_objy, d0, GLdouble *, GLdouble_objz, d1, \
  38.     , AGLU_BASE_NAME)
  39.  
  40. #define gluErrorString(GLenum_errorCode) \
  41.     LP1(0x48, const GLubyte*, gluErrorString, GLenum, GLenum_errorCode, d0, \
  42.     , AGLU_BASE_NAME)
  43.  
  44. #define gluScaleImage(GLenum_format, GLint_widthin, GLint_heightin, GLenum_typein, void_datain, GLint_widthout, GLint_heightout, GLenum_typeout, void_dataout) \
  45.     LP9(0x4E, GLint, gluScaleImage, GLenum, GLenum_format, d0, GLint, GLint_widthin, d1, GLint, GLint_heightin, d2, GLenum, GLenum_typein, d3, const void *, void_datain, a0, GLint, GLint_widthout, d4, GLint, GLint_heightout, d5, GLenum, GLenum_typeout, d6, void *, void_dataout, a1, \
  46.     , AGLU_BASE_NAME)
  47.  
  48. #define gluBuild1DMipmaps(GLenum_target, GLint_components, GLint_width, GLenum_format, GLenum_type, void_data) \
  49.     LP6(0x54, GLint, gluBuild1DMipmaps, GLenum, GLenum_target, d0, GLint, GLint_components, d1, GLint, GLint_width, d2, GLenum, GLenum_format, d3, GLenum, GLenum_type, d4, const void *, void_data, a0, \
  50.     , AGLU_BASE_NAME)
  51.  
  52. #define gluBuild2DMipmaps(GLenum_target, GLint_components, GLint_width, GLint_height, GLenum_format, GLenum_type, void_data) \
  53.     LP7(0x5A, GLint, gluBuild2DMipmaps, GLenum, GLenum_target, d0, GLint, GLint_components, d1, GLint, GLint_width, d2, GLint, GLint_height, d3, GLenum, GLenum_format, d4, GLenum, GLenum_type, d5, const void *, void_data, a0, \
  54.     , AGLU_BASE_NAME)
  55.  
  56. #define gluNewQuadric() \
  57.     LP0(0x60, GLUquadricObj*, gluNewQuadric, \
  58.     , AGLU_BASE_NAME)
  59.  
  60. #define gluDeleteQuadric(GLUquadricObj_state) \
  61.     LP1NR(0x66, gluDeleteQuadric, GLUquadricObj *, GLUquadricObj_state, a0, \
  62.     , AGLU_BASE_NAME)
  63.  
  64. #define gluQuadricDrawStyle(GLUquadricObj_quadObject, GLenum_drawStyle) \
  65.     LP2NR(0x6C, gluQuadricDrawStyle, GLUquadricObj *, GLUquadricObj_quadObject, a0, GLenum, GLenum_drawStyle, d0, \
  66.     , AGLU_BASE_NAME)
  67.  
  68. #define gluQuadricOrientation(GLUquadricObj_quadObject, GLenum_orientation) \
  69.     LP2NR(0x72, gluQuadricOrientation, GLUquadricObj *, GLUquadricObj_quadObject, a0, GLenum, GLenum_orientation, d0, \
  70.     , AGLU_BASE_NAME)
  71.  
  72. #define gluQuadricNormals(GLUquadricObj_quadObject, GLenum_normals) \
  73.     LP2NR(0x78, gluQuadricNormals, GLUquadricObj *, GLUquadricObj_quadObject, a0, GLenum, GLenum_normals, d0, \
  74.     , AGLU_BASE_NAME)
  75.  
  76. #define gluQuadricTexture(GLUquadricObj_quadObject, GLboolean_textureCoords) \
  77.     LP2NR(0x7E, gluQuadricTexture, GLUquadricObj *, GLUquadricObj_quadObject, a0, GLboolean, GLboolean_textureCoords, d0, \
  78.     , AGLU_BASE_NAME)
  79.  
  80. #define gluCylinder(GLUquadricObj_qobj, GLdouble_baseRadius, GLdouble_topRadius, GLdouble_height, GLint_slices, GLint_stacks) \
  81.     LP6NR(0x8A, gluCylinder, GLUquadricObj *, GLUquadricObj_qobj, a0, GLdouble, GLdouble_baseRadius, fp0, GLdouble, GLdouble_topRadius, fp1, GLdouble, GLdouble_height, fp2, GLint, GLint_slices, d0, GLint, GLint_stacks, d1, \
  82.     , AGLU_BASE_NAME)
  83.  
  84. #define gluSphere(GLUquadricObj_obj, GLdouble_radius, GLint_slices, GLint_stacks) \
  85.     LP4NR(0x90, gluSphere, GLUquadricObj *, GLUquadricObj_obj, a0, GLdouble, GLdouble_radius, fp0, GLint, GLint_slices, d0, GLint, GLint_stacks, d1, \
  86.     , AGLU_BASE_NAME)
  87.  
  88. #define gluDisk(GLUquadricObj_qobj, GLdouble_InnerRadius, GLdouble_outerRadius, GLint_slices, GLint_loops) \
  89.     LP5NR(0x96, gluDisk, GLUquadricObj *, GLUquadricObj_qobj, a0, GLdouble, GLdouble_InnerRadius, fp0, GLdouble, GLdouble_outerRadius, fp1, GLint, GLint_slices, d0, GLint, GLint_loops, d1, \
  90.     , AGLU_BASE_NAME)
  91.  
  92. #define gluPartialDisk(GLUquadricObj_qobj, GLdouble_innerRadius, GLdouble_outerRadius, GLint_slices, GLint_loops, GLdouble_startAngle, GLdouble_sweepAngle) \
  93.     LP7NR(0x9C, gluPartialDisk, GLUquadricObj *, GLUquadricObj_qobj, a0, GLdouble, GLdouble_innerRadius, fp0, GLdouble, GLdouble_outerRadius, fp1, GLint, GLint_slices, d0, GLint, GLint_loops, d1, GLdouble, GLdouble_startAngle, fp2, GLdouble, GLdouble_sweepAngle, fp3, \
  94.     , AGLU_BASE_NAME)
  95.  
  96. #define gluNewNurbsRenderer() \
  97.     LP0(0xA2, GLUnurbsObj*, gluNewNurbsRenderer, \
  98.     , AGLU_BASE_NAME)
  99.  
  100. #define gluDeleteNurbsRenderer(GLUnurbsObj_nobj) \
  101.     LP1NR(0xA8, gluDeleteNurbsRenderer, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  102.     , AGLU_BASE_NAME)
  103.  
  104. #define gluLoadSamplingMatrices(GLUnurbsObj_nobj, GLfloat_modelMatrix, GLfloat_projMatrix, GLint_viewport) \
  105.     LP4NR(0xAE, gluLoadSamplingMatrices, GLUnurbsObj *, GLUnurbsObj_nobj, a0, const GLfloat, GLfloat_modelMatrix, a1, const GLfloat, GLfloat_projMatrix, a2, const GLint, GLint_viewport, a3, \
  106.     , AGLU_BASE_NAME)
  107.  
  108. #define gluNurbsProperty(GLUnurbsObj_nobj, GLenum_property, GLfloat_value) \
  109.     LP3NR(0xB4, gluNurbsProperty, GLUnurbsObj *, GLUnurbsObj_nobj, a0, GLenum, GLenum_property, d0, GLfloat, GLfloat_value, fp0, \
  110.     , AGLU_BASE_NAME)
  111.  
  112. #define gluGetNurbsProperty(GLUnurbsObj_nobj, GLenum_property, GLfloat_value) \
  113.     LP3NR(0xBA, gluGetNurbsProperty, GLUnurbsObj *, GLUnurbsObj_nobj, a0, GLenum, GLenum_property, d0, GLfloat *, GLfloat_value, a1, \
  114.     , AGLU_BASE_NAME)
  115.  
  116. #define gluBeginCurve(GLUnurbsObj_nobj) \
  117.     LP1NR(0xC0, gluBeginCurve, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  118.     , AGLU_BASE_NAME)
  119.  
  120. #define gluEndCurve(GLUnurbsObj_nobj) \
  121.     LP1NR(0xC6, gluEndCurve, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  122.     , AGLU_BASE_NAME)
  123.  
  124. #define gluNurbsCurve(GLUnurbsObj_nobj, GLint_nknots, GLfloat_knot, GLint_stride, GLfloat_ctlarray, GLint_order, GLenum_type) \
  125.     LP7NR(0xCC, gluNurbsCurve, GLUnurbsObj *, GLUnurbsObj_nobj, a0, GLint, GLint_nknots, d0, GLfloat *, GLfloat_knot, a1, GLint, GLint_stride, d1, GLfloat *, GLfloat_ctlarray, a2, GLint, GLint_order, d2, GLenum, GLenum_type, d3, \
  126.     , AGLU_BASE_NAME)
  127.  
  128. #define gluBeginSurface(GLUnurbsObj_nobj) \
  129.     LP1NR(0xD2, gluBeginSurface, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  130.     , AGLU_BASE_NAME)
  131.  
  132. #define gluEndSurface(GLUnurbsObj_nobj) \
  133.     LP1NR(0xD8, gluEndSurface, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  134.     , AGLU_BASE_NAME)
  135.  
  136. #define gluNurbsSurface(GLUnurbsObj_nobj, GLint_sknot_count, GLfloat_sknot, GLint_tknot_count, GLfloat_tknot, GLint_s_stride, GLint_t_stride, GLfloat_ctlarray, GLint_sorder, GLint_torder, GLenum_type) \
  137.     LP11NR(0xDE, gluNurbsSurface, GLUnurbsObj *, GLUnurbsObj_nobj, a0, GLint, GLint_sknot_count, d0, GLfloat *, GLfloat_sknot, a1, GLint, GLint_tknot_count, d1, GLfloat *, GLfloat_tknot, a2, GLint, GLint_s_stride, d2, GLint, GLint_t_stride, d3, GLfloat *, GLfloat_ctlarray, a3, GLint, GLint_sorder, d4, GLint, GLint_torder, d5, GLenum, GLenum_type, d6, \
  138.     , AGLU_BASE_NAME)
  139.  
  140. #define gluBeginTrim(GLUnurbsObj_nobj) \
  141.     LP1NR(0xE4, gluBeginTrim, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  142.     , AGLU_BASE_NAME)
  143.  
  144. #define gluEndTrim(GLUnurbsObj_nobj) \
  145.     LP1NR(0xEA, gluEndTrim, GLUnurbsObj *, GLUnurbsObj_nobj, a0, \
  146.     , AGLU_BASE_NAME)
  147.  
  148. #define gluPwlCurve(GLUnurbsObj_nobj, GLint_count, GLfloat_array, GLint_stride, GLenum_type) \
  149.     LP5NR(0xF0, gluPwlCurve, GLUnurbsObj *, GLUnurbsObj_nobj, a0, GLint, GLint_count, d0, GLfloat *, GLfloat_array, a1, GLint, GLint_stride, d1, GLenum, GLenum_type, d2, \
  150.     , AGLU_BASE_NAME)
  151.  
  152. #define gluNewTess() \
  153.     LP0(0xFC, GLUtriangulatorObj*, gluNewTess, \
  154.     , AGLU_BASE_NAME)
  155.  
  156. #define gluDeleteTess(GLUtriangulatorObj_tobj) \
  157.     LP1NR(0x108, gluDeleteTess, GLUtriangulatorObj *, GLUtriangulatorObj_tobj, a0, \
  158.     , AGLU_BASE_NAME)
  159.  
  160. #define gluBeginPolygon(GLUtriangulatorObj_tobj) \
  161.     LP1NR(0x10E, gluBeginPolygon, GLUtriangulatorObj *, GLUtriangulatorObj_tobj, a0, \
  162.     , AGLU_BASE_NAME)
  163.  
  164. #define gluEndPolygon(GLUtriangulatorObj_tobj) \
  165.     LP1NR(0x114, gluEndPolygon, GLUtriangulatorObj *, GLUtriangulatorObj_tobj, a0, \
  166.     , AGLU_BASE_NAME)
  167.  
  168. #define gluNextContour(GLUtriangulatorObj_tobj, GLenum_type) \
  169.     LP2NR(0x11A, gluNextContour, GLUtriangulatorObj *, GLUtriangulatorObj_tobj, a0, GLenum, GLenum_type, d0, \
  170.     , AGLU_BASE_NAME)
  171.  
  172. #define gluTessVertex(GLUtriangulatorObj_tobj, GLdouble_v, void_data) \
  173.     LP3NR(0x120, gluTessVertex, GLUtriangulatorObj *, GLUtriangulatorObj_tobj, a0, GLdouble, GLdouble_v, a1, void *, void_data, a2, \
  174.     , AGLU_BASE_NAME)
  175.  
  176. #define gluGetString(GLenum_name) \
  177.     LP1(0x126, const GLubyte*, gluGetString, GLenum, GLenum_name, d0, \
  178.     , AGLU_BASE_NAME)
  179.  
  180. #endif /*  _INLINE_AGLU_H  */
  181.