Diligent Engine API Reference: Diligent::IRenderDeviceGL Class Reference

Diligent Engine API Reference

Public Member Functions | List of all members
Diligent::IRenderDeviceGL Class Referenceabstract

Interface to the render device object implemented in OpenGL. More...

Inheritance diagram for Diligent::IRenderDeviceGL:

## Public Member Functions
virtual void | CreateTextureFromGLHandle (Uint32 GLHandle, const TextureDesc &TexDesc, ITexture **ppTexture)=0
| Creates a texture from OpenGL handle. More...
virtual void | CreateBufferFromGLHandle (Uint32 GLHandle, const BufferDesc &BuffDesc, IBuffer **ppBuffer)=0
| Creates a buffer from OpenGL handle. More...
Public Member Functions inherited from Diligent::IRenderDevice
virtual void | QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0
| Queries the specific interface, see IObject::QueryInterface() for details.
virtual void | CreateBuffer (const BufferDesc &BuffDesc, const BufferData &BuffData, IBuffer **ppBuffer)=0
| Creates a new buffer object. More...
virtual void | CreateShader (const ShaderCreationAttribs &CreationAttribs, IShader **ppShader)=0
| Creates a new shader object. More...
virtual void | CreateTexture (const TextureDesc &TexDesc, const TextureData &Data, ITexture **ppTexture)=0
| Creates a new texture object. More...
virtual void | CreateSampler (const SamplerDesc &SamDesc, ISampler **ppSampler)=0
| Creates a new sampler object. More...
virtual void | CreateResourceMapping (const ResourceMappingDesc &MappingDesc, IResourceMapping **ppMapping)=0
| Creates a new resource mapping. More...
virtual void | CreatePipelineState (const PipelineStateDesc &PipelineDesc, IPipelineState **ppPipelineState)=0
| Creates a new pipeline state object. More...
virtual const DeviceCaps & | GetDeviceCaps () const =0
| Gets the device capabilities, see Diligent::DeviceCaps for details.
virtual const TextureFormatInfo & | GetTextureFormatInfo (TEXTURE_FORMAT TexFormat)=0
| Returns the basic texture format information. More...
virtual const TextureFormatInfoExt & | GetTextureFormatInfoExt (TEXTURE_FORMAT TexFormat)=0
| Returns the extended texture format information. More...

## Detailed Description

Interface to the render device object implemented in OpenGL.

## Member Function Documentation

## ◆ CreateBufferFromGLHandle()

virtual void Diligent::IRenderDeviceGL::CreateBufferFromGLHandle | ( | Uint32 | GLHandle,
|  | const BufferDesc & | BuffDesc,
|  | IBuffer ** | ppBuffer
| ) |  |
| pure virtual

Creates a buffer from OpenGL handle.

Parameters

  [in] | GLHandle | - OpenGL buffer handle
  [in] | BuffDesc | - Buffer description. The engine can automatically recover buffer size, but the rest of the fields need to be set by the client.
  [out] | ppBuffer | - Address of the memory location where the pointer to the texture interface will be stored. The function calls AddRef(), so that the new object will contain one refernce.

Note
  Diligent engine buffer object does not take ownership of the GL resource, and the application must not destroy it while it is in use by the engine.

## ◆ CreateTextureFromGLHandle()

virtual void Diligent::IRenderDeviceGL::CreateTextureFromGLHandle | ( | Uint32 | GLHandle,
|  | const TextureDesc & | TexDesc,
|  | ITexture ** | ppTexture
| ) |  |
| pure virtual

Creates a texture from OpenGL handle.

Parameters

  [in] | GLHandle | - OpenGL texture handle
  [in] | TexDesc | - Texture description. The engine can automatically set texture width, height, depth, mip levels count, and format. Remaining fields should be set up by the app.
  [out] | ppTexture | - Address of the memory location where the pointer to the texture interface will be stored. The function calls AddRef(), so that the new object will contain one refernce.

Note
  Diligent engine texture object does not take ownership of the GL resource, and the application must not destroy it while it is in use by the engine.