IObject struct
#include <Primitives/interface/Object.h>
Base interface for all dynamic objects in the engine.
Contents
- Reference
Derived classes
- struct IBufferSuballocation
- Buffer suballocation.
- struct IBufferSuballocator
- Buffer suballocator.
- struct ICommandQueueD3D12
- Command queue interface.
- struct ICommandQueueVk
- Command queue interface.
- struct IDataBlob
- Base interface for a file stream.
- struct IDeviceContext
- Device context interface.
- struct IDeviceObject
- Base interface for all objects created by the render device Diligent::
IRenderDevice. - struct IDynamicTextureAtlas
- Dynamic texture atlas.
- struct IEngineFactory
- Engine factory base interface.
- struct IFileStream
- Base interface for a file stream.
- struct IHLSL2GLSLConverter
- Interface to the buffer object implemented in OpenGL.
- struct IRenderDevice
- Render device interface.
- struct IResourceMapping
- Resouce mapping.
- struct IShaderResourceBinding
- Shader resource binding interface.
- struct IShaderResourceVariable
- Shader resource variable.
- struct IShaderSourceInputStreamFactory
- Shader source stream factory interface.
- struct ISwapChain
- Swap chain interface.
- struct ITextureAtlasSuballocation
- Dynamic texture atlas suballocation.
- class ITextureUploader
- Asynchronous texture uplader.
-
template<typename Base>class RefCountedObject
- Base class for all reference counting objects.
Public functions
-
void QueryInterface(const INTERFACE_
ID& IID, IObject** ppInterface) pure virtual - Queries the specific interface.
- auto AddRef() -> ReferenceCounterValueType pure virtual
- Increments the number of strong references by 1.
- auto Release() -> ReferenceCounterValueType pure virtual
- Decrements the number of strong references by 1 and destroys the object when the counter reaches zero.
- auto GetReferenceCounters() const -> IReferenceCounters* pure virtual
- Returns the pointer to IReferenceCounters interface of the associated reference counters object. The method does NOT increment the number of strong references to the returned object.
Function documentation
void Diligent:: IObject:: QueryInterface(const INTERFACE_ ID& IID,
IObject** ppInterface) pure virtual
Queries the specific interface.
| Parameters | |
|---|---|
| IID in | - Unique identifier of the requested interface. |
| ppInterface out | - Memory address where the pointer to the requested interface will be written. If the interface is not supported, null pointer will be returned. |
ReferenceCounterValueType Diligent:: IObject:: AddRef() pure virtual
Increments the number of strong references by 1.
| Returns | The number of strong references after incrementing the counter. |
|---|
ReferenceCounterValueType Diligent:: IObject:: Release() pure virtual
Decrements the number of strong references by 1 and destroys the object when the counter reaches zero.
| Returns | The number of strong references after decrementing the counter. |
|---|