39 #ifndef CMD_SPACE_PACKET_H_
40 #define CMD_SPACE_PACKET_H_
55 #define CSP_SND_HDR_LEN (9)
56 #define CSP_2ND_HDR_VER_TO_USE (CSP_2ND_HDR_VER_1)
65 #include "../common_cmd_packet.h"
67 #if CSP_MAX_LEN <= SP_PRM_HDR_LEN
68 #error CSP_MAX_LEN is too small
APID
Application Process ID
void CSP_set_exec_type(CmdSpacePacket *csp, CCP_EXEC_TYPE exec_type)
Execution Type を設定
const uint8_t * CSP_get_param_head(const CmdSpacePacket *csp)
コマンドパラメタの先頭ポインタを取得
SP_VER CSP_get_ver(const CmdSpacePacket *csp)
Version No を取得
SP_SEQ_FLAG CSP_get_seq_flag(const CmdSpacePacket *csp)
Sequence Flag を取得
CSP_CMD_TYPE CSP_get_cmd_type(const CmdSpacePacket *csp)
Command Type を取得
void CSP_set_packet_len(CmdSpacePacket *csp, uint16_t len)
Packet Length を設定
void CSP_set_ver(CmdSpacePacket *csp, SP_VER ver)
Version No を設定
void CSP_copy_packet(CmdSpacePacket *dest, const CmdSpacePacket *src)
CmdSpacePacket をコピー
void CSP_set_2nd_hdr_flag(CmdSpacePacket *csp, SP_2ND_HDR_FLAG flag)
Secondary Header Flag を設定
void CSP_set_ti(CmdSpacePacket *csp, uint32_t ti)
Time Indicator (TI) を設定
void CSP_set_dest_type(CmdSpacePacket *csp, CCP_DEST_TYPE dest_type)
Destination Type を設定
CMD_CODE CSP_get_cmd_id(const CmdSpacePacket *csp)
Command ID を取得
void CSP_set_type(CmdSpacePacket *csp, SP_TYPE type)
Packet Type を設定
void CSP_set_packet_data_len(CmdSpacePacket *csp, uint16_t len)
Packet Data Length を設定
APID CSP_get_apid(const CmdSpacePacket *csp)
APID を取得
void CSP_set_seq_flag(CmdSpacePacket *csp, SP_SEQ_FLAG flag)
Sequence Flag を設定
void CSP_set_cmd_id(CmdSpacePacket *csp, CMD_CODE id)
Command ID を設定
uint16_t CSP_get_packet_data_len(const CmdSpacePacket *csp)
Packet Data Length を取得
uint32_t CSP_get_ti(const CmdSpacePacket *csp)
Time Indicator (TI) を取得
uint16_t CSP_get_seq_count(const CmdSpacePacket *csp)
Sequence Count を取得
SP_TYPE CSP_get_type(const CmdSpacePacket *csp)
Packet Type を取得
void CSP_set_common_hdr(CmdSpacePacket *csp)
共通部分の Header を構築
CCP_DEST_TYPE CSP_get_dest_type(const CmdSpacePacket *csp)
Destination Type を取得
void CSP_set_2nd_hdr_ver(CmdSpacePacket *csp, CSP_2ND_HDR_VER ver)
Secondary Header Version No を設定
SP_2ND_HDR_FLAG CSP_get_2nd_hdr_flag(const CmdSpacePacket *csp)
Secondary Header Flag を取得
CSP_2ND_HDR_VER CSP_get_2nd_hdr_ver(const CmdSpacePacket *csp)
Secondary Header Version No を取得
uint16_t CSP_get_param_len(const CmdSpacePacket *csp)
Param Length を取得
void CSP_set_seq_count(CmdSpacePacket *csp, uint16_t count)
Sequence Count を設定
void CSP_set_apid(CmdSpacePacket *csp, APID apid)
APID を設定
void CSP_set_param(CmdSpacePacket *csp, const uint8_t *param, uint16_t len)
コマンドパラメタを設定
CSP_2ND_HDR_VER
Secondary Header Version No
@ CSP_2ND_HDR_VER_1
Version-1
@ CSP_2ND_HDR_VER_UNKNOWN
バージョン不定
uint16_t CSP_get_packet_len(const CmdSpacePacket *csp)
Packet Length を取得
CCP_EXEC_TYPE CSP_get_exec_type(const CmdSpacePacket *csp)
Execution Type を取得
void CSP_set_cmd_type(CmdSpacePacket *csp, CSP_CMD_TYPE cmd_type)
Command Type を設定
CCP_DEST_TYPE
コマンドの解釈の宛先を規定
CCSDS で規定される Space Packet の実装
SP_2ND_HDR_FLAG
Space Packet Secandary Header Flag
SP_SEQ_FLAG
Space Packet Sequence Flag
SP_VER
Space Packet Version Number
SpacePacket 類 と CommonTlmCmdPacket 類が相互参照するのを回避するためのヘッダ