olcPixelGameEngine v2.28
The official distribution of olcPixelGameEngine, a tool used in javidx9's YouTube videos and projects
Loading...
Searching...
No Matches
olcPixelGameEngine.h File Reference
#include <cmath>
#include <cstdint>
#include <string>
#include <iostream>
#include <streambuf>
#include <sstream>
#include <chrono>
#include <vector>
#include <list>
#include <thread>
#include <atomic>
#include <fstream>
#include <map>
#include <functional>
#include <algorithm>
#include <array>
#include <cstring>
#include <experimental/filesystem>

Go to the source code of this file.

Classes

struct  olc::v_2d< T >
 
struct  olc::Pixel
 
struct  olc::HWButton
 
struct  olc::ResourceBuffer
 
class  olc::ResourcePack
 
class  olc::ImageLoader
 
class  olc::Sprite
 
class  olc::Decal
 
class  olc::Renderable
 
struct  olc::DecalInstance
 
struct  olc::LayerDesc
 
class  olc::Renderer
 
class  olc::Platform
 
class  olc::PixelGameEngine
 
class  olc::PGEX
 

Namespaces

namespace  olc
 
namespace  olc::Mouse
 

Macros

#define PGE_VER   228
 
#define USE_EXPERIMENTAL_FS
 
#define OLC_KEYBOARD_UK
 
#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING
 
#define olcT(s)   s
 
#define UNUSED(x)   (void)(x)
 
#define OLC_GFX_OPENGL10
 
#define FILE_RESOLVE(url, file)
 
#define OLC_VECTOR2D_DEFINED   1
 

Typedefs

typedef v_2d< int32_t > olc::vi2d
 
typedef v_2d< uint32_t > olc::vu2d
 
typedef v_2d< float > olc::vf2d
 
typedef v_2d< double > olc::vd2d
 

Enumerations

enum  olc::rcode { olc::FAIL = 0 , olc::OK = 1 , olc::NO_FILE = -1 }
 
enum  olc::Key {
  olc::NONE , olc::A , olc::B , olc::C ,
  olc::D , olc::E , olc::F , olc::G ,
  olc::H , olc::I , olc::J , olc::K ,
  olc::L , olc::M , olc::N , olc::O ,
  olc::P , olc::Q , olc::R , olc::S ,
  olc::T , olc::U , olc::V , olc::W ,
  olc::X , olc::Y , olc::Z , olc::K0 ,
  olc::K1 , olc::K2 , olc::K3 , olc::K4 ,
  olc::K5 , olc::K6 , olc::K7 , olc::K8 ,
  olc::K9 , olc::F1 , olc::F2 , olc::F3 ,
  olc::F4 , olc::F5 , olc::F6 , olc::F7 ,
  olc::F8 , olc::F9 , olc::F10 , olc::F11 ,
  olc::F12 , olc::UP , olc::DOWN , olc::LEFT ,
  olc::RIGHT , olc::SPACE , olc::TAB , olc::SHIFT ,
  olc::CTRL , olc::INS , olc::DEL , olc::HOME ,
  olc::END , olc::PGUP , olc::PGDN , olc::BACK ,
  olc::ESCAPE , olc::RETURN , olc::ENTER , olc::PAUSE ,
  olc::SCROLL , olc::NP0 , olc::NP1 , olc::NP2 ,
  olc::NP3 , olc::NP4 , olc::NP5 , olc::NP6 ,
  olc::NP7 , olc::NP8 , olc::NP9 , olc::NP_MUL ,
  olc::NP_DIV , olc::NP_ADD , olc::NP_SUB , olc::NP_DECIMAL ,
  olc::PERIOD , olc::EQUALS , olc::COMMA , olc::MINUS ,
  olc::OEM_1 , olc::OEM_2 , olc::OEM_3 , olc::OEM_4 ,
  olc::OEM_5 , olc::OEM_6 , olc::OEM_7 , olc::OEM_8 ,
  olc::CAPS_LOCK , olc::ENUM_END
}
 
enum class  olc::DecalMode {
  olc::NORMAL , olc::ADDITIVE , olc::MULTIPLICATIVE , olc::STENCIL ,
  olc::ILLUMINATE , olc::WIREFRAME
}
 
