Classes | Namespaces | Typedefs | Enumerations | Variables
telegram.hpp File Reference
#include <condition_variable>
#include <cstdint>
#include <mutex>
#include <queue>
#include <vector>
#include <septentrio_gnss_driver/abstraction/typedefs.hpp>
Include dependency graph for telegram.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ConcurrentQueue< T >
 
struct  Telegram
 

Namespaces

 telegram_type
 

Typedefs

typedef ConcurrentQueue< std::shared_ptr< Telegram > > TelegramQueue
 

Enumerations

enum  telegram_type::TelegramType {
  telegram_type::EMPTY, telegram_type::SBF, telegram_type::NMEA, telegram_type::NMEA_INS,
  telegram_type::RESPONSE, telegram_type::ERROR_RESPONSE, telegram_type::CONNECTION_DESCRIPTOR, telegram_type::UNKNOWN
}
 

Variables

static const uint8_t CONNECTION_DESCRIPTOR_BYTE_C = 0x43
 
static const uint8_t CONNECTION_DESCRIPTOR_BYTE_D = 0x44
 
static const uint8_t CONNECTION_DESCRIPTOR_BYTE_I = 0x49
 
static const uint8_t CONNECTION_DESCRIPTOR_BYTE_N = 0x4E
 
static const uint8_t CONNECTION_DESCRIPTOR_BYTE_U = 0x55
 
static const uint8_t CONNECTION_DESCRIPTOR_FOOTER = 0x3E
 0x3E is ASCII for > - end character of connection descriptor More...
 
static const uint8_t CR = 0x0D
 0x0D is ASCII for "Carriage Return", i.e. "Enter" More...
 
static const uint8_t ERROR_SYNC_BYTE_3 = 0x3F
 
static const uint8_t LF = 0x0A
 0x0A is ASCII for "Line Feed", i.e. "New Line" More...
 
static const uint16_t MAX_SBF_SIZE = 65535
 
static const uint16_t MAX_UDP_PACKET_SIZE = 65535
 
static const uint8_t NMEA_INS_SYNC_BYTE_2 = 0x49
 0x49 is ASCII for I - 2nd byte to indicate INS NMEA-type ASCII message More...
 
static const uint8_t NMEA_INS_SYNC_BYTE_3 = 0x4E
 0x4E is ASCII for N - 3rd byte to indicate NMEA-type ASCII message More...
 
static const uint8_t NMEA_SYNC_BYTE_2 = 0x47
 0x47 is ASCII for G - 2nd byte to indicate NMEA-type ASCII message More...
 
static const uint8_t NMEA_SYNC_BYTE_3 = 0x50
 0x50 is ASCII for P - 3rd byte to indicate NMEA-type ASCII message More...
 
static const uint8_t RESPONSE_SYNC_BYTE_2 = 0x52
 0x52 is ASCII for R (for "Response") - 2nd byte in each response from the Rx More...
 
static const uint8_t RESPONSE_SYNC_BYTE_3 = 0x3A
 0x3A is ASCII for : - 3rd byte in the response message from the Rx More...
 
static const uint8_t RESPONSE_SYNC_BYTE_3a = 0x21
 0x21 is ASCII for ! 3rd byte in the response message from the Rx More...
 
static const uint16_t SBF_HEADER_SIZE = 8
 
static const uint8_t SBF_SYNC_BYTE_2 = 0x40
 0x40 is ASCII for @ - 2nd byte to indicate SBF block More...
 
static const uint8_t SYNC_BYTE_1 = 0x24
 0x24 is ASCII for $ - 1st byte in each message More...
 

Typedef Documentation

◆ TelegramQueue

typedef ConcurrentQueue<std::shared_ptr<Telegram> > TelegramQueue

Definition at line 199 of file telegram.hpp.

Variable Documentation

◆ CONNECTION_DESCRIPTOR_BYTE_C

const uint8_t CONNECTION_DESCRIPTOR_BYTE_C = 0x43
static

0x43 is ASCII for C - 1st character of connection descriptor sent by the Rx after initiating COM connection

Definition at line 73 of file telegram.hpp.

◆ CONNECTION_DESCRIPTOR_BYTE_D

const uint8_t CONNECTION_DESCRIPTOR_BYTE_D = 0x44
static

0x44 is ASCII for D - 1st character of connection descriptor sent by the Rx after initiating DSK connection

Definition at line 82 of file telegram.hpp.

◆ CONNECTION_DESCRIPTOR_BYTE_I

const uint8_t CONNECTION_DESCRIPTOR_BYTE_I = 0x49
static

