cae  0.0.0
Cross-API graphics engine
Loading...
Searching...
No Matches
cae Namespace Reference

Namespaces

namespace  AUDIO
 
namespace  CAMERA
 
namespace  LOG
 
namespace  MESSAGE
 
namespace  NETWORK
 
namespace  PLUGINS
 
namespace  RENDERER
 
namespace  USER
 
namespace  WINDOW
 

Classes

interface  AAudio
 Abstract class for audio. More...
 
interface  AInput
 Abstract class for inputs. More...
 
interface  AModel
 Abstract class for model. More...
 
interface  ANetwork
 Abstract class for network. More...
 
interface  APhysic
 Abstract class for physic. More...
 
struct  AppConfig
 Struct for application configuration. More...
 
class  Application
 Main class. More...
 
interface  ARenderer
 Abstract class for renderer. More...
 
struct  ArgsConfig
 Struct for command line arguments configuration. More...
 
class  ArgsHandler
 Class to handle command line arguments. More...
 
interface  AShaderFrontend
 Abstract class for shader frontend. More...
 
interface  AShaderIR
 Abstract class for shader IR. More...
 
interface  AUI
 Abstract class for ui. More...
 
class  AWindow
 
class  Camera
 Class for camera. More...
 
struct  Color
 Struct for color. More...
 
class  Engine
 Engine class. More...
 
struct  EngineConfig
 Struct for engine configuration. More...
 
struct  EnvConfig
 Struct for environment variables configuration. More...
 
class  GLFW
 Class for the GLFW plugin. More...
 
class  GLSL
 Class for the GLSL plugin. More...
 
interface  IAudio
 Interface for audio. More...
 
interface  IContext
 Interface for OpenGL context. More...
 
interface  IGamepad
 Interface for gamepad. More...
 
interface  IInput
 Interface for inputs. More...
 
interface  IKeyboard
 Interface for keyboard. More...
 
interface  IModel
 Interface for model. More...
 
interface  IMouse
 Interface for mouse. More...
 
interface  INetwork
 Interface for network. More...
 
interface  IPhysic
 Interface for physics. More...
 
interface  IRenderer
 Interface for renderer. More...
 
interface  IShaderFrontend
 Interface for shaders frontend. More...
 
interface  IShaderIR
 Interface for shaders IR. More...
 
interface  IUI
 Interface for ui. More...
 
interface  IWindow
 Abstract class for window. More...
 
struct  Mesh
 
struct  NativeWindowHandle
 Struct for native window handle. More...
 
class  OPGL
 Class for the OpenGL plugin. More...
 
struct  ShaderIRModule
 Struct for shader intermediate representation module. More...
 
class  ShaderManager
 Class for managing shaders. More...
 
struct  ShaderPipelineDesc
 Struct for shader pipeline description. More...
 
struct  ShaderSourceDesc
 Struct for shader source description. More...
 
class  SPIRV
 Class for the SPIR-V IR plugin. More...
 
class  VULKN
 Class for the Vulkan plugin. More...
 
struct  WindowEvent
 Struct for window events. More...
 
struct  WindowSize
 Struct for window size. More...
 

Typedefs

using ShaderID = std::string
 

Enumerations

enum class  GamepadButton : uint8_t {
  A = 0 , B , X , Y ,
  Back , Guide , Start , LThumb ,
  RThumb , LShoulder , RShoulder , DPadUp ,
  DPadDown , DPadLeft , DPadRight
}
 
enum class  GamepadAxis : uint8_t {
  LeftX = 0 , LeftY , RightX , RightY ,
  TriggerLeft , TriggerRight
}
 
enum class  KeyState : std::uint8_t { Pressed = 0 , Released = 1 , Held = 2 , Toggled = 3 }
 
enum class  KeyCode : uint8_t {
  A , B , C , D ,
  E , F , G , H ,
  I , J , K , L ,
  M , N , O , P ,
  Q , R , S , T ,
  U , V , W , X ,
  Y , Z , Num0 , Num1 ,
  Num2 , Num3 , Num4 , Num5 ,
  Num6 , Num7 , Num8 , Num9 ,
  Escape , F1 , F2 , F3 ,
  F4 , F5 , F6 , F7 ,
  F8 , F9 , F10 , F11 ,
  F12 , Left , Right , Up ,
  Down , Home , End , PageUp ,
  PageDown , Insert , Delete , Backspace ,
  Tab , Enter , Space , LShift ,
  RShift , LCtrl , RCtrl , LAlt ,
  RAlt , LSuper , RSuper , Numpad0 ,
  Numpad1 , Numpad2 , Numpad3 , Numpad4 ,
  Numpad5 , Numpad6 , Numpad7 , Numpad8 ,
  Numpad9 , NumpadAdd , NumpadSubtract , NumpadMultiply ,
  NumpadDivide , CapsLock , NumLock , ScrollLock ,
  PrintScreen , Pause , Menu , Count
}
 
