Raven Engine v0.1
Loading...
Searching...
No Matches

Input handling system. More...

Classes

class  Raven::Input
 Provides static methods to query keyboard and mouse state. More...
class  Raven::KeyEvent
 Abstract base class for keyboard-related events. More...
class  Raven::KeyPressedEvent
 Event triggered when a key is pressed. More...
class  Raven::KeyReleasedEvent
 Event triggered when a key is released. More...
class  Raven::MouseScrolledEvent
 Event triggered when the mouse wheel is scrolled. More...
class  Raven::MouseButtonEvent
 Base class for mouse button events. More...
class  Raven::MouseButtonPressedEvent
 Event triggered when a mouse button is pressed. More...
class  Raven::MouseButtonReleasedEvent
 Event triggered when a mouse button is released. More...

Typedefs

using Raven::MouseCode = u8
 Typedef for unsigned 8-bit integer used to represent mouse button codes.

Enumerations

enum  : KeyCode {
  Raven::Key::Space = 32 , Raven::Key::Apostrophe = 39 , Raven::Key::Comma = 44 , Raven::Key::Minus = 45 ,
  Raven::Key::Period = 46 , Raven::Key::Slash = 47 , Raven::Key::D0 = 48 , Raven::Key::D1 = 49 ,
  Raven::Key::D2 = 50 , Raven::Key::D3 = 51 , Raven::Key::D4 = 52 , Raven::Key::D5 = 53 ,
  Raven::Key::D6 = 54 , Raven::Key::D7 = 55 , Raven::Key::D8 = 56 , Raven::Key::D9 = 57 ,
  Raven::Key::Semicolon = 59 , Raven::Key::Equal = 61 , Raven::Key::A = 65 , Raven::Key::B = 66 ,
  Raven::Key::C = 67 , Raven::Key::D = 68 , Raven::Key::E = 69 , Raven::Key::F = 70 ,
  Raven::Key::G = 71 , Raven::Key::H = 72 , Raven::Key::I = 73 , Raven::Key::J = 74 ,
  Raven::Key::K = 75 , Raven::Key::L = 76 , Raven::Key::M = 77 , Raven::Key::N = 78 ,
  Raven::Key::O = 79 , Raven::Key::P = 80 , Raven::Key::Q = 81 , Raven::Key::R = 82 ,
  Raven::Key::S = 83 , Raven::Key::T = 84 , Raven::Key::U = 85 , Raven::Key::V = 86 ,
  Raven::Key::W = 87 , Raven::Key::X = 88 , Raven::Key::Y = 89 , Raven::Key::Z = 90 ,
  Raven::Key::LeftBracket = 91 , Raven::Key::Backslash = 92 , Raven::Key::RightBracket = 93 , Raven::Key::GraveAccent = 96 ,
  Raven::Key::World1 = 161 , Raven::Key::World2 = 162 , Raven::Key::Escape = 256 , Raven::Key::Enter = 257 ,
  Raven::Key::Tab = 258 , Raven::Key::Backspace = 259 , Raven::Key::Insert = 260 , Raven::Key::Delete = 261 ,
  Raven::Key::Right = 262 , Raven::Key::Left = 263 , Raven::Key::Down = 264 , Raven::Key::Up = 265 ,
  Raven::Key::PageUp = 266 , Raven::Key::PageDown = 267 , Raven::Key::Home = 268 , Raven::Key::End = 269 ,
  Raven::Key::CapsLock = 280 , Raven::Key::ScrollLock = 281 , Raven::Key::NumLock = 282 , Raven::Key::PrintScreen = 283 ,
  Raven::Key::Pause = 284 , Raven::Key::F1 = 290 , Raven::Key::F2 = 291 , Raven::Key::F3 = 292 ,
  Raven::Key::F4 = 293 , Raven::Key::F5 = 294 , Raven::Key::F6 = 295 , Raven::Key::F7 = 296 ,
  Raven::Key::F8 = 297 , Raven::Key::F9 = 298 , Raven::Key::F10 = 299 , Raven::Key::F11 = 300 ,
  Raven::Key::F12 = 301 , Raven::Key::F13 = 302 , Raven::Key::F14 = 303 , Raven::Key::F15 = 304 ,
  Raven::Key::F16 = 305 , Raven::Key::F17 = 306 , Raven::Key::F18 = 307 , Raven::Key::F19 = 308 ,
  Raven::Key::F20 = 309 , Raven::Key::F21 = 310 , Raven::Key::F22 = 311 , Raven::Key::F23 = 312 ,
  Raven::Key::F24 = 313 , Raven::Key::F25 = 314 , Raven::Key::KP0 = 320 , Raven::Key::KP1 = 321 ,
  Raven::Key::KP2 = 322 , Raven::Key::KP3 = 323 , Raven::Key::KP4 = 324 , Raven::Key::KP5 = 325 ,
  Raven::Key::KP6 = 326 , Raven::Key::KP7 = 327 , Raven::Key::KP8 = 328 , Raven::Key::KP9 = 329 ,
  Raven::Key::KPDecimal = 330 , Raven::Key::KPDivide = 331 , Raven::Key::KPMultiply = 332 , Raven::Key::KPSubtract = 333 ,
  Raven::Key::KPAdd = 334 , Raven::Key::KPEnter = 335 , Raven::Key::KPEqual = 336 , Raven::Key::LeftShift = 340 ,
  Raven::Key::LeftControl = 341 , Raven::Key::LeftAlt = 342 , Raven::Key::LeftSuper = 343 , Raven::Key::RightShift = 344 ,
  Raven::Key::RightControl = 345 , Raven::Key::RightAlt = 346 , Raven::Key::RightSuper = 347 , Raven::Key::Menu = 348
}
 Key code constants based on GLFW3. More...
