Diligent Engine API Reference
Public Member Functions | Protected Member Functions | List of all members
Diligent::TextureBaseGL Class Referenceabstract

Base implementation of the Diligent::ITextureGL interface. More...

Inheritance diagram for Diligent::TextureBaseGL:
Diligent::TextureBase< ITextureGL, TextureViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator > Diligent::DeviceObjectBase< ITextureGL, TextureDesc, FixedBlockMemoryAllocator > Diligent::ObjectBase< ITextureGL, FixedBlockMemoryAllocator > Diligent::RefCountedObject< ITextureGL, FixedBlockMemoryAllocator > Diligent::ITextureGL Diligent::ITexture Diligent::IDeviceObject Diligent::IObject

Public Member Functions

virtual void QueryInterface (const Diligent::INTERFACE_ID &IID, IObject **ppInterface) override
 Queries the specific interface, see IObject::QueryInterface() for details.
 
virtual void Map (IDeviceContext *pContext, MAP_TYPE MapType, Uint32 MapFlags, PVoid &pMappedData) override
 Base implementaiton of ITexture::Map()
 
virtual void Unmap (IDeviceContext *pContext, MAP_TYPE MapType) override
 Base implementaiton of ITexture::Unmap()
 
virtual void CopyData (IDeviceContext *pContext, ITexture *pSrcTexture, Uint32 SrcMipLevel, Uint32 SrcSlice, const Box *pSrcBox, Uint32 DstMipLevel, Uint32 DstSlice, Uint32 DstX, Uint32 DstY, Uint32 DstZ) override
 Base implementaiton of ITexture::CopyData(); validates input parameters.
 
- Public Member Functions inherited from Diligent::TextureBase< ITextureGL, TextureViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator >
 TextureBase (FixedBlockMemoryAllocator &TexObjAllocator, FixedBlockMemoryAllocator &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.
 
void CreateDefaultViews ()
 Creates default texture views. More...
 
- Public Member Functions inherited from Diligent::DeviceObjectBase< ITextureGL, TextureDesc, FixedBlockMemoryAllocator >
 DeviceObjectBase (FixedBlockMemoryAllocator &ObjAllocator, class IRenderDevice *pDevice, const TextureDesc &ObjDesc, IObject *pOwner=nullptr, bool bIsDeviceInternal=false)
 
virtual const TextureDescGetDesc () const override final
 
UniqueIdentifier GetUniqueID () const
 Returns unique identifier. More...
 
- Public Member Functions inherited from Diligent::RefCountedObject< ITextureGL, FixedBlockMemoryAllocator >
virtual IReferenceCountersGetReferenceCounters () const override final
 
virtual Atomics::Long AddRef () override
 
virtual Atomics::Long Release () override
 

Protected Member Functions

virtual void CreateViewInternal (const struct TextureViewDesc &ViewDesc, class ITextureView **ppView, bool bIsDefaultView) override
 Pure virtual function that creates texture view for the specific engine implementation.
 
- Protected Member Functions inherited from Diligent::TextureBase< ITextureGL, TextureViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator >
ITextureViewGetDefaultView (TEXTURE_VIEW_TYPE ViewType) override
 Implementation of ITexture::GetDefaultView().
 

Additional Inherited Members

- Protected Attributes inherited from Diligent::TextureBase< ITextureGL, TextureViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator >
std::unique_ptr< TextureViewGLImpl, STDDeleter< TextureViewGLImpl, FixedBlockMemoryAllocator > > m_pDefaultSRV
 Default SRV addressing the entire texture.
 
std::unique_ptr< TextureViewGLImpl, STDDeleter< TextureViewGLImpl, FixedBlockMemoryAllocator > > m_pDefaultRTV
 Default RTV addressing the most detailed mip level.
 
std::unique_ptr< TextureViewGLImpl, STDDeleter< TextureViewGLImpl, FixedBlockMemoryAllocator > > m_pDefaultDSV
 Default DSV addressing the most detailed mip level.
 
std::unique_ptr< TextureViewGLImpl, STDDeleter< TextureViewGLImpl, FixedBlockMemoryAllocator > > m_pDefaultUAV
 Default UAV addressing the entire texture.
 
- Protected Attributes inherited from Diligent::DeviceObjectBase< ITextureGL, TextureDesc, FixedBlockMemoryAllocator >
const String m_ObjectNameCopy
 Copy of a device object name. More...
 
TextureDesc m_Desc
 Object description.
 

Detailed Description

Base implementation of the Diligent::ITextureGL interface.