A class implementing the communication with one Sixense controller, for example one of the two on the Razer Hydra.
More...
|
| SixenseDevice (const std::string &uniqueName) |
| Constructor. More...
|
|
| SURGSIM_CLASSNAME (SurgSim::Devices::SixenseDevice) |
|
virtual | ~SixenseDevice () |
| Destructor.
|
|
bool | initialize () override |
| Fully initialize the device. More...
|
|
bool | isInitialized () const override |
|
| CommonDevice (const std::string &name) |
| Constructor. More...
|
|
| CommonDevice (const std::string &name, const DataStructures::DataGroup &inputData) |
| Constructor. More...
|
|
| CommonDevice (const std::string &name, DataStructures::DataGroup &&inputData) |
| Constructor. More...
|
|
virtual | ~CommonDevice () |
| Destructor.
|
|
std::string | getName () const override |
| Return a (hopefully unique) device name.
|
|
std::string | getClassName () const override |
| The class name for this class. More...
|
|
void | setNameForCallback (const std::string &name) |
| Set the name used for calling the input consumers and output producer. More...
|
|
std::string | getNameForCallback () const |
| Get the name used for calling the input consumers and output producer. More...
|
|
bool | addInputConsumer (std::shared_ptr< InputConsumerInterface > inputConsumer) override |
| Adds an input consumer that will be notified when the application input state is updated. More...
|
|
bool | removeInputConsumer (std::shared_ptr< InputConsumerInterface > inputConsumer) override |
| Removes an input consumer previously added via addInputConsumer. More...
|
|
void | clearInputConsumers () override |
| Removes all InputConsumers.
|
|
bool | setOutputProducer (std::shared_ptr< OutputProducerInterface > outputProducer) override |
| Sets an output producer that will be asked for application output state when the device needs it. More...
|
|
bool | removeOutputProducer (std::shared_ptr< OutputProducerInterface > outputProducer) override |
| Removes an output producer previously added via setOutputProducer. More...
|
|
bool | hasOutputProducer () override |
| Query if this object has output producer. More...
|
|
void | clearOutputProducer () override |
| Removes any OutputProducer.
|
|
virtual | ~DeviceInterface () |
| Virtual destructor (empty).
|
|
| Accessible () |
| Default Constructor.
|
|
| ~Accessible () |
| Destructor.
|
|
template<class T > |
T | getValue (const std::string &name) const |
| Retrieves the value with the name by executing the getter if it is found and tries to convert it to the given type. More...
|
|
boost::any | getValue (const std::string &name) const |
| Retrieves the value with the name by executing the getter if it is found. More...
|
|
template<class T > |
bool | getValue (const std::string &name, T *value) const |
| Retrieves the value with the name by executing the getter if it is found, and converts it to the type of the output parameter. More...
|
|
void | setValue (const std::string &name, const boost::any &value) |
| Sets a value of a property that has setter. More...
|
|
bool | isReadable (const std::string &name) const |
| Check whether a property is readable. More...
|
|
bool | isWriteable (const std::string &name) const |
| Check whether a property is writable. More...
|
|
void | setGetter (const std::string &name, GetterType func) |
| Sets a getter for a given property. More...
|
|
void | setSetter (const std::string &name, SetterType func) |
| Sets a setter for a given property. More...
|
|
void | setAccessors (const std::string &name, GetterType getter, SetterType setter) |
| Sets the accessors getter and setter in one function. More...
|
|
void | removeAccessors (const std::string &name) |
| Removes all the accessors (getter and setter) for a given property. More...
|
|
void | forwardProperty (const std::string &name, const Accessible &target, const std::string &targetProperty) |
| Adds a property with the given name that uses the targets accessors, in effect forwarding the value to the target. More...
|
|
void | setSerializable (const std::string &name, EncoderType encoder, DecoderType decoder) |
| Sets the functions used to convert data from and to a YAML::Node. More...
|
|
void | setDecoder (const std::string &name, DecoderType decoder) |
| Sets the functions used to convert data from a YAML::Node. More...
|
|
YAML::Node | encode () const |
| Encode this Accessible to a YAML::Node. More...
|
|
void | decode (const YAML::Node &node, const std::vector< std::string > &ignoredProperties=std::vector< std::string >()) |
| Decode this Accessible from a YAML::Node, will throw an exception if the data type cannot be converted. More...
|
|
std::vector< std::string > | getProperties () |
|
template<> |
boost::any | getValue (const std::string &name) const |
|
A class implementing the communication with one Sixense controller, for example one of the two on the Razer Hydra.
- Application input provided by the device:
type | name | |
pose | "pose" | Device pose (units are meters). |
scalar | "trigger" | State of the analog trigger button (0 = not pressed, 1 = fully pressed). |
scalar | "joystickX" | Joystick X position (0 = center, -1 = fully left, +1 = fully right). |
scalar | "joystickY" | Joystick Y position (0 = center, -1 = fully down/near, +1 = up/far). |
bool | "buttonTrigger" | True if the analog trigger button is pressed, i.e. its value is non-zero. |
bool | "buttonBumper" | True if the bumper button (next to the trigger) is pressed. |
bool | "button1" | True if the button marked "1" is pressed. |
bool | "button2" | True if the button marked "2" is pressed. |
bool | "button3" | True if the button marked "3" is pressed. |
bool | "button4" | True if the button marked "4" is pressed. |
bool | "buttonStart" | True if the "start" button is pressed. |
bool | "buttonJoystick" | True if the joystick is pressed down as a button ("into" the controller). |
- Application output used by the device: none.
- See also
- SurgSim::Input::CommonDevice, SurgSim::Input::DeviceInterface