SDEngine
Game Engine
Loading...
Searching...
No Matches
Event.hpp File Reference
#include <cstddef>
#include <string>
#include <type_traits>
#include "SD/core/types.hpp"
+ Include dependency graph for Event.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  sd::Event
 

Namespaces

namespace  sd
 

Macros

#define EVENT_CLASS_TYPE(type)
 
#define EVENT_CLASS_CATEGORY(category)
 

Enumerations

enum class  sd::EventType {
  sd::NONE = 0 , sd::APP_TICK , sd::APP_UPDATE , sd::APP_RENDER ,
  sd::APP_TERMINATE , sd::WINDOW_CLOSE , sd::WINDOW_RESIZE , sd::WINDOW_FOCUS ,
  sd::WINDOW_LOST_FOCUS , sd::SWAPCHAIN_OUT_OF_DATE , sd::KEY_PRESSED , sd::KEY_RELEASED ,
  sd::KEY_TYPED , sd::MOUSE_MOVED , sd::MOUSE_SCROLLED , sd::MOUSE_PRESSED ,
  sd::MOUSE_RELEASED
}
 
enum class  sd::EventCategory : u16 {
  sd::NONE = 0 , sd::EVENT_CATEGORY_ENGINE = bit(0) , sd::EVENT_CATEGORY_APPLICATION = bit(1) , sd::EVENT_CATEGORY_WINDOW = bit(2) ,
  sd::EVENT_CATEGORY_INPUT = bit(3) , sd::EVENT_CATEGORY_KEYBOARD = bit(4) , sd::EVENT_CATEGORY_MOUSE = bit(5) , sd::EVENT_CATEGORY_MOUSE_BUTTON = bit(6) ,
  sd::EVENT_CATEGORY_CONTROLLER = bit(7)
}
 

Functions

static consteval usize sd::bit (usize idx)
 
EventCategory sd::operator| (const EventCategory a, const EventCategory b)
 
bool sd::operator& (int lhs, EventCategory rhs)
 

Macro Definition Documentation

◆ EVENT_CLASS_CATEGORY

#define EVENT_CLASS_CATEGORY (   category)
Value:
virtual int get_category_flags() const override { \
return static_cast<int>(category); \
}

◆ EVENT_CLASS_TYPE

#define EVENT_CLASS_TYPE (   type)
Value:
static EventType get_static_type() { \
return EventType::type; \
} \
virtual EventType get_event_type() const override { \
return get_static_type(); \
} \
virtual const char* get_name() const override { \
return #type; \
}
constexpr T g_type_max
Definition types.hpp:21