CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::TDeviceObject< TDescriptor, TParent > Class Template Reference

#include <CeresEngine/RenderAPI/Common.hpp>

Inheritance diagram for CeresEngine::TDeviceObject< TDescriptor, TParent >:
CeresEngine::GPUDeviceObject CeresEngine::GPUObject

Public Types

using Descriptor = TDescriptor
 An type-alias to the descriptor struct type.
 

Public Member Functions

 TDeviceObject (GPUDevice &device, const Descriptor &descriptor)
 Initializes a new RenderAPI device object instance.
 
 ~TDeviceObject () override=default
 
 TDeviceObject (const TDeviceObject &)=delete
 
TDeviceObjectoperator= (const TDeviceObject &)=delete
 
 TDeviceObject (TDeviceObject &&)=delete
 
TDeviceObjectoperator= (TDeviceObject &&)=delete
 
- Public Member Functions inherited from CeresEngine::GPUDeviceObject
 GPUDeviceObject (GPUDevice &device)
 
 ~GPUDeviceObject () override
 
- Public Member Functions inherited from CeresEngine::GPUObject
 GPUObject ()=default
 
virtual ~GPUObject ()=default
 
 GPUObject (const GPUObject &)=delete
 
GPUObjectoperator= (const GPUObject &)=delete
 
 GPUObject (GPUObject &&)=delete
 
GPUObjectoperator= (GPUObject &&)=delete
 
void retain () noexcept
 Retains the object by increment it's reference count by one.
 
bool release () noexcept
 Releases the object by decrementing it's reference count by one.
 

Public Attributes

const Descriptordescriptor
 A structure that describes the object and it's properties.
 
- Public Attributes inherited from CeresEngine::GPUDeviceObject
GPUDevicedevice
 The owning device this object was created from.
 

Additional Inherited Members

- Protected Member Functions inherited from CeresEngine::GPUObject
virtual void destroy () noexcept
 A internal method called by the system when the object reference count reaches zero.
 

Member Typedef Documentation

◆ Descriptor

An type-alias to the descriptor struct type.

Constructor & Destructor Documentation

◆ TDeviceObject() [1/3]

template<typename TDescriptor , typename TParent = GPUDeviceObject>
CeresEngine::TDeviceObject< TDescriptor, TParent >::TDeviceObject ( GPUDevice device,
const Descriptor descriptor 
)
inlineexplicit

Initializes a new RenderAPI device object instance.

◆ ~TDeviceObject()

template<typename TDescriptor , typename TParent = GPUDeviceObject>
CeresEngine::TDeviceObject< TDescriptor, TParent >::~TDeviceObject ( )
overridedefault

◆ TDeviceObject() [2/3]

template<typename TDescriptor , typename TParent = GPUDeviceObject>
CeresEngine::TDeviceObject< TDescriptor, TParent >::TDeviceObject ( const TDeviceObject< TDescriptor, TParent > &  )
delete

◆ TDeviceObject() [3/3]

template<typename TDescriptor , typename TParent = GPUDeviceObject>
CeresEngine::TDeviceObject< TDescriptor, TParent >::TDeviceObject ( TDeviceObject< TDescriptor, TParent > &&  )
delete

Member Function Documentation

◆ operator=() [1/2]

◆ operator=() [2/2]

Member Data Documentation

◆ descriptor

A structure that describes the object and it's properties.


The documentation for this class was generated from the following file: