| Copyright | (c) Sven Panne, Lars Corbijn 2004-2013 | 
|---|---|
| License | BSD3 | 
| Maintainer | Sven Panne <svenpanne@gmail.com> | 
| Stability | stable | 
| Portability | portable | 
| Safe Haskell | None | 
| Language | Haskell2010 | 
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 = GLuint Source
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 a Source
Convenience function for an exception-safe combination of beginQuery and
 endQuery.
Query Target Queries
Query Object Queries
class Storable a => QueryResult a Source
Minimal complete definition
getQueryObjectv
queryResult :: QueryResult a => QueryObject -> GettableStateVar a Source
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 GLuint64 Source
Contains the GL time after all previous commands have reached the GL server but have not yet necessarily executed.