AG903ライブラリリファレンス
Body Source
AG903_PgpMgrForceAssignPipeline 関数
本文ソース
コピコード
1: int32_t AG903_PgpMgrForceAssignPipeline(
void
*handle, uint32_t pipeline) 2: { 3: uint32_t id; 4: 5:
if
(handle == NULL) { 6:
return
-
AG903_EINVAL
; 7: } 8: 9: id = ((
AG903_PgpMgrPipelineHandle
*)handle)->id; 10:
if
((id !=
AG903_PGP_MGR_PIPELINE_HANDLE_ID
) && (id !=
AG903_PGP_MGR_FRAME_CALC_HANDLE_ID
)) { 11:
return
-
AG903_EINVAL
; 12: } 13:
switch
(pipeline) { 14:
case
AG903_PGP_MGR_CALC_PIPELINE0
: 15:
case
AG903_PGP_MGR_CALC_PIPELINE1
: 16:
case
AG903_PGP_MGR_INPUT_PIPELINE0
: 17:
case
AG903_PGP_MGR_INPUT_PIPELINE1
: 18:
case
AG903_PGP_MGR_FRAME_PIPELINE0
: 19:
case
AG903_PGP_MGR_FRAME_PIPELINE1
: 20:
break
; 21:
default
: 22:
return
-
AG903_EINVAL
; 23: } 24: 25:
if
(id ==
AG903_PGP_MGR_PIPELINE_HANDLE_ID
) { 26:
AG903_PgpMgrPipelineHandle
*p = (
AG903_PgpMgrPipelineHandle
*)handle; 27: 28:
if
(p->is_assign ==
true
) { 29:
return
-
AG903_EINVAL
; 30: } 31: 32:
if
(p->input_handle == NULL) { 33:
return
-
AG903_EINVAL
; 34: } 35: 36:
if
(p->is_used_frame_calc ==
true
) { 37:
return
-
AG903_EINVAL
; 38: } 39: 40:
return
PgpMgrForceAssignPipelineHandle(p, pipeline); 41: }
else
{ 42:
AG903_PgpMgrFrameCalcHandle
*f = (
AG903_PgpMgrFrameCalcHandle
*)handle; 43: 44:
if
(f->master_handle->is_assign ==
true
) { 45:
return
-
AG903_EINVAL
; 46: } 47: 48:
if
(f->master_handle->input_handle == NULL) { 49:
return
-
AG903_EINVAL
; 50: } 51: 52:
if
(f->slave_pipeline ==
true
) { 53:
AG903_PgpMgrPipelineHandle
*slave = (
AG903_PgpMgrPipelineHandle
*)f->slave_handle; 54:
if
(slave->input_handle == NULL) { 55:
return
-
AG903_EINVAL
; 56: } 57: } 58: 59:
return
PgpMgrForceAssignFrameCalcHandle(f, pipeline); 60: } 61: }
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.
内容
|
インデックス
|
ホーム