Render device implementation in OpenGL backend. More...
#include <RenderDeviceGLImpl.hpp>
Public Member Functions | |
virtual void DILIGENT_CALL_TYPE | CreateBuffer (const BufferDesc &BuffDesc, const BufferData *BuffData, IBuffer **ppBuffer) override final |
Implementation of IRenderDevice::CreateBuffer() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateShader (const ShaderCreateInfo &ShaderCreateInfo, IShader **ppShader, IDataBlob **ppCompilerOutput) override final |
Implementation of IRenderDevice::CreateShader() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateTexture (const TextureDesc &TexDesc, const TextureData *Data, ITexture **ppTexture) override final |
Implementation of IRenderDevice::CreateTexture() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateSampler (const SamplerDesc &SamplerDesc, ISampler **ppSampler) override final |
Implementation of IRenderDevice::CreateSampler() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateGraphicsPipelineState (const GraphicsPipelineStateCreateInfo &PSOCreateInfo, IPipelineState **ppPipelineState) override final |
Implementation of IRenderDevice::CreateGraphicsPipelineState() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateComputePipelineState (const ComputePipelineStateCreateInfo &PSOCreateInfo, IPipelineState **ppPipelineState) override final |
Implementation of IRenderDevice::CreateComputePipelineState() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateRayTracingPipelineState (const RayTracingPipelineStateCreateInfo &PSOCreateInfo, IPipelineState **ppPipelineState) override final |
Implementation of IRenderDevice::CreateRayTracingPipelineState() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateFence (const FenceDesc &Desc, IFence **ppFence) override final |
Implementation of IRenderDevice::CreateFence() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateQuery (const QueryDesc &Desc, IQuery **ppQuery) override final |
Implementation of IRenderDevice::CreateQuery() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateRenderPass (const RenderPassDesc &Desc, IRenderPass **ppRenderPass) override final |
Implementation of IRenderDevice::CreateRenderPass() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateFramebuffer (const FramebufferDesc &Desc, IFramebuffer **ppFramebuffer) override final |
Implementation of IRenderDevice::CreateFramebuffer() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateBLAS (const BottomLevelASDesc &Desc, IBottomLevelAS **ppBLAS) override final |
Implementation of IRenderDevice::CreateBLAS() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateTLAS (const TopLevelASDesc &Desc, ITopLevelAS **ppTLAS) override final |
Implementation of IRenderDevice::CreateTLAS() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateSBT (const ShaderBindingTableDesc &Desc, IShaderBindingTable **ppSBT) override final |
Implementation of IRenderDevice::CreateSBT() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreatePipelineResourceSignature (const PipelineResourceSignatureDesc &Desc, IPipelineResourceSignature **ppSignature) override final |
Implementation of IRenderDevice::CreatePipelineResourceSignature() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateTextureFromGLHandle (Uint32 GLHandle, Uint32 GLBindTarget, const TextureDesc &TexDesc, RESOURCE_STATE InitialState, ITexture **ppTexture) override final |
Implementation of IRenderDeviceGL::CreateTextureFromGLHandle(). | |
virtual void DILIGENT_CALL_TYPE | CreateBufferFromGLHandle (Uint32 GLHandle, const BufferDesc &BuffDesc, RESOURCE_STATE InitialState, IBuffer **ppBuffer) override final |
Implementation of IRenderDeviceGL::CreateBufferFromGLHandle(). | |
virtual void DILIGENT_CALL_TYPE | CreateDummyTexture (const TextureDesc &TexDesc, RESOURCE_STATE InitialState, ITexture **ppTexture) override final |
Implementation of IRenderDeviceGL::CreateDummyTexture(). | |
virtual void DILIGENT_CALL_TYPE | ReleaseStaleResources (bool ForceRelease=false) override final |
Implementation of IRenderDevice::ReleaseStaleResources() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | IdleGPU () override final |
Implementation of IRenderDevice::IdleGPU() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateDeviceMemory (const DeviceMemoryCreateInfo &CreateInfo, IDeviceMemory **ppMemory) override final |
Implementation of IRenderDevice::CreateDeviceMemory() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreatePipelineStateCache (const PipelineStateCacheCreateInfo &CreateInfo, IPipelineStateCache **ppPSOCache) override final |
Implementation of IRenderDevice::CreatePipelineStateCache() in OpenGL backend. | |
virtual void DILIGENT_CALL_TYPE | CreateDeferredContext (IDeviceContext **ppContext) override final |
Implementation of IRenderDevice::CreateDeferredContext() in OpenGL backend. | |
virtual SparseTextureFormatInfo DILIGENT_CALL_TYPE | GetSparseTextureFormatInfo (TEXTURE_FORMAT TexFormat, RESOURCE_DIMENSION Dimension, Uint32 SampleCount) const override final |
Implementation of IRenderDevice::GetSparseTextureFormatInfo() in OpenGL backend. | |
![]() | |
RenderDeviceBase (IReferenceCounters *pRefCounters, IMemoryAllocator &RawMemAllocator, IEngineFactory *pEngineFactory, const EngineCreateInfo &EngineCI, const GraphicsAdapterInfo &AdapterInfo) | |
virtual void DILIGENT_CALL_TYPE | CreateResourceMapping (const ResourceMappingCreateInfo &ResMappingCI, IResourceMapping **ppMapping) override final |
Implementation of IRenderDevice::CreateResourceMapping(). | |
virtual const RenderDeviceInfo &DILIGENT_CALL_TYPE | GetDeviceInfo () const override final |
Implementation of IRenderDevice::GetDeviceInfo(). | |
virtual const GraphicsAdapterInfo &DILIGENT_CALL_TYPE | GetAdapterInfo () const override final |
Implementation of IRenderDevice::GetAdapterInfo(). | |
virtual const TextureFormatInfo &DILIGENT_CALL_TYPE | GetTextureFormatInfo (TEXTURE_FORMAT TexFormat) const override final |
Implementation of IRenderDevice::GetTextureFormatInfo(). | |
virtual const TextureFormatInfoExt &DILIGENT_CALL_TYPE | GetTextureFormatInfoExt (TEXTURE_FORMAT TexFormat) override final |
Implementation of IRenderDevice::GetTextureFormatInfoExt(). | |
virtual void DILIGENT_CALL_TYPE | CreateTilePipelineState (const TilePipelineStateCreateInfo &PSOCreateInfo, IPipelineState **ppPipelineState) override |
Base implementation of IRenderDevice::CreateTilePipelineState(). | |
void | SetImmediateContext (size_t Ctx, DeviceContextImplType *pImmediateContext) |
Set weak reference to the immediate context. | |
size_t | GetNumImmediateContexts () const |
Returns the number of immediate contexts. | |
size_t | GetNumDeferredContexts () const |
Returns number of deferred contexts. | |
RenderDeviceBase (IReferenceCounters *pRefCounters, IMemoryAllocator &RawMemAllocator, IEngineFactory *pEngineFactory, const EngineCreateInfo &EngineCI, const GraphicsAdapterInfo &AdapterInfo) | |
virtual void DILIGENT_CALL_TYPE | CreateResourceMapping (const ResourceMappingCreateInfo &ResMappingCI, IResourceMapping **ppMapping) override final |
Implementation of IRenderDevice::CreateResourceMapping(). | |
virtual const RenderDeviceInfo &DILIGENT_CALL_TYPE | GetDeviceInfo () const override final |
Implementation of IRenderDevice::GetDeviceInfo(). | |
virtual const GraphicsAdapterInfo &DILIGENT_CALL_TYPE | GetAdapterInfo () const override final |
Implementation of IRenderDevice::GetAdapterInfo(). | |
virtual const TextureFormatInfo &DILIGENT_CALL_TYPE | GetTextureFormatInfo (TEXTURE_FORMAT TexFormat) const override final |
Implementation of IRenderDevice::GetTextureFormatInfo(). | |
virtual const TextureFormatInfoExt &DILIGENT_CALL_TYPE | GetTextureFormatInfoExt (TEXTURE_FORMAT TexFormat) override final |
Implementation of IRenderDevice::GetTextureFormatInfoExt(). | |
virtual void DILIGENT_CALL_TYPE | CreateTilePipelineState (const TilePipelineStateCreateInfo &PSOCreateInfo, IPipelineState **ppPipelineState) override |
Base implementation of IRenderDevice::CreateTilePipelineState(). | |
void | SetImmediateContext (size_t Ctx, DeviceContextImplType *pImmediateContext) |
Set weak reference to the immediate context. | |
size_t | GetNumImmediateContexts () const |
Returns the number of immediate contexts. | |
size_t | GetNumDeferredContexts () const |
Returns number of deferred contexts. | |
Additional Inherited Members | |
![]() | |
void | CreateDeviceObject (const Char *ObjectTypeName, const ObjectDescType &Desc, ObjectType **ppObject, ObjectConstructorType ConstructObject) |
Helper template function to facilitate device object creation. | |
void | CreateDeviceObject (const Char *ObjectTypeName, const ObjectDescType &Desc, ObjectType **ppObject, ObjectConstructorType ConstructObject) |
Helper template function to facilitate device object creation. | |
![]() | |
ObjectsRegistry< SamplerDesc, RefCntAutoPtr< ISampler > > | m_SamplersRegistry |
Sampler state registry. | |
std::vector< RefCntWeakPtr< DeviceContextImplType >, STDAllocatorRawMem< RefCntWeakPtr< DeviceContextImplType > > > | m_wpImmediateContexts |
std::mutex | m_DeferredCtxMtx |
Weak references to deferred contexts. | |
IMemoryAllocator & | m_RawMemAllocator |
Raw memory allocator. | |
FixedBlockMemoryAllocator | m_TexObjAllocator |
Allocator for texture objects. | |
FixedBlockMemoryAllocator | m_TexViewObjAllocator |
Allocator for texture view objects. | |
FixedBlockMemoryAllocator | m_BufObjAllocator |
Allocator for buffer objects. | |
FixedBlockMemoryAllocator | m_BuffViewObjAllocator |
Allocator for buffer view objects. | |
FixedBlockMemoryAllocator | m_ShaderObjAllocator |
Allocator for shader objects. | |
FixedBlockMemoryAllocator | m_SamplerObjAllocator |
Allocator for sampler objects. | |
FixedBlockMemoryAllocator | m_PSOAllocator |
Allocator for pipeline state objects. | |
FixedBlockMemoryAllocator | m_SRBAllocator |
Allocator for shader resource binding objects. | |
FixedBlockMemoryAllocator | m_ResMappingAllocator |
Allocator for resource mapping objects. | |
FixedBlockMemoryAllocator | m_FenceAllocator |
Allocator for fence objects. | |
FixedBlockMemoryAllocator | m_QueryAllocator |
Allocator for query objects. | |
FixedBlockMemoryAllocator | m_RenderPassAllocator |
Allocator for render pass objects. | |
FixedBlockMemoryAllocator | m_FramebufferAllocator |
Allocator for framebuffer objects. | |
FixedBlockMemoryAllocator | m_BLASAllocator |
Allocator for bottom-level acceleration structure objects. | |
FixedBlockMemoryAllocator | m_TLASAllocator |
Allocator for top-level acceleration structure objects. | |
FixedBlockMemoryAllocator | m_SBTAllocator |
Allocator for shader binding table objects. | |
FixedBlockMemoryAllocator | m_PipeResSignAllocator |
Allocator for pipeline resource signature objects. | |
FixedBlockMemoryAllocator | m_MemObjAllocator |
Allocator for device memory objects. | |
FixedBlockMemoryAllocator | m_PSOCacheAllocator |
Allocator for pipeline state cache objects. | |
ObjectsRegistry< SamplerDesc, RefCntAutoPtr< ISampler > > | m_SamplersRegistry |
Sampler state registry. | |
std::vector< RefCntWeakPtr< DeviceContextImplType >, STDAllocatorRawMem< RefCntWeakPtr< DeviceContextImplType > > > | m_wpImmediateContexts |
std::mutex | m_DeferredCtxMtx |
Weak references to deferred contexts. | |
IMemoryAllocator & | m_RawMemAllocator |
Raw memory allocator. | |
FixedBlockMemoryAllocator | m_TexObjAllocator |
Allocator for texture objects. | |
FixedBlockMemoryAllocator | m_TexViewObjAllocator |
Allocator for texture view objects. | |
FixedBlockMemoryAllocator | m_BufObjAllocator |
Allocator for buffer objects. | |
FixedBlockMemoryAllocator | m_BuffViewObjAllocator |
Allocator for buffer view objects. | |
FixedBlockMemoryAllocator | m_ShaderObjAllocator |
Allocator for shader objects. | |
FixedBlockMemoryAllocator | m_SamplerObjAllocator |
Allocator for sampler objects. | |
FixedBlockMemoryAllocator | m_PSOAllocator |
Allocator for pipeline state objects. | |
FixedBlockMemoryAllocator | m_SRBAllocator |
Allocator for shader resource binding objects. | |
FixedBlockMemoryAllocator | m_ResMappingAllocator |
Allocator for resource mapping objects. | |
FixedBlockMemoryAllocator | m_FenceAllocator |
Allocator for fence objects. | |
FixedBlockMemoryAllocator | m_QueryAllocator |
Allocator for query objects. | |
FixedBlockMemoryAllocator | m_RenderPassAllocator |
Allocator for render pass objects. | |
FixedBlockMemoryAllocator | m_FramebufferAllocator |
Allocator for framebuffer objects. | |
FixedBlockMemoryAllocator | m_BLASAllocator |
Allocator for bottom-level acceleration structure objects. | |
FixedBlockMemoryAllocator | m_TLASAllocator |
Allocator for top-level acceleration structure objects. | |
FixedBlockMemoryAllocator | m_SBTAllocator |
Allocator for shader binding table objects. | |
FixedBlockMemoryAllocator | m_PipeResSignAllocator |
Allocator for pipeline resource signature objects. | |
FixedBlockMemoryAllocator | m_MemObjAllocator |
Allocator for device memory objects. | |
FixedBlockMemoryAllocator | m_PSOCacheAllocator |
Allocator for pipeline state cache objects. | |
Render device implementation in OpenGL backend.