Base implementation of the ITexture interface.
More...
|
| TextureBase (TTexObjAllocator &TexObjAllocator, TTexViewObjAllocator &TexViewObjAllocator, IRenderDevice *pDevice, const TextureDesc &Desc, bool bIsDeviceInternal=false) |
|
virtual void | CreateView (const struct TextureViewDesc &ViewDesc, ITextureView **ppView) override |
| Implementaiton of ITexture::CreateView(); calls CreateViewInternal() virtual function that creates texture view for the specific engine implementation.
|
|
virtual void | UpdateData (IDeviceContext *pContext, Uint32 MipLevel, Uint32 Slice, const Box &DstBox, const TextureSubResData &SubresData)=0 |
| Base implementaiton of ITexture::UpdateData(); validates input parameters.
|
|
virtual void | CopyData (IDeviceContext *pContext, ITexture *pSrcTexture, Uint32 SrcMipLevel, Uint32 SrcSlice, const Box *pSrcBox, Uint32 DstMipLevel, Uint32 DstSlice, Uint32 DstX, Uint32 DstY, Uint32 DstZ)=0 |
| Base implementaiton of ITexture::CopyData(); validates input parameters.
|
|
virtual void | Map (IDeviceContext *pContext, MAP_TYPE MapType, Uint32 MapFlags, PVoid &pMappedData)=0 |
| Base implementaiton of ITexture::Map()
|
|
virtual void | Unmap (IDeviceContext *pContext, MAP_TYPE MapType)=0 |
| Base implementaiton of ITexture::Unmap()
|
|
void | CreateDefaultViews () |
| Creates default texture views. More...
|
|
| DeviceObjectBase (TTexObjAllocator &ObjAllocator, class IRenderDevice *pDevice, const TextureDesc &ObjDesc, IObject *pOwner=nullptr, bool bIsDeviceInternal=false) |
|
UniqueIdentifier | GetUniqueID () const |
| Returns unique identifier. More...
|
|
|
std::unique_ptr< TTextureViewImpl, STDDeleter< TTextureViewImpl, TTexViewObjAllocator > > | m_pDefaultSRV |
| Default SRV addressing the entire texture.
|
|
std::unique_ptr< TTextureViewImpl, STDDeleter< TTextureViewImpl, TTexViewObjAllocator > > | m_pDefaultRTV |
| Default RTV addressing the most detailed mip level.
|
|
std::unique_ptr< TTextureViewImpl, STDDeleter< TTextureViewImpl, TTexViewObjAllocator > > | m_pDefaultDSV |
| Default DSV addressing the most detailed mip level.
|
|
std::unique_ptr< TTextureViewImpl, STDDeleter< TTextureViewImpl, TTexViewObjAllocator > > | m_pDefaultUAV |
| Default UAV addressing the entire texture.
|
|
const String | m_ObjectNameCopy |
| Copy of a device object name. More...
|
|
TextureDesc | m_Desc |
| Object description.
|
|
template<class BaseInterface, class TTextureViewImpl, class TTexObjAllocator, class TTexViewObjAllocator>
class Diligent::TextureBase< BaseInterface, TTextureViewImpl, TTexObjAllocator, TTexViewObjAllocator >
Base implementation of the ITexture interface.
- Template Parameters
-
template<class BaseInterface, class TTextureViewImpl, class TTexObjAllocator, class TTexViewObjAllocator>
- Parameters
-
TexObjAllocator | - allocator that was used to allocate memory for this instance of the texture object |
TexViewObjAllocator | - allocator that is used to allocate memory for the instances of the texture view object. This parameter is only used for debug purposes. |
pDevice | - pointer to the device |
Desc | - texture description |
bIsDeviceInternal | - flag indicating if the texture is an internal device object and must not keep a strong reference to the device |
template<class BaseInterface , class TTextureViewImpl , class TTexObjAllocator , class TTexViewObjAllocator >
void Diligent::TextureBase< BaseInterface, TTextureViewImpl, TTexObjAllocator, TTexViewObjAllocator >::CreateDefaultViews |
( |
| ) |
|