AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
AG903_PgpMgrGetLabelingStatus 関数

ラベリング処理時のステータス取得

Syntax
C++
int32_t AG903_PgpMgrGetLabelingStatus(AG903_PgpMgrPipelineHandle * handle, uint32_t * id, _Bool * is_vram_out, _Bool * is_act, uint32_t * queue_cnt, uint32_t * exec_cmd);
引数 
説明 
AG903_PgpMgrPipelineHandle * handle 
[in] パイプラインハンドルを指定します。 
uint32_t * id 
[out] ラベリング付加情報テーブルのIDを格納するポインタを指定します。 
_Bool * is_vram_out 
[out] VRAM出力中であることを示すフラグを格納するポインタを指定します。 
_Bool * is_act 
[out] ラベリング処理が実行中であること示すフラグを格納するポインタを指定します。 
uint32_t * queue_cnt 
[out] キューに溜めたコマンド数を格納するポインタを指定します。 
uint32_t * exec_cmd 
[out] ラベリング処理の実行中のコマンドを格納するポインタを指定します。 

取得結果

返値の詳細 
説明 
正常終了 
-AG903_EINVAL 
handleに不正な値が指定された場合
パイプラインが物理的に割り当てられていない場合
割り当て先の物理パイプラインが他のパイプラインハンドルで使用されている場合 

ラベリング処理のステータスを取得します。

格納ポインタ=NULL の場合、その値は取得しません。

1: int32_t AG903_PgpMgrGetLabelingStatus(AG903_PgpMgrPipelineHandle *handle, uint32_t *id, _Bool *is_vram_out, _Bool *is_act, uint32_t *queue_cnt, uint32_t *exec_cmd) 2: { 3: 4: if ((handle == NULL) || (handle->id != AG903_PGP_MGR_PIPELINE_HANDLE_ID)) { 5: return -AG903_EINVAL; 6: } 7: 8: 9: if (handle->is_assign == false) { 10: return -AG903_EINVAL; 11: } 12: 13: 14: PGPPrmParamPGPnLBLSTAT lblstat; 15: AG903_PgpPrmGetPGPnLBLSTAT(handle->pipeline_no, &lblstat); 16: 17: 18: if ((PgpContext.exec_pipeline[handle->pipeline_no] != handle) && (lblstat.cmd != AG903_PGP_MGR_LBL_CMD_NONE)) { 19: return -AG903_EINVAL; 20: } 21: if (id != NULL) { 22: *id = lblstat.l_id; 23: } 24: if (is_vram_out != NULL) { 25: *is_vram_out = lblstat.vrmacc; 26: } 27: if (is_act != NULL) { 28: *is_act = lblstat.act; 29: } 30: if (queue_cnt != NULL) { 31: *queue_cnt = lblstat.queue; 32: } 33: if (exec_cmd != NULL) { 34: *exec_cmd = lblstat.cmd; 35: } 36: return AG903_ENONE; 37: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.