C2A_Core
common_cmd_packet.c ファイル

CTP 関連基本関数の定義 [詳解]

common_cmd_packet.c の依存先関係図:

[ソースコード]

関数

int CCP_is_valid_packet (const CommonCmdPacket *packet)
 有効なパケットかチェックする [詳解]
 
cycle_t CCP_get_ti (const CommonCmdPacket *packet)
 TI を取得 [詳解]
 
void CCP_set_ti (CommonCmdPacket *packet, cycle_t ti)
 TI を設定 [詳解]
 
APID CCP_get_apid (const CommonCmdPacket *packet)
 APID を取得 [詳解]
 
void CCP_set_apid (CommonCmdPacket *packet, APID apid)
 APID を設定 [詳解]
 
CCP_EXEC_TYPE CCP_get_exec_type (const CommonCmdPacket *packet)
 EXEC_TYPE を取得 [詳解]
 
void CCP_set_exec_type (CommonCmdPacket *packet, CCP_EXEC_TYPE type)
 EXEC_TYPE を設定 [詳解]
 
CCP_DEST_TYPE CCP_get_dest_type (const CommonCmdPacket *packet)
 DEST_TYPE を取得 [詳解]
 
void CCP_set_dest_type (CommonCmdPacket *packet, CCP_DEST_TYPE type)
 DEST_TYPE を設定 [詳解]
 
CMD_CODE CCP_get_id (const CommonCmdPacket *packet)
 CMD ID を取得 [詳解]
 
void CCP_set_id (CommonCmdPacket *packet, CMD_CODE id)
 CMD ID を設定 [詳解]
 
uint16_t CCP_get_packet_len (const CommonCmdPacket *packet)
 パケット長を取得 [詳解]
 
uint16_t CCP_get_param_len (const CommonCmdPacket *packet)
 CMD パラメタ長を取得 [詳解]
 
uint16_t CCP_get_max_param_len (void)
 CMD パラメタ長の最大値を取得 [詳解]
 
const uint8_t * CCP_get_param_head (const CommonCmdPacket *packet)
 先頭のパラメタのポインタを取得 [詳解]
 
void CCP_set_param (CommonCmdPacket *packet, const uint8_t *param, uint16_t len)
 パラメタを設定 [詳解]
 
void CCP_set_common_hdr (CommonCmdPacket *packet)
 共通部分の Header を構築 [詳解]
 
void CCP_copy_packet (CommonCmdPacket *dest, const CommonCmdPacket *src)
 CommonCmdPacket をコピー [詳解]
 

詳解

CTP 関連基本関数の定義

覚え書き
CCP: CommonCmdPacket

common_cmd_packet.c に定義があります。

関数詳解

◆ CCP_copy_packet()

void CCP_copy_packet ( CommonCmdPacket dest,
const CommonCmdPacket src 
)

CommonCmdPacket をコピー

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

common_cmd_packet.c100 行目に定義があります。

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

◆ CCP_get_apid()

APID CCP_get_apid ( const CommonCmdPacket packet)

APID を取得

引数
packetCCP
戻り値
APID

common_cmd_packet.c30 行目に定義があります。

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

◆ CCP_get_dest_type()

CCP_DEST_TYPE CCP_get_dest_type ( const CommonCmdPacket packet)

DEST_TYPE を取得

引数
packetCCP
戻り値
CCP_DEST_TYPE

common_cmd_packet.c50 行目に定義があります。

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

◆ CCP_get_exec_type()

CCP_EXEC_TYPE CCP_get_exec_type ( const CommonCmdPacket packet)

EXEC_TYPE を取得

引数
packetCCP
戻り値
CCP_EXEC_TYPE

common_cmd_packet.c40 行目に定義があります。

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

◆ CCP_get_id()

CMD_CODE CCP_get_id ( const CommonCmdPacket packet)

CMD ID を取得

引数
packetCCP
戻り値
CMD_CODE

common_cmd_packet.c60 行目に定義があります。

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

◆ CCP_get_max_param_len()

uint16_t CCP_get_max_param_len ( void  )

CMD パラメタ長の最大値を取得

引数
void
戻り値
max param len

common_cmd_packet.c80 行目に定義があります。

被呼び出し関係図:

◆ CCP_get_packet_len()

uint16_t CCP_get_packet_len ( const CommonCmdPacket packet)

パケット長を取得

引数
packetCCP
戻り値
packet len

common_cmd_packet.c70 行目に定義があります。

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

◆ CCP_get_param_head()

const uint8_t* CCP_get_param_head ( const CommonCmdPacket packet)

先頭のパラメタのポインタを取得

引数
packetCCP
戻り値
*param_head

common_cmd_packet.c85 行目に定義があります。

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

◆ CCP_get_param_len()

uint16_t CCP_get_param_len ( const CommonCmdPacket packet)

CMD パラメタ長を取得

引数
packetCCP
戻り値
param len

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

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

◆ CCP_get_ti()

cycle_t CCP_get_ti ( const CommonCmdPacket packet)

TI を取得

引数
packetCCP
戻り値
ti

common_cmd_packet.c20 行目に定義があります。

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

◆ CCP_is_valid_packet()

int CCP_is_valid_packet ( const CommonCmdPacket packet)

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

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

common_cmd_packet.c12 行目に定義があります。

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

◆ CCP_set_apid()

void CCP_set_apid ( CommonCmdPacket packet,
APID  apid 
)

APID を設定

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

common_cmd_packet.c35 行目に定義があります。

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

◆ CCP_set_common_hdr()

void CCP_set_common_hdr ( CommonCmdPacket packet)

共通部分の Header を構築

引数
[in,out]packetCCP
戻り値
void

common_cmd_packet.c95 行目に定義があります。

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

◆ CCP_set_dest_type()

void CCP_set_dest_type ( CommonCmdPacket packet,
CCP_DEST_TYPE  type 
)

DEST_TYPE を設定

引数
[in,out]packetCCP
[in]typeDEST_TYPE
戻り値
void

common_cmd_packet.c55 行目に定義があります。

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

◆ CCP_set_exec_type()

void CCP_set_exec_type ( CommonCmdPacket packet,
CCP_EXEC_TYPE  type 
)

EXEC_TYPE を設定

引数
[in,out]packetCCP
[in]typeEXEC_TYPE
戻り値
void

common_cmd_packet.c45 行目に定義があります。

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

◆ CCP_set_id()

void CCP_set_id ( CommonCmdPacket packet,
CMD_CODE  id 
)

CMD ID を設定

引数
[in,out]packetCCP
[in]idCMD_CODE
戻り値
void

common_cmd_packet.c65 行目に定義があります。

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

◆ CCP_set_param()

void CCP_set_param ( CommonCmdPacket packet,
const uint8_t *  param,
uint16_t  len 
)

パラメタを設定

引数
[in,out]packetCCP
[in]paramパラメタ配列のポインタ
[in]lenパラメタ長
戻り値
void

common_cmd_packet.c90 行目に定義があります。

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

◆ CCP_set_ti()

void CCP_set_ti ( CommonCmdPacket packet,
cycle_t  ti 
)

TI を設定

引数
[in,out]packetCCP
[in]tiTI
戻り値
void

common_cmd_packet.c25 行目に定義があります。

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