载入中...
搜索中...
未找到
Joystick.h
浏览该文件的文档.
1#pragma once
2
3#include "joystick/Joystick.h"
4#include "joystick/sdl/Pad.h"
5
6#include <list>
7#include <map>
8#include <string>
9#include <vector>
10
11namespace eve::joystick::sdl {
12
15public:
16 Joystick();
17 ~Joystick() override;
18
19 Pad* addJoystick(int deviceindex) override;
20 void removeJoystick(eve::joystick::Pad* pad) override;
21 Pad* getJoystickFromID(int instanceid) override;
22 Pad* getJoystick(int joyindex) override;
23 int getIndex(const eve::joystick::Pad* pad) override;
24 int getJoystickCount() const override;
25
26 void loadGamepadMappings(const std::string& mappings) override;
27 std::string saveGamepadMappings() override;
28 std::string getGamepadMappingString(const std::string& guid) const override;
29
30private:
31 void checkGamepads(const std::string& guid) const;
32 std::string getDeviceGUID(int deviceindex) const;
33
34 std::vector<Pad*> activeSticks_;
35 std::list<Pad*> joysticks_;
36 std::map<std::string, bool> recentGamepadGUIDs_;
37};
38
39} // namespace eve::joystick::sdl
Joystick / gamepad manager. Tracks connected pads and gamecontroller mappings.
Definition Joystick.h:13
One connected (or previously connected) joystick / gamepad device. Gamepad axis/button names follow S...
Definition Pad.h:13
SDL 摇杆/手柄模块后端实现(设备枚举与映射)。
Definition Joystick.h:14
int getJoystickCount() const override
Definition Joystick.cpp:49
std::string saveGamepadMappings() override
Definition Joystick.cpp:185
void removeJoystick(eve::joystick::Pad *pad) override
Definition Joystick.cpp:101
std::string getGamepadMappingString(const std::string &guid) const override
Definition Joystick.cpp:172
Pad * addJoystick(int deviceindex) override
Open a device by SDL device index; returns null on failure.
Definition Joystick.cpp:60
void loadGamepadMappings(const std::string &mappings) override
Load SDL GameController mapping database (newline-separated).
Definition Joystick.cpp:139
int getIndex(const eve::joystick::Pad *pad) override
Definition Joystick.cpp:42
Pad * getJoystick(int joyindex) override
Definition Joystick.cpp:37
Pad * getJoystickFromID(int instanceid) override
Definition Joystick.cpp:53
SDL 手柄/摇杆后端实现(含 GameController 与振动)。
Definition Pad.h:13