GLURaw 1.4.0.0 → 1.4.0.1
raw patch · 11 files changed
+1148/−1146 lines, 11 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- GLURaw.cabal +68/−68
- README.md +1/−1
- cbits/HsGLURaw.c +104/−104
- include/HsGLURaw.h +35/−33
- src/Graphics/Rendering/GLU/Raw.hs +25/−25
- src/Graphics/Rendering/GLU/Raw/APIEntry.hs +48/−48
- src/Graphics/Rendering/GLU/Raw/Callbacks.hs +191/−191
- src/Graphics/Rendering/GLU/Raw/Functions.hs +146/−146
- src/Graphics/Rendering/GLU/Raw/Tokens.hs +487/−487
- src/Graphics/Rendering/GLU/Raw/Types.hs +21/−21
- src/Graphics/Rendering/GLU/Raw/TypesInternal.hs +22/−22
GLURaw.cabal view
@@ -1,68 +1,68 @@-name: GLURaw -version: 1.4.0.0 -license: BSD3 -license-file: LICENSE -maintainer: Sven Panne <svenpanne@gmail.com>, Jason Dagit <dagitj@gmail.com> -bug-reports: https://github.com/haskell-opengl/GLURaw/issues -homepage: http://www.haskell.org/haskellwiki/Opengl -category: Graphics -synopsis: A raw binding for the OpenGL graphics system -description: - GLURaw is a raw Haskell binding for the GLU 1.3 OpenGL utility library. It is - basically a 1:1 mapping of GLU's C API, intended as a basis for a nicer - interface. - . - OpenGL is the industry's most widely used and supported 2D and 3D graphics - application programming interface (API), incorporating a broad set of - rendering, texture mapping, special effects, and other powerful visualization - functions. For more information about OpenGL and its various extensions, - please see <http://www.opengl.org/> - and <http://www.opengl.org/registry/>. -build-type: Simple -cabal-version: >= 1.6 -extra-source-files: - README.md - include/HsGLURaw.h - -flag UseNativeWindowsLibraries - description: - When compiling under Windows, use the native libraries instead of e.g. the - ones coming with Cygwin. - -library - exposed-modules: - Graphics.Rendering.GLU.Raw - Graphics.Rendering.GLU.Raw.Callbacks, - Graphics.Rendering.GLU.Raw.Functions, - Graphics.Rendering.GLU.Raw.Tokens, - Graphics.Rendering.GLU.Raw.Types - other-modules: - Graphics.Rendering.GLU.Raw.APIEntry, - Graphics.Rendering.GLU.Raw.TypesInternal - c-sources: - cbits/HsGLURaw.c - hs-Source-Dirs: src - include-dirs: include - build-depends: base >= 3 && < 5, OpenGLRaw >= 1.3.0.0 - ghc-options: -Wall -O2 - if os(windows) && flag(UseNativeWindowsLibraries) - if arch(i386) - cpp-options: "-DCALLCONV=stdcall" - else - cpp-options: "-DCALLCONV=ccall" - cc-options: "-DUSE_GETPROCADDRESS" - extra-libraries: glu32 - else - cpp-options: "-DCALLCONV=ccall" - cc-options: "-DUSE_DLSYM" - if os(darwin) - frameworks: OpenGL - else - if os(ios) - frameworks: OpenGLES - else - extra-libraries: GLU - -source-repository head - type: git - location: https://github.com/haskell-opengl/GLURaw +name: GLURaw+version: 1.4.0.1+license: BSD3+license-file: LICENSE+maintainer: Sven Panne <svenpanne@gmail.com>, Jason Dagit <dagitj@gmail.com>+bug-reports: https://github.com/haskell-opengl/GLURaw/issues+homepage: http://www.haskell.org/haskellwiki/Opengl+category: Graphics+synopsis: A raw binding for the OpenGL graphics system+description:+ GLURaw is a raw Haskell binding for the GLU 1.3 OpenGL utility library. It is+ basically a 1:1 mapping of GLU's C API, intended as a basis for a nicer+ interface.+ .+ OpenGL is the industry's most widely used and supported 2D and 3D graphics+ application programming interface (API), incorporating a broad set of+ rendering, texture mapping, special effects, and other powerful visualization+ functions. For more information about OpenGL and its various extensions,+ please see <http://www.opengl.org/>+ and <http://www.opengl.org/registry/>.+build-type: Simple+cabal-version: >= 1.6+extra-source-files:+ README.md+ include/HsGLURaw.h++flag UseNativeWindowsLibraries+ description:+ When compiling under Windows, use the native libraries instead of e.g. the+ ones coming with Cygwin.++library+ exposed-modules:+ Graphics.Rendering.GLU.Raw+ Graphics.Rendering.GLU.Raw.Callbacks,+ Graphics.Rendering.GLU.Raw.Functions,+ Graphics.Rendering.GLU.Raw.Tokens,+ Graphics.Rendering.GLU.Raw.Types+ other-modules:+ Graphics.Rendering.GLU.Raw.APIEntry,+ Graphics.Rendering.GLU.Raw.TypesInternal+ c-sources:+ cbits/HsGLURaw.c+ hs-Source-Dirs: src+ include-dirs: include+ build-depends: base >= 3 && < 5, OpenGLRaw >= 1.3.0.0+ ghc-options: -Wall -O2+ if os(windows) && flag(UseNativeWindowsLibraries)+ if arch(i386)+ cpp-options: "-DCALLCONV=stdcall"+ else+ cpp-options: "-DCALLCONV=ccall"+ cc-options: "-DUSE_GETPROCADDRESS"+ extra-libraries: glu32+ else+ cpp-options: "-DCALLCONV=ccall"+ cc-options: "-DUSE_DLSYM"+ if os(darwin)+ frameworks: OpenGL+ else+ if os(ios)+ frameworks: OpenGLES+ else+ extra-libraries: GLU++source-repository head+ type: git+ location: https://github.com/haskell-opengl/GLURaw
README.md view
@@ -1,1 +1,1 @@-[](https://travis-ci.org/haskell-opengl/GLURaw) +[](https://travis-ci.org/haskell-opengl/GLURaw)
cbits/HsGLURaw.c view
@@ -1,104 +1,104 @@-/* ----------------------------------------------------------------------------- - * - * Module : C support for Graphics.Rendering.GLU.Raw.Extensions - * Copyright : (c) Sven Panne 2013 - * License : BSD3 - * - * Maintainer : Sven Panne <svenpanne@gmail.com> - * Stability : stable - * Portability : portable - * - * -------------------------------------------------------------------------- */ - -#if defined(USE_GETPROCADDRESS) - -#define WIN32_LEAN_AND_MEAN -#include <windows.h> - -void* -hs_GLU_getProcAddress(const char *name) -{ - static int firstTime = 1; - static HMODULE handle = NULL; - - if (firstTime) { - firstTime = 0; - handle = LoadLibrary(TEXT("glu32")); - } - - return handle ? GetProcAddress(handle, name) : NULL; -} - -/* -------------------------------------------------------------------------- */ -#elif defined(USE_NSADDRESSOFSYMBOL) - -#include <mach-o/dyld.h> -#include <stdlib.h> -#include <string.h> - -void* -hs_GLU_getProcAddress(const char *name) -{ - NSSymbol symbol; - - /* Prepend a '_' for the Unix C symbol mangling convention */ - char* symbolName = (char*)malloc(strlen(name) + 2); - if (!symbolName) { - return NULL; - } - symbolName[0] = '_'; - strcpy(symbolName + 1, name); - - if (!NSIsSymbolNameDefined(symbolName)) { - free(symbolName); - return NULL; - } - - symbol = NSLookupAndBindSymbol(symbolName); - free(symbolName); - if (!symbol) { - return NULL; - } - - return NSAddressOfSymbol(symbol); -} - -/* -------------------------------------------------------------------------- */ -#elif defined(USE_DLSYM) - -#include <stdlib.h> -#include <dlfcn.h> - -#ifndef __APPLE__ -#include <stdio.h> -#include <GL/glu.h> -#endif - -void* -hs_GLU_getProcAddress(const char *name) -{ - static int firstTime = 1; - static void *handle = NULL; - - if (firstTime) { - firstTime = 0; - /* Get a handle for our executable. */ - handle = dlopen(NULL, RTLD_LAZY); - } - -#ifndef __APPLE__ - /* Hack to force linking of GLU on Linux */ - FILE *bitbucket = fopen("/dev/null", "w"); - fprintf(bitbucket, "%p\n", gluBeginCurve); - fclose(bitbucket); -#endif - - return handle ? dlsym(handle, name) : NULL; -} - -/* -------------------------------------------------------------------------- */ -#else - -#error "Don't know how to retrieve GLU entries" - -#endif +/* -----------------------------------------------------------------------------+ *+ * Module : C support for Graphics.Rendering.GLU.Raw.Extensions+ * Copyright : (c) Sven Panne 2013+ * License : BSD3+ *+ * Maintainer : Sven Panne <svenpanne@gmail.com>+ * Stability : stable+ * Portability : portable+ *+ * -------------------------------------------------------------------------- */++#if defined(USE_GETPROCADDRESS)++#define WIN32_LEAN_AND_MEAN+#include <windows.h>++void*+hs_GLU_getProcAddress(const char *name)+{+ static int firstTime = 1;+ static HMODULE handle = NULL;++ if (firstTime) {+ firstTime = 0;+ handle = LoadLibrary(TEXT("glu32"));+ }++ return handle ? GetProcAddress(handle, name) : NULL;+}++/* -------------------------------------------------------------------------- */+#elif defined(USE_NSADDRESSOFSYMBOL)++#include <mach-o/dyld.h>+#include <stdlib.h>+#include <string.h>++void*+hs_GLU_getProcAddress(const char *name)+{+ NSSymbol symbol;++ /* Prepend a '_' for the Unix C symbol mangling convention */+ char* symbolName = (char*)malloc(strlen(name) + 2);+ if (!symbolName) {+ return NULL;+ }+ symbolName[0] = '_';+ strcpy(symbolName + 1, name);++ if (!NSIsSymbolNameDefined(symbolName)) {+ free(symbolName);+ return NULL;+ }++ symbol = NSLookupAndBindSymbol(symbolName);+ free(symbolName);+ if (!symbol) {+ return NULL;+ }++ return NSAddressOfSymbol(symbol);+}++/* -------------------------------------------------------------------------- */+#elif defined(USE_DLSYM)++#include <stdlib.h>+#include <dlfcn.h>++#ifndef __APPLE__+#include <stdio.h>+#include <GL/glu.h>+#endif++void*+hs_GLU_getProcAddress(const char *name)+{+ static int firstTime = 1;+ static void *handle = NULL;++ if (firstTime) {+ firstTime = 0;+ /* Get a handle for our executable. */+ handle = dlopen(NULL, RTLD_LAZY);+ }++#ifndef __APPLE__+ /* Hack to force linking of GLU on Linux */+ FILE *bitbucket = fopen("/dev/null", "w");+ fprintf(bitbucket, "%p\n", gluBeginCurve);+ fclose(bitbucket); +#endif++ return handle ? dlsym(handle, name) : NULL;+}++/* -------------------------------------------------------------------------- */+#else++#error "Don't know how to retrieve GLU entries"++#endif
include/HsGLURaw.h view
@@ -1,33 +1,35 @@-/* ----------------------------------------------------------------------------- - * - * Module : GL extension support for Graphics.Rendering.GLU.Raw - * Copyright : (c) Sven Panne 2013 - * License : BSD3 - * - * Maintainer : Sven Panne <svenpanne@gmail.com> - * Stability : stable - * Portability : portable - * - * This header should only define preprocessor macros! - * - * -------------------------------------------------------------------------- */ - -#ifndef HSGLURAW_H -#define HSGLURAW_H - -/* NOTE: The macro must immediately start with the foreign declaration, - otherwise the magic mangler (hack_foreign) in the Hugs build system - doesn't recognize it. */ -#define API_ENTRY_INTERNAL(_entry,_ty,_safety) \ -foreign import CALLCONV _safety "dynamic" dyn_/**/_entry :: Graphics.Rendering.GLU.Raw.APIEntry.Invoker (_ty) ; \ -_entry :: (_ty) ; \ -_entry = dyn_/**/_entry ptr_/**/_entry ; \ -ptr_/**/_entry :: FunPtr a ; \ -ptr_/**/_entry = unsafePerformIO (Graphics.Rendering.GLU.Raw.APIEntry.getAPIEntry "_entry") ; \ -{-# NOINLINE ptr_/**/_entry #-} - -#define API_ENTRY(_entry,_ty) API_ENTRY_INTERNAL(_entry,_ty,unsafe) - -#define API_ENTRY_SAFE(_entry,_ty) API_ENTRY_INTERNAL(_entry,_ty,safe) - -#endif +/* -----------------------------------------------------------------------------+ *+ * Module : GL extension support for Graphics.Rendering.GLU.Raw+ * Copyright : (c) Sven Panne 2013+ * License : BSD3+ * + * Maintainer : Sven Panne <svenpanne@gmail.com>+ * Stability : stable+ * Portability : portable+ *+ * This header should only define preprocessor macros!+ *+ * -------------------------------------------------------------------------- */++#ifndef HSGLURAW_H+#define HSGLURAW_H++#define HASH #++/* NOTE: The macro must immediately start with the foreign declaration,+ otherwise the magic mangler (hack_foreign) in the Hugs build system+ doesn't recognize it. */+#define API_ENTRY_INTERNAL(_dyn_entry,_ptr_entry,_str_entry,_entry,_ty,_safety) \+foreign import CALLCONV _safety "dynamic" _dyn_entry :: Graphics.Rendering.GLU.Raw.APIEntry.Invoker (_ty) ; \+_entry :: (_ty) ; \+_entry = _dyn_entry _ptr_entry ; \+_ptr_entry :: FunPtr a ; \+_ptr_entry = unsafePerformIO (Graphics.Rendering.GLU.Raw.APIEntry.getAPIEntry _str_entry) ; \+{-HASH NOINLINE _ptr_entry HASH-}++#define API_ENTRY(_dyn_entry,_ptr_entry,_str_entry,_entry,_ty) API_ENTRY_INTERNAL(_dyn_entry,_ptr_entry,_str_entry,_entry,_ty,unsafe)++#define API_ENTRY_SAFE(_dyn_entry,_ptr_entry,_str_entry,_entry,_ty) API_ENTRY_INTERNAL(_dyn_entry,_ptr_entry,_str_entry,_entry,_ty,safe)++#endif
src/Graphics/Rendering/GLU/Raw.hs view
@@ -1,25 +1,25 @@--------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- A 1:1 binding for the OpenGL utility library. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw ( - module Graphics.Rendering.GLU.Raw.Functions, - module Graphics.Rendering.GLU.Raw.Tokens, - module Graphics.Rendering.GLU.Raw.Types, - module Graphics.Rendering.GLU.Raw.Callbacks -) where - -import Graphics.Rendering.GLU.Raw.Functions -import Graphics.Rendering.GLU.Raw.Tokens -import Graphics.Rendering.GLU.Raw.Types -import Graphics.Rendering.GLU.Raw.Callbacks +--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- A 1:1 binding for the OpenGL utility library.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw (+ module Graphics.Rendering.GLU.Raw.Functions,+ module Graphics.Rendering.GLU.Raw.Tokens,+ module Graphics.Rendering.GLU.Raw.Types,+ module Graphics.Rendering.GLU.Raw.Callbacks+) where++import Graphics.Rendering.GLU.Raw.Functions+import Graphics.Rendering.GLU.Raw.Tokens+import Graphics.Rendering.GLU.Raw.Types+import Graphics.Rendering.GLU.Raw.Callbacks
src/Graphics/Rendering/GLU/Raw/APIEntry.hs view
@@ -1,48 +1,48 @@-{-# LANGUAGE ForeignFunctionInterface, CPP #-} -{-# OPTIONS_HADDOCK hide #-} --------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw.APIEntry --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- This module offers a portable way to retrieve GLUT entries, providing a --- portability layer upon platform-specific mechanisms like @dlsym@, --- @GetProcAddress@ or @NSAddressOfSymbol@. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw.APIEntry ( - Invoker, getAPIEntry, - FunPtr, unsafePerformIO -) where - -import Foreign.C.String -import Foreign.Marshal.Error -import Foreign.Ptr -import System.IO.Unsafe - -#ifdef __HUGS__ -{-# CFILES cbits/HsOpenGLRaw.c #-} -#endif - --------------------------------------------------------------------------------- - -type Invoker a = FunPtr a -> a - --- | Retrieve a GLU API entry by name. Throws a userError when no entry with the --- given name was found. -getAPIEntry :: String -> IO (FunPtr a) -getAPIEntry extensionEntry = - throwIfNullFunPtr ("unknown GLU entry " ++ extensionEntry) $ - withCString extensionEntry hs_GLU_getProcAddress - -throwIfNullFunPtr :: String -> IO (FunPtr a) -> IO (FunPtr a) -throwIfNullFunPtr = throwIf (== nullFunPtr) . const - -foreign import ccall unsafe "hs_GLU_getProcAddress" - hs_GLU_getProcAddress :: CString -> IO (FunPtr a) +{-# LANGUAGE ForeignFunctionInterface, CPP #-}+{-# OPTIONS_HADDOCK hide #-}+--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw.APIEntry+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- This module offers a portable way to retrieve GLUT entries, providing a+-- portability layer upon platform-specific mechanisms like @dlsym@,+-- @GetProcAddress@ or @NSAddressOfSymbol@.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw.APIEntry (+ Invoker, getAPIEntry,+ FunPtr, unsafePerformIO+) where++import Foreign.C.String+import Foreign.Marshal.Error+import Foreign.Ptr+import System.IO.Unsafe++#ifdef __HUGS__+{-# CFILES cbits/HsOpenGLRaw.c #-}+#endif++--------------------------------------------------------------------------------++type Invoker a = FunPtr a -> a++-- | Retrieve a GLU API entry by name. Throws a userError when no entry with the+-- given name was found.+getAPIEntry :: String -> IO (FunPtr a)+getAPIEntry extensionEntry =+ throwIfNullFunPtr ("unknown GLU entry " ++ extensionEntry) $+ withCString extensionEntry hs_GLU_getProcAddress++throwIfNullFunPtr :: String -> IO (FunPtr a) -> IO (FunPtr a)+throwIfNullFunPtr = throwIf (== nullFunPtr) . const++foreign import ccall unsafe "hs_GLU_getProcAddress"+ hs_GLU_getProcAddress :: CString -> IO (FunPtr a)
src/Graphics/Rendering/GLU/Raw/Callbacks.hs view
@@ -1,191 +1,191 @@-{-# LANGUAGE ForeignFunctionInterface, CPP #-} --------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw.Callbacks --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- All callbacks from GLU 1.3, see <http://www.opengl.org/>. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw.Callbacks ( - -- * Tessellator Callbacks - -- ** Tessellator Callbacks without Polygon Data - TessBeginCallback, makeTessBeginCallback, - TessEdgeFlagCallback, makeTessEdgeFlagCallback, - TessVertexCallback, makeTessVertexCallback, - TessEndCallback, makeTessEndCallback, - TessErrorCallback, makeTessErrorCallback, - TessCombineCallback, makeTessCombineCallback, - -- ** Tessellator Callbacks with Polygon Data - TessBeginDataCallback, makeTessBeginDataCallback, - TessEdgeFlagDataCallback, makeTessEdgeFlagDataCallback, - TessVertexDataCallback, makeTessVertexDataCallback, - TessEndDataCallback, makeTessEndDataCallback, - TessErrorDataCallback, makeTessErrorDataCallback, - TessCombineDataCallback, makeTessCombineDataCallback, - -- * Quadrics Callbacks - QuadricCallback, makeQuadricCallback, - -- * NURBS Callbacks - -- ** NURBS Callbacks without User Data - NURBSBeginCallback, makeNURBSBeginCallback, - NURBSVertexCallback, makeNURBSVertexCallback, - NURBSNormalCallback, makeNURBSNormalCallback, - NURBSColorCallback, makeNURBSColorCallback, - NURBSTexCoordCallback, makeNURBSTexCoordCallback, - NURBSEndCallback, makeNURBSEndCallback, - NURBSErrorCallback, makeNURBSErrorCallback, - -- ** NURBS Callbacks with User Data - NURBSBeginDataCallback, makeNURBSBeginDataCallback, - NURBSVertexDataCallback, makeNURBSVertexDataCallback, - NURBSNormalDataCallback, makeNURBSNormalDataCallback, - NURBSColorDataCallback, makeNURBSColorDataCallback, - NURBSTexCoordDataCallback, makeNURBSTexCoordDataCallback, - NURBSEndDataCallback, makeNURBSEndDataCallback -) where - -import Foreign.Ptr -import Foreign.C.Types -import Graphics.Rendering.OpenGL.Raw - --------------------------------------------------------------------------------- - -type TessBeginCallback = GLenum -> IO () - -foreign import CALLCONV "wrapper" - makeTessBeginCallback :: TessBeginCallback -> IO (FunPtr TessBeginCallback) - -type TessEdgeFlagCallback = GLboolean -> IO () - -foreign import CALLCONV "wrapper" - makeTessEdgeFlagCallback :: TessEdgeFlagCallback -> IO (FunPtr TessEdgeFlagCallback) - -type TessVertexCallback v = Ptr v -> IO () - -foreign import CALLCONV "wrapper" - makeTessVertexCallback :: TessVertexCallback v -> IO (FunPtr (TessVertexCallback v)) - -type TessEndCallback = IO () - -foreign import CALLCONV "wrapper" - makeTessEndCallback :: TessEndCallback -> IO (FunPtr TessEndCallback) - -type TessErrorCallback = GLenum -> IO () - -foreign import CALLCONV "wrapper" - makeTessErrorCallback :: TessErrorCallback -> IO (FunPtr TessErrorCallback) - -type TessCombineCallback v = Ptr GLdouble -> Ptr (Ptr v) -> Ptr GLfloat -> Ptr (Ptr v) -> IO () - -foreign import CALLCONV "wrapper" - makeTessCombineCallback :: TessCombineCallback v -> IO (FunPtr (TessCombineCallback v)) - -type TessBeginDataCallback p = GLenum -> Ptr p -> IO () - -foreign import CALLCONV "wrapper" - makeTessBeginDataCallback :: TessBeginDataCallback p -> IO (FunPtr (TessBeginDataCallback p)) - -type TessEdgeFlagDataCallback p = GLboolean -> Ptr p -> IO () - -foreign import CALLCONV "wrapper" - makeTessEdgeFlagDataCallback :: TessEdgeFlagDataCallback p -> IO (FunPtr (TessEdgeFlagDataCallback p)) - -type TessVertexDataCallback v p = Ptr v -> Ptr p -> IO () - -foreign import CALLCONV "wrapper" - makeTessVertexDataCallback :: TessVertexDataCallback v p -> IO (FunPtr (TessVertexDataCallback v p)) - -type TessEndDataCallback p = Ptr p -> IO () - -foreign import CALLCONV "wrapper" - makeTessEndDataCallback :: TessEndDataCallback p -> IO (FunPtr (TessEndDataCallback p)) - -type TessErrorDataCallback p = GLenum -> Ptr p -> IO () - -foreign import CALLCONV "wrapper" - makeTessErrorDataCallback :: TessErrorDataCallback p -> IO (FunPtr (TessErrorDataCallback p)) - -type TessCombineDataCallback v p = Ptr GLdouble -> Ptr (Ptr v) -> Ptr GLfloat -> Ptr (Ptr v) -> Ptr p -> IO () - -foreign import CALLCONV "wrapper" - makeTessCombineDataCallback :: TessCombineDataCallback v p -> IO (FunPtr (TessCombineDataCallback v p)) - --------------------------------------------------------------------------------- - -type QuadricCallback = GLenum -> IO () - -foreign import CALLCONV "wrapper" - makeQuadricCallback :: QuadricCallback -> IO (FunPtr QuadricCallback) - --------------------------------------------------------------------------------- - -type NURBSBeginCallback = GLenum -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSBeginCallback :: NURBSBeginCallback -> IO (FunPtr NURBSBeginCallback) - -type NURBSVertexCallback = Ptr GLfloat -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSVertexCallback :: NURBSVertexCallback -> IO (FunPtr NURBSVertexCallback) - -type NURBSNormalCallback = Ptr GLfloat -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSNormalCallback :: NURBSNormalCallback -> IO (FunPtr NURBSNormalCallback) - -type NURBSColorCallback = Ptr GLfloat -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSColorCallback :: NURBSColorCallback -> IO (FunPtr NURBSColorCallback) - -type NURBSTexCoordCallback = Ptr GLfloat -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSTexCoordCallback :: NURBSTexCoordCallback -> IO (FunPtr NURBSTexCoordCallback) - -type NURBSEndCallback = IO () - -foreign import CALLCONV "wrapper" - makeNURBSEndCallback :: NURBSEndCallback -> IO (FunPtr NURBSEndCallback) - -type NURBSErrorCallback = GLenum -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSErrorCallback :: NURBSErrorCallback -> IO (FunPtr NURBSErrorCallback) - -type NURBSBeginDataCallback u = GLenum -> Ptr u -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSBeginDataCallback :: NURBSBeginDataCallback u -> IO (FunPtr (NURBSBeginDataCallback u)) - -type NURBSVertexDataCallback u = Ptr GLfloat -> Ptr u -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSVertexDataCallback :: NURBSVertexDataCallback u -> IO (FunPtr (NURBSVertexDataCallback u)) - -type NURBSNormalDataCallback u = Ptr GLfloat -> Ptr u -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSNormalDataCallback :: NURBSNormalDataCallback u -> IO (FunPtr (NURBSNormalDataCallback u)) - -type NURBSColorDataCallback u = Ptr GLfloat -> Ptr u -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSColorDataCallback :: NURBSColorDataCallback u -> IO (FunPtr (NURBSColorDataCallback u)) - -type NURBSTexCoordDataCallback u = Ptr GLfloat -> Ptr u -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSTexCoordDataCallback :: NURBSTexCoordDataCallback u -> IO (FunPtr (NURBSTexCoordDataCallback u)) - -type NURBSEndDataCallback u = Ptr u -> IO () - -foreign import CALLCONV "wrapper" - makeNURBSEndDataCallback :: NURBSEndDataCallback u -> IO (FunPtr (NURBSEndDataCallback u)) - +{-# LANGUAGE ForeignFunctionInterface, CPP #-}+--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw.Callbacks+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- All callbacks from GLU 1.3, see <http://www.opengl.org/>.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw.Callbacks (+ -- * Tessellator Callbacks+ -- ** Tessellator Callbacks without Polygon Data+ TessBeginCallback, makeTessBeginCallback,+ TessEdgeFlagCallback, makeTessEdgeFlagCallback,+ TessVertexCallback, makeTessVertexCallback,+ TessEndCallback, makeTessEndCallback,+ TessErrorCallback, makeTessErrorCallback,+ TessCombineCallback, makeTessCombineCallback,+ -- ** Tessellator Callbacks with Polygon Data+ TessBeginDataCallback, makeTessBeginDataCallback,+ TessEdgeFlagDataCallback, makeTessEdgeFlagDataCallback,+ TessVertexDataCallback, makeTessVertexDataCallback,+ TessEndDataCallback, makeTessEndDataCallback,+ TessErrorDataCallback, makeTessErrorDataCallback,+ TessCombineDataCallback, makeTessCombineDataCallback,+ -- * Quadrics Callbacks+ QuadricCallback, makeQuadricCallback,+ -- * NURBS Callbacks+ -- ** NURBS Callbacks without User Data+ NURBSBeginCallback, makeNURBSBeginCallback,+ NURBSVertexCallback, makeNURBSVertexCallback,+ NURBSNormalCallback, makeNURBSNormalCallback,+ NURBSColorCallback, makeNURBSColorCallback,+ NURBSTexCoordCallback, makeNURBSTexCoordCallback,+ NURBSEndCallback, makeNURBSEndCallback,+ NURBSErrorCallback, makeNURBSErrorCallback,+ -- ** NURBS Callbacks with User Data+ NURBSBeginDataCallback, makeNURBSBeginDataCallback,+ NURBSVertexDataCallback, makeNURBSVertexDataCallback,+ NURBSNormalDataCallback, makeNURBSNormalDataCallback,+ NURBSColorDataCallback, makeNURBSColorDataCallback,+ NURBSTexCoordDataCallback, makeNURBSTexCoordDataCallback,+ NURBSEndDataCallback, makeNURBSEndDataCallback+) where++import Foreign.Ptr+import Foreign.C.Types+import Graphics.Rendering.OpenGL.Raw++--------------------------------------------------------------------------------++type TessBeginCallback = GLenum -> IO ()++foreign import CALLCONV "wrapper"+ makeTessBeginCallback :: TessBeginCallback -> IO (FunPtr TessBeginCallback)++type TessEdgeFlagCallback = GLboolean -> IO ()++foreign import CALLCONV "wrapper"+ makeTessEdgeFlagCallback :: TessEdgeFlagCallback -> IO (FunPtr TessEdgeFlagCallback)++type TessVertexCallback v = Ptr v -> IO ()++foreign import CALLCONV "wrapper"+ makeTessVertexCallback :: TessVertexCallback v -> IO (FunPtr (TessVertexCallback v))++type TessEndCallback = IO ()++foreign import CALLCONV "wrapper"+ makeTessEndCallback :: TessEndCallback -> IO (FunPtr TessEndCallback)++type TessErrorCallback = GLenum -> IO ()++foreign import CALLCONV "wrapper"+ makeTessErrorCallback :: TessErrorCallback -> IO (FunPtr TessErrorCallback)++type TessCombineCallback v = Ptr GLdouble -> Ptr (Ptr v) -> Ptr GLfloat -> Ptr (Ptr v) -> IO ()++foreign import CALLCONV "wrapper"+ makeTessCombineCallback :: TessCombineCallback v -> IO (FunPtr (TessCombineCallback v))++type TessBeginDataCallback p = GLenum -> Ptr p -> IO ()++foreign import CALLCONV "wrapper"+ makeTessBeginDataCallback :: TessBeginDataCallback p -> IO (FunPtr (TessBeginDataCallback p))++type TessEdgeFlagDataCallback p = GLboolean -> Ptr p -> IO ()++foreign import CALLCONV "wrapper"+ makeTessEdgeFlagDataCallback :: TessEdgeFlagDataCallback p -> IO (FunPtr (TessEdgeFlagDataCallback p))++type TessVertexDataCallback v p = Ptr v -> Ptr p -> IO ()++foreign import CALLCONV "wrapper"+ makeTessVertexDataCallback :: TessVertexDataCallback v p -> IO (FunPtr (TessVertexDataCallback v p))++type TessEndDataCallback p = Ptr p -> IO ()++foreign import CALLCONV "wrapper"+ makeTessEndDataCallback :: TessEndDataCallback p -> IO (FunPtr (TessEndDataCallback p))++type TessErrorDataCallback p = GLenum -> Ptr p -> IO ()++foreign import CALLCONV "wrapper"+ makeTessErrorDataCallback :: TessErrorDataCallback p -> IO (FunPtr (TessErrorDataCallback p))++type TessCombineDataCallback v p = Ptr GLdouble -> Ptr (Ptr v) -> Ptr GLfloat -> Ptr (Ptr v) -> Ptr p -> IO ()++foreign import CALLCONV "wrapper"+ makeTessCombineDataCallback :: TessCombineDataCallback v p -> IO (FunPtr (TessCombineDataCallback v p))++--------------------------------------------------------------------------------++type QuadricCallback = GLenum -> IO ()++foreign import CALLCONV "wrapper"+ makeQuadricCallback :: QuadricCallback -> IO (FunPtr QuadricCallback)++--------------------------------------------------------------------------------++type NURBSBeginCallback = GLenum -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSBeginCallback :: NURBSBeginCallback -> IO (FunPtr NURBSBeginCallback)++type NURBSVertexCallback = Ptr GLfloat -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSVertexCallback :: NURBSVertexCallback -> IO (FunPtr NURBSVertexCallback)++type NURBSNormalCallback = Ptr GLfloat -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSNormalCallback :: NURBSNormalCallback -> IO (FunPtr NURBSNormalCallback)++type NURBSColorCallback = Ptr GLfloat -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSColorCallback :: NURBSColorCallback -> IO (FunPtr NURBSColorCallback)++type NURBSTexCoordCallback = Ptr GLfloat -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSTexCoordCallback :: NURBSTexCoordCallback -> IO (FunPtr NURBSTexCoordCallback)++type NURBSEndCallback = IO ()++foreign import CALLCONV "wrapper"+ makeNURBSEndCallback :: NURBSEndCallback -> IO (FunPtr NURBSEndCallback)++type NURBSErrorCallback = GLenum -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSErrorCallback :: NURBSErrorCallback -> IO (FunPtr NURBSErrorCallback)++type NURBSBeginDataCallback u = GLenum -> Ptr u -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSBeginDataCallback :: NURBSBeginDataCallback u -> IO (FunPtr (NURBSBeginDataCallback u))++type NURBSVertexDataCallback u = Ptr GLfloat -> Ptr u -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSVertexDataCallback :: NURBSVertexDataCallback u -> IO (FunPtr (NURBSVertexDataCallback u))++type NURBSNormalDataCallback u = Ptr GLfloat -> Ptr u -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSNormalDataCallback :: NURBSNormalDataCallback u -> IO (FunPtr (NURBSNormalDataCallback u))++type NURBSColorDataCallback u = Ptr GLfloat -> Ptr u -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSColorDataCallback :: NURBSColorDataCallback u -> IO (FunPtr (NURBSColorDataCallback u))++type NURBSTexCoordDataCallback u = Ptr GLfloat -> Ptr u -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSTexCoordDataCallback :: NURBSTexCoordDataCallback u -> IO (FunPtr (NURBSTexCoordDataCallback u))++type NURBSEndDataCallback u = Ptr u -> IO ()++foreign import CALLCONV "wrapper"+ makeNURBSEndDataCallback :: NURBSEndDataCallback u -> IO (FunPtr (NURBSEndDataCallback u))+
src/Graphics/Rendering/GLU/Raw/Functions.hs view
@@ -1,146 +1,146 @@-{-# LANGUAGE ForeignFunctionInterface, CPP #-} --------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw.Functions --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- All functions from GLU 1.3, see <http://www.opengl.org/>. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw.Functions ( - gluBeginCurve, - gluBeginPolygon, - gluBeginSurface, - gluBeginTrim, - gluBuild1DMipmapLevels, - gluBuild1DMipmaps, - gluBuild2DMipmapLevels, - gluBuild2DMipmaps, - gluBuild3DMipmapLevels, - gluBuild3DMipmaps, - gluCheckExtension, - gluCylinder, - gluDeleteNurbsRenderer, - gluDeleteQuadric, - gluDeleteTess, - gluDisk, - gluEndCurve, - gluEndPolygon, - gluEndSurface, - gluEndTrim, - gluErrorString, - gluGetNurbsProperty, - gluGetString, - gluGetTessProperty, - gluLoadSamplingMatrices, - gluLookAt, - gluNewNurbsRenderer, - gluNewQuadric, - gluNewTess, - gluNextContour, - gluNurbsCallback, - gluNurbsCallbackData, - gluNurbsCallbackDataEXT, - gluNurbsCurve, - gluNurbsProperty, - gluNurbsSurface, - gluOrtho2D, - gluPartialDisk, - gluPerspective, - gluPickMatrix, - gluProject, - gluPwlCurve, - gluQuadricCallback, - gluQuadricDrawStyle, - gluQuadricNormals, - gluQuadricOrientation, - gluQuadricTexture, - gluScaleImage, - gluSphere, - gluTessBeginContour, - gluTessBeginPolygon, - gluTessCallback, - gluTessEndContour, - gluTessEndPolygon, - gluTessNormal, - gluTessProperty, - gluTessVertex, - gluUnProject, - gluUnProject4, -) where - -import Foreign.Ptr -import Foreign.C.Types -import Graphics.Rendering.GLU.Raw.APIEntry -import Graphics.Rendering.GLU.Raw.Types -import Graphics.Rendering.OpenGL.Raw.Core31 - -#include "HsGLURaw.h" - --------------------------------------------------------------------------------- - -API_ENTRY_SAFE(gluBeginCurve,Ptr GLUnurbs -> IO ()) -API_ENTRY_SAFE(gluBeginPolygon,Ptr GLUtesselator -> IO ()) -API_ENTRY_SAFE(gluBeginSurface,Ptr GLUnurbs -> IO ()) -API_ENTRY_SAFE(gluBeginTrim,Ptr GLUnurbs -> IO ()) -API_ENTRY(gluBuild1DMipmapLevels,GLenum -> GLint -> GLsizei -> GLenum -> GLenum -> GLint -> GLint -> GLint -> Ptr a -> IO GLint) -API_ENTRY(gluBuild1DMipmaps,GLenum -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO GLint) -API_ENTRY(gluBuild2DMipmapLevels,GLenum -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLint -> GLint -> GLint -> Ptr a -> IO GLint) -API_ENTRY(gluBuild2DMipmaps,GLenum -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO GLint) -API_ENTRY(gluBuild3DMipmapLevels,GLenum -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLint -> GLint -> GLint -> Ptr a -> IO GLint) -API_ENTRY(gluBuild3DMipmaps,GLenum -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO GLint) -API_ENTRY(gluCheckExtension,Ptr GLubyte -> Ptr GLubyte -> IO GLboolean) -API_ENTRY_SAFE(gluCylinder,Ptr GLUquadric -> GLdouble -> GLdouble -> GLdouble -> GLint -> GLint -> IO ()) -API_ENTRY_SAFE(gluDeleteNurbsRenderer,Ptr GLUnurbs -> IO ()) -API_ENTRY(gluDeleteQuadric,Ptr GLUquadric -> IO ()) -API_ENTRY_SAFE(gluDeleteTess,Ptr GLUtesselator -> IO ()) -API_ENTRY_SAFE(gluDisk,Ptr GLUquadric -> GLdouble -> GLdouble -> GLint -> GLint -> IO ()) -API_ENTRY_SAFE(gluEndCurve,Ptr GLUnurbs -> IO ()) -API_ENTRY_SAFE(gluEndPolygon,Ptr GLUtesselator -> IO ()) -API_ENTRY_SAFE(gluEndSurface,Ptr GLUnurbs -> IO ()) -API_ENTRY_SAFE(gluEndTrim,Ptr GLUnurbs -> IO ()) -API_ENTRY(gluErrorString,GLenum -> IO (Ptr GLubyte)) -API_ENTRY_SAFE(gluGetNurbsProperty,Ptr GLUnurbs -> GLenum -> Ptr GLfloat -> IO ()) -API_ENTRY(gluGetString,GLenum -> IO (Ptr GLubyte)) -API_ENTRY_SAFE(gluGetTessProperty,Ptr GLUtesselator -> GLenum -> Ptr GLdouble -> IO ()) -API_ENTRY_SAFE(gluLoadSamplingMatrices,Ptr GLUnurbs -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLint -> IO ()) -API_ENTRY(gluLookAt,GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()) -API_ENTRY_SAFE(gluNewNurbsRenderer,IO (Ptr GLUnurbs)) -API_ENTRY(gluNewQuadric,IO (Ptr GLUquadric)) -API_ENTRY(gluNewTess,IO (Ptr GLUtesselator)) -API_ENTRY_SAFE(gluNextContour,Ptr GLUtesselator -> GLenum -> IO ()) -API_ENTRY_SAFE(gluNurbsCallback,Ptr GLUnurbs -> GLenum -> FunPtr a -> IO ()) -API_ENTRY_SAFE(gluNurbsCallbackData,Ptr GLUnurbs -> Ptr a -> IO ()) -API_ENTRY_SAFE(gluNurbsCallbackDataEXT,Ptr GLUnurbs -> Ptr a -> IO ()) -API_ENTRY_SAFE(gluNurbsCurve,Ptr GLUnurbs -> GLint -> Ptr GLfloat -> GLint -> Ptr GLfloat -> GLint -> GLenum -> IO ()) -API_ENTRY_SAFE(gluNurbsProperty,Ptr GLUnurbs -> GLenum -> GLfloat -> IO ()) -API_ENTRY_SAFE(gluNurbsSurface,Ptr GLUnurbs -> GLint -> Ptr GLfloat -> GLint -> Ptr GLfloat -> GLint -> GLint -> Ptr GLfloat -> GLint -> GLint -> GLenum -> IO ()) -API_ENTRY(gluOrtho2D,GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()) -API_ENTRY_SAFE(gluPartialDisk,Ptr GLUquadric -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> IO ()) -API_ENTRY(gluPerspective,GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()) -API_ENTRY(gluPickMatrix,GLdouble -> GLdouble -> GLdouble -> GLdouble -> Ptr GLint -> IO ()) -API_ENTRY(gluProject,GLdouble -> GLdouble -> GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLint -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> IO GLint) -API_ENTRY_SAFE(gluPwlCurve,Ptr GLUnurbs -> GLint -> Ptr GLfloat -> GLint -> GLenum -> IO ()) -API_ENTRY_SAFE(gluQuadricCallback,Ptr GLUquadric -> GLenum -> FunPtr a -> IO ()) -API_ENTRY_SAFE(gluQuadricDrawStyle,Ptr GLUquadric -> GLenum -> IO ()) -API_ENTRY_SAFE(gluQuadricNormals,Ptr GLUquadric -> GLenum -> IO ()) -API_ENTRY_SAFE(gluQuadricOrientation,Ptr GLUquadric -> GLenum -> IO ()) -API_ENTRY_SAFE(gluQuadricTexture,Ptr GLUquadric -> GLboolean -> IO ()) -API_ENTRY(gluScaleImage,GLenum -> GLsizei -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLenum -> Ptr b -> IO GLint) -API_ENTRY_SAFE(gluSphere,Ptr GLUquadric -> GLdouble -> GLint -> GLint -> IO ()) -API_ENTRY_SAFE(gluTessBeginContour,Ptr GLUtesselator -> IO ()) -API_ENTRY_SAFE(gluTessBeginPolygon,Ptr GLUtesselator -> Ptr a -> IO ()) -API_ENTRY_SAFE(gluTessCallback,Ptr GLUtesselator -> GLenum -> FunPtr a -> IO ()) -API_ENTRY_SAFE(gluTessEndContour,Ptr GLUtesselator -> IO ()) -API_ENTRY_SAFE(gluTessEndPolygon,Ptr GLUtesselator -> IO ()) -API_ENTRY(gluTessNormal,Ptr GLUtesselator -> GLdouble -> GLdouble -> GLdouble -> IO ()) -API_ENTRY_SAFE(gluTessProperty,Ptr GLUtesselator -> GLenum -> GLdouble -> IO ()) -API_ENTRY_SAFE(gluTessVertex,Ptr GLUtesselator -> Ptr GLdouble -> Ptr a -> IO ()) -API_ENTRY(gluUnProject,GLdouble -> GLdouble -> GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLint -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> IO GLint) -API_ENTRY(gluUnProject4,GLdouble -> GLdouble -> GLdouble -> GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLint -> GLclampd -> GLclampd -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> IO GLint) +{-# LANGUAGE ForeignFunctionInterface, CPP #-}+--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw.Functions+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- All functions from GLU 1.3, see <http://www.opengl.org/>.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw.Functions (+ gluBeginCurve,+ gluBeginPolygon,+ gluBeginSurface,+ gluBeginTrim,+ gluBuild1DMipmapLevels,+ gluBuild1DMipmaps,+ gluBuild2DMipmapLevels,+ gluBuild2DMipmaps,+ gluBuild3DMipmapLevels,+ gluBuild3DMipmaps,+ gluCheckExtension,+ gluCylinder,+ gluDeleteNurbsRenderer,+ gluDeleteQuadric,+ gluDeleteTess,+ gluDisk,+ gluEndCurve,+ gluEndPolygon,+ gluEndSurface,+ gluEndTrim,+ gluErrorString,+ gluGetNurbsProperty,+ gluGetString,+ gluGetTessProperty,+ gluLoadSamplingMatrices,+ gluLookAt,+ gluNewNurbsRenderer,+ gluNewQuadric,+ gluNewTess,+ gluNextContour,+ gluNurbsCallback,+ gluNurbsCallbackData,+ gluNurbsCallbackDataEXT,+ gluNurbsCurve,+ gluNurbsProperty,+ gluNurbsSurface,+ gluOrtho2D,+ gluPartialDisk,+ gluPerspective,+ gluPickMatrix,+ gluProject,+ gluPwlCurve,+ gluQuadricCallback,+ gluQuadricDrawStyle,+ gluQuadricNormals,+ gluQuadricOrientation,+ gluQuadricTexture,+ gluScaleImage,+ gluSphere,+ gluTessBeginContour,+ gluTessBeginPolygon,+ gluTessCallback,+ gluTessEndContour,+ gluTessEndPolygon,+ gluTessNormal,+ gluTessProperty,+ gluTessVertex,+ gluUnProject,+ gluUnProject4,+) where++import Foreign.Ptr+import Foreign.C.Types+import Graphics.Rendering.GLU.Raw.APIEntry+import Graphics.Rendering.GLU.Raw.Types+import Graphics.Rendering.OpenGL.Raw.Core31++#include "HsGLURaw.h"++--------------------------------------------------------------------------------++API_ENTRY_SAFE(dyn_gluBeginCurve,ptr_gluBeginCurve,"gluBeginCurve",gluBeginCurve,Ptr GLUnurbs -> IO ())+API_ENTRY_SAFE(dyn_gluBeginPolygon,ptr_gluBeginPolygon,"gluBeginPolygon",gluBeginPolygon,Ptr GLUtesselator -> IO ())+API_ENTRY_SAFE(dyn_gluBeginSurface,ptr_gluBeginSurface,"gluBeginSurface",gluBeginSurface,Ptr GLUnurbs -> IO ())+API_ENTRY_SAFE(dyn_gluBeginTrim,ptr_gluBeginTrim,"gluBeginTrim",gluBeginTrim,Ptr GLUnurbs -> IO ())+API_ENTRY(dyn_gluBuild1DMipmapLevels,ptr_gluBuild1DMipmapLevels,"gluBuild1DMipmapLevels",gluBuild1DMipmapLevels,GLenum -> GLint -> GLsizei -> GLenum -> GLenum -> GLint -> GLint -> GLint -> Ptr a -> IO GLint)+API_ENTRY(dyn_gluBuild1DMipmaps,ptr_gluBuild1DMipmaps,"gluBuild1DMipmaps",gluBuild1DMipmaps,GLenum -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO GLint)+API_ENTRY(dyn_gluBuild2DMipmapLevels,ptr_gluBuild2DMipmapLevels,"gluBuild2DMipmapLevels",gluBuild2DMipmapLevels,GLenum -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLint -> GLint -> GLint -> Ptr a -> IO GLint)+API_ENTRY(dyn_gluBuild2DMipmaps,ptr_gluBuild2DMipmaps,"gluBuild2DMipmaps",gluBuild2DMipmaps,GLenum -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO GLint)+API_ENTRY(dyn_gluBuild3DMipmapLevels,ptr_gluBuild3DMipmapLevels,"gluBuild3DMipmapLevels",gluBuild3DMipmapLevels,GLenum -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLint -> GLint -> GLint -> Ptr a -> IO GLint)+API_ENTRY(dyn_gluBuild3DMipmaps,ptr_gluBuild3DMipmaps,"gluBuild3DMipmaps",gluBuild3DMipmaps,GLenum -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO GLint)+API_ENTRY(dyn_gluCheckExtension,ptr_gluCheckExtension,"gluCheckExtension",gluCheckExtension,Ptr GLubyte -> Ptr GLubyte -> IO GLboolean)+API_ENTRY_SAFE(dyn_gluCylinder,ptr_gluCylinder,"gluCylinder",gluCylinder,Ptr GLUquadric -> GLdouble -> GLdouble -> GLdouble -> GLint -> GLint -> IO ())+API_ENTRY_SAFE(dyn_gluDeleteNurbsRenderer,ptr_gluDeleteNurbsRenderer,"gluDeleteNurbsRenderer",gluDeleteNurbsRenderer,Ptr GLUnurbs -> IO ())+API_ENTRY(dyn_gluDeleteQuadric,ptr_gluDeleteQuadric,"gluDeleteQuadric",gluDeleteQuadric,Ptr GLUquadric -> IO ())+API_ENTRY_SAFE(dyn_gluDeleteTess,ptr_gluDeleteTess,"gluDeleteTess",gluDeleteTess,Ptr GLUtesselator -> IO ())+API_ENTRY_SAFE(dyn_gluDisk,ptr_gluDisk,"gluDisk",gluDisk,Ptr GLUquadric -> GLdouble -> GLdouble -> GLint -> GLint -> IO ())+API_ENTRY_SAFE(dyn_gluEndCurve,ptr_gluEndCurve,"gluEndCurve",gluEndCurve,Ptr GLUnurbs -> IO ())+API_ENTRY_SAFE(dyn_gluEndPolygon,ptr_gluEndPolygon,"gluEndPolygon",gluEndPolygon,Ptr GLUtesselator -> IO ())+API_ENTRY_SAFE(dyn_gluEndSurface,ptr_gluEndSurface,"gluEndSurface",gluEndSurface,Ptr GLUnurbs -> IO ())+API_ENTRY_SAFE(dyn_gluEndTrim,ptr_gluEndTrim,"gluEndTrim",gluEndTrim,Ptr GLUnurbs -> IO ())+API_ENTRY(dyn_gluErrorString,ptr_gluErrorString,"gluErrorString",gluErrorString,GLenum -> IO (Ptr GLubyte))+API_ENTRY_SAFE(dyn_gluGetNurbsProperty,ptr_gluGetNurbsProperty,"gluGetNurbsProperty",gluGetNurbsProperty,Ptr GLUnurbs -> GLenum -> Ptr GLfloat -> IO ())+API_ENTRY(dyn_gluGetString,ptr_gluGetString,"gluGetString",gluGetString,GLenum -> IO (Ptr GLubyte))+API_ENTRY_SAFE(dyn_gluGetTessProperty,ptr_gluGetTessProperty,"gluGetTessProperty",gluGetTessProperty,Ptr GLUtesselator -> GLenum -> Ptr GLdouble -> IO ())+API_ENTRY_SAFE(dyn_gluLoadSamplingMatrices,ptr_gluLoadSamplingMatrices,"gluLoadSamplingMatrices",gluLoadSamplingMatrices,Ptr GLUnurbs -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLint -> IO ())+API_ENTRY(dyn_gluLookAt,ptr_gluLookAt,"gluLookAt",gluLookAt,GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())+API_ENTRY_SAFE(dyn_gluNewNurbsRenderer,ptr_gluNewNurbsRenderer,"gluNewNurbsRenderer",gluNewNurbsRenderer,IO (Ptr GLUnurbs))+API_ENTRY(dyn_gluNewQuadric,ptr_gluNewQuadric,"gluNewQuadric",gluNewQuadric,IO (Ptr GLUquadric))+API_ENTRY(dyn_gluNewTess,ptr_gluNewTess,"gluNewTess",gluNewTess,IO (Ptr GLUtesselator))+API_ENTRY_SAFE(dyn_gluNextContour,ptr_gluNextContour,"gluNextContour",gluNextContour,Ptr GLUtesselator -> GLenum -> IO ())+API_ENTRY_SAFE(dyn_gluNurbsCallback,ptr_gluNurbsCallback,"gluNurbsCallback",gluNurbsCallback,Ptr GLUnurbs -> GLenum -> FunPtr a -> IO ())+API_ENTRY_SAFE(dyn_gluNurbsCallbackData,ptr_gluNurbsCallbackData,"gluNurbsCallbackData",gluNurbsCallbackData,Ptr GLUnurbs -> Ptr a -> IO ())+API_ENTRY_SAFE(dyn_gluNurbsCallbackDataEXT,ptr_gluNurbsCallbackDataEXT,"gluNurbsCallbackDataEXT",gluNurbsCallbackDataEXT,Ptr GLUnurbs -> Ptr a -> IO ())+API_ENTRY_SAFE(dyn_gluNurbsCurve,ptr_gluNurbsCurve,"gluNurbsCurve",gluNurbsCurve,Ptr GLUnurbs -> GLint -> Ptr GLfloat -> GLint -> Ptr GLfloat -> GLint -> GLenum -> IO ())+API_ENTRY_SAFE(dyn_gluNurbsProperty,ptr_gluNurbsProperty,"gluNurbsProperty",gluNurbsProperty,Ptr GLUnurbs -> GLenum -> GLfloat -> IO ())+API_ENTRY_SAFE(dyn_gluNurbsSurface,ptr_gluNurbsSurface,"gluNurbsSurface",gluNurbsSurface,Ptr GLUnurbs -> GLint -> Ptr GLfloat -> GLint -> Ptr GLfloat -> GLint -> GLint -> Ptr GLfloat -> GLint -> GLint -> GLenum -> IO ())+API_ENTRY(dyn_gluOrtho2D,ptr_gluOrtho2D,"gluOrtho2D",gluOrtho2D,GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())+API_ENTRY_SAFE(dyn_gluPartialDisk,ptr_gluPartialDisk,"gluPartialDisk",gluPartialDisk,Ptr GLUquadric -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> IO ())+API_ENTRY(dyn_gluPerspective,ptr_gluPerspective,"gluPerspective",gluPerspective,GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())+API_ENTRY(dyn_gluPickMatrix,ptr_gluPickMatrix,"gluPickMatrix",gluPickMatrix,GLdouble -> GLdouble -> GLdouble -> GLdouble -> Ptr GLint -> IO ())+API_ENTRY(dyn_gluProject,ptr_gluProject,"gluProject",gluProject,GLdouble -> GLdouble -> GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLint -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> IO GLint)+API_ENTRY_SAFE(dyn_gluPwlCurve,ptr_gluPwlCurve,"gluPwlCurve",gluPwlCurve,Ptr GLUnurbs -> GLint -> Ptr GLfloat -> GLint -> GLenum -> IO ())+API_ENTRY_SAFE(dyn_gluQuadricCallback,ptr_gluQuadricCallback,"gluQuadricCallback",gluQuadricCallback,Ptr GLUquadric -> GLenum -> FunPtr a -> IO ())+API_ENTRY_SAFE(dyn_gluQuadricDrawStyle,ptr_gluQuadricDrawStyle,"gluQuadricDrawStyle",gluQuadricDrawStyle,Ptr GLUquadric -> GLenum -> IO ())+API_ENTRY_SAFE(dyn_gluQuadricNormals,ptr_gluQuadricNormals,"gluQuadricNormals",gluQuadricNormals,Ptr GLUquadric -> GLenum -> IO ())+API_ENTRY_SAFE(dyn_gluQuadricOrientation,ptr_gluQuadricOrientation,"gluQuadricOrientation",gluQuadricOrientation,Ptr GLUquadric -> GLenum -> IO ())+API_ENTRY_SAFE(dyn_gluQuadricTexture,ptr_gluQuadricTexture,"gluQuadricTexture",gluQuadricTexture,Ptr GLUquadric -> GLboolean -> IO ())+API_ENTRY(dyn_gluScaleImage,ptr_gluScaleImage,"gluScaleImage",gluScaleImage,GLenum -> GLsizei -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLenum -> Ptr b -> IO GLint)+API_ENTRY_SAFE(dyn_gluSphere,ptr_gluSphere,"gluSphere",gluSphere,Ptr GLUquadric -> GLdouble -> GLint -> GLint -> IO ())+API_ENTRY_SAFE(dyn_gluTessBeginContour,ptr_gluTessBeginContour,"gluTessBeginContour",gluTessBeginContour,Ptr GLUtesselator -> IO ())+API_ENTRY_SAFE(dyn_gluTessBeginPolygon,ptr_gluTessBeginPolygon,"gluTessBeginPolygon",gluTessBeginPolygon,Ptr GLUtesselator -> Ptr a -> IO ())+API_ENTRY_SAFE(dyn_gluTessCallback,ptr_gluTessCallback,"gluTessCallback",gluTessCallback,Ptr GLUtesselator -> GLenum -> FunPtr a -> IO ())+API_ENTRY_SAFE(dyn_gluTessEndContour,ptr_gluTessEndContour,"gluTessEndContour",gluTessEndContour,Ptr GLUtesselator -> IO ())+API_ENTRY_SAFE(dyn_gluTessEndPolygon,ptr_gluTessEndPolygon,"gluTessEndPolygon",gluTessEndPolygon,Ptr GLUtesselator -> IO ())+API_ENTRY(dyn_gluTessNormal,ptr_gluTessNormal,"gluTessNormal",gluTessNormal,Ptr GLUtesselator -> GLdouble -> GLdouble -> GLdouble -> IO ())+API_ENTRY_SAFE(dyn_gluTessProperty,ptr_gluTessProperty,"gluTessProperty",gluTessProperty,Ptr GLUtesselator -> GLenum -> GLdouble -> IO ())+API_ENTRY_SAFE(dyn_gluTessVertex,ptr_gluTessVertex,"gluTessVertex",gluTessVertex,Ptr GLUtesselator -> Ptr GLdouble -> Ptr a -> IO ())+API_ENTRY(dyn_gluUnProject,ptr_gluUnProject,"gluUnProject",gluUnProject,GLdouble -> GLdouble -> GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLint -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> IO GLint)+API_ENTRY(dyn_gluUnProject4,ptr_gluUnProject4,"gluUnProject4",gluUnProject4,GLdouble -> GLdouble -> GLdouble -> GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLint -> GLclampd -> GLclampd -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> Ptr GLdouble -> IO GLint)
src/Graphics/Rendering/GLU/Raw/Tokens.hs view
@@ -1,487 +1,487 @@--------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw.Tokens --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- All tokens from GLU 1.3, see <http://www.opengl.org/>. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw.Tokens where - -import Graphics.Rendering.OpenGL.Raw.Core31 - --------------------------------------------------------------------------------- - --- Boolean -glu_FALSE :: GLenum -glu_FALSE = 0 - -glu_TRUE :: GLenum -glu_TRUE = 1 - --- StringName -glu_VERSION :: GLenum -glu_VERSION = 100800 - -glu_EXTENSIONS :: GLenum -glu_EXTENSIONS = 100801 - --- ErrorCode -glu_INVALID_ENUM :: GLenum -glu_INVALID_ENUM = 100900 - -glu_INVALID_VALUE :: GLenum -glu_INVALID_VALUE = 100901 - -glu_OUT_OF_MEMORY :: GLenum -glu_OUT_OF_MEMORY = 100902 - -glu_INCOMPATIBLE_GL_VERSION :: GLenum -glu_INCOMPATIBLE_GL_VERSION = 100903 - -glu_INVALID_OPERATION :: GLenum -glu_INVALID_OPERATION = 100904 - --- NurbsDisplay --- GLU_FILL -glu_OUTLINE_POLYGON :: GLenum -glu_OUTLINE_POLYGON = 100240 - -glu_OUTLINE_PATCH :: GLenum -glu_OUTLINE_PATCH = 100241 - --- NurbsCallback -glu_NURBS_ERROR :: GLenum -glu_NURBS_ERROR = 100103 - -glu_ERROR :: GLenum -glu_ERROR = 100103 - -glu_NURBS_BEGIN :: GLenum -glu_NURBS_BEGIN = 100164 - -glu_NURBS_BEGIN_EXT :: GLenum -glu_NURBS_BEGIN_EXT = 100164 - -glu_NURBS_VERTEX :: GLenum -glu_NURBS_VERTEX = 100165 - -glu_NURBS_VERTEX_EXT :: GLenum -glu_NURBS_VERTEX_EXT = 100165 - -glu_NURBS_NORMAL :: GLenum -glu_NURBS_NORMAL = 100166 - -glu_NURBS_NORMAL_EXT :: GLenum -glu_NURBS_NORMAL_EXT = 100166 - -glu_NURBS_COLOR :: GLenum -glu_NURBS_COLOR = 100167 - -glu_NURBS_COLOR_EXT :: GLenum -glu_NURBS_COLOR_EXT = 100167 - -glu_NURBS_TEXTURE_COORD :: GLenum -glu_NURBS_TEXTURE_COORD = 100168 - -glu_NURBS_TEX_COORD_EXT :: GLenum -glu_NURBS_TEX_COORD_EXT = 100168 - -glu_NURBS_END :: GLenum -glu_NURBS_END = 100169 - -glu_NURBS_END_EXT :: GLenum -glu_NURBS_END_EXT = 100169 - -glu_NURBS_BEGIN_DATA :: GLenum -glu_NURBS_BEGIN_DATA = 100170 - -glu_NURBS_BEGIN_DATA_EXT :: GLenum -glu_NURBS_BEGIN_DATA_EXT = 100170 - -glu_NURBS_VERTEX_DATA :: GLenum -glu_NURBS_VERTEX_DATA = 100171 - -glu_NURBS_VERTEX_DATA_EXT :: GLenum -glu_NURBS_VERTEX_DATA_EXT = 100171 - -glu_NURBS_NORMAL_DATA :: GLenum -glu_NURBS_NORMAL_DATA = 100172 - -glu_NURBS_NORMAL_DATA_EXT :: GLenum -glu_NURBS_NORMAL_DATA_EXT = 100172 - -glu_NURBS_COLOR_DATA :: GLenum -glu_NURBS_COLOR_DATA = 100173 - -glu_NURBS_COLOR_DATA_EXT :: GLenum -glu_NURBS_COLOR_DATA_EXT = 100173 - -glu_NURBS_TEXTURE_COORD_DATA :: GLenum -glu_NURBS_TEXTURE_COORD_DATA = 100174 - -glu_NURBS_TEX_COORD_DATA_EXT :: GLenum -glu_NURBS_TEX_COORD_DATA_EXT = 100174 - -glu_NURBS_END_DATA :: GLenum -glu_NURBS_END_DATA = 100175 - -glu_NURBS_END_DATA_EXT :: GLenum -glu_NURBS_END_DATA_EXT = 100175 - --- NurbsError -glu_NURBS_ERROR1 :: GLenum -glu_NURBS_ERROR1 = 100251 - -glu_NURBS_ERROR2 :: GLenum -glu_NURBS_ERROR2 = 100252 - -glu_NURBS_ERROR3 :: GLenum -glu_NURBS_ERROR3 = 100253 - -glu_NURBS_ERROR4 :: GLenum -glu_NURBS_ERROR4 = 100254 - -glu_NURBS_ERROR5 :: GLenum -glu_NURBS_ERROR5 = 100255 - -glu_NURBS_ERROR6 :: GLenum -glu_NURBS_ERROR6 = 100256 - -glu_NURBS_ERROR7 :: GLenum -glu_NURBS_ERROR7 = 100257 - -glu_NURBS_ERROR8 :: GLenum -glu_NURBS_ERROR8 = 100258 - -glu_NURBS_ERROR9 :: GLenum -glu_NURBS_ERROR9 = 100259 - -glu_NURBS_ERROR10 :: GLenum -glu_NURBS_ERROR10 = 100260 - -glu_NURBS_ERROR11 :: GLenum -glu_NURBS_ERROR11 = 100261 - -glu_NURBS_ERROR12 :: GLenum -glu_NURBS_ERROR12 = 100262 - -glu_NURBS_ERROR13 :: GLenum -glu_NURBS_ERROR13 = 100263 - -glu_NURBS_ERROR14 :: GLenum -glu_NURBS_ERROR14 = 100264 - -glu_NURBS_ERROR15 :: GLenum -glu_NURBS_ERROR15 = 100265 - -glu_NURBS_ERROR16 :: GLenum -glu_NURBS_ERROR16 = 100266 - -glu_NURBS_ERROR17 :: GLenum -glu_NURBS_ERROR17 = 100267 - -glu_NURBS_ERROR18 :: GLenum -glu_NURBS_ERROR18 = 100268 - -glu_NURBS_ERROR19 :: GLenum -glu_NURBS_ERROR19 = 100269 - -glu_NURBS_ERROR20 :: GLenum -glu_NURBS_ERROR20 = 100270 - -glu_NURBS_ERROR21 :: GLenum -glu_NURBS_ERROR21 = 100271 - -glu_NURBS_ERROR22 :: GLenum -glu_NURBS_ERROR22 = 100272 - -glu_NURBS_ERROR23 :: GLenum -glu_NURBS_ERROR23 = 100273 - -glu_NURBS_ERROR24 :: GLenum -glu_NURBS_ERROR24 = 100274 - -glu_NURBS_ERROR25 :: GLenum -glu_NURBS_ERROR25 = 100275 - -glu_NURBS_ERROR26 :: GLenum -glu_NURBS_ERROR26 = 100276 - -glu_NURBS_ERROR27 :: GLenum -glu_NURBS_ERROR27 = 100277 - -glu_NURBS_ERROR28 :: GLenum -glu_NURBS_ERROR28 = 100278 - -glu_NURBS_ERROR29 :: GLenum -glu_NURBS_ERROR29 = 100279 - -glu_NURBS_ERROR30 :: GLenum -glu_NURBS_ERROR30 = 100280 - -glu_NURBS_ERROR31 :: GLenum -glu_NURBS_ERROR31 = 100281 - -glu_NURBS_ERROR32 :: GLenum -glu_NURBS_ERROR32 = 100282 - -glu_NURBS_ERROR33 :: GLenum -glu_NURBS_ERROR33 = 100283 - -glu_NURBS_ERROR34 :: GLenum -glu_NURBS_ERROR34 = 100284 - -glu_NURBS_ERROR35 :: GLenum -glu_NURBS_ERROR35 = 100285 - -glu_NURBS_ERROR36 :: GLenum -glu_NURBS_ERROR36 = 100286 - -glu_NURBS_ERROR37 :: GLenum -glu_NURBS_ERROR37 = 100287 - --- NurbsProperty -glu_AUTO_LOAD_MATRIX :: GLenum -glu_AUTO_LOAD_MATRIX = 100200 - -glu_CULLING :: GLenum -glu_CULLING = 100201 - -glu_SAMPLING_TOLERANCE :: GLenum -glu_SAMPLING_TOLERANCE = 100203 - -glu_DISPLAY_MODE :: GLenum -glu_DISPLAY_MODE = 100204 - -glu_PARAMETRIC_TOLERANCE :: GLenum -glu_PARAMETRIC_TOLERANCE = 100202 - -glu_SAMPLING_METHOD :: GLenum -glu_SAMPLING_METHOD = 100205 - -glu_U_STEP :: GLenum -glu_U_STEP = 100206 - -glu_V_STEP :: GLenum -glu_V_STEP = 100207 - -glu_NURBS_MODE :: GLenum -glu_NURBS_MODE = 100160 - -glu_NURBS_MODE_EXT :: GLenum -glu_NURBS_MODE_EXT = 100160 - -glu_NURBS_TESSELLATOR :: GLenum -glu_NURBS_TESSELLATOR = 100161 - -glu_NURBS_TESSELLATOR_EXT :: GLenum -glu_NURBS_TESSELLATOR_EXT = 100161 - -glu_NURBS_RENDERER :: GLenum -glu_NURBS_RENDERER = 100162 - -glu_NURBS_RENDERER_EXT :: GLenum -glu_NURBS_RENDERER_EXT = 100162 - --- NurbsSampling -glu_OBJECT_PARAMETRIC_ERROR :: GLenum -glu_OBJECT_PARAMETRIC_ERROR = 100208 - -glu_OBJECT_PARAMETRIC_ERROR_EXT :: GLenum -glu_OBJECT_PARAMETRIC_ERROR_EXT = 100208 - -glu_OBJECT_PATH_LENGTH :: GLenum -glu_OBJECT_PATH_LENGTH = 100209 - -glu_OBJECT_PATH_LENGTH_EXT :: GLenum -glu_OBJECT_PATH_LENGTH_EXT = 100209 - -glu_PATH_LENGTH :: GLenum -glu_PATH_LENGTH = 100215 - -glu_PARAMETRIC_ERROR :: GLenum -glu_PARAMETRIC_ERROR = 100216 - -glu_DOMAIN_DISTANCE :: GLenum -glu_DOMAIN_DISTANCE = 100217 - --- NurbsTrim -glu_MAP1_TRIM_2 :: GLenum -glu_MAP1_TRIM_2 = 100210 - -glu_MAP1_TRIM_3 :: GLenum -glu_MAP1_TRIM_3 = 100211 - --- QuadricDrawStyle -glu_POINT :: GLenum -glu_POINT = 100010 - -glu_LINE :: GLenum -glu_LINE = 100011 - -glu_FILL :: GLenum -glu_FILL = 100012 - -glu_SILHOUETTE :: GLenum -glu_SILHOUETTE = 100013 - --- QuadricCallback --- GLU_ERROR - --- QuadricNormal -glu_SMOOTH :: GLenum -glu_SMOOTH = 100000 - -glu_FLAT :: GLenum -glu_FLAT = 100001 - -glu_NONE :: GLenum -glu_NONE = 100002 - --- QuadricOrientation -glu_OUTSIDE :: GLenum -glu_OUTSIDE = 100020 - -glu_INSIDE :: GLenum -glu_INSIDE = 100021 - --- TessCallback -glu_TESS_BEGIN :: GLenum -glu_TESS_BEGIN = 100100 - -glu_BEGIN :: GLenum -glu_BEGIN = 100100 - -glu_TESS_VERTEX :: GLenum -glu_TESS_VERTEX = 100101 - -glu_VERTEX :: GLenum -glu_VERTEX = 100101 - -glu_TESS_END :: GLenum -glu_TESS_END = 100102 - -glu_END :: GLenum -glu_END = 100102 - -glu_TESS_ERROR :: GLenum -glu_TESS_ERROR = 100103 - -glu_TESS_EDGE_FLAG :: GLenum -glu_TESS_EDGE_FLAG = 100104 - -glu_EDGE_FLAG :: GLenum -glu_EDGE_FLAG = 100104 - -glu_TESS_COMBINE :: GLenum -glu_TESS_COMBINE = 100105 - -glu_TESS_BEGIN_DATA :: GLenum -glu_TESS_BEGIN_DATA = 100106 - -glu_TESS_VERTEX_DATA :: GLenum -glu_TESS_VERTEX_DATA = 100107 - -glu_TESS_END_DATA :: GLenum -glu_TESS_END_DATA = 100108 - -glu_TESS_ERROR_DATA :: GLenum -glu_TESS_ERROR_DATA = 100109 - -glu_TESS_EDGE_FLAG_DATA :: GLenum -glu_TESS_EDGE_FLAG_DATA = 100110 - -glu_TESS_COMBINE_DATA :: GLenum -glu_TESS_COMBINE_DATA = 100111 - --- TessContour -glu_CW :: GLenum -glu_CW = 100120 - -glu_CCW :: GLenum -glu_CCW = 100121 - -glu_INTERIOR :: GLenum -glu_INTERIOR = 100122 - -glu_EXTERIOR :: GLenum -glu_EXTERIOR = 100123 - -glu_UNKNOWN :: GLenum -glu_UNKNOWN = 100124 - --- TessProperty -glu_TESS_WINDING_RULE :: GLenum -glu_TESS_WINDING_RULE = 100140 - -glu_TESS_BOUNDARY_ONLY :: GLenum -glu_TESS_BOUNDARY_ONLY = 100141 - -glu_TESS_TOLERANCE :: GLenum -glu_TESS_TOLERANCE = 100142 - --- TessError -glu_TESS_ERROR1 :: GLenum -glu_TESS_ERROR1 = 100151 - -glu_TESS_ERROR2 :: GLenum -glu_TESS_ERROR2 = 100152 - -glu_TESS_ERROR3 :: GLenum -glu_TESS_ERROR3 = 100153 - -glu_TESS_ERROR4 :: GLenum -glu_TESS_ERROR4 = 100154 - -glu_TESS_ERROR5 :: GLenum -glu_TESS_ERROR5 = 100155 - -glu_TESS_ERROR6 :: GLenum -glu_TESS_ERROR6 = 100156 - -glu_TESS_ERROR7 :: GLenum -glu_TESS_ERROR7 = 100157 - -glu_TESS_ERROR8 :: GLenum -glu_TESS_ERROR8 = 100158 - -glu_TESS_MISSING_BEGIN_POLYGON :: GLenum -glu_TESS_MISSING_BEGIN_POLYGON = 100151 - -glu_TESS_MISSING_BEGIN_CONTOUR :: GLenum -glu_TESS_MISSING_BEGIN_CONTOUR = 100152 - -glu_TESS_MISSING_END_POLYGON :: GLenum -glu_TESS_MISSING_END_POLYGON = 100153 - -glu_TESS_MISSING_END_CONTOUR :: GLenum -glu_TESS_MISSING_END_CONTOUR = 100154 - -glu_TESS_COORD_TOO_LARGE :: GLenum -glu_TESS_COORD_TOO_LARGE = 100155 - -glu_TESS_NEED_COMBINE_CALLBACK :: GLenum -glu_TESS_NEED_COMBINE_CALLBACK = 100156 - --- TessWinding -glu_TESS_WINDING_ODD :: GLenum -glu_TESS_WINDING_ODD = 100130 - -glu_TESS_WINDING_NONZERO :: GLenum -glu_TESS_WINDING_NONZERO = 100131 - -glu_TESS_WINDING_POSITIVE :: GLenum -glu_TESS_WINDING_POSITIVE = 100132 - -glu_TESS_WINDING_NEGATIVE :: GLenum -glu_TESS_WINDING_NEGATIVE = 100133 - -glu_TESS_WINDING_ABS_GEQ_TWO :: GLenum -glu_TESS_WINDING_ABS_GEQ_TWO = 100134 +--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw.Tokens+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- All tokens from GLU 1.3, see <http://www.opengl.org/>.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw.Tokens where++import Graphics.Rendering.OpenGL.Raw.Core31++--------------------------------------------------------------------------------++-- Boolean+glu_FALSE :: GLenum+glu_FALSE = 0++glu_TRUE :: GLenum+glu_TRUE = 1++-- StringName+glu_VERSION :: GLenum+glu_VERSION = 100800++glu_EXTENSIONS :: GLenum+glu_EXTENSIONS = 100801++-- ErrorCode+glu_INVALID_ENUM :: GLenum+glu_INVALID_ENUM = 100900++glu_INVALID_VALUE :: GLenum+glu_INVALID_VALUE = 100901++glu_OUT_OF_MEMORY :: GLenum+glu_OUT_OF_MEMORY = 100902++glu_INCOMPATIBLE_GL_VERSION :: GLenum+glu_INCOMPATIBLE_GL_VERSION = 100903++glu_INVALID_OPERATION :: GLenum+glu_INVALID_OPERATION = 100904++-- NurbsDisplay+-- GLU_FILL+glu_OUTLINE_POLYGON :: GLenum+glu_OUTLINE_POLYGON = 100240++glu_OUTLINE_PATCH :: GLenum+glu_OUTLINE_PATCH = 100241++-- NurbsCallback+glu_NURBS_ERROR :: GLenum+glu_NURBS_ERROR = 100103++glu_ERROR :: GLenum+glu_ERROR = 100103++glu_NURBS_BEGIN :: GLenum+glu_NURBS_BEGIN = 100164++glu_NURBS_BEGIN_EXT :: GLenum+glu_NURBS_BEGIN_EXT = 100164++glu_NURBS_VERTEX :: GLenum+glu_NURBS_VERTEX = 100165++glu_NURBS_VERTEX_EXT :: GLenum+glu_NURBS_VERTEX_EXT = 100165++glu_NURBS_NORMAL :: GLenum+glu_NURBS_NORMAL = 100166++glu_NURBS_NORMAL_EXT :: GLenum+glu_NURBS_NORMAL_EXT = 100166++glu_NURBS_COLOR :: GLenum+glu_NURBS_COLOR = 100167++glu_NURBS_COLOR_EXT :: GLenum+glu_NURBS_COLOR_EXT = 100167++glu_NURBS_TEXTURE_COORD :: GLenum+glu_NURBS_TEXTURE_COORD = 100168++glu_NURBS_TEX_COORD_EXT :: GLenum+glu_NURBS_TEX_COORD_EXT = 100168++glu_NURBS_END :: GLenum+glu_NURBS_END = 100169++glu_NURBS_END_EXT :: GLenum+glu_NURBS_END_EXT = 100169++glu_NURBS_BEGIN_DATA :: GLenum+glu_NURBS_BEGIN_DATA = 100170++glu_NURBS_BEGIN_DATA_EXT :: GLenum+glu_NURBS_BEGIN_DATA_EXT = 100170++glu_NURBS_VERTEX_DATA :: GLenum+glu_NURBS_VERTEX_DATA = 100171++glu_NURBS_VERTEX_DATA_EXT :: GLenum+glu_NURBS_VERTEX_DATA_EXT = 100171++glu_NURBS_NORMAL_DATA :: GLenum+glu_NURBS_NORMAL_DATA = 100172++glu_NURBS_NORMAL_DATA_EXT :: GLenum+glu_NURBS_NORMAL_DATA_EXT = 100172++glu_NURBS_COLOR_DATA :: GLenum+glu_NURBS_COLOR_DATA = 100173++glu_NURBS_COLOR_DATA_EXT :: GLenum+glu_NURBS_COLOR_DATA_EXT = 100173++glu_NURBS_TEXTURE_COORD_DATA :: GLenum+glu_NURBS_TEXTURE_COORD_DATA = 100174++glu_NURBS_TEX_COORD_DATA_EXT :: GLenum+glu_NURBS_TEX_COORD_DATA_EXT = 100174++glu_NURBS_END_DATA :: GLenum+glu_NURBS_END_DATA = 100175++glu_NURBS_END_DATA_EXT :: GLenum+glu_NURBS_END_DATA_EXT = 100175++-- NurbsError+glu_NURBS_ERROR1 :: GLenum+glu_NURBS_ERROR1 = 100251++glu_NURBS_ERROR2 :: GLenum+glu_NURBS_ERROR2 = 100252++glu_NURBS_ERROR3 :: GLenum+glu_NURBS_ERROR3 = 100253++glu_NURBS_ERROR4 :: GLenum+glu_NURBS_ERROR4 = 100254++glu_NURBS_ERROR5 :: GLenum+glu_NURBS_ERROR5 = 100255++glu_NURBS_ERROR6 :: GLenum+glu_NURBS_ERROR6 = 100256++glu_NURBS_ERROR7 :: GLenum+glu_NURBS_ERROR7 = 100257++glu_NURBS_ERROR8 :: GLenum+glu_NURBS_ERROR8 = 100258++glu_NURBS_ERROR9 :: GLenum+glu_NURBS_ERROR9 = 100259++glu_NURBS_ERROR10 :: GLenum+glu_NURBS_ERROR10 = 100260++glu_NURBS_ERROR11 :: GLenum+glu_NURBS_ERROR11 = 100261++glu_NURBS_ERROR12 :: GLenum+glu_NURBS_ERROR12 = 100262++glu_NURBS_ERROR13 :: GLenum+glu_NURBS_ERROR13 = 100263++glu_NURBS_ERROR14 :: GLenum+glu_NURBS_ERROR14 = 100264++glu_NURBS_ERROR15 :: GLenum+glu_NURBS_ERROR15 = 100265++glu_NURBS_ERROR16 :: GLenum+glu_NURBS_ERROR16 = 100266++glu_NURBS_ERROR17 :: GLenum+glu_NURBS_ERROR17 = 100267++glu_NURBS_ERROR18 :: GLenum+glu_NURBS_ERROR18 = 100268++glu_NURBS_ERROR19 :: GLenum+glu_NURBS_ERROR19 = 100269++glu_NURBS_ERROR20 :: GLenum+glu_NURBS_ERROR20 = 100270++glu_NURBS_ERROR21 :: GLenum+glu_NURBS_ERROR21 = 100271++glu_NURBS_ERROR22 :: GLenum+glu_NURBS_ERROR22 = 100272++glu_NURBS_ERROR23 :: GLenum+glu_NURBS_ERROR23 = 100273++glu_NURBS_ERROR24 :: GLenum+glu_NURBS_ERROR24 = 100274++glu_NURBS_ERROR25 :: GLenum+glu_NURBS_ERROR25 = 100275++glu_NURBS_ERROR26 :: GLenum+glu_NURBS_ERROR26 = 100276++glu_NURBS_ERROR27 :: GLenum+glu_NURBS_ERROR27 = 100277++glu_NURBS_ERROR28 :: GLenum+glu_NURBS_ERROR28 = 100278++glu_NURBS_ERROR29 :: GLenum+glu_NURBS_ERROR29 = 100279++glu_NURBS_ERROR30 :: GLenum+glu_NURBS_ERROR30 = 100280++glu_NURBS_ERROR31 :: GLenum+glu_NURBS_ERROR31 = 100281++glu_NURBS_ERROR32 :: GLenum+glu_NURBS_ERROR32 = 100282++glu_NURBS_ERROR33 :: GLenum+glu_NURBS_ERROR33 = 100283++glu_NURBS_ERROR34 :: GLenum+glu_NURBS_ERROR34 = 100284++glu_NURBS_ERROR35 :: GLenum+glu_NURBS_ERROR35 = 100285++glu_NURBS_ERROR36 :: GLenum+glu_NURBS_ERROR36 = 100286++glu_NURBS_ERROR37 :: GLenum+glu_NURBS_ERROR37 = 100287++-- NurbsProperty+glu_AUTO_LOAD_MATRIX :: GLenum+glu_AUTO_LOAD_MATRIX = 100200++glu_CULLING :: GLenum+glu_CULLING = 100201++glu_SAMPLING_TOLERANCE :: GLenum+glu_SAMPLING_TOLERANCE = 100203++glu_DISPLAY_MODE :: GLenum+glu_DISPLAY_MODE = 100204++glu_PARAMETRIC_TOLERANCE :: GLenum+glu_PARAMETRIC_TOLERANCE = 100202++glu_SAMPLING_METHOD :: GLenum+glu_SAMPLING_METHOD = 100205++glu_U_STEP :: GLenum+glu_U_STEP = 100206++glu_V_STEP :: GLenum+glu_V_STEP = 100207++glu_NURBS_MODE :: GLenum+glu_NURBS_MODE = 100160++glu_NURBS_MODE_EXT :: GLenum+glu_NURBS_MODE_EXT = 100160++glu_NURBS_TESSELLATOR :: GLenum+glu_NURBS_TESSELLATOR = 100161++glu_NURBS_TESSELLATOR_EXT :: GLenum+glu_NURBS_TESSELLATOR_EXT = 100161++glu_NURBS_RENDERER :: GLenum+glu_NURBS_RENDERER = 100162++glu_NURBS_RENDERER_EXT :: GLenum+glu_NURBS_RENDERER_EXT = 100162++-- NurbsSampling+glu_OBJECT_PARAMETRIC_ERROR :: GLenum+glu_OBJECT_PARAMETRIC_ERROR = 100208++glu_OBJECT_PARAMETRIC_ERROR_EXT :: GLenum+glu_OBJECT_PARAMETRIC_ERROR_EXT = 100208++glu_OBJECT_PATH_LENGTH :: GLenum+glu_OBJECT_PATH_LENGTH = 100209++glu_OBJECT_PATH_LENGTH_EXT :: GLenum+glu_OBJECT_PATH_LENGTH_EXT = 100209++glu_PATH_LENGTH :: GLenum+glu_PATH_LENGTH = 100215++glu_PARAMETRIC_ERROR :: GLenum+glu_PARAMETRIC_ERROR = 100216++glu_DOMAIN_DISTANCE :: GLenum+glu_DOMAIN_DISTANCE = 100217++-- NurbsTrim+glu_MAP1_TRIM_2 :: GLenum+glu_MAP1_TRIM_2 = 100210++glu_MAP1_TRIM_3 :: GLenum+glu_MAP1_TRIM_3 = 100211++-- QuadricDrawStyle+glu_POINT :: GLenum+glu_POINT = 100010++glu_LINE :: GLenum+glu_LINE = 100011++glu_FILL :: GLenum+glu_FILL = 100012++glu_SILHOUETTE :: GLenum+glu_SILHOUETTE = 100013++-- QuadricCallback+-- GLU_ERROR++-- QuadricNormal+glu_SMOOTH :: GLenum+glu_SMOOTH = 100000++glu_FLAT :: GLenum+glu_FLAT = 100001++glu_NONE :: GLenum+glu_NONE = 100002++-- QuadricOrientation+glu_OUTSIDE :: GLenum+glu_OUTSIDE = 100020++glu_INSIDE :: GLenum+glu_INSIDE = 100021++-- TessCallback+glu_TESS_BEGIN :: GLenum+glu_TESS_BEGIN = 100100++glu_BEGIN :: GLenum+glu_BEGIN = 100100++glu_TESS_VERTEX :: GLenum+glu_TESS_VERTEX = 100101++glu_VERTEX :: GLenum+glu_VERTEX = 100101++glu_TESS_END :: GLenum+glu_TESS_END = 100102++glu_END :: GLenum+glu_END = 100102++glu_TESS_ERROR :: GLenum+glu_TESS_ERROR = 100103++glu_TESS_EDGE_FLAG :: GLenum+glu_TESS_EDGE_FLAG = 100104++glu_EDGE_FLAG :: GLenum+glu_EDGE_FLAG = 100104++glu_TESS_COMBINE :: GLenum+glu_TESS_COMBINE = 100105++glu_TESS_BEGIN_DATA :: GLenum+glu_TESS_BEGIN_DATA = 100106++glu_TESS_VERTEX_DATA :: GLenum+glu_TESS_VERTEX_DATA = 100107++glu_TESS_END_DATA :: GLenum+glu_TESS_END_DATA = 100108++glu_TESS_ERROR_DATA :: GLenum+glu_TESS_ERROR_DATA = 100109++glu_TESS_EDGE_FLAG_DATA :: GLenum+glu_TESS_EDGE_FLAG_DATA = 100110++glu_TESS_COMBINE_DATA :: GLenum+glu_TESS_COMBINE_DATA = 100111++-- TessContour+glu_CW :: GLenum+glu_CW = 100120++glu_CCW :: GLenum+glu_CCW = 100121++glu_INTERIOR :: GLenum+glu_INTERIOR = 100122++glu_EXTERIOR :: GLenum+glu_EXTERIOR = 100123++glu_UNKNOWN :: GLenum+glu_UNKNOWN = 100124++-- TessProperty+glu_TESS_WINDING_RULE :: GLenum+glu_TESS_WINDING_RULE = 100140++glu_TESS_BOUNDARY_ONLY :: GLenum+glu_TESS_BOUNDARY_ONLY = 100141++glu_TESS_TOLERANCE :: GLenum+glu_TESS_TOLERANCE = 100142++-- TessError+glu_TESS_ERROR1 :: GLenum+glu_TESS_ERROR1 = 100151++glu_TESS_ERROR2 :: GLenum+glu_TESS_ERROR2 = 100152++glu_TESS_ERROR3 :: GLenum+glu_TESS_ERROR3 = 100153++glu_TESS_ERROR4 :: GLenum+glu_TESS_ERROR4 = 100154++glu_TESS_ERROR5 :: GLenum+glu_TESS_ERROR5 = 100155++glu_TESS_ERROR6 :: GLenum+glu_TESS_ERROR6 = 100156++glu_TESS_ERROR7 :: GLenum+glu_TESS_ERROR7 = 100157++glu_TESS_ERROR8 :: GLenum+glu_TESS_ERROR8 = 100158++glu_TESS_MISSING_BEGIN_POLYGON :: GLenum+glu_TESS_MISSING_BEGIN_POLYGON = 100151++glu_TESS_MISSING_BEGIN_CONTOUR :: GLenum+glu_TESS_MISSING_BEGIN_CONTOUR = 100152++glu_TESS_MISSING_END_POLYGON :: GLenum+glu_TESS_MISSING_END_POLYGON = 100153++glu_TESS_MISSING_END_CONTOUR :: GLenum+glu_TESS_MISSING_END_CONTOUR = 100154++glu_TESS_COORD_TOO_LARGE :: GLenum+glu_TESS_COORD_TOO_LARGE = 100155++glu_TESS_NEED_COMBINE_CALLBACK :: GLenum+glu_TESS_NEED_COMBINE_CALLBACK = 100156++-- TessWinding+glu_TESS_WINDING_ODD :: GLenum+glu_TESS_WINDING_ODD = 100130++glu_TESS_WINDING_NONZERO :: GLenum+glu_TESS_WINDING_NONZERO = 100131++glu_TESS_WINDING_POSITIVE :: GLenum+glu_TESS_WINDING_POSITIVE = 100132++glu_TESS_WINDING_NEGATIVE :: GLenum+glu_TESS_WINDING_NEGATIVE = 100133++glu_TESS_WINDING_ABS_GEQ_TWO :: GLenum+glu_TESS_WINDING_ABS_GEQ_TWO = 100134
src/Graphics/Rendering/GLU/Raw/Types.hs view
@@ -1,21 +1,21 @@--------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw.Types --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- All (abstract) types from GLU 1.3, see <http://www.opengl.org/>. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw.Types ( - GLUnurbs, - GLUquadric, - GLUtesselator -) where - -import Graphics.Rendering.GLU.Raw.TypesInternal +--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw.Types+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- All (abstract) types from GLU 1.3, see <http://www.opengl.org/>.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw.Types (+ GLUnurbs,+ GLUquadric,+ GLUtesselator+) where++import Graphics.Rendering.GLU.Raw.TypesInternal
src/Graphics/Rendering/GLU/Raw/TypesInternal.hs view
@@ -1,22 +1,22 @@-{-# OPTIONS_HADDOCK hide #-} --------------------------------------------------------------------------------- --- | --- Module : Graphics.Rendering.GLU.Raw.TypesInternal --- Copyright : (c) Sven Panne 2013 --- License : BSD3 --- --- Maintainer : Sven Panne <svenpanne@gmail.com> --- Stability : stable --- Portability : portable --- --- All types from GLU 1.3, see <http://www.opengl.org/>. --- --------------------------------------------------------------------------------- - -module Graphics.Rendering.GLU.Raw.TypesInternal where - -data GLUnurbs = GLUnurbs - -data GLUquadric = GLUquadric - -data GLUtesselator = GLUtesselator +{-# OPTIONS_HADDOCK hide #-}+--------------------------------------------------------------------------------+-- |+-- Module : Graphics.Rendering.GLU.Raw.TypesInternal+-- Copyright : (c) Sven Panne 2013+-- License : BSD3+--+-- Maintainer : Sven Panne <svenpanne@gmail.com>+-- Stability : stable+-- Portability : portable+--+-- All types from GLU 1.3, see <http://www.opengl.org/>.+--+--------------------------------------------------------------------------------++module Graphics.Rendering.GLU.Raw.TypesInternal where++data GLUnurbs = GLUnurbs++data GLUquadric = GLUquadric++data GLUtesselator = GLUtesselator