| Portability | portable | 
|---|---|
| Stability | stable | 
| Maintainer | Sven Panne <svenpanne@gmail.com> | 
| Safe Haskell | None | 
Graphics.Rendering.OpenGL.GL.QueryObjects
Description
This module corresponds to section 4.2 (Query Objects and Asynchronous Queries) of the OpenGL 4.4 specs.
- data QueryObject
 - type QueryIndex = GLuint
 - maxVertexStreams :: GettableStateVar QueryIndex
 - data QueryTarget
 - beginQuery :: QueryTarget -> QueryObject -> IO ()
 - endQuery :: QueryTarget -> IO ()
 - withQuery :: QueryTarget -> QueryObject -> IO a -> IO a
 - currentQuery :: QueryTarget -> GettableStateVar (Maybe QueryObject)
 - queryCounterBits :: QueryTarget -> GettableStateVar GLsizei
 - queryResultAvailable :: QueryObject -> GettableStateVar Bool
 - class Storable a => QueryResult a
 - queryResult :: QueryResult a => QueryObject -> GettableStateVar a
 - timestampQuery :: QueryObject -> IO ()
 - timestamp :: GettableStateVar GLuint64
 
Creating and Delimiting Queries
data QueryObject Source
type QueryIndex = GLuintSource
data QueryTarget Source
Constructors
| SamplesPassed | |
| AnySamplesPassed | |
| AnySamplesPassedConservative | |
| TimeElapsed | |
| PrimitivesGenerated QueryIndex | |
| TransformFeedbackPrimitivesWritten QueryIndex | 
Instances
beginQuery :: QueryTarget -> QueryObject -> IO ()Source
endQuery :: QueryTarget -> IO ()Source
withQuery :: QueryTarget -> QueryObject -> IO a -> IO aSource
Convenience function for an exception-safe combination of beginQuery and
 endQuery.
Query Target Queries
Query Object Queries
class Storable a => QueryResult a Source
queryResult :: QueryResult a => QueryObject -> GettableStateVar aSource
Time Queries
timestampQuery :: QueryObject -> IO ()Source
Record the time after all previous commands on the GL client and server state and the framebuffer have been fully realized
timestamp :: GettableStateVar GLuint64Source
Contains the GL time after all previous commands have reached the GL server but have not yet necessarily executed.