Diligent Engine API Reference
Public Member Functions | List of all members
Diligent::BufferGLImpl Class Reference

Implementation of the Diligent::IBufferGL interface. More...

Inheritance diagram for Diligent::BufferGLImpl:
Diligent::BufferBase< IBufferGL, BufferViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator > Diligent::DeviceObjectBase< IBufferGL, BufferDesc, FixedBlockMemoryAllocator > Diligent::ObjectBase< IBufferGL, FixedBlockMemoryAllocator > Diligent::RefCountedObject< IBufferGL, FixedBlockMemoryAllocator > Diligent::IBufferGL Diligent::IBuffer 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 UpdateData (IDeviceContext *pContext, Uint32 Offset, Uint32 Size, const PVoid pData) override
 Base implementation of IBuffer::UpdateData(); validates input parameters.
 
virtual void CopyData (IDeviceContext *pContext, IBuffer *pSrcBuffer, Uint32 SrcOffset, Uint32 DstOffset, Uint32 Size) override
 Base implementation of IBuffer::CopyData(); validates input parameters.
 
virtual void Map (IDeviceContext *pContext, MAP_TYPE MapType, Uint32 MapFlags, PVoid &pMappedData) override
 Base implementation of IBuffer::Map(); validates input parameters.
 
virtual void Unmap (IDeviceContext *pContext, MAP_TYPE MapType) override
 Base implementation of IBuffer::Unmap()
 
- Public Member Functions inherited from Diligent::BufferBase< IBufferGL, BufferViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator >
 BufferBase (FixedBlockMemoryAllocator &BuffObjAllocator, FixedBlockMemoryAllocator &BuffViewObjAllocator, IRenderDevice *pDevice, const BufferDesc &BuffDesc, bool bIsDeviceInternal=false)
 
virtual void CreateView (const struct BufferViewDesc &ViewDesc, IBufferView **ppView) override
 Implementation of IBuffer::CreateView(); calls CreateViewInternal() virtual function that creates buffer view for the specific engine implementation.
 
virtual IBufferViewGetDefaultView (BUFFER_VIEW_TYPE ViewType) override
 Implementation of IBuffer::GetDefaultView().
 
void CreateDefaultViews ()
 Creates default buffer views. More...
 
- Public Member Functions inherited from Diligent::DeviceObjectBase< IBufferGL, BufferDesc, FixedBlockMemoryAllocator >
 DeviceObjectBase (FixedBlockMemoryAllocator &ObjAllocator, class IRenderDevice *pDevice, const BufferDesc &ObjDesc, IObject *pOwner=nullptr, bool bIsDeviceInternal=false)
 
virtual const BufferDescGetDesc () const override final
 
UniqueIdentifier GetUniqueID () const
 Returns unique identifier. More...
 
- Public Member Functions inherited from Diligent::RefCountedObject< IBufferGL, FixedBlockMemoryAllocator >
virtual IReferenceCountersGetReferenceCounters () const override final
 
virtual Atomics::Long AddRef () override
 
virtual Atomics::Long Release () override
 

Additional Inherited Members

- Protected Member Functions inherited from Diligent::BufferBase< IBufferGL, BufferViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator >
void CorrectBufferViewDesc (struct BufferViewDesc &ViewDesc)
 Corrects buffer view description and validates view parameters.
 
- Protected Attributes inherited from Diligent::BufferBase< IBufferGL, BufferViewGLImpl, FixedBlockMemoryAllocator, FixedBlockMemoryAllocator >
std::unique_ptr< BufferViewGLImpl, STDDeleter< BufferViewGLImpl, FixedBlockMemoryAllocator > > m_pDefaultUAV
 Default UAV addressing the entire buffer.
 
std::unique_ptr< BufferViewGLImpl, STDDeleter< BufferViewGLImpl, FixedBlockMemoryAllocator > > m_pDefaultSRV
 Default SRV addressing the entire buffer.
 
- Protected Attributes inherited from Diligent::DeviceObjectBase< IBufferGL, BufferDesc, FixedBlockMemoryAllocator >
const String m_ObjectNameCopy
 Copy of a device object name. More...
 
BufferDesc m_Desc
 Object description.
 

Detailed Description

Implementation of the Diligent::IBufferGL interface.