xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/include/iq_parser_v2/adegamma_head.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  * adegamma_head.h
3  *
4  *  Copyright (c) 2021 Rockchip Corporation
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19 
20 #ifndef __CALIBDBV2_ADEGAMMA_HEAD_H__
21 #define __CALIBDBV2_ADEGAMMA_HEAD_H__
22 
23 #include "rk_aiq_comm.h"
24 
25 RKAIQ_BEGIN_DECLARE
26 
27 #define ADEGAMMA_CRUVE_KNOTS 17
28 
29 /*****************************************************************************/
30 /**
31  * @brief   ISP2.0 Adegamma Config Params
32  */
33 /*****************************************************************************/
34 
35 typedef struct AdegmmaParaV2_s {
36     // M4_BOOL_DESC("degamma_en", "0")
37     bool degamma_en;
38     // M4_ARRAY_DESC("X_axis", "u16", M4_SIZE(1,17),  M4_RANGE(0, 4095), "[0,256,512,768,1024,1280,1536,1792,2048,2304,2560,2816,3072,3328,3584,3840,4096]", M4_DIGIT(0), M4_DYNAMIC(0))
39     int X_axis[ADEGAMMA_CRUVE_KNOTS];
40     // M4_ARRAY_DESC("curve_R", "u16", M4_SIZE(1,17),  M4_RANGE(0, 4095), "[0,256,512,768,1024,1280,1536,1792,2048,2304,2560,2816,3072,3328,3584,3840,4096]", M4_DIGIT(0), M4_DYNAMIC(0))
41     int curve_R[ADEGAMMA_CRUVE_KNOTS];
42     // M4_ARRAY_DESC("curve_G", "u16", M4_SIZE(1,17),  M4_RANGE(0, 4095), "[0,256,512,768,1024,1280,1536,1792,2048,2304,2560,2816,3072,3328,3584,3840,4096]", M4_DIGIT(0), M4_DYNAMIC(0))
43     int curve_G[ADEGAMMA_CRUVE_KNOTS];
44     // M4_ARRAY_DESC("curve_B", "u16", M4_SIZE(1,17),  M4_RANGE(0, 4095), "[0,256,512,768,1024,1280,1536,1792,2048,2304,2560,2816,3072,3328,3584,3840,4096]", M4_DIGIT(0), M4_DYNAMIC(0))
45     int curve_B[ADEGAMMA_CRUVE_KNOTS];
46 } AdegmmaParaV2_t;
47 
48 typedef struct CalibDbV2_Adegmma_s {
49     // M4_STRUCT_DESC("DegammaTuningPara", "normal_ui_style")
50     AdegmmaParaV2_t DegammaTuningPara;
51 } CalibDbV2_Adegmma_t;
52 
53 
54 RKAIQ_END_DECLARE
55 
56 #endif
57