LLGL 0.05 Beta
Loading...
Searching...
No Matches
LLGL::InterfaceID Struct Reference

Enumeration of all interfaces in LLGL. More...

#include <InterfaceID.h>

Public Types

enum  {
  Interface , Display , Surface , Canvas ,
  Canvas_EventListener , Window , Window_EventListener , IncludeHandler ,
  Input , RenderSystem , RenderSystemChild , XRSystem ,
  XRSession , XRSwapChain , BufferArray , CommandBuffer ,
  CommandBufferTier1 , CommandQueue , Fence , PipelineCache ,
  PipelineLayout , PipelineState , QueryHeap , RenderPass ,
  Resource , Buffer , Sampler , Texture ,
  ResourceHeap , Shader , RenderTarget , SwapChain ,
  Reserved
}

Detailed Description

Enumeration of all interfaces in LLGL.

Remarks
The ID for a base class must always have a smaller value than the ID of its sub classes. Therefore, all base classes must be declared before their sub classes in this enumeration.
See also
Interface::IsInstanceOf
CastTo

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Interface 

Base class of all public interfaces in LLGL.

See also
Interface
Display 

Extends Interface.

See also
Display
Surface 

Extends Interface.

See also
Surface
Canvas 

Extends Interface.

See also
Canvas
Canvas_EventListener 

Extends Interface.

See also
Canvas::EventListener
Window 

Extends Interface.

See also
Window
Window_EventListener 

Extends Interface.

See also
Window::EventListener
IncludeHandler 

Extends Interface.

See also
IncludeHandler
Input 

Extends Interface.

See also
Input
RenderSystem 

Extends Interface.

See also
RenderSystem
RenderSystemChild 

Extends Interface.

See also
RenderSystemChild
XRSystem 

Extends Interface.

See also
XRSystem
XRSession 

Extends Interface.

See also
XRSession
XRSwapChain 

Extends Interface.

See also
XRSwapChain
BufferArray 

Extends RenderSystemChild.

See also
BufferArray
CommandBuffer 

Extends RenderSystemChild.

See also
CommandBuffer
CommandBufferTier1 

Extends CommandBuffer.

See also
CommandBufferTier1
CommandQueue 

Extends RenderSystemChild.

See also
CommandQueue
Fence 

Extends RenderSystemChild.

See also
Fence
PipelineCache 

Extends RenderSystemChild.

See also
PipelineCache
PipelineLayout 

Extends RenderSystemChild.

See also
PipelineLayout
PipelineState 

Extends RenderSystemChild.

See also
PipelineState
QueryHeap 

Extends RenderSystemChild.

See also
QueryHeap
RenderPass 

Extends RenderSystemChild.

See also
RenderPass
Resource 

Extends RenderSystemChild.

See also
Resource
Buffer 

Extends Resource.

See also
Buffer
Sampler 

Extends Resource.

See also
Sampler
Texture 

Extends Resource.

See also
Texture
ResourceHeap 

Extends RenderSystemChild.

See also
ResourceHeap
Shader 

Extends RenderSystemChild.

See also
Shader
RenderTarget 

Extends RenderSystemChild.

See also
RenderTarget
SwapChain 

Extends RenderTarget.

See also
SwapChain
Reserved 

Maximum reserved ID for interfaces.

Remarks
Use this value to write custom sub classes of an LLGL interface:
class MyWindow : public LLGL::Window {
...
};
#define LLGL_DECLARE_INTERFACE(ID)
Declares the base functions for all LLGL interfaces.
Definition Interface.h:21
#define LLGL_IMPLEMENT_INTERFACE(SELF, BASE)
Implements the base functions for all LLGL interfaces.
Definition Interface.h:30
Window interface for desktop platforms.
Definition Window.h:32
@ Reserved
Maximum reserved ID for interfaces.
Definition InterfaceID.h:73

The documentation for this struct was generated from the following file: