Skip to content

Commit 8b062fe

Browse files
committed
Added generated functions and tokens. Simplified other stuff with that. Bumped version to 2.0.0.0.
1 parent 6ed03fe commit 8b062fe

File tree

141 files changed

+121044
-7760
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

141 files changed

+121044
-7760
lines changed

OpenGLRaw.cabal

Lines changed: 29 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: OpenGLRaw
2-
version: 1.5.0.2
2+
version: 2.0.0.0
33
synopsis: A raw binding for the OpenGL graphics system
44
description:
55
OpenGLRaw is a raw Haskell binding for the OpenGL 3.2 graphics system and
@@ -139,9 +139,26 @@ library
139139
Graphics.Rendering.OpenGL.Raw.ARB.VertexShader
140140
Graphics.Rendering.OpenGL.Raw.ARB.VertexType2101010Rev
141141
Graphics.Rendering.OpenGL.Raw.ARB.WindowPos
142+
Graphics.Rendering.OpenGL.Raw.Compatibility30
143+
Graphics.Rendering.OpenGL.Raw.Compatibility31
144+
Graphics.Rendering.OpenGL.Raw.Compatibility32
145+
Graphics.Rendering.OpenGL.Raw.Compatibility33
146+
Graphics.Rendering.OpenGL.Raw.Compatibility40
147+
Graphics.Rendering.OpenGL.Raw.Compatibility41
148+
Graphics.Rendering.OpenGL.Raw.Compatibility42
149+
Graphics.Rendering.OpenGL.Raw.Compatibility43
150+
Graphics.Rendering.OpenGL.Raw.Compatibility44
151+
Graphics.Rendering.OpenGL.Raw.Compatibility45
152+
Graphics.Rendering.OpenGL.Raw.Core30
142153
Graphics.Rendering.OpenGL.Raw.Core31
143-
Graphics.Rendering.OpenGL.Raw.Core31.Types
144154
Graphics.Rendering.OpenGL.Raw.Core32
155+
Graphics.Rendering.OpenGL.Raw.Core33
156+
Graphics.Rendering.OpenGL.Raw.Core40
157+
Graphics.Rendering.OpenGL.Raw.Core41
158+
Graphics.Rendering.OpenGL.Raw.Core42
159+
Graphics.Rendering.OpenGL.Raw.Core43
160+
Graphics.Rendering.OpenGL.Raw.Core44
161+
Graphics.Rendering.OpenGL.Raw.Core45
145162
Graphics.Rendering.OpenGL.Raw.EXT
146163
Graphics.Rendering.OpenGL.Raw.EXT.ABGR
147164
Graphics.Rendering.OpenGL.Raw.EXT.BGRA
@@ -221,6 +238,7 @@ library
221238
Graphics.Rendering.OpenGL.Raw.EXT.VertexArray
222239
Graphics.Rendering.OpenGL.Raw.EXT.VertexShader
223240
Graphics.Rendering.OpenGL.Raw.EXT.VertexWeighting
241+
Graphics.Rendering.OpenGL.Raw.Functions
224242
Graphics.Rendering.OpenGL.Raw.GetProcAddress
225243
Graphics.Rendering.OpenGL.Raw.NV
226244
Graphics.Rendering.OpenGL.Raw.NV.ConditionalRender
@@ -266,13 +284,16 @@ library
266284
Graphics.Rendering.OpenGL.Raw.NV.VertexProgram2Option
267285
Graphics.Rendering.OpenGL.Raw.NV.VertexProgram3
268286
Graphics.Rendering.OpenGL.Raw.NV.VertexProgram4
287+
Graphics.Rendering.OpenGL.Raw.Tokens
269288
Graphics.Rendering.OpenGL.Raw.Types
270-
other-modules:
271-
Graphics.Rendering.OpenGL.Raw.ARB.Compatibility.Functions
272-
Graphics.Rendering.OpenGL.Raw.ARB.Compatibility.Tokens
273-
Graphics.Rendering.OpenGL.Raw.Core31.Functions
274-
Graphics.Rendering.OpenGL.Raw.Core31.Tokens
275-
Graphics.Rendering.OpenGL.Raw.Extensions
289+
Graphics.Rendering.OpenGL.Raw.Version10
290+
Graphics.Rendering.OpenGL.Raw.Version11
291+
Graphics.Rendering.OpenGL.Raw.Version12
292+
Graphics.Rendering.OpenGL.Raw.Version13
293+
Graphics.Rendering.OpenGL.Raw.Version14
294+
Graphics.Rendering.OpenGL.Raw.Version15
295+
Graphics.Rendering.OpenGL.Raw.Version20
296+
Graphics.Rendering.OpenGL.Raw.Version21
276297
c-sources:
277298
cbits/HsOpenGLRaw.c
278299
hs-source-dirs: src

