|
C2A_Core
|
CCSDS で規定される Space Packet の実装 [詳解]
データ構造 | |
| struct | SP_ParamExtractionInfo |
| packet からデータを抜き取るときのパラメタ [詳解] | |
マクロ定義 | |
| #define | SP_PRM_HDR_LEN (6) |
| Packet Primary Header 長 [詳解] | |
列挙型 | |
| enum | SP_VER { SP_VER_1 = 0 , SP_VER_UNKNOWN } |
| Space Packet Version Number [詳解] | |
| enum | SP_TYPE { SP_TYPE_TLM = 0 , SP_TYPE_CMD = 1 } |
| Space Packet Type [詳解] | |
| enum | SP_2ND_HDR_FLAG { SP_2ND_HDR_FLAG_ABSENT = 0 , SP_2ND_HDR_FLAG_PRESENT = 1 } |
| Space Packet Secandary Header Flag [詳解] | |
| enum | SP_SEQ_FLAG { SP_SEQ_FLAG_CONT = 0 , SP_SEQ_FLAG_FIRST = 1 , SP_SEQ_FLAG_LAST = 2 , SP_SEQ_FLAG_SINGLE = 3 } |
| Space Packet Sequence Flag [詳解] | |
関数 | |
| SP_VER | SP_get_ver (const SpacePacket *sp) |
| Version No を取得 [詳解] | |
| void | SP_set_ver (SpacePacket *sp, SP_VER ver) |
| Version No を設定 [詳解] | |
| SP_TYPE | SP_get_type (const SpacePacket *sp) |
| Packet Type を取得 [詳解] | |
| void | SP_set_type (SpacePacket *sp, SP_TYPE type) |
| Packet Type を設定 [詳解] | |
| SP_2ND_HDR_FLAG | SP_get_2nd_hdr_flag (const SpacePacket *sp) |
| Secondary Header Flag を取得 [詳解] | |
| void | SP_set_2nd_hdr_flag (SpacePacket *sp, SP_2ND_HDR_FLAG flag) |
| Secondary Header Flag を設定 [詳解] | |
| APID | SP_get_apid (const SpacePacket *sp) |
| APID を取得 [詳解] | |
| void | SP_set_apid (SpacePacket *sp, APID apid) |
| APID を設定 [詳解] | |
| SP_SEQ_FLAG | SP_get_seq_flag (const SpacePacket *sp) |
| Sequence Flag を取得 [詳解] | |
| void | SP_set_seq_flag (SpacePacket *sp, SP_SEQ_FLAG flag) |
| Sequence Flag を設定 [詳解] | |
| uint16_t | SP_get_seq_count (const SpacePacket *sp) |
| Sequence Count を取得 [詳解] | |
| void | SP_set_seq_count (SpacePacket *sp, uint16_t count) |
| Sequence Count を設定 [詳解] | |
| uint16_t | SP_get_packet_data_len (const SpacePacket *sp) |
| Packet Data Length を取得 [詳解] | |
| void | SP_set_packet_data_len (SpacePacket *sp, uint16_t len) |
| Packet Data Length を設定 [詳解] | |
| uint16_t | SP_get_packet_len (const SpacePacket *sp) |
| Packet Length を取得 [詳解] | |
| void | SP_set_packet_len (SpacePacket *sp, uint16_t len) |
| Packet Length を設定 [詳解] | |
| void | SP_copy_packet (SpacePacket *dest, const SpacePacket *src) |
| SpacePacket をコピー [詳解] | |
| void | SP_extract_param_from_packet (const SpacePacket *sp, const SP_ParamExtractionInfo *pei, void *dst) |
| packet に格納された param を取得 [詳解] | |
| void | SP_insert_param_to_packet (SpacePacket *sp, const SP_ParamExtractionInfo *pei, const void *src) |
| packet に param を格納 [詳解] | |
CCSDS で規定される Space Packet の実装
space_packet.h に定義があります。
| #define SP_PRM_HDR_LEN (6) |
Packet Primary Header 長
space_packet.h の 43 行目に定義があります。
| enum SP_2ND_HDR_FLAG |
Space Packet Secandary Header Flag
| 列挙値 | |
|---|---|
| SP_2ND_HDR_FLAG_ABSENT | 0b: Secondary Header Absent |
| SP_2ND_HDR_FLAG_PRESENT | 1b: Secondary Header Present |
space_packet.h の 75 行目に定義があります。
| enum SP_SEQ_FLAG |
Space Packet Sequence Flag
space_packet.h の 86 行目に定義があります。
| enum SP_TYPE |
Space Packet Type
| 列挙値 | |
|---|---|
| SP_TYPE_TLM | 0b: TELEMETRY |
| SP_TYPE_CMD | 1b: COMMAND |
space_packet.h の 63 行目に定義があります。
| enum SP_VER |
Space Packet Version Number
| 列挙値 | |
|---|---|
| SP_VER_1 | 000b: Version-1 |
| SP_VER_UNKNOWN | |
space_packet.h の 51 行目に定義があります。
| void SP_copy_packet | ( | SpacePacket * | dest, |
| const SpacePacket * | src | ||
| ) |
SpacePacket をコピー
| [in,out] | dest | コピー先 SpacePacket |
| [in] | src | コピー元 SpacePacket |
space_packet.c の 165 行目に定義があります。
| void SP_extract_param_from_packet | ( | const SpacePacket * | sp, |
| const SP_ParamExtractionInfo * | pei, | ||
| void * | dst | ||
| ) |
packet に格納された param を取得
| sp[in] | SpacePacket |
| pei[in] | SP_ParamExtractionInfo |
| dst[out] | 格納先のポインタ |
space_packet.c の 171 行目に定義があります。
| SP_2ND_HDR_FLAG SP_get_2nd_hdr_flag | ( | const SpacePacket * | sp | ) |
Secondary Header Flag を取得
| sp | SpacePacket |
space_packet.c の 66 行目に定義があります。
| APID SP_get_apid | ( | const SpacePacket * | sp | ) |
| uint16_t SP_get_packet_data_len | ( | const SpacePacket * | sp | ) |
Packet Data Length を取得
| sp | SpacePacket |
space_packet.c の 128 行目に定義があります。
| uint16_t SP_get_packet_len | ( | const SpacePacket * | sp | ) |
Packet Length を取得
| sp | SpacePacket |
space_packet.c の 152 行目に定義があります。
| uint16_t SP_get_seq_count | ( | const SpacePacket * | sp | ) |
Sequence Count を取得
| sp | SpacePacket |
space_packet.c の 113 行目に定義があります。
| SP_SEQ_FLAG SP_get_seq_flag | ( | const SpacePacket * | sp | ) |
Sequence Flag を取得
| sp | SpacePacket |
space_packet.c の 97 行目に定義があります。
| SP_TYPE SP_get_type | ( | const SpacePacket * | sp | ) |
| SP_VER SP_get_ver | ( | const SpacePacket * | sp | ) |
| void SP_insert_param_to_packet | ( | SpacePacket * | sp, |
| const SP_ParamExtractionInfo * | pei, | ||
| const void * | src | ||
| ) |
packet に param を格納
| sp[in,out] | SpacePacket |
| pei[in] | SP_ParamExtractionInfo |
| src[in] | 格納元のポインタ |
space_packet.c の 207 行目に定義があります。
| void SP_set_2nd_hdr_flag | ( | SpacePacket * | sp, |
| SP_2ND_HDR_FLAG | flag | ||
| ) |
Secondary Header Flag を設定
| [in,out] | sp | SpacePacket |
| [in] | flag | SP_2ND_HDR_FLAG |
space_packet.c の 75 行目に定義があります。
| void SP_set_apid | ( | SpacePacket * | sp, |
| APID | apid | ||
| ) |
APID を設定
| [in,out] | sp | SpacePacket |
| [in] | apid | APID |
space_packet.c の 90 行目に定義があります。
| void SP_set_packet_data_len | ( | SpacePacket * | sp, |
| uint16_t | len | ||
| ) |
Packet Data Length を設定
| [in,out] | sp | SpacePacket |
| [in] | len | Packet Data Length |
space_packet.c の 138 行目に定義があります。
| void SP_set_packet_len | ( | SpacePacket * | sp, |
| uint16_t | len | ||
| ) |
Packet Length を設定
| [in,out] | sp | SpacePacket |
| [in] | len | Packet Length |
space_packet.c の 158 行目に定義があります。
| void SP_set_seq_count | ( | SpacePacket * | sp, |
| uint16_t | count | ||
| ) |
Sequence Count を設定
| [in,out] | sp | SpacePacket |
| [in] | count | Sequence Count |
space_packet.c の 122 行目に定義があります。
| void SP_set_seq_flag | ( | SpacePacket * | sp, |
| SP_SEQ_FLAG | flag | ||
| ) |
Sequence Flag を設定
| [in,out] | sp | SpacePacket |
| [in] | flag | SP_SEQ_FLAG |
space_packet.c の 106 行目に定義があります。
| void SP_set_type | ( | SpacePacket * | sp, |
| SP_TYPE | type | ||
| ) |
Packet Type を設定
| [in,out] | sp | SpacePacket |
| [in] | type | SP_TYPE |
space_packet.c の 59 行目に定義があります。
| void SP_set_ver | ( | SpacePacket * | sp, |
| SP_VER | ver | ||
| ) |
Version No を設定
| [in,out] | sp | SpacePacket |
| [in] | ver | SP_VER |
space_packet.c の 43 行目に定義があります。