C2A_Core
common_tlm_cmd_packet.h ファイル

CTCP 関連基本関数の宣言 [詳解]

common_tlm_cmd_packet.h の依存先関係図:
被依存関係図:

[ソースコード]

列挙型

enum  CTCP_PACKET_TYPE { CTCP_PACKET_TYPE_CMD , CTCP_PACKET_TYPE_TLM , CTCP_PACKET_TYPE_UNKNOWN }
 tlm (CTP) or cmd (CCP) を規定 [詳解]
 

関数

int CTCP_is_valid_packet (const CommonTlmCmdPacket *packet)
 有効なパケットかチェックする [詳解]
 
CTCP_PACKET_TYPE CTCP_get_packet_type (const CommonTlmCmdPacket *packet)
 tlm か cmd かを判断 [詳解]
 
uint16_t CTCP_get_packet_len (const CommonTlmCmdPacket *packet)
 パケット長を取得 [詳解]
 
APID CTCP_get_apid (const CommonTlmCmdPacket *packet)
 APID を取得 [詳解]
 
void CTCP_set_apid (CommonTlmCmdPacket *packet, APID apid)
 APID を設定 [詳解]
 
void CTCP_copy_packet (CommonTlmCmdPacket *dest, const CommonTlmCmdPacket *src)
 CommonTlmCmdPacket をコピー [詳解]
 
const CommonTlmPacketCTCP_convert_to_ctp (const CommonTlmCmdPacket *ctcp)
 CTCP を CTP に変換(キャスト) [詳解]
 
const CommonTlmCmdPacketCTCP_convert_from_ctp (const CommonTlmPacket *ctp)
 CTP を CTCP に変換(キャスト) [詳解]
 
const CommonCmdPacketCTCP_convert_to_ccp (const CommonTlmCmdPacket *ctcp)
 CTCP を CCP に変換(キャスト) [詳解]
 
const CommonTlmCmdPacketCTCP_convert_from_ccp (const CommonCmdPacket *ccp)
 CCP を CTCP に変換(キャスト) [詳解]
 

詳解

CTCP 関連基本関数の宣言

覚え書き
CTCP: CommonTlmCmdPacket
CTP: CommonTlmPacket
CCP: CommonCmdPacket

common_tlm_cmd_packet.h に定義があります。

列挙型詳解

◆ CTCP_PACKET_TYPE

tlm (CTP) or cmd (CCP) を規定

覚え書き
uint8_tを想定
列挙値
CTCP_PACKET_TYPE_CMD 
CTCP_PACKET_TYPE_TLM 
CTCP_PACKET_TYPE_UNKNOWN 

common_tlm_cmd_packet.h44 行目に定義があります。

関数詳解

◆ CTCP_convert_from_ccp()

const CommonTlmCmdPacket* CTCP_convert_from_ccp ( const CommonCmdPacket ccp)

CCP を CTCP に変換(キャスト)

覚え書き
NULL が返る可能性があるので,呼び出し元でしっかりアサーションすること!
引数
[in]ctcpCCP
戻り値
CTCP変換成功時
NULLエラー時

common_tlm_cmd_packet.c75 行目に定義があります。

被呼び出し関係図:

◆ CTCP_convert_from_ctp()

const CommonTlmCmdPacket* CTCP_convert_from_ctp ( const CommonTlmPacket ctp)

CTP を CTCP に変換(キャスト)

覚え書き
NULL が返る可能性があるので,呼び出し元でしっかりアサーションすること!
引数
[in]ctcpCTP
戻り値
CTCP変換成功時
NULLエラー時

common_tlm_cmd_packet.c64 行目に定義があります。

被呼び出し関係図:

◆ CTCP_convert_to_ccp()

const CommonCmdPacket* CTCP_convert_to_ccp ( const CommonTlmCmdPacket ctcp)

CTCP を CCP に変換(キャスト)

覚え書き
NULL が返る可能性があるので,呼び出し元でしっかりアサーションすること!
引数
[in]ctcpCTCP
戻り値
CCP変換成功時
NULLエラー時

common_tlm_cmd_packet.c69 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ CTCP_convert_to_ctp()

const CommonTlmPacket* CTCP_convert_to_ctp ( const CommonTlmCmdPacket ctcp)

CTCP を CTP に変換(キャスト)

覚え書き
NULL が返る可能性があるので,呼び出し元でしっかりアサーションすること!
引数
[in]ctcpCTCP
戻り値
CTP変換成功時
NULLエラー時

common_tlm_cmd_packet.c58 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ CTCP_copy_packet()

void CTCP_copy_packet ( CommonTlmCmdPacket dest,
const CommonTlmCmdPacket src 
)

CommonTlmCmdPacket をコピー

覚え書き
user 実装次第だが,高速化のためすすべてではなく必要最低限しかコピーしない場合もある
引数
[in,out]destコピー先 CTCP
[in]srcコピー元 CTCP
戻り値
void

common_tlm_cmd_packet.c52 行目に定義があります。

呼び出し関係図:

◆ CTCP_get_apid()

APID CTCP_get_apid ( const CommonTlmCmdPacket packet)

APID を取得

引数
packetCTCP
戻り値
APID

common_tlm_cmd_packet.c42 行目に定義があります。

呼び出し関係図:

◆ CTCP_get_packet_len()

uint16_t CTCP_get_packet_len ( const CommonTlmCmdPacket packet)

パケット長を取得

引数
packetCTCP
戻り値
packet len

common_tlm_cmd_packet.c37 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ CTCP_get_packet_type()

CTCP_PACKET_TYPE CTCP_get_packet_type ( const CommonTlmCmdPacket packet)

tlm か cmd かを判断

引数
packetCTCP
戻り値
CTCP_PACKET_TYPE

common_tlm_cmd_packet.c22 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ CTCP_is_valid_packet()

int CTCP_is_valid_packet ( const CommonTlmCmdPacket packet)

有効なパケットかチェックする

覚え書き
NULL チェックも行う
OBC の外から来たパケットな可能性もあるので,このC2Aで扱えるサイズかもチェックする
引数
packetCTCP
戻り値
1True
0False

common_tlm_cmd_packet.c14 行目に定義があります。

呼び出し関係図:
被呼び出し関係図:

◆ CTCP_set_apid()

void CTCP_set_apid ( CommonTlmCmdPacket packet,
APID  apid 
)

APID を設定

引数
[in,out]packetCTCP
[in]apidAPID
戻り値
void

common_tlm_cmd_packet.c47 行目に定義があります。

呼び出し関係図: