Spacecraft Control Framework 1.0
Spacecraft Control Library
Public Member Functions | Protected Attributes | List of all members
CCSDS Class Reference

CCSDS space packet protocol. More...

#include <sc_ccsds.h>

Public Member Functions

 CCSDS (void)
 Constructor.
 
void add_telemetry_point (double point)
 Add telemetry points.
 
void add_telemetry_point (int32_t point)
 
void add_telemetry_point (int16_t point)
 
void add_telemetry_point (int8_t point)
 
void add_telemetry_point (float point)
 
void add_telemetry_point (bool point)
 
void add_telemetry_point (ml_matrix &point)
 
int number_of_octets (void)
 
void add_commands (char *file_name)
 Add commands.
 
void set_telemetry_point_value (double point)
 Add a telemetry point.
 
void set_telemetry_point_value (int32_t point)
 
void set_telemetry_point_value (int16_t point)
 
void set_telemetry_point_value (int8_t point)
 
void set_telemetry_point_value (float point)
 
void set_telemetry_point_value (bool point)
 
void set_telemetry_point_value (ml_matrix &point)
 
void set_packet_header (uint16_t version_number, uint16_t identification_field, uint16_t sequence_control_field)
 Add header information.
 
int16_t get_packet_leader (void)
 
int get_telemetry_point_type (char *name)
 
void receive_command (void *buffer)
 Receive a commmand.
 
bool has_new_command (void)
 Indicates a new command is available.
 
int command_data_type (void)
 Indicates command data type.
 
double get_command_data_double (void)
 Command data.
 
int32_t get_command_data_int32 (void)
 
int16_t get_command_data_int16 (void)
 
int8_t get_command_data_int8 (void)
 
float get_command_data_float (void)
 
bool get_command_data_bool (void)
 
ml_matrix get_command_data_ml_matrix (void)
 
void create_frame (char *frame_name)
 Create a telemetry frame.
 
void output_frame (void *buffer)
 
void create_header (void)
 

Protected Attributes

uint16_t version_number
 
uint16_t identification_field
 
uint16_t sequence_control_field
 
uint16_t packet_data_length
 
uint16_t packet_leader_field
 
std::unordered_map< std::string, ccsds_datatelemetry
 
int n_octets
 
void * header
 

Detailed Description

CCSDS space packet protocol.

Reference: Space Packet Protocol, CCSDS 133.0-B-1 Blue Book September 2003. Packet header a) Packet Version Number (3 bits, mandatory); b) Packet Identification Field (13 bits, mandatory); c) Packet Sequence Control Field (16 bits, mandatory); d) Packet Data Length (16 bits, mandatory).