enum class  MouseButton : uint8_t {
  Left = 0 , Right , Middle , XButton1 ,
  XButton2 , WheelUp , WheelDown , Count
}
 
enum class  ShaderSourceType : uint8_t {
  GLSL = 0 , HLSL = 1 , WGSL = 2 , MSL = 3 ,
  SPIRV = 4 , UNDEFINED = 255
}
 
enum class  ShaderStage : uint8_t {
  VERTEX = 0 , FRAGMENT = 1 , GEOMETRY = 2 , COMPUTE = 3 ,
  UNDEFINED = 255
}
 
enum class  WindowEventType : uint8_t {
  KeyDown , KeyUp , MouseMove , MouseButtonDown ,
  MouseButtonUp , MouseScroll , Resize , Focus ,
  Close
}
 Enum for window event types. More...
 

Variables

constexpr auto VERSION = 450
 

Typedef Documentation

◆ ShaderID

using cae::ShaderID = std::string

Definition at line 16 of file IShaderFrontend.hpp.

Enumeration Type Documentation

◆ GamepadAxis

enum class cae::GamepadAxis : uint8_t
strong
Enumerator
LeftX 
LeftY 
RightX 
RightY 
TriggerLeft 
TriggerRight 

Definition at line 32 of file Gamepad.hpp.

◆ GamepadButton

enum class cae::GamepadButton : uint8_t
strong
Enumerator
Back 
Guide 
Start 
LThumb 
RThumb 
LShoulder 
RShoulder 
DPadUp 
DPadDown 
DPadLeft 
DPadRight 

Definition at line 13 of file Gamepad.hpp.

◆ KeyCode

enum class cae::KeyCode : uint8_t
strong
Enumerator
Num0 
Num1 
Num2 
Num3 
Num4 
Num5 
Num6 
Num7 
Num8 
Num9 
Escape 
F1 
F2 
F3 
F4 
F5 
F6 
F7 
F8 
F9 
F10 
F11 
F12 
Left 
Right 
Up 
Down 
Home 
End 
PageUp 
PageDown 
Insert 
Delete 
Backspace 
Tab 
Enter 
Space 
LShift 
RShift 
LCtrl 
RCtrl 
LAlt 
RAlt 
LSuper 
RSuper 
Numpad0 
Numpad1 
Numpad2 
Numpad3 
Numpad4 
Numpad5 
Numpad6 
Numpad7 
Numpad8 
Numpad9 
NumpadAdd 
NumpadSubtract 
NumpadMultiply 
NumpadDivide 
CapsLock 
NumLock 
ScrollLock 
PrintScreen 
Pause 
Menu 
Count 

Definition at line 22 of file Keyboard.hpp.

◆ KeyState

enum class cae::KeyState : std::uint8_t
strong
Enumerator
Pressed 
Released 
Held 
Toggled 

Definition at line 14 of file Keyboard.hpp.

◆ MouseButton

enum class cae::MouseButton : uint8_t
strong
Enumerator
Left 
Right 
Middle 
XButton1 
XButton2 
WheelUp 
WheelDown 
Count 

Definition at line 13 of file Mouse.hpp.

◆ ShaderSourceType

enum class cae::ShaderSourceType : uint8_t
strong
Enumerator
GLSL 
HLSL 
WGSL 
MSL 
SPIRV 
UNDEFINED 

Definition at line 18 of file IShaderFrontend.hpp.

◆ ShaderStage

enum class cae::ShaderStage : uint8_t
strong
Enumerator
VERTEX 
FRAGMENT 
GEOMETRY 
COMPUTE 
UNDEFINED 

Definition at line 28 of file IShaderFrontend.hpp.

◆ WindowEventType

enum class cae::WindowEventType : uint8_t
strong

Enum for window event types.

Enumerator
KeyDown 
KeyUp 
MouseMove 
MouseButtonDown 
MouseButtonUp 
MouseScroll 
Resize 
Focus 
Close 

Definition at line 44 of file IWindow.hpp.

Variable Documentation

◆ VERSION

auto cae::VERSION = 450
constexpr

Definition at line 18 of file GLSL.hpp.

Referenced by cae::GLSL::compileGLSLtoSPIRV().