2021-05-15 22:58:15 +02:00
|
|
|
#ifndef TASK_ROUTER_H_
|
|
|
|
|
#define TASK_ROUTER_H_
|
|
|
|
|
|
|
|
|
|
#include <APRSMessage.h>
|
2021-05-15 23:10:24 +02:00
|
|
|
#include <TaskManager.h>
|
2021-05-15 22:58:15 +02:00
|
|
|
|
|
|
|
|
class RouterTask : public Task {
|
|
|
|
|
public:
|
2021-05-15 23:10:24 +02:00
|
|
|
RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> *const fromModem, TaskQueue<std::shared_ptr<APRSMessage>> *const toAprsIs);
|
2021-05-15 22:58:15 +02:00
|
|
|
virtual ~RouterTask();
|
|
|
|
|
|
|
|
|
|
virtual bool setup(std::shared_ptr<System> system) override;
|
|
|
|
|
virtual bool loop(std::shared_ptr<System> system) override;
|
|
|
|
|
|
|
|
|
|
private:
|
2021-05-15 23:10:24 +02:00
|
|
|
TaskQueue<std::shared_ptr<APRSMessage>> *const _fromModem;
|
|
|
|
|
TaskQueue<std::shared_ptr<APRSMessage>> *const _toAprsIs;
|
|
|
|
|
|
2021-05-15 22:58:15 +02:00
|
|
|
std::shared_ptr<APRSMessage> _beaconMsg;
|
|
|
|
|
Timer _beacon_timer;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif
|