thunderbrew/src/event/CEvent.hpp
2023-01-05 21:07:14 -06:00

40 lines
903 B
C++

#ifndef EVENT_C_EVENT_HPP
#define EVENT_C_EVENT_HPP
#include "event/Types.hpp"
#include <cstdint>
#include <common/Ref.hpp>
class CEvent : public TRefCnt {
public:
// Member variables
uint32_t id;
void* param;
};
class CCharEvent : public CEvent, public EVENT_DATA_CHAR {
public:
// Member functions
CCharEvent& operator=(const EVENT_DATA_CHAR& data);
};
class CKeyEvent : public CEvent, public EVENT_DATA_KEY {
public:
// Member functions
CKeyEvent& operator=(const EVENT_DATA_KEY& data);
};
class CMouseEvent : public CEvent, public EVENT_DATA_MOUSE {
public:
// Member functions
CMouseEvent& operator=(const EVENT_DATA_MOUSE& data);
};
class CSizeEvent : public CEvent, public EVENT_DATA_SIZE {
public:
// Member functions
CSizeEvent& operator=(const EVENT_DATA_SIZE& data);
};
#endif