include/HsOpenGLRaw.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/* -----------------------------------------------------------------------------
22
*
33
* Module : GL extension support for Graphics.Rendering.OpenGL.Raw
4-
* Copyright : (c) Sven Panne 2013
4+
* Copyright : (c) Sven Panne 2015
55
* License : BSD3
6-
*
6+
*
77
* Maintainer : Sven Panne <[email protected]>
88
* Stability : stable
99
* Portability : portable
@@ -21,11 +21,11 @@
2121
otherwise the magic mangler (hack_foreign) in the Hugs build system
2222
doesn't recognize it. */
2323
#define EXTENSION_ENTRY(_dyn_entry,_ptr_entry,_str_entry,_entry,_ty) \
24-
foreign import CALLCONV unsafe "dynamic" _dyn_entry :: Graphics.Rendering.OpenGL.Raw.Extensions.Invoker (_ty) ; \
24+
foreign import CALLCONV unsafe "dynamic" _dyn_entry :: FunPtr (_ty) -> (_ty) ; \
2525
_entry :: (_ty) ; \
2626
_entry = _dyn_entry _ptr_entry ; \
2727
_ptr_entry :: FunPtr a ; \
28-
_ptr_entry = unsafePerformIO (Graphics.Rendering.OpenGL.Raw.Extensions.getExtensionEntry extensionNameString _str_entry) ; \
28+
_ptr_entry = unsafePerformIO (Graphics.Rendering.OpenGL.Raw.GetProcAddress.getExtensionChecked _str_entry) ; \
2929
{-HASH NOINLINE _ptr_entry HASH-}
3030

3131
#endif
Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,32 @@
11
--------------------------------------------------------------------------------
22
-- |
33
-- Module : Graphics.Rendering.OpenGL.Raw
4-
-- Copyright : (c) Sven Panne 2013
4+
-- Copyright : (c) Sven Panne 2015
55
-- License : BSD3
66
--
77
-- Maintainer : Sven Panne <[email protected]>
88
-- Stability : stable
99
-- Portability : portable
1010
--
11-
-- A convenience module, combining all raw OpenGL modules.
11+
-- A convenience module, combining the latest OpenGL compatibility profile plus
12+
-- all extensions.
1213
--
1314
--------------------------------------------------------------------------------
1415

1516
module Graphics.Rendering.OpenGL.Raw (
16-
module Graphics.Rendering.OpenGL.Raw.Types,
17+
module Graphics.Rendering.OpenGL.Raw.Compatibility45,
1718
module Graphics.Rendering.OpenGL.Raw.ARB,
18-
module Graphics.Rendering.OpenGL.Raw.Core32,
1919
module Graphics.Rendering.OpenGL.Raw.APPLE,
2020
module Graphics.Rendering.OpenGL.Raw.EXT,
2121
module Graphics.Rendering.OpenGL.Raw.NV,
22+
module Graphics.Rendering.OpenGL.Raw.Types,
2223
module Graphics.Rendering.OpenGL.Raw.GetProcAddress
2324
) where
2425

25-
import Graphics.Rendering.OpenGL.Raw.Types
26+
import Graphics.Rendering.OpenGL.Raw.Compatibility45
2627
import Graphics.Rendering.OpenGL.Raw.ARB
27-
import Graphics.Rendering.OpenGL.Raw.Core32
2828
import Graphics.Rendering.OpenGL.Raw.APPLE
2929
import Graphics.Rendering.OpenGL.Raw.EXT
3030
import Graphics.Rendering.OpenGL.Raw.NV
31+
import Graphics.Rendering.OpenGL.Raw.Types
3132
import Graphics.Rendering.OpenGL.Raw.GetProcAddress

