Class EXTX11SyncObject
Synchronization objects added the ability to better coordinate operations between multiple GL command streams. However, it is desirable to have the
same level of coordination between GL command streams and external rendering APIs. This extension introduces two new concepts to build upon the
synchronization infrastructure provided by ARB_sync
:
- A means to import an X Synchronization Fence object into the GL and use it as a sync object.
- The concept of a reusable sync object.
The latter is necessary because the import operation is expensive and performing it every time a synchronization point was reached would make the synchronization prohibitively slow.
This extension stops short of allowing the GL to change the state of imported/reusable sync objects, but does not add any language that would prohibit such functionality from being added in a subsequent extension.
Requires OpenGL 3.2
or ARB_sync
.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Accepted by theexternal_sync_type
parameter of ImportSyncEXT. -
Method Summary
Modifier and TypeMethodDescriptionstatic long
glImportSyncEXT
(int external_sync_type, long external_sync, int flags) Creates a GL sync object of the typeexternal_sync_type
based on the object referred to byexternal_sync
.
-
Field Details
-
GL_SYNC_X11_FENCE_EXT
public static final int GL_SYNC_X11_FENCE_EXTAccepted by theexternal_sync_type
parameter of ImportSyncEXT.- See Also:
-
-
Method Details
-
glImportSyncEXT
public static long glImportSyncEXT(int external_sync_type, long external_sync, int flags) Creates a GL sync object of the typeexternal_sync_type
based on the object referred to byexternal_sync
.- Parameters:
external_sync_type
- the external sync object type. Must be:SYNC_X11_FENCE_EXT
external_sync
- the external sync object. Must be the XID of a valid X11 Synchronization Fence objectflags
- Must be 0.
-