92 lines
1.4 KiB
C
92 lines
1.4 KiB
C
#ifndef REPEATER_H
|
|
#define REPEATER_H
|
|
|
|
typedef enum {
|
|
SLEEP,
|
|
IDLE,
|
|
KEYCHUNK,
|
|
HANG,
|
|
GW,
|
|
TT,
|
|
TOT,
|
|
}state;
|
|
|
|
typedef enum {
|
|
TONE,
|
|
CW,
|
|
NONE,
|
|
}c_type;
|
|
|
|
typedef struct {
|
|
c_type courtesy;
|
|
int close_down;
|
|
int cw_pitch;
|
|
int cw_speed;
|
|
int pip_length;
|
|
char pip_letter;
|
|
int pip_pitch;
|
|
int pip_speed;
|
|
int pip_gw_length;
|
|
char pip_gw_letter;
|
|
int pip_gw_pitch;
|
|
int start_up;
|
|
}params;
|
|
|
|
typedef struct {
|
|
unsigned long tx_start;
|
|
unsigned long rx_start;
|
|
unsigned long gw_start;
|
|
}timer;
|
|
|
|
typedef struct {
|
|
unsigned long tx_time;
|
|
unsigned long rx_time;
|
|
unsigned long gw_time;
|
|
}stats;
|
|
|
|
typedef struct {
|
|
bool tx;
|
|
unsigned long long tx_time;
|
|
}transmitter;
|
|
|
|
typedef struct {
|
|
int id;
|
|
bool rx;
|
|
unsigned long long rx_time;
|
|
}receiver;
|
|
|
|
typedef struct {
|
|
bool enable;
|
|
unsigned long speed;
|
|
}serial;
|
|
|
|
typedef struct {
|
|
bool enable;
|
|
receiver receiver;
|
|
transmitter transmitter;
|
|
}gateway;
|
|
|
|
typedef struct {
|
|
char* callsign;
|
|
gateway gateway;
|
|
unsigned long id_time;
|
|
state last;
|
|
params params;
|
|
receiver receiver;
|
|
serial serial;
|
|
stats stats;
|
|
state state;
|
|
timer timer;
|
|
transmitter transmitter;
|
|
unsigned long tail;
|
|
}repeater;
|
|
|
|
typedef struct {
|
|
byte type;
|
|
stats* stats;
|
|
bool transmitter;
|
|
bool receiver;
|
|
bool gateway;
|
|
}info;
|
|
|
|
#endif |