18 #include <boost/function.hpp>
19 #include <boost/unordered_map.hpp>
20 #include <boost/serialization/access.hpp>
21 #include <boost/serialization/nvp.hpp>
22 #include <boost/serialization/list.hpp>
23 #include <boost/serialization/map.hpp>
24 #include <boost/serialization/vector.hpp>
25 #include <boost/serialization/string.hpp>
26 #include <boost/archive/xml_oarchive.hpp>
27 #include <boost/archive/xml_iarchive.hpp>
48 void setNeedsTransition(
bool);
49 bool needsTransition()
const;
54 void setMinimumValue(
double);
55 double minimumValue()
const;
57 void setMaximumValue(
double);
58 double maximumValue()
const;
60 void setDescription(
const std::string&);
61 const std::string& description()
const;
66 friend class boost::serialization::access;
71 template<
class Archive>
72 void serialize(Archive & ar,
const unsigned int version)
74 ar & BOOST_SERIALIZATION_NVP(myNeedsTransition);
75 ar & BOOST_SERIALIZATION_NVP(myCycle);
76 ar & BOOST_SERIALIZATION_NVP(myMinimumValue);
77 ar & BOOST_SERIALIZATION_NVP(myMaximumValue);
78 ar & BOOST_SERIALIZATION_NVP(myDescription);
113 DtUnicode gameControllerName(
const std::string& functionGroup,
114 const std::string&
function)
const;
117 DtUnicode gameControllerFunction(
const std::string& functionGroup,
118 const std::string&
function)
const;
123 GameControlInformation gameControlInformation(
const std::string& fg)
const;
126 bool addSwitchGroup(
const std::string&);
129 bool addOrUpdateJoystickControl(
const std::string& functionGroup,
const std::string&
function);
133 const std::string& functionGroup,
const std::string&
function)
const;
136 bool removeGameControlInformationFor(
const std::string& functionGroup,
const std::string&
function);
142 bool functionGroupSpecified(
const std::string& functionGroup,
143 bool all =
false)
const;
146 friend class boost::serialization::access;
151 template<
class Archive>
152 void serialize(Archive & ar,
const unsigned int version)
154 ar & BOOST_SERIALIZATION_NVP(myJoystickConfigurationSettings);
177 std::string descriptionFor(
const std::string& functionGroup,
const std::string&
function)
const;
181 std::set<std::string> functionGroupsSimilarTo(
const std::string& functionGroup)
const;
185 bool needsTransition(
const std::string& functionalGroup,
const std::string&
function)
const;
188 bool cycle(
const std::string& functionalGroup,
const std::string&
function)
const;
191 bool toggle(
const std::string& functionalGroup,
const std::string&
function)
const;
194 void getFunctionMinMaxValues(
const std::string& functionalGroup,
const std::string&
function,
195 double& min,
double& max)
const;
198 bool addOrUpdateFunctionGroupInformation(
const std::string& functionGroup,
const std::string&
function,
204 std::vector<std::string> functionsForFunctionGroup(
const std::string&)
const;
209 friend class boost::serialization::access;
214 template<
class Archive>
215 void serialize(Archive & ar,
const unsigned int version)
217 ar & BOOST_SERIALIZATION_NVP(myFunctionGroups);
240 DtUnicode gameControllerName(
const std::string& controller,
const std::string& functionGroup,
241 const std::string&
function)
const;
244 DtUnicode gameControllerFunction(
const std::string& configuration,
const std::string& functionGroup,
245 const std::string&
function)
const;
254 std::vector<std::string> configurations()
const;
257 virtual std::string descriptionFor(
const std::string& functionGroup,
const std::string&
function)
const;
261 const std::string& functionGroup,
const std::string&
function)
const;
264 const std::string& configuration,
const std::string& functionGroup,
const std::string&
function,
268 bool removeGameControlInformationFor(
const std::string& configuration,
269 const std::string& functionGroup,
const std::string&
function);
276 const std::string& configuration,
const std::string& fg)
const;
280 const std::string& configuration,
const std::set<std::string>& fg)
const;
284 bool needsTransition(
const std::string& functionalGroup,
const std::string&
function)
const;
287 bool cycle(
const std::string& functionalGroup,
const std::string&
function)
const;
290 bool toggle(
const std::string& functionalGroup,
const std::string&
function)
const;
293 void getFunctionMinMaxValues(
const std::string& functionalGroup,
const std::string&
function,
294 double& min,
double& max)
const;
298 bool addOrUpdateJoystickControl(
const std::string& functionGroup,
const std::string&
function,
302 std::set<std::string> availableFunctionGroups()
const;
305 std::vector<std::string> functionsForFunctionGroup(
const std::string&)
const;
309 std::set<std::string> functionGroupsSimilarTo(
const std::string& functionGroup)
const;
312 bool renameConfiguration(
const std::string& old,
const std::string& renamed);
315 bool switchControlActive(
const std::string& configuration,
const std::string& switchGroup)
const;
318 bool functionGroupSpecified(
const std::string& configuration,
const std::string& functionGroup,
319 bool all =
false)
const;
323 bool hasAnyFunctionGroupAvailable(
const std::string& configuration,
bool all =
false)
const;
326 bool hasConfigurationName(
const std::string&)
const;
329 void addConfiguration(
const std::string&);
332 bool removeConfiguration(
const std::string&);
336 void setFavorite(
const std::string&);
337 const std::string& favorite()
const;
341 friend class boost::serialization::access;
346 template<
class Archive>
347 void serialize(Archive & ar,
const unsigned int version)
349 ar & BOOST_SERIALIZATION_NVP(myFavorite);
350 ar & BOOST_SERIALIZATION_NVP(myGameControllerFunctionGroups);
351 ar & BOOST_SERIALIZATION_NVP(myJoystickConfigurations);