0x49 is ASCII for I - 1st character of connection descriptor sent by the Rx after initiating IP connection

Definition at line 70 of file telegram.hpp.

◆ CONNECTION_DESCRIPTOR_BYTE_N

const uint8_t CONNECTION_DESCRIPTOR_BYTE_N = 0x4E
static

0x4E is ASCII for N - 1st character of connection descriptor sent by the Rx after initiating NTRIP connection

Definition at line 79 of file telegram.hpp.

◆ CONNECTION_DESCRIPTOR_BYTE_U

const uint8_t CONNECTION_DESCRIPTOR_BYTE_U = 0x55
static

0x55 is ASCII for U - 1st character of connection descriptor sent by the Rx after initiating USB connection

Definition at line 76 of file telegram.hpp.

◆ CONNECTION_DESCRIPTOR_FOOTER

const uint8_t CONNECTION_DESCRIPTOR_FOOTER = 0x3E
static

0x3E is ASCII for > - end character of connection descriptor

Definition at line 84 of file telegram.hpp.

◆ CR

const uint8_t CR = 0x0D
static

0x0D is ASCII for "Carriage Return", i.e. "Enter"

Definition at line 65 of file telegram.hpp.

◆ ERROR_SYNC_BYTE_3

const uint8_t ERROR_SYNC_BYTE_3 = 0x3F
static

0x3F is ASCII for ? - 3rd byte in the response message from the Rx in case the command was invalid

Definition at line 63 of file telegram.hpp.

◆ LF

const uint8_t LF = 0x0A
static

0x0A is ASCII for "Line Feed", i.e. "New Line"

Definition at line 67 of file telegram.hpp.

◆ MAX_SBF_SIZE

const uint16_t MAX_SBF_SIZE = 65535
static

Definition at line 87 of file telegram.hpp.

◆ MAX_UDP_PACKET_SIZE

const uint16_t MAX_UDP_PACKET_SIZE = 65535
static

Definition at line 88 of file telegram.hpp.

◆ NMEA_INS_SYNC_BYTE_2

const uint8_t NMEA_INS_SYNC_BYTE_2 = 0x49
static

0x49 is ASCII for I - 2nd byte to indicate INS NMEA-type ASCII message

Definition at line 52 of file telegram.hpp.

◆ NMEA_INS_SYNC_BYTE_3

const uint8_t NMEA_INS_SYNC_BYTE_3 = 0x4E
static

0x4E is ASCII for N - 3rd byte to indicate NMEA-type ASCII message

Definition at line 54 of file telegram.hpp.

◆ NMEA_SYNC_BYTE_2

const uint8_t NMEA_SYNC_BYTE_2 = 0x47
static

0x47 is ASCII for G - 2nd byte to indicate NMEA-type ASCII message

Definition at line 48 of file telegram.hpp.

◆ NMEA_SYNC_BYTE_3

const uint8_t NMEA_SYNC_BYTE_3 = 0x50
static

0x50 is ASCII for P - 3rd byte to indicate NMEA-type ASCII message

Definition at line 50 of file telegram.hpp.

◆ RESPONSE_SYNC_BYTE_2

const uint8_t RESPONSE_SYNC_BYTE_2 = 0x52
static

0x52 is ASCII for R (for "Response") - 2nd byte in each response from the Rx

Definition at line 56 of file telegram.hpp.

◆ RESPONSE_SYNC_BYTE_3

const uint8_t RESPONSE_SYNC_BYTE_3 = 0x3A
static

0x3A is ASCII for : - 3rd byte in the response message from the Rx

Definition at line 58 of file telegram.hpp.

◆ RESPONSE_SYNC_BYTE_3a

const uint8_t RESPONSE_SYNC_BYTE_3a = 0x21
static

0x21 is ASCII for ! 3rd byte in the response message from the Rx

Definition at line 60 of file telegram.hpp.

◆ SBF_HEADER_SIZE

const uint16_t SBF_HEADER_SIZE = 8
static

Definition at line 86 of file telegram.hpp.

◆ SBF_SYNC_BYTE_2

const uint8_t SBF_SYNC_BYTE_2 = 0x40
static

0x40 is ASCII for @ - 2nd byte to indicate SBF block

Definition at line 46 of file telegram.hpp.

◆ SYNC_BYTE_1

const uint8_t SYNC_BYTE_1 = 0x24
static

0x24 is ASCII for $ - 1st byte in each message

Definition at line 44 of file telegram.hpp.



septentrio_gnss_driver
Author(s): Tibor Dome
autogenerated on Wed Nov 22 2023 04:04:27