Unravel Engine C++ Reference
Loading...
Searching...
No Matches
mouse_action_map.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "action_id.hpp"
4#include "mouse.hpp"
5#include "mouse_button.hpp"
6#include "axis_range.hpp"
7#include "input_type.hpp"
8#include <map>
9#include <vector>
10
11namespace input
12{
13
14enum class mouse_axis
15{
16 x,
17 y,
18 scroll,
19};
20
22{
23public:
24
26 {
29 uint32_t value{};
30
31 friend auto operator==(const mouse_entry& lhs, const mouse_entry& rhs) -> bool = default;
32 };
33
34 std::map<action_id_t, std::vector<mouse_entry>> entries_by_action_id_;
35
36 auto get_analog_value(const action_id_t& action, const mouse& device) const -> float;
37 auto get_digital_value(const action_id_t& action, const mouse& device) const -> bool;
38 auto is_pressed(const action_id_t& action, const mouse& device) const -> bool;
39 auto is_released(const action_id_t& action, const mouse& device) const -> bool;
40 auto is_down(const action_id_t& action, const mouse& device) const -> bool;
41
42 void map(const action_id_t& action,
45 void map(const action_id_t& action, mouse_button button);
46
47 friend auto operator==(const mouse_action_map& lhs, const mouse_action_map& rhs) -> bool = default;
48};
49} // namespace input
auto is_pressed(const action_id_t &action, const mouse &device) const -> bool
auto get_digital_value(const action_id_t &action, const mouse &device) const -> bool
void map(const action_id_t &action, mouse_axis axis, axis_range range=axis_range::full)
friend auto operator==(const mouse_action_map &lhs, const mouse_action_map &rhs) -> bool=default
auto is_down(const action_id_t &action, const mouse &device) const -> bool
std::map< action_id_t, std::vector< mouse_entry > > entries_by_action_id_
auto get_analog_value(const action_id_t &action, const mouse &device) const -> float
auto is_released(const action_id_t &action, const mouse &device) const -> bool
std::string action_id_t
Definition action_id.hpp:6
friend auto operator==(const mouse_entry &lhs, const mouse_entry &rhs) -> bool=default
uint32_t value
input_type type