Class GlInstance

class GlInstance
  : Instance ;

Constructors

NameDescription
this (ctx)

Properties

NameTypeDescription
apiProps[get] ApiPropsProperties of the backend API
backend[get] BackendBackend identifier
ctx[get] GlContext
refCountShared[get] ulongAtomically loads the number of active references.
share[get] gfx.gl3.GlShare
refCount[get] ulongAtomically loads the number of active references.

Methods

NameDescription
devices () The devices that are installed on the system.
dispose () Dispose the underlying resource
rcLockShared () Returns whether the refCount >= 1. This increases the refCount by 1. rcLock should be used to keep weak reference and ensures that the resource is not disposed. The operation is atomic.
releaseShared (disposeOnZero) Atomically decrement the reference count. If refCount reaches zero, and disposeOnZero is set, the object is locked with its own mutex, and dispose is called. In most cases, the calling code should set disposeOnZero, unless it is intended to release the object to give it away. (such as at the end of a builder function)
retainShared () Atomically increment the reference count.
setDebugCallback (callback) Sets the debug callback for the instance and associated devices. Must be set before creating devices. Depending on backend, it might only be effective if the instance was created with the right extensions.
rcLock () Returns whether the refCount >= 1. This increases the refCount by 1. rcLock should be used to keep weak reference and ensures that the resource is not disposed. The operation is atomic.
release (disposeOnZero) Atomically decrement the reference count. If refCount reaches zero, and disposeOnZero is set, the object is locked with its own mutex, and dispose is called. In most cases, the calling code should set disposeOnZero, unless it is intended to release the object to give it away. (such as at the end of a builder function)
retain () Atomically increment the reference count.