enum  : MouseCode {
  Raven::Mouse::Button0 = 0 , Raven::Mouse::Button1 = 1 , Raven::Mouse::Button2 = 2 , Raven::Mouse::Button3 = 3 ,
  Raven::Mouse::Button4 = 4 , Raven::Mouse::Button5 = 5 , Raven::Mouse::Button6 = 6 , Raven::Mouse::Button7 = 7 ,
  Raven::Mouse::ButtonLast = Button7 , Raven::Mouse::ButtonLeft = Button0 , Raven::Mouse::ButtonRight = Button1 , Raven::Mouse::ButtonMiddle = Button2
}
 Enum for mouse button codes. More...

Detailed Description

Input handling system.

Typedef Documentation

◆ MouseCode

Typedef for unsigned 8-bit integer used to represent mouse button codes.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : KeyCode

Key code constants based on GLFW3.

These codes map directly to platform-native values and are used internally by the input layer. Feel free to build higher-level abstractions if this raw mess isn’t your vibe.

Enumerator
Space 
Apostrophe 
Comma 
Minus 
Period 
Slash 
D0 
D1 
D2 
D3 
D4 
D5 
D6 
D7 
D8 
D9 
Semicolon 
Equal 
LeftBracket 
Backslash 
RightBracket 
GraveAccent 
World1 
World2 
Escape 
Enter 
Tab 
Backspace 
Insert 
Delete 
Right 
Left 
Down 
Up 
PageUp 
PageDown 
Home 
End 
CapsLock 
ScrollLock 
NumLock 
PrintScreen 
Pause 
F1 
F2 
F3 
F4 
F5 
F6 
F7 
F8 
F9 
F10 
F11 
F12 
F13 
F14 
F15 
F16 
F17 
F18 
F19 
F20 
F21 
F22 
F23 
F24 
F25 
KP0 
KP1 
KP2 
KP3 
KP4 
KP5 
KP6 
KP7 
KP8 
KP9 
KPDecimal 
KPDivide 
KPMultiply 
KPSubtract 
KPAdd 
KPEnter 
KPEqual 
LeftShift 
LeftControl 
LeftAlt 
LeftSuper 
RightShift 
RightControl 
RightAlt 
RightSuper 
Menu 

◆ anonymous enum

anonymous enum : MouseCode

Enum for mouse button codes.

Defines the mouse buttons supported by the Raven input system. These are used in input handling to identify specific buttons for events like mouse clicks.

Enumerator
Button0 

Left mouse button

Button1 

Right mouse button

Button2 

Middle mouse button

Button3 

Mouse button 3

Button4 

Mouse button 4

Button5 

Mouse button 5

Button6 

Mouse button 6

Button7 

Mouse button 7

ButtonLast 

The last mouse button supported

ButtonLeft 

Alias for left mouse button

ButtonRight 

Alias for right mouse button

ButtonMiddle 

Alias for middle mouse button