KarmaEngine
Game Engine for practical learning and research purposes
Loading...
Searching...
No Matches
Karma
src
Platform
Linux
LinuxInput.h
Go to the documentation of this file.
1
10
#pragma once
11
12
#include "
Karma/Input.h
"
13
14
namespace
Karma
15
{
19
struct
LinuxInputData
:
InputData
20
{
26
LinuxInputData
() {}
27
36
Input::EventCallbackFn
EventCallback
;
37
};
38
42
class
KARMA_API
LinuxInput
:
public
Input
43
{
44
public
:
50
LinuxInput
();
51
60
void
SetEventCallback
(
const
EventCallbackFn& callback,
Window
* window)
override
;
61
protected
:
62
70
virtual
bool
IsKeyPressedImpl
(
int
keycode)
override
;
71
79
virtual
bool
IsMouseButtonPressedImpl
(
int
button)
override
;
80
88
virtual
bool
IsMouseButtonReleasedImpl
(
int
button)
override
;
89
99
virtual
bool
IsControllerButtonPressedImpl
(
int
button,
int
cID)
override
;
100
110
virtual
float
ControllerAxisPivotValImpl
(
int
axis,
int
cID)
override
;
111
117
virtual
std::pair<float, float>
GetMousePositionImpl
()
override
;
118
124
virtual
float
GetMouseXImpl
()
override
;
125
131
virtual
float
GetMouseYImpl
()
override
;
132
133
// Need to hook GLFW specific calls
134
LinuxInputData
m_Data;
135
};
136
}
KARMA_API
#define KARMA_API
Defining Karma's API macro for storage class information.
Definition
Core.h:41
Input.h
This file contains input class and relevant data structures.
Karma::Input::Input
Input(InputData &inputDatRef)
A constructor for initializing the Input class.
Definition
Input.cpp:57
Karma::LinuxInput::IsMouseButtonPressedImpl
virtual bool IsMouseButtonPressedImpl(int button) override
Linux implementation of Linux IsMouseButtonPressed function.
Definition
LinuxInput.cpp:55
Karma::LinuxInput::IsKeyPressedImpl
virtual bool IsKeyPressedImpl(int keycode) override
Linux implementation of Linux IsKeyPressed function.
Definition
LinuxInput.cpp:47
Karma::LinuxInput::GetMousePositionImpl
virtual std::pair< float, float > GetMousePositionImpl() override
Linux implementation of GetMousePosition function.
Definition
LinuxInput.cpp:137
Karma::LinuxInput::ControllerAxisPivotValImpl
virtual float ControllerAxisPivotValImpl(int axis, int cID) override
Linux implementation of ControllerAxisPivotVal function.
Definition
LinuxInput.cpp:107
Karma::LinuxInput::GetMouseXImpl
virtual float GetMouseXImpl() override
Linux implementation of GetMouseX function.
Definition
LinuxInput.cpp:146
Karma::LinuxInput::GetMouseYImpl
virtual float GetMouseYImpl() override
Linux implementation of GetMouseY function.
Definition
LinuxInput.cpp:162
Karma::LinuxInput::SetEventCallback
void SetEventCallback(const EventCallbackFn &callback, Window *window) override
Set the event callback for the Linux Input.
Definition
LinuxInput.cpp:13
Karma::LinuxInput::IsControllerButtonPressedImpl
virtual bool IsControllerButtonPressedImpl(int button, int cID) override
Linux implementation of IsControllerButtonPressed function.
Definition
LinuxInput.cpp:71
Karma::LinuxInput::LinuxInput
LinuxInput()
A constructor.
Definition
LinuxInput.cpp:9
Karma::LinuxInput::IsMouseButtonReleasedImpl
virtual bool IsMouseButtonReleasedImpl(int button) override
Linux implementation of IsMouseButtonReleased function.
Definition
LinuxInput.cpp:63
Karma::Window
The abstract base class of Karma's window (for platform specific purposes)
Definition
Window.h:63
Karma::InputData
Base class for Input relevant data for the variety of platforms Karma supports.
Definition
Input.h:52
Karma::LinuxInputData
LinuxInput specific data structure.
Definition
LinuxInput.h:20
Karma::LinuxInputData::EventCallback
Input::EventCallbackFn EventCallback
The function to call on detecting Input event from API.
Definition
LinuxInput.h:36
Karma::LinuxInputData::LinuxInputData
LinuxInputData()
A Constructor.
Definition
LinuxInput.h:26
Generated by
1.13.2