2021-01-03 22:43:35 +01:00
|
|
|
#ifndef TASK_APRS_IS_H_
|
|
|
|
|
#define TASK_APRS_IS_H_
|
|
|
|
|
|
|
|
|
|
#include <APRS-IS.h>
|
|
|
|
|
#include <APRSMessage.h>
|
2021-03-12 23:21:45 +01:00
|
|
|
#include <TaskManager.h>
|
2021-03-12 20:01:47 +01:00
|
|
|
#include <Timer.h>
|
2021-01-03 22:43:35 +01:00
|
|
|
|
2021-03-12 23:21:45 +01:00
|
|
|
class AprsIsTask : public Task {
|
2021-01-03 22:43:35 +01:00
|
|
|
public:
|
2021-05-19 00:27:27 +02:00
|
|
|
explicit AprsIsTask(TaskQueue<std::shared_ptr<APRSMessage>> &toAprsIs);
|
2021-03-12 23:21:45 +01:00
|
|
|
virtual ~AprsIsTask();
|
2021-01-03 22:43:35 +01:00
|
|
|
|
2021-03-21 22:29:31 +01:00
|
|
|
virtual bool setup(std::shared_ptr<System> system) override;
|
|
|
|
|
virtual bool loop(std::shared_ptr<System> system) override;
|
2021-01-03 22:43:35 +01:00
|
|
|
|
|
|
|
|
private:
|
2021-05-15 23:10:24 +02:00
|
|
|
std::shared_ptr<APRS_IS> _aprs_is;
|
2021-05-15 22:58:15 +02:00
|
|
|
|
2021-05-16 08:40:44 +02:00
|
|
|
TaskQueue<std::shared_ptr<APRSMessage>> &_toAprsIs;
|
2021-01-03 22:43:35 +01:00
|
|
|
|
2021-03-21 22:29:31 +01:00
|
|
|
bool connect(std::shared_ptr<System> system);
|
2021-01-03 22:43:35 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif
|