/*
|
* Copyright (c) 2019 Rockchip Corporation
|
*
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
* you may not use this file except in compliance with the License.
|
* You may obtain a copy of the License at
|
*
|
* http://www.apache.org/licenses/LICENSE-2.0
|
*
|
* Unless required by applicable law or agreed to in writing, software
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
* See the License for the specific language governing permissions and
|
* limitations under the License.
|
*
|
*/
|
|
#ifndef _ISP20_HW_SIMULATOR_H_
|
#define _ISP20_HW_SIMULATOR_H_
|
|
#include "awb/rk_aiq_types_awb_algo_int.h"
|
#include "ae/rk_aiq_types_ae_algo.h"
|
#include "af/rk_aiq_af_hw_v200.h"
|
#include "adehaze/rk_aiq_types_adehaze_algo_prvt.h"
|
#include "anr/rk_aiq_types_anr_algo_int.h"
|
#include "asharp/rk_aiq_types_asharp_algo_int.h"
|
#include "adebayer/rk_aiq_types_algo_adebayer.h"
|
#include "atmo/rk_aiq_types_atmo_algo_int.h"
|
#include "atmo/rk_aiq_types_atmo_algo.h"
|
#include "amerge/rk_aiq_types_amerge_algo_int.h"
|
#include "amerge/rk_aiq_types_amerge_algo.h"
|
#include "agamma/rk_aiq_types_agamma_algo_prvt.h"
|
#include "aorb/rk_aiq_orb_hw.h"
|
#include "adpcc/rk_aiq_types_adpcc_algo_int.h"
|
#include "ablc/rk_aiq_types_ablc_algo_int.h"
|
#include "alsc/rk_aiq_types_alsc_algo.h"
|
#include "accm/rk_aiq_types_accm_algo.h"
|
#include "agic/rk_aiq_types_algo_agic.h"
|
#include "rk_aiq_luma.h"
|
#include "a3dlut/rk_aiq_types_a3dlut_algo_int.h"
|
typedef struct rk_sim_isp_v200_luma_s {
|
//luma
|
bool valid_luma;
|
isp_luma_stat_t image_luma_result;
|
} rk_sim_isp_v200_luma_t;
|
|
typedef struct rk_sim_isp_v200_stats_s {
|
//awb
|
bool valid_awb;
|
rk_aiq_awb_stat_res_v200_t awb;
|
rk_aiq_awb_stat_res_v201_t awb_v201;
|
//ae
|
bool valid_ae;
|
RKAiqAecStats_t ae;
|
//af
|
bool valid_af;
|
rawaf_isp_af_stat_t af;
|
//anr html params
|
int iso;
|
//orb
|
bool valid_orb;
|
sim_orb_stat_t orb;
|
//atmo
|
unsigned short rawWidth; // rawͼ¿í
|
unsigned short rawHeight;
|
bool valid_atmo;
|
rkisp_atmo_stats_t atmo;
|
} rk_sim_isp_v200_stats_t;
|
|
typedef struct rk_sim_isp_v200_params_s {
|
float awb_smooth_factor;
|
rk_aiq_wb_gain_t awb_gain_algo;
|
rk_aiq_awb_stat_cfg_v200_t awb_hw0_para;
|
rk_aiq_awb_stat_cfg_v201_t awb_hw1_para;
|
//ae
|
RkAiqAecHwConfig_t ae_hw_config;
|
//anr
|
ANRProcResult_t rkaiq_anr_proc_res;
|
AsharpProcResult_t rkaiq_asharp_proc_res;
|
//adhaz
|
rk_aiq_dehaze_cfg_t adhaz_config;
|
//agamma
|
AgammaProcRes_t agamma_config;
|
//amerge
|
RkAiqAmergeProcResult_t amerge_proc_res;
|
//atmo
|
RkAiqAtmoProcResult_t atmo_proc_res;
|
//adpcc
|
AdpccProcResult_t dpcc;
|
//adebayer
|
AdebayerConfig_t adebayer_config;
|
//ablc
|
AblcProc_t blc;
|
//agic
|
AgicConfig_t agic_config;
|
rk_aiq_lsc_cfg_t lscHwConf;
|
rk_aiq_ccm_cfg_t ccmHwConf;
|
|
rk_aiq_lut3d_cfg_t lut3d_hw_conf;
|
unsigned short rawWidth; // rawͼ¿í
|
unsigned short rawHeight;
|
} rk_sim_isp_v200_params_t;
|
|
#endif
|