OpenGL-2.8.0.0: A binding for the OpenGL graphics system

Portability | portable
Stability | stable
Maintainer | sven.panne@aedion.de
Safe Haskell | Safe-Inferred

Graphics.Rendering.OpenGL.GL.ObjectName

Description

Object names are explicitly handled identifiers for API objects, e.g. a texture object name in OpenGL or a buffer object name in OpenAL.

Synopsis

- class ObjectName a where
  - genObjectNames :: Int -> IO [a]
  - deleteObjectNames :: [a] -> IO ()
  - isObjectName :: a -> IO Bool

# Documentation

class ObjectName a where

An `ObjectName` is an explicitly handled identifier for API objects, e.g. a texture object name in OpenGL or a buffer object name in OpenAL.

Methods

genObjectNames :: Int -> IO [a]

Generate a given number of object names, which are guaranteed to be unused. By generating the names, they become used.

deleteObjectNames :: [a] -> IO ()

Make the given object names available again, declaring them as unused.

isObjectName :: a -> IO Bool

Test if the given object name is currently in use, i.e. test if it has been generated, but not been deleted so far.

Instances

ObjectName BufferObject |
ObjectName DisplayList |
ObjectName FramebufferObject |
ObjectName RenderbufferObject |
ObjectName VertexArrayObject |
ObjectName QueryObject |
ObjectName TextureObject |
ObjectName FragmentShader |
ObjectName VertexShader |
ObjectName Program |