1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
  | /* 
 |   * debayer_head.h 
 |   * 
 |   *  Copyright (c) 2021 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 __CALIBDBV2_DEBAYER_HEAD_H__  
 |  #define __CALIBDBV2_DEBAYER_HEAD_H__ 
 |    
 |  #include <rk_aiq_comm.h> 
 |    
 |  RKAIQ_BEGIN_DECLARE 
 |    
 |  typedef struct __debayer_array {  
 |      // M4_ARRAY_DESC("debayer_filter1", "u32", M4_SIZE(1,9),  M4_RANGE(08, 65536), "[50,100,200,400,800,1600,3200,6400,12800]", M4_DIGIT(0), M4_DYNAMIC(0), 0) 
 |      int ISO[9]; 
 |      // M4_ARRAY_DESC("sharp_strength", "u8", M4_SIZE(1,9),  M4_RANGE(0, 255), "[4,4,4,4,4,4,4,4,4]", M4_DIGIT(0), M4_DYNAMIC(0), 0) 
 |      unsigned char sharp_strength[9]; 
 |      // M4_ARRAY_DESC("debayer_hf_offset", "u8", M4_SIZE(1,9),  M4_RANGE(0, 255), "[1,1,1,1,1,1,1,1,1]", M4_DIGIT(0), M4_DYNAMIC(0), 0) 
 |      unsigned short debayer_hf_offset[9]; 
 |  }Debayer_Array_t; 
 |    
 |  typedef struct __Debayer_Param { 
 |      // M4_BOOL_DESC("debayer_en", "1", 0, M4_HIDE(1))  
 |      bool debayer_en;  
 |      // M4_ARRAY_DESC("debayer_filter1", "s8", M4_SIZE(1,5),  M4_RANGE(-128, 128), "[2,-6,0,6,-2]", M4_DIGIT(0), M4_DYNAMIC(0), 0)  
 |      int debayer_filter1[5];  
 |      // M4_ARRAY_DESC("debayer_filter2", "s8", M4_SIZE(1,5),  M4_RANGE(-128, 128), "[2,-4,4,-4,2]", M4_DIGIT(0), M4_DYNAMIC(0), 0)  
 |      int debayer_filter2[5];  
 |      // M4_NUMBER_DESC("debayer_gain_offset", "u8", M4_RANGE(0,128), "4", M4_DIGIT(0), 0)  
 |      unsigned char debayer_gain_offset;  
 |      // M4_NUMBER_DESC("debayer_offset", "u8", M4_RANGE(0,128), "1", M4_DIGIT(0), 0)  
 |      unsigned char debayer_offset;  
 |      // M4_BOOL_DESC("debayer_clip_en", "1", 0)  
 |      bool debayer_clip_en;  
 |      // M4_BOOL_DESC("debayer_filter_g_en", "1", 0)  
 |      bool debayer_filter_g_en;  
 |      // M4_BOOL_DESC("debayer_filter_c_en", "1", 0)  
 |      bool debayer_filter_c_en;  
 |      // M4_NUMBER_DESC("debayer_thed0", "u8", M4_RANGE(0,128), "3", M4_DIGIT(0), 0)  
 |      unsigned char debayer_thed0;  
 |      // M4_NUMBER_DESC("debayer_thed1", "u8", M4_RANGE(0,128), "6", M4_DIGIT(0), 0)  
 |      unsigned char debayer_thed1;  
 |      // M4_NUMBER_DESC("debayer_dist_scale", "u8", M4_RANGE(0,128), "8", M4_DIGIT(0), 0)  
 |      unsigned char debayer_dist_scale;  
 |      // M4_NUMBER_DESC("debayer_cnr_strength", "u8", M4_RANGE(0,128), "5", M4_DIGIT(0), 0)  
 |      unsigned char debayer_cnr_strength;  
 |      // M4_NUMBER_DESC("debayer_shift_num", "u8", M4_RANGE(0,128), "2", M4_DIGIT(0), 0)  
 |      unsigned char debayer_shift_num;  
 |      // M4_ARRAY_TABLE_DESC("ISO_Params", "array_table_ui", "default") 
 |      Debayer_Array_t array; 
 |  }Debayer_Param_t; 
 |    
 |  typedef struct __debayer {  
 |      // M4_STRUCT_DESC("DebayerTuningPara", "normal_ui_style") 
 |      Debayer_Param_t param; 
 |  } CalibDbV2_Debayer_t;  
 |    
 |  RKAIQ_END_DECLARE 
 |    
 |  #endif 
 |  
  |