Sparkle 0.0.1
Loading...
Searching...
No Matches
spk_update_event.hpp
1#pragma once
2
3#include "structure/system/event/spk_ievent.hpp"
4
5#include "structure/system/device/spk_keyboard.hpp"
6#include "structure/system/device/spk_mouse.hpp"
7
8namespace spk
9{
14 struct UpdateEvent : public IEvent
15 {
19 const spk::Mouse *mouse = nullptr;
21 const spk::Keyboard *keyboard = nullptr;
22
23 UpdateEvent() = default;
30 static UpdateEvent create(const spk::Mouse *p_mouse, spk::Keyboard *p_keyboard);
31 };
32}
Strongly-typed time span with cached conversions between ns/ms/s.
Definition spk_duration.hpp:15
Base event metadata shared by all system events.
Definition spk_ievent.hpp:13
Captures keyboard state and key definitions.
Definition spk_keyboard.hpp:16
Captures mouse state at a given instant (buttons, position, wheel).
Definition spk_mouse.hpp:17
const spk::Mouse * mouse
Snapshot of the mouse state for the frame.
Definition spk_update_event.hpp:19
static UpdateEvent create(const spk::Mouse *p_mouse, spk::Keyboard *p_keyboard)
Helper to build an update event from input devices.
Definition spk_update_event.cpp:7
Duration deltaTime
Time elapsed since the previous frame.
Definition spk_update_event.hpp:17
const spk::Keyboard * keyboard
Snapshot of the keyboard state for the frame.
Definition spk_update_event.hpp:21