module Graphics.GL.Raw.Extension.ARB.DebugOutput (
gl_ARB_debug_output
, glDebugMessageCallbackARB
, glDebugMessageControlARB
, glDebugMessageInsertARB
, glGetDebugMessageLogARB
, pattern GL_DEBUG_CALLBACK_FUNCTION_ARB
, pattern GL_DEBUG_CALLBACK_USER_PARAM_ARB
, pattern GL_DEBUG_LOGGED_MESSAGES_ARB
, pattern GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB
, pattern GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB
, pattern GL_DEBUG_SEVERITY_HIGH_ARB
, pattern GL_DEBUG_SEVERITY_LOW_ARB
, pattern GL_DEBUG_SEVERITY_MEDIUM_ARB
, pattern GL_DEBUG_SOURCE_API_ARB
, pattern GL_DEBUG_SOURCE_APPLICATION_ARB
, pattern GL_DEBUG_SOURCE_OTHER_ARB
, pattern GL_DEBUG_SOURCE_SHADER_COMPILER_ARB
, pattern GL_DEBUG_SOURCE_THIRD_PARTY_ARB
, pattern GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB
, pattern GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB
, pattern GL_DEBUG_TYPE_ERROR_ARB
, pattern GL_DEBUG_TYPE_OTHER_ARB
, pattern GL_DEBUG_TYPE_PERFORMANCE_ARB
, pattern GL_DEBUG_TYPE_PORTABILITY_ARB
, pattern GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB
, pattern GL_MAX_DEBUG_LOGGED_MESSAGES_ARB
, pattern GL_MAX_DEBUG_MESSAGE_LENGTH_ARB
) where
import Control.Monad.IO.Class
import Data.Set
import Foreign.Ptr
import Graphics.GL.Raw.Internal.FFI
import Graphics.GL.Raw.Internal.Proc
import Graphics.GL.Raw.Types
import System.IO.Unsafe
gl_ARB_debug_output :: Bool
gl_ARB_debug_output = member "GL_ARB_debug_output" extensions
glDebugMessageCallbackARB :: MonadIO m => GLDEBUGPROCARB -> Ptr () -> m ()
glDebugMessageCallbackARB = ffiDEBUGPROCARBPtrVIOV glDebugMessageCallbackARBFunPtr
glDebugMessageCallbackARBFunPtr :: FunPtr (GLDEBUGPROCARB -> Ptr () -> IO ())
glDebugMessageCallbackARBFunPtr = unsafePerformIO (getProcAddress "glDebugMessageCallbackARB")
glDebugMessageControlARB :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> m ()
glDebugMessageControlARB = ffienumenumenumsizeiPtruintbooleanIOV glDebugMessageControlARBFunPtr
glDebugMessageControlARBFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
glDebugMessageControlARBFunPtr = unsafePerformIO (getProcAddress "glDebugMessageControlARB")
glDebugMessageInsertARB :: MonadIO m => GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> m ()
glDebugMessageInsertARB = ffienumenumuintenumsizeiPtrcharIOV glDebugMessageInsertARBFunPtr
glDebugMessageInsertARBFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
glDebugMessageInsertARBFunPtr = unsafePerformIO (getProcAddress "glDebugMessageInsertARB")
glGetDebugMessageLogARB :: MonadIO m => GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> m GLuint
glGetDebugMessageLogARB = ffiuintsizeiPtrenumPtrenumPtruintPtrenumPtrsizeiPtrcharIOuint glGetDebugMessageLogARBFunPtr
glGetDebugMessageLogARBFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
glGetDebugMessageLogARBFunPtr = unsafePerformIO (getProcAddress "glGetDebugMessageLogARB")
pattern GL_DEBUG_CALLBACK_FUNCTION_ARB = 0x8244 :: GLenum
pattern GL_DEBUG_CALLBACK_USER_PARAM_ARB = 0x8245 :: GLenum
pattern GL_DEBUG_LOGGED_MESSAGES_ARB = 0x9145 :: GLenum
pattern GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB = 0x8243 :: GLenum
pattern GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = 0x8242 :: GLenum
pattern GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146 :: GLenum
pattern GL_DEBUG_SEVERITY_LOW_ARB = 0x9148 :: GLenum
pattern GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147 :: GLenum
pattern GL_DEBUG_SOURCE_API_ARB = 0x8246 :: GLenum
pattern GL_DEBUG_SOURCE_APPLICATION_ARB = 0x824A :: GLenum
pattern GL_DEBUG_SOURCE_OTHER_ARB = 0x824B :: GLenum
pattern GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = 0x8248 :: GLenum
pattern GL_DEBUG_SOURCE_THIRD_PARTY_ARB = 0x8249 :: GLenum
pattern GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = 0x8247 :: GLenum
pattern GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = 0x824D :: GLenum
pattern GL_DEBUG_TYPE_ERROR_ARB = 0x824C :: GLenum
pattern GL_DEBUG_TYPE_OTHER_ARB = 0x8251 :: GLenum
pattern GL_DEBUG_TYPE_PERFORMANCE_ARB = 0x8250 :: GLenum
pattern GL_DEBUG_TYPE_PORTABILITY_ARB = 0x824F :: GLenum
pattern GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = 0x824E :: GLenum
pattern GL_MAX_DEBUG_LOGGED_MESSAGES_ARB = 0x9144 :: GLenum
pattern GL_MAX_DEBUG_MESSAGE_LENGTH_ARB = 0x9143 :: GLenum