OpenGL-2.9.2.0: A binding for the OpenGL graphics system

Copyright | (c) Sven Panne 2013
License | BSD3
Maintainer | Sven Panne <svenpanne@gmail.com>
Stability | stable
Portability | portable
Safe Haskell | None
Language | Haskell98

Graphics.Rendering.OpenGL.GL.SyncObjects

Contents

- Sync Objects and Fences
- Waiting for Sync Objects
- Sync Object Queries

Description

This module corresponds to section 4.1 (Sync Objects and Fences) of the OpenGL 4.4 specs.

Synopsis

- data SyncObject
- syncGpuCommandsComplete :: IO SyncObject
- type WaitTimeout = GLuint64
- data WaitFlag = SyncFlushCommands
- data WaitResult
  - = AlreadySignaled
  - | TimeoutExpired
  - | ConditionSatisfied
  - | WaitFailed
- clientWaitSync :: SyncObject -> [WaitFlag] -> WaitTimeout -> IO WaitResult
- waitSync :: SyncObject -> IO ()
- maxServerWaitTimeout :: GettableStateVar WaitTimeout
- data SyncStatus
  - = Unsignaled
  - | Signaled
- syncStatus :: SyncObject -> GettableStateVar SyncStatus

# Sync Objects and Fences

data SyncObject

Instances

Eq SyncObject |
Ord SyncObject |
Show SyncObject |
ObjectName SyncObject |

syncGpuCommandsComplete :: IO SyncObject

# Waiting for Sync Objects

type WaitTimeout = GLuint64

data WaitFlag

Constructors

SyncFlushCommands |

Instances

Eq WaitFlag |
Ord WaitFlag |
Show WaitFlag |

data WaitResult

Constructors

AlreadySignaled |
TimeoutExpired |
ConditionSatisfied |
WaitFailed |

Instances

Eq WaitResult |
Ord WaitResult |
Show WaitResult |

clientWaitSync :: SyncObject -> [WaitFlag] -> WaitTimeout -> IO WaitResult

waitSync :: SyncObject -> IO ()

maxServerWaitTimeout :: GettableStateVar WaitTimeout

# Sync Object Queries

data SyncStatus

Constructors

Unsignaled |
Signaled |

Instances

Eq SyncStatus |
Ord SyncStatus |
Show SyncStatus |

syncStatus :: SyncObject -> GettableStateVar SyncStatus