![]() |
Plasma Engine
2.0
|
Protected Member Functions | |
plGALSharedTextureDX11 (const plGALTextureCreationDescription &Description, plEnum< plGALSharedTextureType > sharedType, plGALPlatformSharedHandle hSharedHandle) | |
virtual plResult | InitPlatform (plGALDevice *pDevice, plArrayPtr< plGALSystemMemoryDescription > pInitialData) override |
virtual plResult | DeInitPlatform (plGALDevice *pDevice) override |
virtual plGALPlatformSharedHandle | GetSharedHandle () const override |
Returns the handle that can be used to open this texture on another device / process. Call plGALDevice::OpenSharedTexture to do so. | |
virtual void | WaitSemaphoreGPU (plUInt64 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 (plUInt64 uiValue) const override |
Once the current render pipeline is done on the GPU, the semaphore will be signaled with the given value. | |
![]() | |
plGALTextureDX11 (const plGALTextureCreationDescription &Description) | |
virtual void | SetDebugNamePlatform (const char *szName) const override |
plResult | InitFromNativeObject (plGALDeviceDX11 *pDXDevice) |
plResult | CreateStagingTexture (plGALDeviceDX11 *pDevice) |
![]() | |
plGALTexture (const plGALTextureCreationDescription &Description) | |
Protected Attributes | |
plEnum< plGALSharedTextureType > | m_SharedType = plGALSharedTextureType::None |
plGALPlatformSharedHandle | m_hSharedHandle |
IDXGIKeyedMutex * | m_pKeyedMutex = nullptr |
![]() | |
ID3D11Resource * | m_pDXTexture = nullptr |
ID3D11Resource * | m_pDXStagingTexture = nullptr |
![]() | |
plGALTextureResourceViewHandle | m_hDefaultResourceView |
plGALRenderTargetViewHandle | m_hDefaultRenderTargetView |
plHashTable< plUInt32, plGALTextureResourceViewHandle > | m_ResourceViews |
plHashTable< plUInt32, plGALRenderTargetViewHandle > | m_RenderTargetViews |
plHashTable< plUInt32, plGALTextureUnorderedAccessViewHandle > | m_UnorderedAccessViews |
![]() | |
const plGALTextureCreationDescription | m_Description |
Friends | |
class | plGALDeviceDX11 |
class | plMemoryUtils |
Additional Inherited Members | |
![]() | |
PL_ALWAYS_INLINE ID3D11Resource * | GetDXTexture () const |
PL_ALWAYS_INLINE ID3D11Resource * | GetDXStagingTexture () const |
![]() | |
PL_ALWAYS_INLINE | plGALResource (const plGALTextureCreationDescription &description) |
PL_ALWAYS_INLINE const plGALTextureCreationDescription & | GetDescription () const |
![]() | |
void | SetDebugName (const char *szName) const |
virtual const plGALResourceBase * | GetParentResource () const |
![]() | |
virtual | ~plRefCounted ()=default |
Adds a virtual destructor. | |
![]() | |
plRefCountingImpl ()=default | |
Constructor. | |
plRefCountingImpl (const plRefCountingImpl &rhs) | |
void | operator= (const plRefCountingImpl &rhs) |
plInt32 | AddRef () const |
Increments the reference counter. Returns the new reference count. | |
plInt32 | 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. | |
plInt32 | GetRefCount () const |
Returns the current reference count. | |
![]() | |
static plResult | Create2DDesc (const plGALTextureCreationDescription &description, plGALDeviceDX11 *pDXDevice, D3D11_TEXTURE2D_DESC &out_Tex2DDesc) |
static plResult | Create3DDesc (const plGALTextureCreationDescription &description, plGALDeviceDX11 *pDXDevice, D3D11_TEXTURE3D_DESC &out_Tex3DDesc) |
static void | ConvertInitialData (const plGALTextureCreationDescription &description, plArrayPtr< plGALSystemMemoryDescription > pInitialData, plHybridArray< D3D11_SUBRESOURCE_DATA, 16 > &out_InitialData) |
|
overrideprotectedvirtual |
Reimplemented from plGALTextureDX11.
|
overrideprotectedvirtual |
Returns the handle that can be used to open this texture on another device / process. Call plGALDevice::OpenSharedTexture to do so.
Implements plGALSharedTexture.
|
overrideprotectedvirtual |
Reimplemented from plGALTextureDX11.
|
overrideprotectedvirtual |
Once the current render pipeline is done on the GPU, the semaphore will be signaled with the given value.
iValue | Value the semaphore is set to once we are done using the texture (after the current render pipeline). |
Implements plGALSharedTexture.
|
overrideprotectedvirtual |
Before the current render pipeline is executed, the GPU will wait for the semaphore to have the given value.
iValue | Value the semaphore needs to have before the texture can be used. |
Implements plGALSharedTexture.