enum class  olc::DecalStructure { olc::LINE , olc::FAN , olc::STRIP , olc::LIST }
 

Functions

template<class TL , class TR >
constexpr auto olc::operator* (const TL &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator* (const v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator* (const v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator*= (v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator/ (const TL &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator/ (const v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator/ (const v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator/= (v_2d< TL > &lhs, const TR &rhs)
 
template<class T >
constexpr auto olc::operator+ (const v_2d< T > &lhs)
 
template<class TL , class TR >
constexpr auto olc::operator+ (const TL &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator+ (const v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator+ (const v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator+= (v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator+= (v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class T >
constexpr auto olc::operator- (const v_2d< T > &lhs)
 
template<class TL , class TR >
constexpr auto olc::operator- (const TL &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator- (const v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator- (const v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr auto olc::operator-= (v_2d< TL > &lhs, const TR &rhs)
 
template<class TL , class TR >
constexpr bool olc::operator< (const v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class TL , class TR >
constexpr bool olc::operator> (const v_2d< TL > &lhs, const v_2d< TR > &rhs)
 
template<class T >
constexpr std::ostream & olc::operator<< (std::ostream &os, const v_2d< T > &rhs)
 
Pixel olc::PixelF (float red, float green, float blue, float alpha=1.0f)
 
Pixel olc::PixelLerp (const olc::Pixel &p1, const olc::Pixel &p2, float t)
 
static const Pixel olc::DARK_GREY (128, 128, 128)
 
static const Pixel olc::VERY_DARK_GREY (64, 64, 64)
 
static const Pixel olc::RED (255, 0, 0)
 
static const Pixel olc::DARK_RED (128, 0, 0)
 
static const Pixel olc::VERY_DARK_RED (64, 0, 0)
 
static const Pixel olc::YELLOW (255, 255, 0)
 
static const Pixel olc::DARK_YELLOW (128, 128, 0)
 
static const Pixel olc::VERY_DARK_YELLOW (64, 64, 0)
 
static const Pixel olc::GREEN (0, 255, 0)
 
static const Pixel olc::DARK_GREEN (0, 128, 0)
 
static const Pixel olc::VERY_DARK_GREEN (0, 64, 0)
 
static const Pixel olc::CYAN (0, 255, 255)
 
static const Pixel olc::DARK_CYAN (0, 128, 128)
 
static const Pixel olc::VERY_DARK_CYAN (0, 64, 64)
 
static const Pixel olc::BLUE (0, 0, 255)
 
static const Pixel olc::DARK_BLUE (0, 0, 128)
 
static const Pixel olc::VERY_DARK_BLUE (0, 0, 64)
 
static const Pixel olc::MAGENTA (255, 0, 255)
 
static const Pixel olc::DARK_MAGENTA (128, 0, 128)
 
static const Pixel olc::VERY_DARK_MAGENTA (64, 0, 64)
 
static const Pixel olc::WHITE (255, 255, 255)
 
static const Pixel olc::BLACK (0, 0, 0)
 
static const Pixel olc::BLANK (0, 0, 0, 0)
 

Variables

constexpr uint8_t olc::nMouseButtons = 5
 
constexpr uint8_t olc::nDefaultAlpha = 0xFF
 
constexpr uint32_t olc::nDefaultPixel = uint32_t(nDefaultAlpha << 24)
 
constexpr uint8_t olc::nTabSizeInSpaces = 4
 
constexpr size_t olc::OLC_MAX_VERTS = 128
 

Macro Definition Documentation

◆ _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING

#define _SILENCE_EXPERIMENTAL_FILESYSTEM_DEPRECATION_WARNING

◆ FILE_RESOLVE

#define FILE_RESOLVE ( url,
file )

◆ OLC_GFX_OPENGL10

#define OLC_GFX_OPENGL10

◆ OLC_KEYBOARD_UK

#define OLC_KEYBOARD_UK

◆ OLC_VECTOR2D_DEFINED

#define OLC_VECTOR2D_DEFINED   1

◆ olcT

#define olcT ( s)    s

◆ PGE_VER

#define PGE_VER   228

◆ UNUSED

#define UNUSED ( x)    (void)(x)

◆ USE_EXPERIMENTAL_FS

#define USE_EXPERIMENTAL_FS