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

パイプラインの入出力割り込み設定

Syntax
C++
int32_t AG903_PgpMgrSetConfigIntrCtrl(AG903_PgpMgrPipelineHandle * handle, uint32_t input_field, uint32_t input_fcnt, uint32_t input_line, uint32_t output_field, uint32_t output_fcnt, uint32_t output_line);
引数 
説明 
AG903_PgpMgrPipelineHandle * handle 
[in] パイプラインハンドルを指定します。 
uint32_t input_field 
[in] 入力割り込みにおけるVSYNC割り込みを出力するフィールド「PGP発生フィールド」を指定します。 
uint32_t input_fcnt 
[in] 入力割り込みにおけるフレームカウンタの最大値を指定します。 
uint32_t input_line 
[in] 入力割り込みにおけるライン割り込み発生のライン番号を指定します。 
uint32_t output_field 
[in] 出力割り込みにおけるVSYNC割り込みを出力するフィールド「PGP発生フィールド」を指定します。 
uint32_t output_fcnt 
[in] 出力割り込みにおけるフレームカウンタの最大値を指定します。 
uint32_t output_line 
[in] 出力割り込みにおけるライン割り込み発生のライン番号を指定します。 

設定結果

返値の詳細 
説明 
正常終了 

パイプラインの入出力割込みの条件設定を行います。 

引数に指定可能な範囲は以下の通りです。

引数 
指定可能範囲 
input_field 
input_fcnt 
input_line 
output_field 
output_fcnt 
output_line 
1: int32_t AG903_PgpMgrSetConfigIntrCtrl(AG903_PgpMgrPipelineHandle *handle, uint32_t input_field, uint32_t input_fcnt, uint32_t input_line, uint32_t output_field, uint32_t output_fcnt, uint32_t output_line) 2: { 3: 4: if ((handle == NULL) || (handle->id != AG903_PGP_MGR_PIPELINE_HANDLE_ID)) { 5: return -AG903_EINVAL; 6: } 7: 8: 9: switch (input_field) { 10: case AG903_PGP_MGR_INTR_CTRL_FIELD_ODD: 11: case AG903_PGP_MGR_INTR_CTRL_FIELD_EVEN: 12: case AG903_PGP_MGR_INTR_CTRL_FIELD_ODD_EVEN: 13: break; 14: default: 15: return -AG903_EINVAL; 16: } 17: if ((input_fcnt == 0) || (input_fcnt > AG903_PGP_MGR_INTR_CTRL_MAX_FRAME_CNT)) { 18: return -AG903_EINVAL; 19: } 20: if (input_line > AG903_PGP_MGR_INTR_CTRL_MAX_INPUT_LINE) { 21: return -AG903_EINVAL; 22: } 23: switch (output_field) { 24: case AG903_PGP_MGR_INTR_CTRL_FIELD_ODD: 25: case AG903_PGP_MGR_INTR_CTRL_FIELD_EVEN: 26: case AG903_PGP_MGR_INTR_CTRL_FIELD_ODD_EVEN: 27: break; 28: default: 29: return -AG903_EINVAL; 30: } 31: if ((output_fcnt == 0) || (output_fcnt > AG903_PGP_MGR_INTR_CTRL_MAX_FRAME_CNT)) { 32: return -AG903_EINVAL; 33: } 34: if (output_line > AG903_PGP_MGR_INTR_CTRL_MAX_OUTPUT_LINE) { 35: return -AG903_EINVAL; 36: } 37: 38: 39: handle->input_intr_field = input_field; 40: handle->input_intr_fcnt = input_fcnt; 41: handle->input_intr_line = input_line; 42: handle->output_intr_field = output_field; 43: handle->output_intr_fcnt = output_fcnt; 44: handle->output_intr_line = output_line; 45: handle->is_config_dirty[AG903_PGP_MGR_CONFIG_INTR_CTRL] = true; 46: handle->is_dirty = true; 47: return AG903_ENONE; 48: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.