Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::ShaderBase< EngineImplTraits > Class Template Reference

Template class implementing base functionality of the shader object. More...

#include <ShaderBase.hpp>

Inheritance diagram for Diligent::ShaderBase< EngineImplTraits >:
Diligent::DeviceObjectBase< EngineImplTraits::ShaderInterface, EngineImplTraits::RenderDeviceImplType, ShaderDesc > Diligent::ObjectBase< EngineImplTraits::ShaderInterface > Diligent::RefCountedObject< EngineImplTraits::ShaderInterface > Diligent::ShaderD3DBase< EngineD3D11ImplTraits, ShaderResourcesD3D11 > Diligent::ShaderD3DBase< EngineD3D12ImplTraits, ShaderResourcesD3D12 > Diligent::ShaderD3DBase< EngineImplTraits, ShaderResourcesType > Diligent::ShaderD3D11Impl Diligent::ShaderD3D12Impl

Public Member Functions

 ShaderBase (IReferenceCounters *pRefCounters, RenderDeviceImplType *pDevice, const ShaderDesc &Desc, const RenderDeviceInfo &DeviceInfo, const GraphicsAdapterInfo &AdapterInfo, bool bIsDeviceInternal=false)
 
- Public Member Functions inherited from Diligent::DeviceObjectBase< EngineImplTraits::ShaderInterface, EngineImplTraits::RenderDeviceImplType, ShaderDesc >
 DeviceObjectBase (IReferenceCounters *pRefCounters, RenderDeviceImplType *pDevice, const ShaderDesc &ObjDesc, bool bIsDeviceInternal=false)
 
virtual Int32 DILIGENT_CALL_TYPE GetUniqueID () const override final
 Returns unique identifier.
 
virtual void DILIGENT_CALL_TYPE SetUserData (IObject *pUserData) override final
 Implementation of IDeviceObject::SetUserData.
 
virtual IObject *DILIGENT_CALL_TYPE GetUserData () const override final
 Implementation of IDeviceObject::GetUserData.
 

Additional Inherited Members

- Protected Attributes inherited from Diligent::DeviceObjectBase< EngineImplTraits::ShaderInterface, EngineImplTraits::RenderDeviceImplType, ShaderDesc >
RenderDeviceImplType *const m_pDevice
 Pointer to the device.
 
ShaderDesc m_Desc
 Object description.
 

Detailed Description

template<typename EngineImplTraits>
class Diligent::ShaderBase< EngineImplTraits >

Template class implementing base functionality of the shader object.

Template Parameters
EngineImplTraits- Engine implementation type traits.

Constructor & Destructor Documentation

◆ ShaderBase()

template<typename EngineImplTraits>
Diligent::ShaderBase< EngineImplTraits >::ShaderBase ( IReferenceCounters * pRefCounters,
RenderDeviceImplType * pDevice,
const ShaderDesc & Desc,
const RenderDeviceInfo & DeviceInfo,
const GraphicsAdapterInfo & AdapterInfo,
bool bIsDeviceInternal = false )
inline
Parameters
pRefCounters- Reference counters object that controls the lifetime of this shader.
pDevice- Pointer to the device.
Desc- Shader description.
DeviceInfo- Render device info, see Diligent::RenderDeviceInfo.
AdapterInfo- Graphic adapter info, see Diligent::GraphicsAdapterInfo.
bIsDeviceInternal- Flag indicating if the shader is an internal device object and must not keep a strong reference to the device.