Diligent::IDeviceObject struct

Base interface for all objects created by the render device Diligent::IRenderDevice.

Base classes

struct IObject
Base interface for all dynamic objects in the engine.

Derived classes

struct IBottomLevelAS
Bottom-level AS interface.
struct IBuffer
Buffer interface.
struct IBufferView
Buffer view interface.
class ICommandList
Command list interface.
struct IFence
Fence interface.
class IFramebuffer
Framebuffer interface.
struct IPipelineResourceSignature
Pipeline resource signature interface.
struct IPipelineState
Pipeline state interface.
struct IQuery
Query interface.
class IRenderPass
Render pass interface.
struct ISampler
Texture sampler interface.
struct IShader
Shader interface.
struct IShaderBindingTable
Shader binding table interface.
struct ITexture
Texture inteface.
struct ITextureView
Texture view interface.
struct ITopLevelAS
Top-level AS interface.
template<typename Base>
class RefCountedObject
Base class for all reference counting objects.

Public functions

auto GetDesc() const -> const DeviceObjectAttribs&METHOD() virtual
Returns the object description.
auto GetUniqueID() const -> Int32 METHOD() virtual
Returns unique identifier assigned to an object.
auto SetUserData(IObject* pUserData) -> void METHOD() virtual
Stores a pointer to the user-provided data object, which may later be retreived through GetUserData().
auto GetUserData() const -> IObject*METHOD() virtual
Returns a pointer to the user data object previously set with SetUserData() method.

Function documentation

Int32 METHOD() Diligent::IDeviceObject::GetUniqueID() const virtual

Returns unique identifier assigned to an object.

Unique identifiers are object-specifics, so, for instance, buffer identifiers are not comparable to texture identifiers.

Unique identifiers are only meaningful within one session. After an application restarts, all identifiers become invalid.

Valid identifiers are always positive values. Zero and negative values can never be assigned to an object and are always guaranteed to be invalid.

void METHOD() Diligent::IDeviceObject::SetUserData(IObject* pUserData) virtual

Stores a pointer to the user-provided data object, which may later be retreived through GetUserData().

Parameters
pUserData in - Pointer to the user data object to store.

IObject*METHOD() Diligent::IDeviceObject::GetUserData() const virtual

Returns a pointer to the user data object previously set with SetUserData() method.

Returns The pointer to the user data object.