cae
0.0.0
Cross-API graphics engine
Loading...
Searching...
No Matches
AInput.hpp
Go to the documentation of this file.
1
///
2
/// @file AInput.hpp
3
/// @brief This file contains the input abstract class
4
/// @namespace cae
5
///
6
7
#pragma once
8
9
#include "
Interfaces/Input/IInput.hpp
"
10
11
namespace
cae
12
{
13
14
///
15
/// @interface AInput
16
/// @brief Abstract class for inputs
17
/// @namespace cae
18
///
19
class
AInput
:
public
IInput
20
{
21
22
public
:
23
~AInput
()
override
=
default
;
24
25
const
std::unique_ptr<IKeyboard> &
getKeyboard
()
const override
{
return
m_keyboard
; }
26
const
std::unique_ptr<IMouse> &
getMouse
()
const override
{
return
m_mouse
; }
27
const
std::vector<std::unique_ptr<IGamepad>> &
getGamepads
()
const override
{
return
m_gamepads
; }
28
29
void
setGamepads
(std::vector<std::unique_ptr<IGamepad>> &gamepads)
override
30
{
31
m_gamepads
= std::move(gamepads);
32
}
33
void
setKeyboard
(std::unique_ptr<IKeyboard> &keyboard)
override
{
m_keyboard
= std::move(keyboard); }
34
void
setMouse
(std::unique_ptr<IMouse> &mouse)
override
{
m_mouse
= std::move(mouse); }
35
36
private
:
37
std::unique_ptr<IKeyboard>
m_keyboard
;
38
std::unique_ptr<IMouse>
m_mouse
;
39
std::vector<std::unique_ptr<IGamepad>>
m_gamepads
;
40
};
// interface AInput
41
42
}
// namespace cae
IInput.hpp
This file contains the input interface.
cae::AInput
Abstract class for inputs.
Definition
AInput.hpp:20
cae::AInput::~AInput
~AInput() override=default
cae::AInput::m_gamepads
std::vector< std::unique_ptr< IGamepad > > m_gamepads
Definition
AInput.hpp:39
cae::AInput::setGamepads
void setGamepads(std::vector< std::unique_ptr< IGamepad > > &gamepads) override
Definition
AInput.hpp:29
cae::AInput::setMouse
void setMouse(std::unique_ptr< IMouse > &mouse) override
Definition
AInput.hpp:34
cae::AInput::getGamepads
const std::vector< std::unique_ptr< IGamepad > > & getGamepads() const override
Definition
AInput.hpp:27
cae::AInput::m_mouse
std::unique_ptr< IMouse > m_mouse
Definition
AInput.hpp:38
cae::AInput::getKeyboard
const std::unique_ptr< IKeyboard > & getKeyboard() const override
Definition
AInput.hpp:25
cae::AInput::setKeyboard
void setKeyboard(std::unique_ptr< IKeyboard > &keyboard) override
Definition
AInput.hpp:33
cae::AInput::getMouse
const std::unique_ptr< IMouse > & getMouse() const override
Definition
AInput.hpp:26
cae::AInput::m_keyboard
std::unique_ptr< IKeyboard > m_keyboard
Definition
AInput.hpp:37
cae::IInput
Interface for inputs.
Definition
IInput.hpp:22
cae
modules
Interfaces
include
Interfaces
Input
AInput.hpp
Generated by
1.11.0