with GL_Types, Interfaces.C; package GL -- -- Provides types and constants common to all openGL profiles. -- is pragma Pure; use Interfaces; --------- -- Types -- -- GLvoid -- subtype GLvoid is GL_Types.GLvoid; type GLvoid_array is array (C.size_t range <>) of aliased GLvoid; -- GLenum -- subtype GLenum is GL_Types.GLenum; type GLenum_array is array (C.size_t range <>) of aliased GLenum; -- GLboolean -- subtype GLboolean is GL_Types.GLboolean; type GLboolean_array is array (C.size_t range <>) of aliased GLboolean; -- GLbitfield -- subtype GLbitfield is GL_Types.GLbitfield; type GLbitfield_array is array (C.size_t range <>) of aliased GLbitfield; -- GLshort -- subtype GLshort is GL_Types.GLshort; type GLshort_array is array (C.size_t range <>) of aliased GLshort; -- GLint -- subtype GLint is GL_Types.GLint; type GLint_array is array (C.size_t range <>) of aliased GLint; -- GLsizei -- subtype GLsizei is GL_Types.GLsizei; type GLsizei_array is array (C.size_t range <>) of aliased GLsizei; -- GLushort -- subtype GLushort is GL_Types.GLushort; type GLushort_array is array (C.size_t range <>) of aliased GLushort; -- GLuint -- subtype GLuint is GL_Types.GLuint; type GLuint_array is array (C.size_t range <>) of aliased GLuint; -- GLbyte -- subtype GLbyte is GL_Types.GLbyte; type GLbyte_array is array (C.size_t range <>) of aliased GLbyte; -- GLubyte -- subtype GLubyte is GL_Types.GLubyte; type GLubyte_array is array (C.size_t range <>) of aliased GLubyte; -- GLfloat -- subtype GLfloat is GL_Types.GLfloat; type GLfloat_array is array (C.size_t range <>) of aliased GLfloat; -- GLclampf -- subtype GLclampf is GL_Types.GLclampf; type GLclampf_array is array (C.size_t range <>) of aliased GLclampf; ------------- -- Constants -- -- ClearBufferMask GL_DEPTH_BUFFER_BIT : constant := 16#100#; GL_STENCIL_BUFFER_BIT : constant := 16#400#; GL_COLOR_BUFFER_BIT : constant := 16#4000#; -- Boolean GL_FALSE : constant := 0; GL_TRUE : constant := 1; -- BeginMode GL_POINTS : constant := 16#0#; GL_LINES : constant := 16#1#; GL_LINE_LOOP : constant := 16#2#; GL_LINE_STRIP : constant := 16#3#; GL_TRIANGLES : constant := 16#4#; GL_TRIANGLE_STRIP : constant := 16#5#; GL_TRIANGLE_FAN : constant := 16#6#; -- BlendingFactorDest GL_ZERO : constant := 0; GL_ONE : constant := 1; GL_ONE_MINUS_SRC_ALPHA : constant := 16#303#; -- BlendingFactorSrc GL_SRC_ALPHA : constant := 16#302#; GL_SRC_ALPHA_SATURATE : constant := 16#308#; -- CullFaceMode GL_FRONT : constant := 16#404#; GL_BACK : constant := 16#405#; GL_FRONT_AND_BACK : constant := 16#408#; -- EnableCap GL_TEXTURE_2D : constant := 16#de1#; GL_CULL_FACE : constant := 16#b44#; GL_BLEND : constant := 16#be2#; GL_STENCIL_TEST : constant := 16#b90#; GL_DEPTH_TEST : constant := 16#b71#; GL_SCISSOR_TEST : constant := 16#c11#; GL_POLYGON_OFFSET_FILL : constant := 16#8037#; -- ErrorCode GL_NO_ERROR : constant := 0; GL_INVALID_ENUM : constant := 16#500#; GL_INVALID_VALUE : constant := 16#501#; GL_INVALID_OPERATION : constant := 16#502#; GL_STACK_OVERFLOW : constant := 16#503#; GL_STACK_UNDERFLOW : constant := 16#504#; GL_OUT_OF_MEMORY : constant := 16#505#; GL_INVALID_FRAMEBUFFER_OPERATION : constant := 16#506#; GL_CONTEXT_LOST : constant := 16#507#; -- FrontFaceDirection GL_CW : constant := 16#900#; GL_CCW : constant := 16#901#; -- TODO: As above, categorise and add category comment for the following ... -- GL_LINE_WIDTH : constant := 16#b21#; GL_ALIASED_POINT_SIZE_RANGE : constant := 16#846d#; GL_ALIASED_LINE_WIDTH_RANGE : constant := 16#846e#; GL_CULL_FACE_MODE : constant := 16#b45#; GL_FRONT_FACE : constant := 16#b46#; GL_DEPTH_RANGE : constant := 16#b70#; GL_DEPTH_WRITEMASK : constant := 16#b72#; GL_DEPTH_CLEAR_VALUE : constant := 16#b73#; GL_DEPTH_FUNC : constant := 16#b74#; GL_STENCIL_CLEAR_VALUE : constant := 16#b91#; GL_STENCIL_FUNC : constant := 16#b92#; GL_STENCIL_FAIL : constant := 16#b94#; GL_STENCIL_PASS_DEPTH_FAIL : constant := 16#b95#; GL_STENCIL_PASS_DEPTH_PASS : constant := 16#b96#; GL_STENCIL_REF : constant := 16#b97#; GL_STENCIL_VALUE_MASK : constant := 16#b93#; GL_STENCIL_WRITEMASK : constant := 16#b98#; GL_VIEWPORT : constant := 16#ba2#; GL_SCISSOR_BOX : constant := 16#c10#; GL_COLOR_CLEAR_VALUE : constant := 16#c22#; GL_COLOR_WRITEMASK : constant := 16#c23#; GL_UNPACK_ALIGNMENT : constant := 16#cf5#; GL_PACK_ALIGNMENT : constant := 16#d05#; GL_MAX_TEXTURE_SIZE : constant := 16#d33#; GL_MAX_VIEWPORT_DIMS : constant := 16#d3a#; GL_SUBPIXEL_BITS : constant := 16#d50#; GL_RED_BITS : constant := 16#d52#; GL_GREEN_BITS : constant := 16#d53#; GL_BLUE_BITS : constant := 16#d54#; GL_ALPHA_BITS : constant := 16#d55#; GL_DEPTH_BITS : constant := 16#d56#; GL_STENCIL_BITS : constant := 16#d57#; GL_POLYGON_OFFSET_UNITS : constant := 16#2a00#; GL_POLYGON_OFFSET_FACTOR : constant := 16#8038#; GL_TEXTURE_BINDING_2D : constant := 16#8069#; GL_DONT_CARE : constant := 16#1100#; GL_FASTEST : constant := 16#1101#; GL_NICEST : constant := 16#1102#; GL_BYTE : constant := 16#1400#; GL_UNSIGNED_BYTE : constant := 16#1401#; GL_INT : constant := 16#1404#; GL_UNSIGNED_INT : constant := 16#1405#; GL_FLOAT : constant := 16#1406#; GL_ALPHA : constant := 16#1906#; GL_RGB : constant := 16#1907#; GL_RGBA : constant := 16#1908#; GL_LUMINANCE : constant := 16#1909#; GL_LUMINANCE_ALPHA : constant := 16#190a#; GL_NEVER : constant := 16#200#; GL_LESS : constant := 16#201#; GL_EQUAL : constant := 16#202#; GL_LEQUAL : constant := 16#203#; GL_GREATER : constant := 16#204#; GL_NOTEQUAL : constant := 16#205#; GL_GEQUAL : constant := 16#206#; GL_ALWAYS : constant := 16#207#; GL_KEEP : constant := 16#1e00#; GL_REPLACE : constant := 16#1e01#; GL_INCR : constant := 16#1e02#; GL_DECR : constant := 16#1e03#; GL_INVERT : constant := 16#150a#; GL_VENDOR : constant := 16#1f00#; GL_RENDERER : constant := 16#1f01#; GL_VERSION : constant := 16#1f02#; GL_EXTENSIONS : constant := 16#1f03#; GL_MAJOR_VERSION : constant := 16#821B#; GL_MINOR_VERSION : constant := 16#821C#; GL_NEAREST : constant := 16#2600#; GL_LINEAR : constant := 16#2601#; GL_NEAREST_MIPMAP_NEAREST : constant := 16#2700#; GL_LINEAR_MIPMAP_NEAREST : constant := 16#2701#; GL_NEAREST_MIPMAP_LINEAR : constant := 16#2702#; GL_LINEAR_MIPMAP_LINEAR : constant := 16#2703#; GL_TEXTURE_MAG_FILTER : constant := 16#2800#; GL_TEXTURE_MIN_FILTER : constant := 16#2801#; GL_TEXTURE_WRAP_S : constant := 16#2802#; GL_TEXTURE_WRAP_T : constant := 16#2803#; GL_TEXTURE0 : constant := 16#84c0#; GL_TEXTURE1 : constant := 16#84c1#; GL_TEXTURE2 : constant := 16#84c2#; GL_TEXTURE3 : constant := 16#84c3#; GL_TEXTURE4 : constant := 16#84c4#; GL_TEXTURE5 : constant := 16#84c5#; GL_TEXTURE6 : constant := 16#84c6#; GL_TEXTURE7 : constant := 16#84c7#; GL_TEXTURE8 : constant := 16#84c8#; GL_TEXTURE9 : constant := 16#84c9#; GL_TEXTURE10 : constant := 16#84ca#; GL_TEXTURE11 : constant := 16#84cb#; GL_TEXTURE12 : constant := 16#84cc#; GL_TEXTURE13 : constant := 16#84cd#; GL_TEXTURE14 : constant := 16#84ce#; GL_TEXTURE15 : constant := 16#84cf#; GL_TEXTURE16 : constant := 16#84d0#; GL_TEXTURE17 : constant := 16#84d1#; GL_TEXTURE18 : constant := 16#84d2#; GL_TEXTURE19 : constant := 16#84d3#; GL_TEXTURE20 : constant := 16#84d4#; GL_TEXTURE21 : constant := 16#84d5#; GL_TEXTURE22 : constant := 16#84d6#; GL_TEXTURE23 : constant := 16#84d7#; GL_TEXTURE24 : constant := 16#84d8#; GL_TEXTURE25 : constant := 16#84d9#; GL_TEXTURE26 : constant := 16#84da#; GL_TEXTURE27 : constant := 16#84db#; GL_TEXTURE28 : constant := 16#84dc#; GL_TEXTURE29 : constant := 16#84dd#; GL_TEXTURE30 : constant := 16#84de#; GL_TEXTURE31 : constant := 16#84df#; GL_ACTIVE_TEXTURE : constant := 16#84e0#; GL_REPEAT : constant := 16#2901#; GL_CLAMP_TO_EDGE : constant := 16#812f#; end GL;