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

パイプラインのフレーム付加情報の値取得

Syntax
C++
int32_t AG903_PgpMgrGetFrameInfo(AG903_PgpMgrPipelineHandle * handle, uint32_t * tmstmp, uint32_t * field, uint32_t * port, uint32_t * fnum);
引数 
説明 
AG903_PgpMgrPipelineHandle * handle 
[in] パイプラインハンドルを指定します。 
uint32_t * tmstmp 
[out] タイムスタンプ用内部カウンタの値を保持するポインタを指定します。 
uint32_t * field 
[out] 入力フィールドの値を保持するポインタを指定します。 
uint32_t * port 
[out] ポート番号の値を保持するポインタを指定します。 
uint32_t * fnum 
[out] フレーム番号の内部カウンタの値を保持するポインタを指定します。 

取得結果

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

パイプラインのフレーム付加情報の値を取得します。 

引数とレジスタの対応は以下の通りです。

引数 
対象レジスタ 
tmstmp 
AG903_PGPn_FAIVAL0 の TMSTMPフィールド 
field 
AG903_PGPn_FAIVAL1 の FIELDフィールド 
port 
AG903_PGPn_FAIVAL1 の PORTフィールド 
fnum 
AG903_PGPn_FAIVAL1 の FNUMフィールド 

引数=NULL の場合、当該引数のパラメータは取得しません。

1: int32_t AG903_PgpMgrGetFrameInfo(AG903_PgpMgrPipelineHandle *handle, uint32_t *tmstmp, uint32_t *field, uint32_t *port, uint32_t *fnum) 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: if (PgpContext.exec_pipeline[handle->pipeline_no] != handle) { 14: return -AG903_EINVAL; 15: } 16: 17: 18: if (tmstmp != NULL) { 19: AG903_PgpPrmGetPGPnFAIVAL0(handle->pipeline_no, tmstmp); 20: } 21: if (field != NULL || port != NULL || fnum != NULL) { 22: uint32_t tmp_field, tmp_port, tmp_fnum; 23: AG903_PgpPrmGetPGPnFAIVAL1(handle->pipeline_no, &tmp_field, &tmp_port, &tmp_fnum); 24: if (field != NULL) { 25: *field = tmp_field; 26: } 27: if (port != NULL) { 28: *port = tmp_port; 29: } 30: if (fnum != NULL) { 31: *fnum = tmp_fnum; 32: } 33: } 34: return AG903_ENONE; 35: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.