| 
| enum   | rcode { FAIL = 0
, OK = 1
, NO_FILE = -1
 } | 
|   | 
| enum class   | Key : uint8_t {  
  NONE
, 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
, K0
,  
  K1
, K2
, K3
, K4
,  
  K5
, K6
, K7
, K8
,  
  K9
, F1
, F2
, F3
,  
  F4
, F5
, F6
, F7
,  
  F8
, F9
, F10
, F11
,  
  F12
, UP
, DOWN
, LEFT
,  
  RIGHT
, SPACE
, TAB
, SHIFT
,  
  CTRL
, INS
, DEL
, HOME
,  
  END
, PGUP
, PGDN
, BACK
,  
  ESCAPE
, RETURN
, ENTER
, PAUSE
,  
  SCROLL
, NP0
, NP1
, NP2
,  
  NP3
, NP4
, NP5
, NP6
,  
  NP7
, NP8
, NP9
, NP_MUL
,  
  NP_DIV
, NP_ADD
, NP_SUB
, NP_DECIMAL
,  
  PERIOD
, EQUALS
, COMMA
, MINUS
,  
  OEM_1
, OEM_2
, OEM_3
, OEM_4
,  
  OEM_5
, OEM_6
, OEM_7
, OEM_8
,  
  CAPS_LOCK
, ENUM_END
 
 } | 
|   | 
| enum class   | DecalMode {  
  NORMAL
, ADDITIVE
, MULTIPLICATIVE
, STENCIL
,  
  ILLUMINATE
, WIREFRAME
 
 } | 
|   | 
| enum class   | DecalStructure { LINE
, FAN
, STRIP
, LIST
 } | 
|   | 
| enum class   | CullMode : uint8_t { NONE = 0
, CW = 1
, CCW = 2
 } | 
|   | 
 | 
| template<class TL , class TR >  | 
| constexpr auto  | operator* (const TL &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator* (const v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator* (const v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator*= (v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator/ (const TL &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator/ (const v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator/ (const v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator/= (v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class T >  | 
| constexpr auto  | operator+ (const v_2d< T > &lhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator+ (const TL &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator+ (const v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator+ (const v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator+= (v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator+= (v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class T >  | 
| constexpr auto  | operator- (const v_2d< T > &lhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator- (const TL &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator- (const v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator- (const v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr auto  | operator-= (v_2d< TL > &lhs, const TR &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr bool  | operator< (const v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class TL , class TR >  | 
| constexpr bool  | operator> (const v_2d< TL > &lhs, const v_2d< TR > &rhs) | 
|   | 
| template<class T >  | 
| constexpr std::ostream &  | operator<< (std::ostream &os, const v_2d< T > &rhs) | 
|   | 
| Pixel  | PixelF (float red, float green, float blue, float alpha=1.0f) | 
|   | 
| Pixel  | PixelLerp (const olc::Pixel &p1, const olc::Pixel &p2, float t) | 
|   | 
| static const Pixel  | DARK_GREY (128, 128, 128) | 
|   | 
| static const Pixel  | VERY_DARK_GREY (64, 64, 64) | 
|   | 
| static const Pixel  | RED (255, 0, 0) | 
|   | 
| static const Pixel  | DARK_RED (128, 0, 0) | 
|   | 
| static const Pixel  | VERY_DARK_RED (64, 0, 0) | 
|   | 
| static const Pixel  | YELLOW (255, 255, 0) | 
|   | 
| static const Pixel  | DARK_YELLOW (128, 128, 0) | 
|   | 
| static const Pixel  | VERY_DARK_YELLOW (64, 64, 0) | 
|   | 
| static const Pixel  | GREEN (0, 255, 0) | 
|   | 
| static const Pixel  | DARK_GREEN (0, 128, 0) | 
|   | 
| static const Pixel  | VERY_DARK_GREEN (0, 64, 0) | 
|   | 
| static const Pixel  | CYAN (0, 255, 255) | 
|   | 
| static const Pixel  | DARK_CYAN (0, 128, 128) | 
|   | 
| static const Pixel  | VERY_DARK_CYAN (0, 64, 64) | 
|   | 
| static const Pixel  | BLUE (0, 0, 255) | 
|   | 
| static const Pixel  | DARK_BLUE (0, 0, 128) | 
|   | 
| static const Pixel  | VERY_DARK_BLUE (0, 0, 64) | 
|   | 
| static const Pixel  | MAGENTA (255, 0, 255) | 
|   | 
| static const Pixel  | DARK_MAGENTA (128, 0, 128) | 
|   | 
| static const Pixel  | VERY_DARK_MAGENTA (64, 0, 64) | 
|   | 
| static const Pixel  | WHITE (255, 255, 255) | 
|   | 
| static const Pixel  | BLACK (0, 0, 0) | 
|   | 
| static const Pixel  | BLANK (0, 0, 0, 0) | 
|   |