35 #include "math/bytelib.h"
36 #include "math/crclib.h"
41 #define PACKETMAX 1024
52 uint8_t destination_callsign[6];
53 uint8_t destination_stationID;
54 uint8_t source_callsign[6];
55 uint8_t source_stationID;
56 uint8_t control = 0x03;
57 uint8_t protocolID = 0xf0;
63 vector <uint8_t> data;
66 Ax25Handle(
string dest_call,
string sour_call, uint8_t dest_stat, uint8_t sour_stat, uint8_t cont, uint8_t prot);
69 void set_destination_callsign(
string destination);
70 string get_destination_callsign();
71 void set_destination_stationID(uint8_t ID);
72 uint8_t get_destination_stationID();
73 void set_source_callsign(
string source);
74 string get_source_callsign();
75 void set_source_stationID(uint8_t ID);
76 uint8_t get_source_stationID();
77 void set_control(uint8_t control_number);
78 uint8_t get_control();
79 void set_protocolID(uint8_t protocol);
80 uint8_t get_protocolID();
82 vector <uint8_t> get_data();
83 vector <uint8_t> get_ax25_packet();
84 vector <uint8_t> get_hdlc_packet();
85 int32_t set_data(vector <uint8_t> input);
86 int32_t set_ax25_packet(vector <uint8_t>
packet);
87 int32_t set_hdlc_packet(vector <uint8_t>
packet);
88 int32_t unload(
bool checkcrc=
true);
89 int32_t load(vector<uint8_t> data={});
90 int32_t stuff(vector<uint8_t> ax25data={}, uint8_t flagcount=2, uint8_t flag=0x7e);
91 int32_t unstuff(vector<uint8_t> hdlcdata={}, uint8_t flag=0x7e);
92 vector<uint8_t> hdlc_packet;
93 vector<uint8_t> ax25_packet;
99 vector <uint8_t> data;
102 vector<uint8_t> flags = {0x7e, 0x7e};
106 friend ::std::ostream& operator<<(::std::ostream& out,
Ax25Handle& K);
112 void print_ascii(
unsigned char*
packet,
unsigned int count);
113 void print_hex(
unsigned char*
packet,
unsigned int count);
Definition: ax25class.h:47
Headers and definitions common to all COSMOS Kernel.
PacketComm packet
The packet used throughout the channel.
Definition: pdu_channel.cpp:19
Definition: ax25class.h:61
Definition: ax25class.h:51