-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathZoneModule.h
45 lines (31 loc) · 1.08 KB
/
ZoneModule.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#ifndef ZONEMODULE_H
#define ZONEMODULE_H
#include <libconfig.h>
#include "GateModule.h"
#include "GateContext.h"
class ZoneModule : public GateModule
{
public:
ZoneModule(config_setting_t* setting, GateLink* link, GateModule* next);
~ZoneModule();
char getName();
bool isActive();
GateModule* getNext();
GateLink* getLink();
GateContext* getContext();
void addDescriptors(int type, fd_set* read, fd_set* write, fd_set* except);
void processDescriptors(int type, fd_set* read, fd_set* write, fd_set* except);
bool findRoute(const char* call, struct DStarRoute* route, struct in_addr* address);
bool verifyRepeater(const char* call);
bool verifyAddress(const struct in_addr& address);
void publishHeard(const struct DStarRoute& route, const char* addressee, const char* text);
void publishHeard(const struct DStarRoute& route, uint16_t number);
void doBackgroundActivity(int type);
void handleCommand(const char* command);
private:
char name;
GateLink* link;
GateModule* next;
GateContext* context;
};
#endif