xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/algos/amd/rk_aiq_types_algo_amd_prvt.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 #ifndef __RKAIQ_TYPES_ALGO_AMD_PRVT_H__
2 #define __RKAIQ_TYPES_ALGO_AMD_PRVT_H__
3 
4 #include "base/xcam_common.h"
5 #include "RkAiqCalibDbTypes.h"
6 #include "xcam_log.h"
7 #include "amd/rk_aiq_types_amd_algo.h"
8 #include "amd/rk_aiq_types_algo_amd_int.h"
9 #include "media_buffer/media_buffer_pool.h"
10 #include "mfnr_head_v1.h"
11 
12 #define  AMD_RATIO_BUF_NUM      (4)
13 typedef struct AmdContext_s {
14     CamCalibDbContext_t* calib;
15     CamCalibDbV2Context_t *calibv2;
16     int imgWidth;
17     int imgHeight;
18     int imgAlignedW;
19     int imgAlignedH;
20     CalibDbV2_MFNR_TuningPara_Motion_t motion;
21     bool enable;
22     rk_aiq_amd_params_t params;
23 
24     uint8_t* ratio_out[AMD_RATIO_BUF_NUM];
25     int ratio_size;
26     //int cur_index;
27 
28     XCamVideoBuffer* spImage_prev;
29     XCamVideoBuffer* ispGain_prev;
30     XCamVideoBuffer* spImage;
31     XCamVideoBuffer* ispGain;
32 
33     uint8_t *pPreAlpha;
34     short *pTmpBuf;
35     uint8_t *static_ratio;
36 
37     MediaBufPoolConfig_t BufPoolConfig;
38     MediaBufPoolMemory_t  BufPoolMem;
39     MediaBufPool_t BufPool;
40 } AmdContext_t;
41 
42 typedef struct _RkAiqAlgoContext {
43     AmdContext_t amdCtx;
44 } RkAiqAlgoContext;
45 
46 typedef struct Mt_Params_Select_t
47 {
48     int enable;
49   	float sigmaHScale;
50 	float sigmaLScale;
51 	float light_clp;
52 	float uv_weight;
53     float mfnr_sigma_scale;
54     float yuvnr_gain_scale[3];
55     float frame_limit_y;
56     float frame_limit_uv;
57     float gain_scale_l_y;
58     float gain_scale_h_y;
59     float gain_scale_l_uv;
60     float gain_scale_h_uv;
61 } Mt_Params_Select_t;
62 
63 #endif//__RKAIQ_TYPES_ALGO_AMD_PRVT_H__
64