11 #include "ControllerTypes.h" 12 #include "addons/Addon.h" 13 #include "games/controllers/input/PhysicalFeature.h" 25 class CControllerLayout;
26 class CPhysicalTopology;
28 using JOYSTICK::FEATURE_TYPE;
33 explicit CController(
const ADDON::AddonInfoPtr& addonInfo);
37 static const ControllerPtr EmptyPtr;
44 const std::vector<CPhysicalFeature>&
Features(
void)
const {
return m_features; }
63 unsigned int FeatureCount(FEATURE_TYPE type = FEATURE_TYPE::UNKNOWN,
71 void GetFeatures(std::vector<std::string>& features,
72 FEATURE_TYPE type = FEATURE_TYPE::UNKNOWN)
const;
81 FEATURE_TYPE
FeatureType(
const std::string& feature)
const;
114 std::unique_ptr<CControllerLayout> m_layout;
115 std::vector<CPhysicalFeature> m_features;
116 bool m_bLoaded =
false;
INPUT_TYPE
Types of input available for scalar features.
Definition: JoystickTypes.h:140
Represents the physical topology of controller add-ons.
Definition: PhysicalTopology.h:29
unsigned int FeatureCount(FEATURE_TYPE type=FEATURE_TYPE::UNKNOWN, JOYSTICK::INPUT_TYPE inputType=JOYSTICK::INPUT_TYPE::UNKNOWN) const
Get the count of controller features matching the specified types.
Definition: Controller.cpp:78
Definition: ControllerLayout.h:25
const CControllerLayout & Layout(void) const
Get the controller layout.
Definition: Controller.h:102
void GetFeatures(std::vector< std::string > &features, FEATURE_TYPE type=FEATURE_TYPE::UNKNOWN) const
Get the features matching the specified type.
Definition: Controller.cpp:87
bool LoadLayout(void)
Load the controller layout.
Definition: Controller.cpp:117
Controller configuration window.
Definition: AudioDecoder.h:18
JOYSTICK::INPUT_TYPE GetInputType(const std::string &feature) const
Get the input type of the specified feature.
Definition: Controller.cpp:107
Definition: Controller.h:30
const CPhysicalFeature & GetFeature(const std::string &name) const
Get a feature by its name.
Definition: Controller.cpp:65
const CPhysicalTopology & Topology() const
Get the controller's physical topology.
Definition: Controller.cpp:154
Definition: PhysicalFeature.h:24
const std::vector< CPhysicalFeature > & Features(void) const
Get all controller features.
Definition: Controller.h:44
FEATURE_TYPE FeatureType(const std::string &feature) const
Get the type of the specified feature.
Definition: Controller.cpp:97