diff --git a/source/RobotAPI/libraries/Controllers/LVL0Controller.h b/source/RobotAPI/libraries/Controllers/LVL0Controller.h index e38510288888bfc6b90ce0679b638f5f63c591b7..fafa5b0aca59b96aba3826132da871d6204e839c 100644 --- a/source/RobotAPI/libraries/Controllers/LVL0Controller.h +++ b/source/RobotAPI/libraries/Controllers/LVL0Controller.h @@ -50,7 +50,7 @@ namespace armarx TargetType* getTarget() { - return target; + return & target; } void resetTarget() diff --git a/source/RobotAPI/libraries/Controllers/Targets/JointPositionTarget.h b/source/RobotAPI/libraries/Controllers/Targets/JointPositionTarget.h index 9bc7d9d13e3ca59b209090e3e0156a2dd43c5bcc..39c788d5d893b483a359c54cacb57ca9170ab45e 100644 --- a/source/RobotAPI/libraries/Controllers/Targets/JointPositionTarget.h +++ b/source/RobotAPI/libraries/Controllers/Targets/JointPositionTarget.h @@ -46,11 +46,11 @@ namespace armarx { return ePositionControl; } - virtual void reset() + virtual void reset() override { position = ControllerConstatns::ValueNotSetNaN; } - bool isValid() const + virtual bool isValid() const override { return std::isfinite(position); } diff --git a/source/RobotAPI/libraries/Controllers/Targets/JointPositionVelocityTarget.h b/source/RobotAPI/libraries/Controllers/Targets/JointPositionVelocityTarget.h index d2622cc9167c5dcb5a2ba736623b62d059171a74..5cd022809d6ce77383cf743778272e9e2e93a270 100644 --- a/source/RobotAPI/libraries/Controllers/Targets/JointPositionVelocityTarget.h +++ b/source/RobotAPI/libraries/Controllers/Targets/JointPositionVelocityTarget.h @@ -47,12 +47,12 @@ namespace armarx { return ePositionVelocityControl; } - virtual void reset() + virtual void reset() override { position = ControllerConstatns::ValueNotSetNaN; velocity = ControllerConstatns::ValueNotSetNaN; } - bool isValid() const + virtual bool isValid() const override { return std::isfinite(position) && std::isfinite(velocity); } diff --git a/source/RobotAPI/libraries/Controllers/Targets/JointTargetBase.h b/source/RobotAPI/libraries/Controllers/Targets/JointTargetBase.h index 0dc9ee2b6ea27136b20722b7c4f3772a4f547374..d7077bde90f687d1e37a7d1f12d68143473e431a 100644 --- a/source/RobotAPI/libraries/Controllers/Targets/JointTargetBase.h +++ b/source/RobotAPI/libraries/Controllers/Targets/JointTargetBase.h @@ -43,6 +43,8 @@ namespace armarx { public: virtual ControlMode getType() const = 0; + virtual void reset() = 0; + virtual bool isValid() const = 0; }; } diff --git a/source/RobotAPI/libraries/Controllers/Targets/JointTorqueTarget.h b/source/RobotAPI/libraries/Controllers/Targets/JointTorqueTarget.h index 8b4ffad81a3d10e690ee43a05e2283977ad4f9b5..84860c7564573317cbef6066b20670aef9068d46 100644 --- a/source/RobotAPI/libraries/Controllers/Targets/JointTorqueTarget.h +++ b/source/RobotAPI/libraries/Controllers/Targets/JointTorqueTarget.h @@ -46,11 +46,11 @@ namespace armarx { return eTorqueControl; } - virtual void reset() + virtual void reset() override { torque = ControllerConstatns::ValueNotSetNaN; } - bool isValid() const + virtual bool isValid() const override { return std::isfinite(torque); } diff --git a/source/RobotAPI/libraries/Controllers/Targets/JointVelocityTarget.h b/source/RobotAPI/libraries/Controllers/Targets/JointVelocityTarget.h index 8f44b2c055922fdf5714665b1631a4acc2da41cb..88265541bd6148a6d48c0d614b0d9d08d8cf04b7 100644 --- a/source/RobotAPI/libraries/Controllers/Targets/JointVelocityTarget.h +++ b/source/RobotAPI/libraries/Controllers/Targets/JointVelocityTarget.h @@ -46,11 +46,11 @@ namespace armarx { return eVelocityControl; } - virtual void reset() + virtual void reset() override { velocity = ControllerConstatns::ValueNotSetNaN; } - bool isValid() const + virtual bool isValid() const override { return std::isfinite(velocity); }