change pointers to references

pull/90/head
Peter Buchegger 2021-05-16 03:52:28 +02:00
rodzic a5dbb9fd77
commit 0396db7d95
7 zmienionych plików z 20 dodań i 19 usunięć

Wyświetl plik

@ -84,7 +84,7 @@ void setup() {
LoRaSystem = std::shared_ptr<System>(new System(boardConfig, userConfig));
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new DisplayTask()));
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new ModemTask(&fromModem)));
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new ModemTask(fromModem)));
if (boardConfig->Type == eETH_BOARD) {
LoRaSystem->getTaskManager().addAlwaysRunTask(std::shared_ptr<Task>(new EthTask()));
} else {
@ -95,8 +95,8 @@ void setup() {
if (userConfig->ftp.active) {
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new FTPTask()));
}
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new AprsIsTask(&toAprsIs)));
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new RouterTask(&fromModem, &toAprsIs)));
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new AprsIsTask(toAprsIs)));
LoRaSystem->getTaskManager().addTask(std::shared_ptr<Task>(new RouterTask(fromModem, toAprsIs)));
LoRaSystem->getTaskManager().setup(LoRaSystem);

Wyświetl plik

@ -5,7 +5,7 @@
#include "TaskAprsIs.h"
#include "project_configuration.h"
AprsIsTask::AprsIsTask(TaskQueue<std::shared_ptr<APRSMessage>> *const toAprsIs) : Task(TASK_APRS_IS, TaskAprsIs), _toAprsIs(toAprsIs) {
AprsIsTask::AprsIsTask(TaskQueue<std::shared_ptr<APRSMessage>> & toAprsIs) : Task(TASK_APRS_IS, TaskAprsIs), _toAprsIs(toAprsIs) {
}
AprsIsTask::~AprsIsTask() {
@ -34,8 +34,8 @@ bool AprsIsTask::loop(std::shared_ptr<System> system) {
_aprs_is->getAPRSMessage();
if (!_toAprsIs->empty()) {
std::shared_ptr<APRSMessage> msg = _toAprsIs->getElement();
if (!_toAprsIs.empty()) {
std::shared_ptr<APRSMessage> msg = _toAprsIs.getElement();
_aprs_is->sendMessage(msg);
}

Wyświetl plik

@ -8,7 +8,7 @@
class AprsIsTask : public Task {
public:
AprsIsTask(TaskQueue<std::shared_ptr<APRSMessage>> *const toAprsIs);
AprsIsTask(TaskQueue<std::shared_ptr<APRSMessage>> & toAprsIs);
virtual ~AprsIsTask();
virtual bool setup(std::shared_ptr<System> system) override;
@ -17,7 +17,7 @@ public:
private:
std::shared_ptr<APRS_IS> _aprs_is;
TaskQueue<std::shared_ptr<APRSMessage>> *const _toAprsIs;
TaskQueue<std::shared_ptr<APRSMessage>> & _toAprsIs;
bool connect(std::shared_ptr<System> system);
};

Wyświetl plik

@ -6,7 +6,7 @@
#include "TaskModem.h"
#include "project_configuration.h"
ModemTask::ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> *const fromModem) : Task(TASK_MODEM, TaskModem), _fromModem(fromModem) {
ModemTask::ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> & fromModem) : Task(TASK_MODEM, TaskModem), _fromModem(fromModem) {
}
ModemTask::~ModemTask() {
@ -55,7 +55,7 @@ bool ModemTask::loop(std::shared_ptr<System> system) {
}
msg->setPath(path + "qAR," + system->getUserConfig()->callsign);
_fromModem->addElement(msg);
_fromModem.addElement(msg);
system->getDisplay().addFrame(std::shared_ptr<DisplayFrame>(new TextFrame("LoRa", msg->toString())));
}

Wyświetl plik

@ -7,7 +7,7 @@
class ModemTask : public Task {
public:
ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> *const fromModem);
ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> & fromModem);
virtual ~ModemTask();
virtual bool setup(std::shared_ptr<System> system) override;
@ -15,7 +15,7 @@ public:
private:
std::shared_ptr<LoRa_APRS> _lora_aprs;
TaskQueue<std::shared_ptr<APRSMessage>> *const _fromModem;
TaskQueue<std::shared_ptr<APRSMessage>> & _fromModem;
};
#endif

Wyświetl plik

@ -7,7 +7,8 @@
String create_lat_aprs(double lat);
String create_long_aprs(double lng);
RouterTask::RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> *const fromModem, TaskQueue<std::shared_ptr<APRSMessage>> *const toAprsIs) : Task(TASK_ROUTER, TaskRouter), _fromModem(fromModem), _toAprsIs(toAprsIs) {
RouterTask::RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> & fromModem, TaskQueue<std::shared_ptr<APRSMessage>> *
& toAprsIs) : Task(TASK_ROUTER, TaskRouter), _fromModem(fromModem), _toAprsIs(toAprsIs) {
}
RouterTask::~RouterTask() {
@ -28,15 +29,15 @@ bool RouterTask::setup(std::shared_ptr<System> system) {
bool RouterTask::loop(std::shared_ptr<System> 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<DisplayFrame>(new TextFrame("BEACON", _beaconMsg->toString())));
_beacon_timer.start();
}

Wyświetl plik

@ -6,15 +6,15 @@
class RouterTask : public Task {
public:
RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> *const fromModem, TaskQueue<std::shared_ptr<APRSMessage>> *const toAprsIs);
RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> & fromModem, TaskQueue<std::shared_ptr<APRSMessage>> & toAprsIs);
virtual ~RouterTask();
virtual bool setup(std::shared_ptr<System> system) override;
virtual bool loop(std::shared_ptr<System> system) override;
private:
TaskQueue<std::shared_ptr<APRSMessage>> *const _fromModem;
TaskQueue<std::shared_ptr<APRSMessage>> *const _toAprsIs;
TaskQueue<std::shared_ptr<APRSMessage>> & _fromModem;
TaskQueue<std::shared_ptr<APRSMessage>> & _toAprsIs;
std::shared_ptr<APRSMessage> _beaconMsg;
Timer _beacon_timer;