19 #include <SFML/Window.hpp> 22 #include <IJoystickTranslation.h> 27 typedef std::function<float (unsigned int)> valueRetriever;
30 unsigned int getJoystickID();
31 float getAxisValue(Axis axis);
32 float getButtonValue(Button button);
33 bool isDefaultMapping();
35 static valueRetriever buttonValueRetriever(
unsigned int button);
36 static valueRetriever axisValueRetriever( sf::Joystick::Axis axis,
bool inverted);
37 static valueRetriever axisFromButtonsRetriever(
unsigned int buttonPos,
unsigned int buttonNeg);
38 static valueRetriever axisFromButtonRetriever(
unsigned int button);
39 static valueRetriever buttonFromAxisRetriever(sf::Joystick::Axis axis);
40 static valueRetriever buttonFromHalfAxisRetriever(sf::Joystick::Axis axis,
bool positiveElseNegative);
41 static valueRetriever valRetriever(
float retrieve);
43 void addButton(Button,valueRetriever);
44 void addAxis(Axis,valueRetriever);
47 unsigned int joystickID;
50 std::map<Button,valueRetriever> xboxToGenericButton;
52 std::map<Axis,valueRetriever> xboxToGenericAxis;