16 #ifndef SURGSIM_DEVICES_MULTIAXIS_MULTIAXISDEVICE_H
17 #define SURGSIM_DEVICES_MULTIAXIS_MULTIAXISDEVICE_H
29 class RawMultiAxisDevice;
67 virtual std::string
getName()
const override;
86 virtual bool addInputConsumer(std::shared_ptr<SurgSim::Input::InputConsumerInterface> inputConsumer)
override;
91 virtual bool removeInputConsumer(std::shared_ptr<SurgSim::Input::InputConsumerInterface> inputConsumer)
override;
96 virtual bool setOutputProducer(std::shared_ptr<SurgSim::Input::OutputProducerInterface> outputProducer)
override;
101 virtual bool removeOutputProducer(std::shared_ptr<SurgSim::Input::OutputProducerInterface> outputProducer)
override;
140 void setReset(
const std::string& name);
164 #endif // SURGSIM_DEVICES_MULTIAXIS_MULTIAXISDEVICE_H
Definition: DriveElementFromInputBehavior.cpp:27
virtual ~MultiAxisDevice()
Destructor.
Definition: MultiAxisDevice.cpp:43
virtual bool finalize() override
Finalize (de-initialize) the device.
Definition: MultiAxisDevice.cpp:64
std::shared_ptr< PoseIntegrator > m_filter
The pose integration filter.
Definition: MultiAxisDevice.h:158
void setReset(const std::string &name)
Sets the string name of the boolean entry that will reset the pose to its initial value...
Definition: MultiAxisDevice.cpp:147
static double defaultOrientationScale()
Get the default rotation from device ticks to radians.
Definition: MultiAxisDevice.cpp:142
double getOrientationScale() const
Gets the orientation scale for this device.
Definition: MultiAxisDevice.cpp:121
bool isInitialized() const
Check whether this device is initialized.
Definition: MultiAxisDevice.cpp:73
virtual bool hasOutputProducer() override
Getter for whether or not this device is connected with an OutputProducerInterface.
Definition: MultiAxisDevice.cpp:98
MultiAxisDevice(const std::string &uniqueName)
Constructor.
Definition: MultiAxisDevice.cpp:30
virtual std::string getName() const override
Get the device name.
Definition: MultiAxisDevice.cpp:48
virtual bool removeInputConsumer(std::shared_ptr< SurgSim::Input::InputConsumerInterface > inputConsumer) override
Disconnect this device from an InputConsumerInterface, which will no longer receive data from this de...
Definition: MultiAxisDevice.cpp:83
bool isUsingAxisDominance() const
Gets the axis dominance setting for this device.
Definition: MultiAxisDevice.cpp:132
std::shared_ptr< RawMultiAxisDevice > m_rawDevice
The raw underlying device.
Definition: MultiAxisDevice.h:155
virtual bool initialize() override
Fully initialize the device.
Definition: MultiAxisDevice.cpp:54
virtual bool removeOutputProducer(std::shared_ptr< SurgSim::Input::OutputProducerInterface > outputProducer) override
Disconnect this device from an OutputProducerInterface, which will no longer send data to this device...
Definition: MultiAxisDevice.cpp:93
void setAxisDominance(bool onOff)
Turns on or off the axis dominance setting for this device.
Definition: MultiAxisDevice.cpp:126
double getPositionScale() const
Gets the position scale for this device.
Definition: MultiAxisDevice.cpp:109
void setPositionScale(double scale)
Sets the position scale for this device.
Definition: MultiAxisDevice.cpp:103
std::string m_name
The device name.
Definition: MultiAxisDevice.h:152
virtual bool setOutputProducer(std::shared_ptr< SurgSim::Input::OutputProducerInterface > outputProducer) override
Connect this device to an OutputProducerInterface, which will send data to this device.
Definition: MultiAxisDevice.cpp:88
A class implementing the communication with a multi-axis controller input device, for example a 3DCon...
Definition: MultiAxisDevice.h:55
static double defaultPositionScale()
Get the default position scale from device ticks to meters.
Definition: MultiAxisDevice.cpp:137
void setOrientationScale(double scale)
Sets the orientation scale for this device.
Definition: MultiAxisDevice.cpp:115
virtual bool addInputConsumer(std::shared_ptr< SurgSim::Input::InputConsumerInterface > inputConsumer) override
Connect this device to an InputConsumerInterface, which will receive the data that comes from this de...
Definition: MultiAxisDevice.cpp:78