5 #ifndef BLOCK_COMMAND_TABLE_H_
6 #define BLOCK_COMMAND_TABLE_H_
10 #define BCT_CMD_MAX_LENGTH (64)
13 #define BCT_MAX_CMD_NUM (32)
15 #define BCT_MAX_BLOCKS (383)
24 #define SIZE_OF_BCT_ID_T (2)
28 #if SIZE_OF_BCT_ID_T == 1
30 #elif SIZE_OF_BCT_ID_T == 2
32 #elif SIZE_OF_BCT_ID_T == 4
35 #error Illegal value for SIZE_OF_BCT_ID_T
109 void (*set_bc_length_)(
const bct_id_t block, uint8_t length);
BCT_ACK BCT_copy_bct(const bct_id_t dst_block, const bct_id_t src_block)
BCT の中身を 他の BCT に COPY する
const uint8_t * BCT_get_param_head(const bct_id_t block, const uint8_t cmd)
BCT 内の Cmd の param_head の getter
BCT_ACK BCT_overwrite_cmd(const BCT_Pos *pos, const CommonCmdPacket *packet)
既に登録されている BC の Cmd の中身を外部から上書きする
CCP_CmdRet Cmd_BCT_FILL_NOP(const CommonCmdPacket *packet)
BCT_ACK BCT_clear_block(const bct_id_t block)
指定された block の BCT を初期化する
cycle_t BCT_get_ti(const bct_id_t block, const uint8_t cmd)
BCT 内の Cmd の TI の getter
void BCT_restore_pos(void)
pos を pos_stored から復旧
BCT_ACK BCT_make_pos(BCT_Pos *pos, const bct_id_t block, const uint8_t cmd)
BCT_Pos* を引数から作る
CCP_CmdRet Cmd_BCT_OVERWRITE_CMD(const CommonCmdPacket *packet)
CCP_CmdRet Cmd_BCT_SET_BLOCK_POSITION(const CommonCmdPacket *packet)
BCT_ACK BCT_load_cmd(const BCT_Pos *pos, CommonCmdPacket *packet)
保存データを CCP にコピーする.
void BCT_initialize(void)
BCT の初期化関数
#define BCT_CMD_MAX_LENGTH
const BCT_CmdData * BCT_get_bc_cmd_data(const BCT_Pos *pos)
BCT_CmdData の const pointer getter
const BlockCommandTable *const block_command_table
CCP_CmdRet Cmd_BCT_CLEAR_BLOCK(const CommonCmdPacket *packet)
CMD_CODE BCT_get_id(const bct_id_t block, const uint8_t cmd)
BCT 内の Cmd の CMD_CODE の getter
void BCT_store_pos(void)
pos を pos_stored に保存
#define BCT_MAX_BLOCKS
BCのIDの最大数
CCP_CmdRet BCT_convert_bct_ack_to_ccp_cmd_ret(BCT_ACK ack)
返り値用 enum 変換用関数
BCT_ACK BCT_swap_contents(const bct_id_t block_a, const bct_id_t block_b)
BCT の block の指す中身を入れ替える
BCT_ACK BCT_swap_address(const bct_id_t block_a, const bct_id_t block_b)
BCT の block の指すポインタ & func を入れ替える
CCP_CmdRet Cmd_BCT_COPY_BCT(const CommonCmdPacket *packet)
uint8_t BCT_get_bc_length(const bct_id_t block)
BCT の length の getter
BCT_ACK BCT_check_position(const BCT_Pos *pos)
BCT_Pos* の validate
BCT_ACK
BCT 関係の関数のエラーステータス
BCT_ACK BCT_register_cmd(const CommonCmdPacket *packet)
Cmd を block_command_table->pos に登録する
#define BCT_MAX_CMD_NUM
1つのBCに最大何個のコマンドを挿入できるか
BCTのCoreTlmパラメタのオーバーライド用ヘッダー
uint8_t cmd
そのブロック内でどのコマンドを指すか
BCT の本体. 実際に BC の cmd が確保されている
uint8_t length
cmds に保存されているコマンド数