载入中...
搜索中...
未找到
Pad.h
浏览该文件的文档.
1#pragma once
2
3#include <string>
4#include <vector>
5
6namespace eve::joystick {
7
13class Pad {
14public:
15 virtual ~Pad() = default;
16
17 virtual bool open(int deviceindex) = 0;
18 virtual void close() = 0;
19 virtual bool isConnected() const = 0;
20
21 virtual std::string getName() const = 0;
22
23 virtual int getAxisCount() const = 0;
24 virtual int getButtonCount() const = 0;
25 virtual int getHatCount() const = 0;
26
27 virtual float getAxis(int axisindex) const = 0;
28 virtual std::vector<float> getAxes() const = 0;
29 virtual std::string getHat(int hatindex) const = 0;
30
31 virtual bool isDown(int button) const = 0;
32 virtual bool isDown(const std::vector<int>& buttons) const = 0;
33
34 virtual bool openGamepad(int deviceindex) = 0;
35 virtual bool isGamepad() const = 0;
36
37 virtual float getGamepadAxis(const std::string& axis) const = 0;
38 virtual bool isGamepadDown(const std::string& button) const = 0;
39 virtual bool isGamepadDown(const std::vector<std::string>& buttons) const = 0;
40
41 virtual std::string getGamepadMappingString() const = 0;
42
43 virtual void* getHandle() const = 0;
44 virtual std::string getGUID() const = 0;
45 virtual int getInstanceID() const = 0;
46 virtual int getID() const = 0;
47
48 virtual void getDeviceInfo(int& vendorID, int& productID, int& productVersion) const = 0;
49
50 virtual bool isVibrationSupported() = 0;
51 virtual bool setVibration(float left, float right, float duration = -1.0f) = 0;
52 virtual bool setVibration() = 0;
53 virtual void getVibration(float& left, float& right) = 0;
54};
55
56float clampAxis(float x);
57
58} // namespace eve::joystick
int x
Definition Grass.cpp:135
One connected (or previously connected) joystick / gamepad device. Gamepad axis/button names follow S...
Definition Pad.h:13
virtual bool isGamepadDown(const std::vector< std::string > &buttons) const =0
virtual bool isDown(int button) const =0
virtual std::string getGamepadMappingString() const =0
virtual bool isGamepadDown(const std::string &button) const =0
virtual bool isVibrationSupported()=0
virtual float getAxis(int axisindex) const =0
virtual int getButtonCount() const =0
virtual int getAxisCount() const =0
virtual bool setVibration(float left, float right, float duration=-1.0f)=0
virtual void * getHandle() const =0
virtual float getGamepadAxis(const std::string &axis) const =0
virtual std::string getHat(int hatindex) const =0
virtual std::string getGUID() const =0
virtual bool setVibration()=0
virtual bool open(int deviceindex)=0
virtual bool isDown(const std::vector< int > &buttons) const =0
virtual bool openGamepad(int deviceindex)=0
virtual int getID() const =0
virtual int getHatCount() const =0
virtual std::vector< float > getAxes() const =0
virtual void getDeviceInfo(int &vendorID, int &productID, int &productVersion) const =0
virtual void close()=0
virtual std::string getName() const =0
virtual ~Pad()=default
virtual void getVibration(float &left, float &right)=0
virtual bool isGamepad() const =0
virtual bool isConnected() const =0
virtual int getInstanceID() const =0
float clampAxis(float x)
Definition Joystick.cpp:14