1 #ifndef AESALON_PLATFORM_EVENT_H
2 #define AESALON_PLATFORM_EVENT_H
6 #include "misc/SmartPointer.h"
11 /** Event class. Note that until overloaded, this base class is rather
15 /** Event type enum, used for dynamic_cast<>ing later. */
20 /** Current event type. */
23 /** Constructor, takes a type. All other stored data is in the derived
25 Event(event_type_e type
) : type(type
) {}
28 /** Returns the type of the current event.
29 @return The type of the current event.
31 event_type_e
get_type() const { return type
; }
33 virtual std::string
serialize();
34 static Misc::SmartPointer
<Event
> deserialize(std::string data
);
37 } // namespace Platform
38 } // namespace Aesalon