Abstract GPU synchronization object implementing a memory fence operation. More...
#include <mitsuba/hw/gpusync.h>
Public Member Functions | |
GPUSync () | |
Allocate memory for a new synchronization object. More... | |
virtual void | init ()=0 |
Create the synchronization object on the GPU. More... | |
virtual void | wait ()=0 |
Wait on the fence (blocking) More... | |
virtual void | enqueueWait ()=0 |
Enqueue a wait command, but do not block. More... | |
virtual void | cleanup ()=0 |
Remove the synchronization object. More... | |
std::string | toString () const |
Return a string representation of this class. More... | |
virtual const Class * | getClass () const |
Retrieve this object's class. More... | |
Public Member Functions inherited from Object | |
Object () | |
Construct a new object. More... | |
int | getRefCount () const |
Return the current reference count. More... | |
void | incRef () const |
Increase the reference count of the object by one. More... | |
void | decRef (bool autoDeallocate=true) const |
Decrease the reference count of the object and possibly deallocate it. More... | |
Static Public Attributes | |
static Class * | m_theClass |
Static Public Attributes inherited from Object | |
static Class * | m_theClass |
Pointer to the object's class descriptor. More... | |
Protected Member Functions | |
virtual | ~GPUSync () |
Virtual destructor. More... | |
Protected Member Functions inherited from Object | |
virtual | ~Object () |
Virtual private deconstructor. (Will only be called by ref) More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Object | |
static void | staticInitialization () |
Initializes the built-in reference count debugger (if enabled) More... | |
static void | staticShutdown () |
Free the memory taken by staticInitialization() More... | |
Abstract GPU synchronization object implementing a memory fence operation.
mitsuba::GPUSync::GPUSync | ( | ) |
Allocate memory for a new synchronization object.
|
protectedvirtual |
Virtual destructor.
|
pure virtual |
Remove the synchronization object.
Implemented in mitsuba::GLSync.
|
pure virtual |
Enqueue a wait command, but do not block.
Implemented in mitsuba::GLSync.
|
virtual |
|
pure virtual |
Create the synchronization object on the GPU.
Implemented in mitsuba::GLSync.
|
virtual |
Return a string representation of this class.
Reimplemented from Object.
|
pure virtual |
Wait on the fence (blocking)
Implemented in mitsuba::GLSync.
|
static |