diff --git a/include/Hub.h b/include/Hub.h index 0006edc..00a59e8 100644 --- a/include/Hub.h +++ b/include/Hub.h @@ -19,11 +19,6 @@ class Hub final : public Module { uint8_t leader) : Module(device_id, module_type, connection_type, leader) {}; - double get_position() override; - std::string get_text() override; - void actuate(double position) override; - void actuate(double x, double y) override; - void actuate(const std::string &t) override; std::vector get_actuation_message() override; void update_sensor_data(const Flatbuffers::sensor_value &value) override; }; diff --git a/include/Module.h b/include/Module.h index a5ff2c0..82a08b2 100644 --- a/include/Module.h +++ b/include/Module.h @@ -44,11 +44,11 @@ class Module { std::chrono::time_point get_last_updated_time(); // Not all modules implement all actuation/sensor values, some are no-ops - virtual double get_position() = 0; - virtual std::string get_text() = 0; - virtual void actuate(double x) = 0; - virtual void actuate(const std::string &text) = 0; - virtual void actuate(double x, double y) = 0; + virtual double get_position(); + virtual std::string get_text(); + virtual void actuate(double x); + virtual void actuate(const std::string &text); + virtual void actuate(double x, double y); void update_module_metadata(const Messaging::TopologyMessage &message); diff --git a/include/actuators/BoundedPositionalActuator1D.h b/include/actuators/BoundedPositionalActuator1D.h index 582b935..69113d4 100644 --- a/include/actuators/BoundedPositionalActuator1D.h +++ b/include/actuators/BoundedPositionalActuator1D.h @@ -22,10 +22,7 @@ class BoundedPositionalActuator1D : public Actuator { } double get_position() override; - std::string get_text() override; // no-op void actuate(double position) override; - void actuate(const std::string &text) override; // no-op - void actuate(double x, double y) override; // no-op std::vector get_actuation_message() override; void update_sensor_data(const Flatbuffers::sensor_value &value) override; diff --git a/include/actuators/OledActuator.h b/include/actuators/OledActuator.h index aeb8ce3..31bfb13 100644 --- a/include/actuators/OledActuator.h +++ b/include/actuators/OledActuator.h @@ -19,10 +19,7 @@ class OledActuator : public Actuator { m_text_message_builder(std::make_unique()) { } - double get_position() override; std::string get_text() override; - void actuate(double position) override; - void actuate(double x, double y) override; // no-op void actuate(const std::string &text) override; std::vector get_actuation_message() override; diff --git a/include/actuators/PositionalActuator1D.h b/include/actuators/PositionalActuator1D.h index 3164635..215f8ce 100644 --- a/include/actuators/PositionalActuator1D.h +++ b/include/actuators/PositionalActuator1D.h @@ -19,10 +19,7 @@ class PositionalActuator1D final : public Actuator { m_acm_builder(std::make_unique()) {}; double get_position() override; - std::string get_text() override; // no-op void actuate(double position) override; - void actuate(const std::string &text) override; // no-op - void actuate(double x, double y) override; // no-op std::vector get_actuation_message() override; void update_sensor_data(const Flatbuffers::sensor_value &value) override; diff --git a/src/Hub.cpp b/src/Hub.cpp index cdc3a31..c916cc5 100644 --- a/src/Hub.cpp +++ b/src/Hub.cpp @@ -1,28 +1,6 @@ #include "Hub.h" #include "flatbuffers/SensorMessageBuilder.h" -double Hub::get_position() { - // no-op - return 0; -} - -std::string Hub::get_text() { - // no-op - return ""; -} - -void Hub::actuate(double /* position */) { - // no-op -} - -void Hub::actuate(double /* x */, double /* y */) { - // no-op -} - -void Hub::actuate(const std::string &text) { - // no-op -} - std::vector Hub::get_actuation_message() { // no-op return {}; diff --git a/src/Module.cpp b/src/Module.cpp index 8955aba..b62db7e 100644 --- a/src/Module.cpp +++ b/src/Module.cpp @@ -41,3 +41,25 @@ void Module::update_module_metadata(const Messaging::TopologyMessage &message) { m_neighbours.emplace_back(neighbour{id, static_cast(ori)}); } } + +double Module::get_position() { + // no-op + return 0; +} + +std::string Module::get_text() { + // no-op + return ""; +} + +void Module::actuate(double /* position */) { + // no-op +} + +void Module::actuate(double /* x */, double /* y */) { + // no-op +} + +void Module::actuate(const std::string &text) { + // no-op +} diff --git a/src/actuators/BoundedPositionalActuator1D.cpp b/src/actuators/BoundedPositionalActuator1D.cpp index 231382f..94b62aa 100644 --- a/src/actuators/BoundedPositionalActuator1D.cpp +++ b/src/actuators/BoundedPositionalActuator1D.cpp @@ -10,10 +10,6 @@ double BoundedPositionalActuator1D::get_position() { return m_current_position; } -std::string BoundedPositionalActuator1D::get_text() { - return ""; -} - void BoundedPositionalActuator1D::actuate(double position) { if (position < m_min_value || position > m_max_value) { return; @@ -22,12 +18,6 @@ void BoundedPositionalActuator1D::actuate(double position) { m_target_position = position; } -void BoundedPositionalActuator1D::actuate(double x, double y) { -} - -void BoundedPositionalActuator1D::actuate(const std::string &text) { -} - std::vector BoundedPositionalActuator1D::get_actuation_message() { std::vector message{}; diff --git a/src/actuators/OledActuator.cpp b/src/actuators/OledActuator.cpp index 18e155e..c4109d9 100644 --- a/src/actuators/OledActuator.cpp +++ b/src/actuators/OledActuator.cpp @@ -3,20 +3,10 @@ #include "util/Variant.h" #include -double OledActuator::get_position() { - return 0.0; -} - std::string OledActuator::get_text() { return m_current_text; } -void OledActuator::actuate(double /* position */) { -} - -void OledActuator::actuate(double /* x */, double /* y */) { -} - void OledActuator::actuate(const std::string &text) { m_target_text = text; } diff --git a/src/actuators/PositionalActuator1D.cpp b/src/actuators/PositionalActuator1D.cpp index 620609f..7de28e3 100644 --- a/src/actuators/PositionalActuator1D.cpp +++ b/src/actuators/PositionalActuator1D.cpp @@ -7,20 +7,10 @@ double PositionalActuator1D::get_position() { return m_current_position; } -std::string PositionalActuator1D::get_text() { - return ""; -} - void PositionalActuator1D::actuate(double position) { m_target_position = position; } -void PositionalActuator1D::actuate(double /* x */, double /* y */) { -} - -void PositionalActuator1D::actuate(const std::string &text) { -} - std::vector PositionalActuator1D::get_actuation_message() { std::vector message{};