src/Graphics/Rendering/OpenGL/Raw/APPLE/FlushBufferRange.hs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,16 +26,15 @@ module Graphics.Rendering.OpenGL.Raw.APPLE.FlushBufferRange (
2626

2727
import Foreign.C.Types
2828
import Graphics.Rendering.OpenGL.Raw.ARB.MapBufferRange
29-
import Graphics.Rendering.OpenGL.Raw.Core31.Types
30-
import Graphics.Rendering.OpenGL.Raw.Extensions
29+
import Graphics.Rendering.OpenGL.Raw.Types
30+
import Foreign.Ptr ( FunPtr )
31+
import Graphics.Rendering.OpenGL.Raw.GetProcAddress ( getExtensionChecked )
32+
import System.IO.Unsafe ( unsafePerformIO )
3133

3234
--------------------------------------------------------------------------------
3335

3436
#include "HsOpenGLRaw.h"
3537

36-
extensionNameString :: String
37-
extensionNameString = "GL_APPLE_flush_buffer_range"
38-
3938
EXTENSION_ENTRY(dyn_glBufferParameteri,ptr_glBufferParameteri,"glBufferParameteri",glBufferParameteri, GLenum -> GLenum -> GLint -> IO ())
4039

4140
gl__BUFFER_SERIALIZED_MODIFY :: GLenum

src/Graphics/Rendering/OpenGL/Raw/APPLE/VertexArrayObject.hs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,13 @@ module Graphics.Rendering.OpenGL.Raw.APPLE.VertexArrayObject (
2727

2828
import Foreign.C.Types
2929
import Graphics.Rendering.OpenGL.Raw.ARB.VertexArrayObject
30-
import Graphics.Rendering.OpenGL.Raw.Core31.Types
31-
import Graphics.Rendering.OpenGL.Raw.Extensions
30+
import Graphics.Rendering.OpenGL.Raw.Types
31+
import Foreign.Ptr ( FunPtr )
32+
import Graphics.Rendering.OpenGL.Raw.GetProcAddress ( getExtensionChecked )
33+
import System.IO.Unsafe ( unsafePerformIO )
3234

3335
--------------------------------------------------------------------------------
3436

3537
#include "HsOpenGLRaw.h"
3638

37-
extensionNameString :: String
38-
extensionNameString = "GL_APPLE_vertex_array_object"
39-
4039
EXTENSION_ENTRY(dyn_glBindVertexArrayAPPLE,ptr_glBindVertexArrayAPPLE,"glBindVertexArrayAPPLE",glBindVertexArrayAPPLE,GLuint -> IO ())
Lines changed: 2 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
{-# LANGUAGE ForeignFunctionInterface, CPP #-}
21
--------------------------------------------------------------------------------
32
-- |
43
-- Module : Graphics.Rendering.OpenGL.Raw.ARB.BlendFuncExtended
@@ -27,30 +26,5 @@ module Graphics.Rendering.OpenGL.Raw.ARB.BlendFuncExtended (
2726
gl_MAX_DUAL_SOURCE_DRAW_BUFFERS
2827
) where
2928

30-
import Foreign.C.Types
31-
import Foreign.Ptr
32-
import Graphics.Rendering.OpenGL.Raw.ARB.Compatibility.Tokens
33-
import Graphics.Rendering.OpenGL.Raw.Core31.Types
34-
import Graphics.Rendering.OpenGL.Raw.Extensions
35-
36-
--------------------------------------------------------------------------------
37-
38-
#include "HsOpenGLRaw.h"
39-
40-
extensionNameString :: String
41-
extensionNameString = "GL_ARB_blend_func_extended"
42-
43-
EXTENSION_ENTRY(dyn_glBindFragDataLocationIndexed,ptr_glBindFragDataLocationIndexed,"glBindFragDataLocationIndexed",glBindFragDataLocationIndexed,GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
44-
EXTENSION_ENTRY(dyn_glGetFragDataIndex,ptr_glGetFragDataIndex,"glGetFragDataIndex",glGetFragDataIndex,GLuint -> Ptr GLchar -> IO GLint)
45-
46-
gl_SRC1_COLOR :: GLenum
47-
gl_SRC1_COLOR = 0x88F9
48-
49-
gl_ONE_MINUS_SRC1_COLOR :: GLenum
50-
gl_ONE_MINUS_SRC1_COLOR = 0x88FA
51-
52-
gl_ONE_MINUS_SRC1_ALPHA :: GLenum
53-
gl_ONE_MINUS_SRC1_ALPHA = 0x88FB
54-
55-
gl_MAX_DUAL_SOURCE_DRAW_BUFFERS :: GLenum
56-
gl_MAX_DUAL_SOURCE_DRAW_BUFFERS = 0x88FC
29+
import Graphics.Rendering.OpenGL.Raw.Functions
30+
import Graphics.Rendering.OpenGL.Raw.Tokens

src/Graphics/Rendering/OpenGL/Raw/ARB/ColorBufferFloat.hs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ module Graphics.Rendering.OpenGL.Raw.ARB.ColorBufferFloat (
2222
gl_FIXED_ONLY
2323
) where
2424

25-
import Graphics.Rendering.OpenGL.Raw.ARB.Compatibility
26-
import Graphics.Rendering.OpenGL.Raw.Core32
25+
import Graphics.Rendering.OpenGL.Raw.Tokens
2726

28-
gl_RGBA_FLOAT_MODE :: GLenum
29-
gl_RGBA_FLOAT_MODE = 0x8820
27+
gl_RGBA_FLOAT_MODE = gl_RGBA_FLOAT_MODE_ARB

0 commit comments

Comments
 (0)