| Copyright | (c) Sven Panne 2004-2019 Lars Corbijn 2004-2016 |
|---|---|
| License | BSD3 |
| Maintainer | Sven Panne <svenpanne@gmail.com> |
| Stability | stable |
| Portability | portable |
| Safe Haskell | Safe-Inferred |
| 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
| Show QueryTarget Source # | |
Defined in Graphics.Rendering.OpenGL.GL.QueryObjects Methods showsPrec :: Int -> QueryTarget -> ShowS show :: QueryTarget -> String showList :: [QueryTarget] -> ShowS | |
| 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 | |
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