diff --git a/src/LoRa_APRS_iGate.cpp b/src/LoRa_APRS_iGate.cpp index 18e9d48..354dab9 100644 --- a/src/LoRa_APRS_iGate.cpp +++ b/src/LoRa_APRS_iGate.cpp @@ -84,7 +84,7 @@ void setup() { LoRaSystem = std::shared_ptr(new System(boardConfig, userConfig)); LoRaSystem->getTaskManager().addTask(std::shared_ptr(new DisplayTask())); - LoRaSystem->getTaskManager().addTask(std::shared_ptr(new ModemTask(&fromModem))); + LoRaSystem->getTaskManager().addTask(std::shared_ptr(new ModemTask(fromModem))); if (boardConfig->Type == eETH_BOARD) { LoRaSystem->getTaskManager().addAlwaysRunTask(std::shared_ptr(new EthTask())); } else { @@ -95,8 +95,8 @@ void setup() { if (userConfig->ftp.active) { LoRaSystem->getTaskManager().addTask(std::shared_ptr(new FTPTask())); } - LoRaSystem->getTaskManager().addTask(std::shared_ptr(new AprsIsTask(&toAprsIs))); - LoRaSystem->getTaskManager().addTask(std::shared_ptr(new RouterTask(&fromModem, &toAprsIs))); + LoRaSystem->getTaskManager().addTask(std::shared_ptr(new AprsIsTask(toAprsIs))); + LoRaSystem->getTaskManager().addTask(std::shared_ptr(new RouterTask(fromModem, toAprsIs))); LoRaSystem->getTaskManager().setup(LoRaSystem); diff --git a/src/TaskAprsIs.cpp b/src/TaskAprsIs.cpp index c7c0ca3..67051f8 100644 --- a/src/TaskAprsIs.cpp +++ b/src/TaskAprsIs.cpp @@ -5,7 +5,7 @@ #include "TaskAprsIs.h" #include "project_configuration.h" -AprsIsTask::AprsIsTask(TaskQueue> *const toAprsIs) : Task(TASK_APRS_IS, TaskAprsIs), _toAprsIs(toAprsIs) { +AprsIsTask::AprsIsTask(TaskQueue> & toAprsIs) : Task(TASK_APRS_IS, TaskAprsIs), _toAprsIs(toAprsIs) { } AprsIsTask::~AprsIsTask() { @@ -34,8 +34,8 @@ bool AprsIsTask::loop(std::shared_ptr system) { _aprs_is->getAPRSMessage(); - if (!_toAprsIs->empty()) { - std::shared_ptr msg = _toAprsIs->getElement(); + if (!_toAprsIs.empty()) { + std::shared_ptr msg = _toAprsIs.getElement(); _aprs_is->sendMessage(msg); } diff --git a/src/TaskAprsIs.h b/src/TaskAprsIs.h index 229e113..43dcc07 100644 --- a/src/TaskAprsIs.h +++ b/src/TaskAprsIs.h @@ -8,7 +8,7 @@ class AprsIsTask : public Task { public: - AprsIsTask(TaskQueue> *const toAprsIs); + AprsIsTask(TaskQueue> & toAprsIs); virtual ~AprsIsTask(); virtual bool setup(std::shared_ptr system) override; @@ -17,7 +17,7 @@ public: private: std::shared_ptr _aprs_is; - TaskQueue> *const _toAprsIs; + TaskQueue> & _toAprsIs; bool connect(std::shared_ptr system); }; diff --git a/src/TaskModem.cpp b/src/TaskModem.cpp index 17dafe9..4504e53 100644 --- a/src/TaskModem.cpp +++ b/src/TaskModem.cpp @@ -6,7 +6,7 @@ #include "TaskModem.h" #include "project_configuration.h" -ModemTask::ModemTask(TaskQueue> *const fromModem) : Task(TASK_MODEM, TaskModem), _fromModem(fromModem) { +ModemTask::ModemTask(TaskQueue> & fromModem) : Task(TASK_MODEM, TaskModem), _fromModem(fromModem) { } ModemTask::~ModemTask() { @@ -55,7 +55,7 @@ bool ModemTask::loop(std::shared_ptr system) { } msg->setPath(path + "qAR," + system->getUserConfig()->callsign); - _fromModem->addElement(msg); + _fromModem.addElement(msg); system->getDisplay().addFrame(std::shared_ptr(new TextFrame("LoRa", msg->toString()))); } diff --git a/src/TaskModem.h b/src/TaskModem.h index ebedcbb..6e6e97b 100644 --- a/src/TaskModem.h +++ b/src/TaskModem.h @@ -7,7 +7,7 @@ class ModemTask : public Task { public: - ModemTask(TaskQueue> *const fromModem); + ModemTask(TaskQueue> & fromModem); virtual ~ModemTask(); virtual bool setup(std::shared_ptr system) override; @@ -15,7 +15,7 @@ public: private: std::shared_ptr _lora_aprs; - TaskQueue> *const _fromModem; + TaskQueue> & _fromModem; }; #endif diff --git a/src/TaskRouter.cpp b/src/TaskRouter.cpp index 59fcb63..0703aa1 100644 --- a/src/TaskRouter.cpp +++ b/src/TaskRouter.cpp @@ -7,7 +7,8 @@ String create_lat_aprs(double lat); String create_long_aprs(double lng); -RouterTask::RouterTask(TaskQueue> *const fromModem, TaskQueue> *const toAprsIs) : Task(TASK_ROUTER, TaskRouter), _fromModem(fromModem), _toAprsIs(toAprsIs) { +RouterTask::RouterTask(TaskQueue> & fromModem, TaskQueue> * +& toAprsIs) : Task(TASK_ROUTER, TaskRouter), _fromModem(fromModem), _toAprsIs(toAprsIs) { } RouterTask::~RouterTask() { @@ -28,15 +29,15 @@ bool RouterTask::setup(std::shared_ptr system) { bool RouterTask::loop(std::shared_ptr system) { // do routing - if (!_fromModem->empty()) { - _toAprsIs->addElement(_fromModem->getElement()); + if (!_fromModem.empty()) { + _toAprsIs.addElement(_fromModem->getElement()); } // check for beacon if (_beacon_timer.check()) { logPrintD("[" + timeString() + "] "); logPrintlnD(_beaconMsg->encode()); - _toAprsIs->addElement(_beaconMsg); + _toAprsIs.addElement(_beaconMsg); system->getDisplay().addFrame(std::shared_ptr(new TextFrame("BEACON", _beaconMsg->toString()))); _beacon_timer.start(); } diff --git a/src/TaskRouter.h b/src/TaskRouter.h index e673be6..e42d8f0 100644 --- a/src/TaskRouter.h +++ b/src/TaskRouter.h @@ -6,15 +6,15 @@ class RouterTask : public Task { public: - RouterTask(TaskQueue> *const fromModem, TaskQueue> *const toAprsIs); + RouterTask(TaskQueue> & fromModem, TaskQueue> & toAprsIs); virtual ~RouterTask(); virtual bool setup(std::shared_ptr system) override; virtual bool loop(std::shared_ptr system) override; private: - TaskQueue> *const _fromModem; - TaskQueue> *const _toAprsIs; + TaskQueue> & _fromModem; + TaskQueue> & _toAprsIs; std::shared_ptr _beaconMsg; Timer _beacon_timer;