ezEngine Release 25.08
Loading...
Searching...
No Matches
ezGALSharedTextureDX11 Class Reference
Inheritance diagram for ezGALSharedTextureDX11:

Protected Member Functions

 ezGALSharedTextureDX11 (const ezGALTextureCreationDescription &Description, ezEnum< ezGALSharedTextureType > sharedType, ezGALPlatformSharedHandle hSharedHandle)
 
virtual ezResult InitPlatform (ezGALDevice *pDevice, ezArrayPtr< ezGALSystemMemoryDescription > pInitialData) override
 
virtual ezResult DeInitPlatform (ezGALDevice *pDevice) override
 
virtual ezGALPlatformSharedHandle GetSharedHandle () const override
 Returns the handle that can be used to open this texture on another device / process. Call ezGALDevice::OpenSharedTexture to do so.
 
virtual void WaitSemaphoreGPU (ezUInt64 uiValue) const override
 Before the current render pipeline is executed, the GPU will wait for the semaphore to have the given value.
 
virtual void SignalSemaphoreGPU (ezUInt64 uiValue) const override
 Once the current render pipeline is done on the GPU, the semaphore will be signaled with the given value.
 
- Protected Member Functions inherited from ezGALTextureDX11
 ezGALTextureDX11 (const ezGALTextureCreationDescription &Description)
 
virtual void SetDebugNamePlatform (const char *szName) const override
 
ezResult InitFromNativeObject (ezGALDeviceDX11 *pDXDevice)
 
- Protected Member Functions inherited from ezGALTexture
 ezGALTexture (const ezGALTextureCreationDescription &Description)
 

Protected Attributes

ezEnum< ezGALSharedTextureTypem_SharedType = ezGALSharedTextureType::None
 
ezGALPlatformSharedHandle m_hSharedHandle
 
IDXGIKeyedMutex * m_pKeyedMutex = nullptr
 
- Protected Attributes inherited from ezGALTextureDX11
ezGALDeviceDX11m_pDevice = nullptr
 
ID3D11Resource * m_pDXTexture = nullptr
 
ezHashTable< View, ID3D11ShaderResourceView *, Viewm_SRVs
 
ezHashTable< View, ID3D11UnorderedAccessView *, Viewm_UAVs
 
- Protected Attributes inherited from ezGALTexture
ezGALRenderTargetViewHandle m_hDefaultRenderTargetView
 
ezHashTable< ezUInt32, ezGALRenderTargetViewHandlem_RenderTargetViews
 
- Protected Attributes inherited from ezGALResource< ezGALTextureCreationDescription >
const ezGALTextureCreationDescription m_Description
 

Friends

class ezGALDeviceDX11
 
class ezMemoryUtils
 

Additional Inherited Members

- Public Member Functions inherited from ezGALTextureDX11
EZ_ALWAYS_INLINE ID3D11Resource * GetDXTexture () const
 
ID3D11ShaderResourceView * GetSRV (ezGALTextureRange textureRange, ezEnum< ezGALResourceFormat > overrideViewFormat) const
 
ID3D11UnorderedAccessView * GetUAV (ezGALTextureRange textureRange, ezEnum< ezGALResourceFormat > overrideViewFormat) const
 
- Public Member Functions inherited from ezGALTexture
ezVec3U32 GetMipMapSize (ezUInt32 uiMipLevel) const
 
ezGALTextureRange ClampRange (ezGALTextureRange range) const
 Replaced EZ_GAL_ALL_MIP_LEVELS and EZ_GAL_ALL_ARRAY_SLICES with the correct upper bounds for this texture.
 
- Public Member Functions inherited from ezGALResource< ezGALTextureCreationDescription >
EZ_ALWAYS_INLINE ezGALResource (const ezGALTextureCreationDescription &description)
 
EZ_ALWAYS_INLINE const ezGALTextureCreationDescriptionGetDescription () const
 
- Public Member Functions inherited from ezGALResourceBase
void SetDebugName (const char *szName) const
 
virtual const ezGALResourceBaseGetParentResource () const
 
- Public Member Functions inherited from ezRefCounted
virtual ~ezRefCounted ()=default
 Adds a virtual destructor.
 
- Public Member Functions inherited from ezRefCountingImpl
 ezRefCountingImpl ()=default
 Constructor.
 
 ezRefCountingImpl (const ezRefCountingImpl &rhs)
 
void operator= (const ezRefCountingImpl &rhs)
 
ezInt32 AddRef () const
 Increments the reference counter. Returns the new reference count.
 
ezInt32 ReleaseRef () const
 Decrements the reference counter. Returns the new reference count.
 
bool IsReferenced () const
 Returns true if the reference count is greater than 0, false otherwise.
 
ezInt32 GetRefCount () const
 Returns the current reference count.
 
- Static Public Member Functions inherited from ezGALTextureDX11
static ezResult Create2DDesc (const ezGALTextureCreationDescription &description, ezGALDeviceDX11 *pDXDevice, D3D11_TEXTURE2D_DESC &out_tex2DDesc)
 
static ezResult Create3DDesc (const ezGALTextureCreationDescription &description, ezGALDeviceDX11 *pDXDevice, D3D11_TEXTURE3D_DESC &out_tex3DDesc)
 
static void ConvertInitialData (const ezGALTextureCreationDescription &description, ezArrayPtr< ezGALSystemMemoryDescription > initialData, ezHybridArray< D3D11_SUBRESOURCE_DATA, 16 > &out_initialData)
 

Member Function Documentation

◆ DeInitPlatform()

ezResult ezGALSharedTextureDX11::DeInitPlatform ( ezGALDevice pDevice)
overrideprotectedvirtual

Reimplemented from ezGALTextureDX11.

◆ GetSharedHandle()

ezGALPlatformSharedHandle ezGALSharedTextureDX11::GetSharedHandle ( ) const
overrideprotectedvirtual

Returns the handle that can be used to open this texture on another device / process. Call ezGALDevice::OpenSharedTexture to do so.

Implements ezGALSharedTexture.

◆ InitPlatform()

ezResult ezGALSharedTextureDX11::InitPlatform ( ezGALDevice pDevice,
ezArrayPtr< ezGALSystemMemoryDescription pInitialData 
)
overrideprotectedvirtual

Reimplemented from ezGALTextureDX11.

◆ SignalSemaphoreGPU()

void ezGALSharedTextureDX11::SignalSemaphoreGPU ( ezUInt64  uiValue) const
overrideprotectedvirtual

Once the current render pipeline is done on the GPU, the semaphore will be signaled with the given value.

Parameters
iValueValue the semaphore is set to once we are done using the texture (after the current render pipeline).

Implements ezGALSharedTexture.

◆ WaitSemaphoreGPU()

void ezGALSharedTextureDX11::WaitSemaphoreGPU ( ezUInt64  uiValue) const
overrideprotectedvirtual

Before the current render pipeline is executed, the GPU will wait for the semaphore to have the given value.

Parameters
iValueValue the semaphore needs to have before the texture can be used.

Implements ezGALSharedTexture.


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