2#include "../foray_basics.hpp"
Base class for operating system events.
Definition foray_event.hpp:13
Class of which a single instance needs to be present for interaction with the operating system via SD...
Definition foray_osmanager.hpp:10
static OsManager * Instance()
Definition foray_osmanager.hpp:16
InputDevice * Mouse()
Definition foray_osmanager.hpp:12
InputDevice * mMouse
Mouse input device. Assumed standard and always present.
Definition foray_osmanager.hpp:40
const InputDevice * Mouse() const
Definition foray_osmanager.hpp:13
virtual Event * TranslateEvent_Keyboard(const SDL_Event &sdl_event)
virtual Event * TranslateEvent_JoyDevice(const SDL_JoyDeviceEvent &sdl_event)
virtual Event * TranslateEvent_MouseScroll(const SDL_Event &sdl_event)
OsManager(const OsManager &other)=delete
virtual Event * TranslateEvent_JoyButton(const SDL_JoyButtonEvent &sdl_event)
virtual Event * TranslateEvent_MouseButton(const SDL_Event &sdl_event)
virtual Event * TranslateEvent_WindowFocus(Window *window, const SDL_WindowEvent &wevent, bool mouseonly, bool focus)
InputDevice * mKeyboard
Keyboard input device. Assumed standard and always present.
Definition foray_osmanager.hpp:42
virtual Event * TranslateEvent_MouseMoved(const SDL_Event &sdl_event)
virtual void Destroy()
Cleans the SDL subsystem.
OsManager(const OsManager &&other)=delete
const InputDevice * Keyboard() const
Definition foray_osmanager.hpp:15
Event * mLastEvent
Definition foray_osmanager.hpp:63
virtual Event * TranslateEvent_JoyAxis(const SDL_Event &sdl_event)
virtual void Init()
Inits the SDL subsystem and catalogues input devices.
virtual bool TranslateSDLEvent(const SDL_Event &sdl_event, Event *&out_event)
Translates SDL event structures to Event class objects.
std::vector< std::unique_ptr< InputDevice > > mInputDevices
A collection of all non-standard input devices recognized by this application.
Definition foray_osmanager.hpp:47
virtual std::vector< InputDevice * > InputDevices()
A collection of all non-standard input devices recognized by this application.
virtual const Event * PollEvent()
Polls next event from system event queue. Retuns nullptr if no event present.
virtual Event * TranslateEvent_WindowClosed(Window *window, uint32_t timestamp)
OsManager & operator=(const OsManager &other)=delete
virtual Event * TranslateEvent_WindowResized(Window *window, const SDL_WindowEvent &wevent)
static OsManager * sInstance
Definition foray_osmanager.hpp:44
InputDevice * Keyboard()
Definition foray_osmanager.hpp:14
Window class. Provides access to common properties of operating system level windows.
Definition foray_window.hpp:15
Definition foray_env.hpp:7