AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
pgpmgr_common.h

PGP Manager Common Header

PGP Manager Layer.

none

AXELL CORPORATION

2017_02_22 初版 

2017_10_26 Ver2.0 

2019_12_27 [SDK3.0] PGPのラベリング解析関数が確保したリソースを解放する関数を追加 (#1951)

1: 10: 11: 15: 16: #ifndef PGPMGRCOMMONH 17: #define PGPMGRCOMMONH 18: 19: #include "pgp/pgpmgr.h" 20: 21: 22: typedef struct _PgpMgrContext { 23: _Bool pipeline_time_sharing_enable; 24: _Bool jpeg_output_enable; 25: uint32_t jpeg_output_pipeline; 26: uint32_t num_pipeline_handles; 27: AG903_PgpMgrPipelineHandle pipeline_handles[AG903_PGP_MGR_MAX_PIPELINE_HANDLE]; 28: uint32_t num_vram_input_handles; 29: AG903_PgpMgrVRAMInputHandle vram_input_handles[AG903_PGP_MGR_MAX_VRAMI_HANDLE]; 30: uint32_t num_frame_calc_handles; 31: AG903_PgpMgrFrameCalcHandle frame_calc_handles[AG903_PGP_MGR_MAX_FRAME_CALC_HANDLE]; 32: uint32_t num_dgc_lut; 33: AG903_PgpMgrDGCLookupTable dgc_lut[AG903_PGP_MGR_MAX_DGC_LUT]; 34: AG903_PgpMgrPipelineHandle *assign_pipeline[AG903_PGP_MGR_PIPELINE_NUM]; 35: AG903_PgpMgrVRAMInputHandle *assign_vram[AG903_PGP_MGR_VRAMI_NUM]; 36: AG903_PgpMgrPipelineHandle *exec_pipeline[AG903_PGP_MGR_PIPELINE_NUM]; 37: AG903_PgpMgrVRAMInputHandle *exec_vram[AG903_PGP_MGR_VRAMI_NUM]; 38: PGPMGRCALLBACK intr_input_func[AG903_PGP_MGR_PIPELINE_NUM]; 39: PGPMGRCALLBACK intr_output_func[AG903_PGP_MGR_PIPELINE_NUM]; 40: PGPMGRCALLBACK intr_done_func[AG903_PGP_MGR_PIPELINE_NUM]; 41: PGPMGRCALLBACK intr_vram_error_func[AG903_PGP_MGR_PIPELINE_NUM]; 42: PGPMGRCALLBACK intr_lbl_error_func[AG903_PGP_MGR_PIPELINE_NUM]; 43: PGPMGRCALLBACK intr_hgm_error_func[AG903_PGP_MGR_PIPELINE_NUM]; 44: PGPMGRCALLBACK intr_nd_func[AG903_PGP_MGR_PIPELINE_NUM]; 45: PGPMGRCALLBACK intr_ifc_ovf_func[AG903_PGP_MGR_PIPELINE_NUM]; 46: PGPMGRCALLBACK intr_input_line_func[AG903_PGP_MGR_PIPELINE_NUM]; 47: PGPMGRCALLBACK intr_output_line_func[AG903_PGP_MGR_PIPELINE_NUM]; 48: PGPMGRCALLBACK intr_lbl_done_func[AG903_PGP_MGR_PIPELINE_NUM]; 49: PGPMGRCALLBACK intr_hgm_done_func[AG903_PGP_MGR_PIPELINE_NUM]; 50: int32_t intr_hdr_id[AG903_PGP_MGR_PIPELINE_NUM]; 51: } PgpMgrContext; 52: 53: extern PgpMgrContext *PgpGetContext(void); 54: extern void PgpMgrInitPipelineHandle(AG903_PgpMgrPipelineHandle *handle); 55: extern void PgpMgrInitVRAMInputHandle(AG903_PgpMgrVRAMInputHandle *handle); 56: extern int32_t PgpMgrAssignPipelineHandle(AG903_PgpMgrPipelineHandle *handle); 57: extern int32_t PgpMgrAssignFrameCalcHandle(AG903_PgpMgrFrameCalcHandle *handle); 58: extern int32_t PgpMgrForceAssignPipelineHandle(AG903_PgpMgrPipelineHandle *handle, uint32_t pipeline); 59: extern int32_t PgpMgrForceAssignFrameCalcHandle(AG903_PgpMgrFrameCalcHandle *handle, uint32_t pipeline); 60: extern int32_t PgpMgrCheckAssignPipelineHandle(AG903_PgpMgrPipelineHandle *handle, uint32_t pipeline); 61: extern int32_t PgpMgrExecPipelineHandle(AG903_PgpMgrPipelineHandle *handle, uint32_t cmd); 62: extern int32_t PgpMgrExecFrameCalcHandle(AG903_PgpMgrFrameCalcHandle *handle, uint32_t cmd); 63: extern void PgpMgrExecVRAMInputHandle(AG903_PgpMgrVRAMInputHandle *handle, uint32_t cmd); 64: extern void PgpMgrGetPresetColorSpaceParameter(uint32_t format, uint32_t *limit, uint32_t *shift, int32_t *mtx); 65: extern void *PgpMgrAnalyzeLabelingTable(void *src, uint32_t tbl_num, uint32_t *out_tbl_num); 66: extern void PgpMgrReleaseLabelingTable(void *tbl); 67: extern void PgpMgrSetIntr(void); 68: extern void PgpMgrResetIntr(void); 69: 70: #endif 71: 72:
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.