Copyright | (c) Sven Panne 2004-2019 Lars Corbijn 2004-2016 |
---|---|
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.
Synopsis
- 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 #
Instances
type QueryIndex = GLuint Source #
maxVertexStreams :: GettableStateVar QueryIndex Source #
data QueryTarget Source #
Constructors
SamplesPassed | |
AnySamplesPassed | |
AnySamplesPassedConservative | |
TimeElapsed | |
PrimitivesGenerated QueryIndex | |
TransformFeedbackPrimitivesWritten QueryIndex |
Instances
Eq QueryTarget Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects | |
Ord QueryTarget Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods compare :: QueryTarget -> QueryTarget -> Ordering (<) :: QueryTarget -> QueryTarget -> Bool (<=) :: QueryTarget -> QueryTarget -> Bool (>) :: QueryTarget -> QueryTarget -> Bool (>=) :: QueryTarget -> QueryTarget -> Bool max :: QueryTarget -> QueryTarget -> QueryTarget min :: QueryTarget -> QueryTarget -> QueryTarget | |
Show QueryTarget Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods showsPrec :: Int -> QueryTarget -> ShowS show :: QueryTarget -> String showList :: [QueryTarget] -> ShowS |
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
currentQuery :: QueryTarget -> GettableStateVar (Maybe QueryObject) Source #
queryCounterBits :: QueryTarget -> GettableStateVar GLsizei Source #
Query Object Queries
queryResultAvailable :: QueryObject -> GettableStateVar Bool Source #
class Storable a => QueryResult a Source #
Minimal complete definition
getQueryObjectv
Instances
QueryResult GLint Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods getQueryObjectv :: GLuint -> GLenum -> Ptr GLint -> IO () | |
QueryResult GLint64 Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods getQueryObjectv :: GLuint -> GLenum -> Ptr GLint64 -> IO () | |
QueryResult GLuint Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods getQueryObjectv :: GLuint -> GLenum -> Ptr GLuint -> IO () | |
QueryResult GLuint64 Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods getQueryObjectv :: GLuint -> GLenum -> Ptr GLuint64 -> IO () |
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