diff --git a/include/ugv_sdk/details/interface/ranger_interface.hpp b/include/ugv_sdk/details/interface/ranger_interface.hpp index ee81442..69966f3 100644 --- a/include/ugv_sdk/details/interface/ranger_interface.hpp +++ b/include/ugv_sdk/details/interface/ranger_interface.hpp @@ -39,6 +39,8 @@ struct RangerActuatorState { ///////////////////////////////////////////////////////////////////////// struct RangerInterface { + virtual ~RangerInterface() = default; + virtual bool Connect(std::string dev_name) = 0; // robot control diff --git a/include/ugv_sdk/details/interface/robot_common_interface.hpp b/include/ugv_sdk/details/interface/robot_common_interface.hpp index 077bf00..cb741da 100644 --- a/include/ugv_sdk/details/interface/robot_common_interface.hpp +++ b/include/ugv_sdk/details/interface/robot_common_interface.hpp @@ -45,7 +45,7 @@ struct CommonSensorStateMsgGroup {}; class RobotCommonInterface { public: - ~RobotCommonInterface() = default; + virtual ~RobotCommonInterface() = default; // functions to be implemented by class AgilexBase virtual void EnableCommandedMode() = 0; diff --git a/include/ugv_sdk/details/robot_base/scout_base.hpp b/include/ugv_sdk/details/robot_base/scout_base.hpp index 571bc5b..8a57ec7 100644 --- a/include/ugv_sdk/details/robot_base/scout_base.hpp +++ b/include/ugv_sdk/details/robot_base/scout_base.hpp @@ -23,7 +23,7 @@ template class ScoutBase : public AgilexBase, public ScoutInterface { public: ScoutBase() : AgilexBase(){}; - ~ScoutBase() = default; + virtual ~ScoutBase() = default; // set up connection bool Connect(std::string can_name) override { diff --git a/src/mobile_robot/scout_robot.cpp b/src/mobile_robot/scout_robot.cpp index 81e7016..9821e1a 100644 --- a/src/mobile_robot/scout_robot.cpp +++ b/src/mobile_robot/scout_robot.cpp @@ -72,7 +72,8 @@ ScoutActuatorState ScoutRobot::GetActuatorState() { /////////////////////////////////////////////////////////////////////////// -ScoutMiniOmniRobot::ScoutMiniOmniRobot(ProtocolVersion protocol) { +ScoutMiniOmniRobot::ScoutMiniOmniRobot(ProtocolVersion protocol) + : ScoutRobot(ProtocolVersion::UNKONWN) { if (protocol == ProtocolVersion::AGX_V1) { robot_ = new ScoutMiniOmniBaseV1(); } else if (protocol == ProtocolVersion::AGX_V2) {