C2A_Core
全て データ構造 ファイル 関数 変数 型定義 列挙型 列挙値 マクロ定義
common_tlm_packet.c ファイル

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

common_tlm_packet.c の依存先関係図:

[ソースコード]

関数

int CTP_is_valid_packet (const CommonTlmPacket *packet)
 有効なパケットかチェックする [詳解]
 
APID CTP_get_apid (const CommonTlmPacket *packet)
 APID を取得 [詳解]
 
void CTP_set_apid (CommonTlmPacket *packet, APID apid)
 APID を設定 [詳解]
 
double CTP_get_global_time (const CommonTlmPacket *packet)
 Global Time を取得 [詳解]
 
void CTP_set_global_time (CommonTlmPacket *packet)
 現在の Global Time を設定 [詳解]
 
uint32_t CTP_get_on_board_subnet_time (const CommonTlmPacket *packet)
 On-Board Subnetwork Time を取得 [詳解]
 
void CTP_set_on_board_subnet_time (CommonTlmPacket *packet)
 現在の On-Board Subnetwork Time を設定 [詳解]
 
ctp_dest_flags_t CTP_get_dest_flags (const CommonTlmPacket *packet)
 CTP_DEST_FLAG の & を取った flags を取得 [詳解]
 
void CTP_set_dest_flags (CommonTlmPacket *packet, ctp_dest_flags_t flags)
 CTP_DEST_FLAG の & を取った flags を設定 [詳解]
 
TLM_CODE CTP_get_id (const CommonTlmPacket *packet)
 TLM ID を取得 [詳解]
 
void CTP_set_id (CommonTlmPacket *packet, TLM_CODE id)
 TLM ID を設定 [詳解]
 
uint16_t CTP_get_packet_len (const CommonTlmPacket *packet)
 パケット長を取得 [詳解]
 
uint8_t * CTP_get_user_data_head (CommonTlmPacket *packet)
 ADU 分割なしの場合の User Data 先頭のポインタを取得 [詳解]
 
void CTP_copy_packet (CommonTlmPacket *dest, const CommonTlmPacket *src)
 CommonTlmPacket をコピー [詳解]
 

詳解

CTP 関連基本関数の定義

覚え書き
CTP: CommonTlmPacket

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

関数詳解

◆ CTP_copy_packet()

void CTP_copy_packet ( CommonTlmPacket dest,
const CommonTlmPacket src 
)

CommonTlmPacket をコピー

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

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

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

◆ CTP_get_apid()

APID CTP_get_apid ( const CommonTlmPacket packet)

APID を取得

引数
packetCTP
戻り値
APID

common_tlm_packet.c21 行目に定義があります。

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

◆ CTP_get_dest_flags()

ctp_dest_flags_t CTP_get_dest_flags ( const CommonTlmPacket packet)

CTP_DEST_FLAG の & を取った flags を取得

引数
packetCTP
戻り値
Dest Flags

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

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

◆ CTP_get_global_time()

double CTP_get_global_time ( const CommonTlmPacket packet)

Global Time を取得

覚え書き
何が設定されているかは user 定義
引数
packetCTP
戻り値
Global Time

common_tlm_packet.c31 行目に定義があります。

呼び出し関係図:

◆ CTP_get_id()

TLM_CODE CTP_get_id ( const CommonTlmPacket packet)

TLM ID を取得

引数
packetCTP
戻り値
TLM_CODE

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

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

◆ CTP_get_on_board_subnet_time()

uint32_t CTP_get_on_board_subnet_time ( const CommonTlmPacket packet)

On-Board Subnetwork Time を取得

覚え書き
何が設定されているかは user 定義
引数
packetCTP
戻り値
On-Board Subnetwork Time

common_tlm_packet.c43 行目に定義があります。

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

◆ CTP_get_packet_len()

uint16_t CTP_get_packet_len ( const CommonTlmPacket packet)

パケット長を取得

引数
packetCTP
戻り値
packet len

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

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

◆ CTP_get_user_data_head()

uint8_t* CTP_get_user_data_head ( CommonTlmPacket packet)

ADU 分割なしの場合の User Data 先頭のポインタを取得

引数
packetCTP
覚え書き
FIXME: この関数で取得したポインタ経由で tlm のデータをセットする事があるため, const をつけていない 引数の const を外しても良いかも?

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

呼び出し関係図:

◆ CTP_is_valid_packet()

int CTP_is_valid_packet ( const CommonTlmPacket packet)

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

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

common_tlm_packet.c13 行目に定義があります。

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

◆ CTP_set_apid()

void CTP_set_apid ( CommonTlmPacket packet,
APID  apid 
)

APID を設定

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

common_tlm_packet.c26 行目に定義があります。

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

◆ CTP_set_dest_flags()

void CTP_set_dest_flags ( CommonTlmPacket packet,
ctp_dest_flags_t  flags 
)

CTP_DEST_FLAG の & を取った flags を設定

引数
[in,out]packetCTP
[in]flagsDest Flags
戻り値
void

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

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

◆ CTP_set_global_time()

void CTP_set_global_time ( CommonTlmPacket packet)

現在の Global Time を設定

覚え書き
何を設定するかは user 定義
引数
[in,out]packetCTP
戻り値
void

common_tlm_packet.c36 行目に定義があります。

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

◆ CTP_set_id()

void CTP_set_id ( CommonTlmPacket packet,
TLM_CODE  id 
)

TLM ID を設定

引数
[in,out]packetCTP
[in]idTLM_CODE
戻り値
void

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

呼び出し関係図:

◆ CTP_set_on_board_subnet_time()

void CTP_set_on_board_subnet_time ( CommonTlmPacket packet)

現在の On-Board Subnetwork Time を設定

覚え書き
何を設定するかは user 定義
引数
[in,out]packetCTP
戻り値
void

common_tlm_packet.c48 行目に定義があります。

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