xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/include/uAPI2/rk_aiq_user_api2_wrapper.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  *  Copyright (c) 2021 Rockchip Corporation
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17 
18 #ifndef __RK_AIQ_USER_API2_WRAPPER_H__
19 #define __RK_AIQ_USER_API2_WRAPPER_H__
20 
21 #include "RkAiqUapitypes.h"
22 #include "rk_aiq_user_api_sysctl.h"
23 #include "algos/adebayer/rk_aiq_uapi_adebayer_int.h"
24 
25 int rk_aiq_uapi_sysctl_swWorkingModeDyn2(const rk_aiq_sys_ctx_t *ctx,
26         work_mode_t *mode);
27 
28 int rk_aiq_uapi_sysctl_getWorkingModeDyn(const rk_aiq_sys_ctx_t *ctx,
29         work_mode_t *mode);
30 
31 int rk_aiq_uapi2_setWBMode2(rk_aiq_sys_ctx_t *ctx, uapi_wb_mode_t *mode);
32 
33 int rk_aiq_uapi2_getWBMode2(rk_aiq_sys_ctx_t *ctx, uapi_wb_mode_t *mode);
34 
35 int rk_aiq_user_api2_set_scene(const rk_aiq_sys_ctx_t *sys_ctx,
36                                aiq_scene_t *scene);
37 
38 int rk_aiq_user_api2_get_scene(const rk_aiq_sys_ctx_t *sys_ctx,
39                                aiq_scene_t *scene);
40 
41 int rk_aiq_uapi_get_awb_stat(const rk_aiq_sys_ctx_t* sys_ctx,
42                              rk_tool_awb_stat_res2_v30_t* awb_stat);
43 
44 int rk_aiq_uapi_get_ae_hwstats(const rk_aiq_sys_ctx_t* sys_ctx,
45                                uapi_ae_hwstats_t* ae_hwstats);
46 int rk_aiq_uapi_get_awbV32_stat(const rk_aiq_sys_ctx_t* sys_ctx,
47                                 rk_tool_isp_awb_stats_v32_t* awb_stat);
48 int rk_aiq_uapi_get_awbV21_stat(const rk_aiq_sys_ctx_t* sys_ctx,
49                                 rk_tool_awb_stat_res2_v201_t* awb_stat);
50 
51 XCamReturn rk_aiq_get_adpcc_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
52                                         Adpcc_Manual_Attr_t *manual);
53 
54 XCamReturn rk_aiq_set_adpcc_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
55                                         Adpcc_Manual_Attr_t *manual);
56 
57 XCamReturn rk_aiq_user_api2_amerge_v10_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
58         uapiMergeCurrCtlData_t* merge_info);
59 
60 XCamReturn rk_aiq_set_amerge_v10_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
61         mMergeAttrV10_t* manual);
62 
63 XCamReturn rk_aiq_get_amerge_v10_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
64         mMergeAttrV10_t* manual);
65 
66 XCamReturn rk_aiq_user_api2_amerge_v11_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
67         uapiMergeCurrCtlData_t* merge_info);
68 
69 XCamReturn rk_aiq_set_amerge_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
70         mMergeAttrV11_t* manual);
71 
72 XCamReturn rk_aiq_get_amerge_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
73         mMergeAttrV11_t* manual);
74 
75 XCamReturn rk_aiq_user_api2_amerge_v12_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
76         uapiMergeCurrCtlData_t* merge_info);
77 
78 XCamReturn rk_aiq_set_amerge_v12_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
79         mMergeAttrV12_t* manual);
80 
81 XCamReturn rk_aiq_get_amerge_v12_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
82         mMergeAttrV12_t* manual);
83 
84 XCamReturn rk_aiq_user_api2_adrc_v10_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
85         DrcInfoV10_t* drc_info);
86 
87 XCamReturn rk_aiq_set_adrc_v10_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx, mdrcAttr_V10_t* manual);
88 
89 XCamReturn rk_aiq_get_adrc_v10_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx, mdrcAttr_V10_t* manual);
90 
91 XCamReturn rk_aiq_user_api2_adrc_v11_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
92         DrcInfoV11_t* drc_info);
93 
94 XCamReturn rk_aiq_set_adrc_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx, mdrcAttr_V11_t* manual);
95 
96 XCamReturn rk_aiq_get_adrc_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx, mdrcAttr_V11_t* manual);
97 
98 XCamReturn rk_aiq_user_api2_adrc_v12_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
99         DrcInfoV12_t* drc_info);
100 
101 XCamReturn rk_aiq_set_adrc_v12_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx, mdrcAttr_V12_t* manual);
102 
103 XCamReturn rk_aiq_get_adrc_v12_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx, mdrcAttr_V12_t* manual);
104 
105 XCamReturn rk_aiq_user_api2_adrc_v12_lite_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
106                                                     DrcInfoV12Lite_t* drc_info);
107 
108 XCamReturn rk_aiq_set_adrc_v12_lite_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
109                                                 mdrcAttr_v12_lite_t* manual);
110 
111 XCamReturn rk_aiq_get_adrc_v12_lite_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
112                                                 mdrcAttr_v12_lite_t* manual);
113 
114 XCamReturn rk_aiq_set_agamma_v10_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
115         AgammaApiManualV10_t* manual);
116 
117 XCamReturn rk_aiq_get_agamma_v10_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
118         AgammaApiManualV10_t* manual);
119 
120 XCamReturn rk_aiq_set_agamma_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
121         AgammaApiManualV11_t* manual);
122 
123 XCamReturn rk_aiq_get_agamma_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
124         AgammaApiManualV11_t* manual);
125 
126 XCamReturn rk_aiq_user_api2_adehaze_v11_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
127         mDehazeAttrInfoV11_t* dehaze_info);
128 
129 XCamReturn rk_aiq_set_adehaze_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
130         mDehazeAttrV11_t* manual);
131 
132 XCamReturn rk_aiq_get_adehaze_v11_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
133         mDehazeAttrV11_t* manual);
134 
135 XCamReturn rk_aiq_user_api2_adehaze_v12_queryinfo(const rk_aiq_sys_ctx_t* sys_ctx,
136         mDehazeAttrInfoV11_t* dehaze_info);
137 
138 XCamReturn rk_aiq_set_adehaze_v12_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
139         mDehazeAttrV12_t* manual);
140 
141 XCamReturn rk_aiq_get_adehaze_v12_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
142         mDehazeAttrV12_t* manual);
143 
144 XCamReturn rk_aiq_set_tool_accm_mode(rk_aiq_sys_ctx_t *ctx, uapi_wb_mode_t *mode);
145 
146 XCamReturn rk_aiq_get_accm_mode(rk_aiq_sys_ctx_t *ctx, uapi_wb_mode_t *mode);
147 
148 XCamReturn rk_aiq_set_accm_v1_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
149         rk_aiq_ccm_mccm_attrib_t* manual);
150 
151 XCamReturn rk_aiq_get_accm_v1_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
152         rk_aiq_ccm_mccm_attrib_t* manual);
153 
154 XCamReturn rk_aiq_set_accm_v2_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
155         rk_aiq_ccm_mccm_attrib_v2_t* manual);
156 
157 XCamReturn rk_aiq_get_accm_v2_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
158         rk_aiq_ccm_mccm_attrib_v2_t* manual);
159 
160 XCamReturn rk_aiq_set_tool_3dlut_mode(rk_aiq_sys_ctx_t *ctx,
161                                       uapi_wb_mode_t *mode);
162 
163 XCamReturn rk_aiq_get_a3dlut_mode(rk_aiq_sys_ctx_t *ctx,
164                                   uapi_wb_mode_t *mode);
165 
166 XCamReturn rk_aiq_set_a3dlut_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
167         rk_aiq_lut3d_mlut3d_attrib_t *manual);
168 
169 XCamReturn rk_aiq_get_a3dlut_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
170         rk_aiq_lut3d_mlut3d_attrib_t *manual);
171 
172 XCamReturn rk_aiq_set_acgc_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
173                                        Cgc_Param_t* manual) ;
174 
175 XCamReturn rk_aiq_get_acgc_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
176                                        Cgc_Param_t* manual);
177 
178 XCamReturn rk_aiq_set_acsm_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
179                                        Csm_Param_t* manual) ;
180 
181 XCamReturn rk_aiq_get_acsm_manual_attr(const rk_aiq_sys_ctx_t* sys_ctx,
182                                        Csm_Param_t* manual);
183 
184 XCamReturn rk_aiq_set_ablc_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
185         ablc_uapi_manual_t *manual);
186 
187 XCamReturn rk_aiq_get_ablc_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
188         ablc_uapi_manual_t *manual);
189 
190 XCamReturn rk_aiq_set_asharp_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
191         asharp_uapi_manual_t *manual);
192 
193 XCamReturn rk_aiq_get_asharp_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
194         asharp_uapi_manual_t *manual);
195 XCamReturn rk_aiq_set_alsc_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
196                                        rk_aiq_lsc_table_t *manual);
197 
198 XCamReturn rk_aiq_get_alsc_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
199                                        rk_aiq_lsc_table_t *manual);
200 
201 XCamReturn rk_aiq_set_current_camindex(const rk_aiq_sys_ctx_t *sys_ctx,
202                                        camgroup_uapi_t *manual);
203 
204 XCamReturn rk_aiq_get_current_camindex(const rk_aiq_sys_ctx_t *sys_ctx,
205                                        camgroup_uapi_t *manual);
206 
207 rk_aiq_sys_ctx_t* rk_aiq_get_last_sysctx(rk_aiq_sys_ctx_t *sys_ctx);
208 
209 XCamReturn rk_aiq_set_adebayer_attr(const rk_aiq_sys_ctx_t *sys_ctx,
210                                     adebayer_attrib_t *adebayer_attr);
211 
212 XCamReturn rk_aiq_get_adebayer_attr(const rk_aiq_sys_ctx_t *sys_ctx,
213                                     adebayer_attrib_t *adebayer_attr);
214 
215 XCamReturn
216 rk_aiq_set_abayer2dnr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
217                                   abayer2dnr_uapi_manual_t *manual);
218 
219 XCamReturn
220 rk_aiq_get_abayer2dnr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
221                                   abayer2dnr_uapi_manual_t *manual);
222 
223 XCamReturn
224 rk_aiq_set_abayertnr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
225                                  abayertnr_uapi_manual_t *manual);
226 
227 XCamReturn
228 rk_aiq_get_abayertnr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
229                                  abayertnr_uapi_manual_t *manual);
230 
231 
232 XCamReturn
233 rk_aiq_set_aynr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
234                             aynr_uapi_manual_t *manual);
235 
236 XCamReturn
237 rk_aiq_get_aynr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
238                             aynr_uapi_manual_t *manual);
239 
240 XCamReturn
241 rk_aiq_set_acnr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
242                             acnr_uapi_manual_t *manual);
243 
244 XCamReturn
245 rk_aiq_get_acnr_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
246                             acnr_uapi_manual_t *manual);
247 
248 XCamReturn
249 rk_aiq_set_again_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
250                              again_uapi_manual_t *manual);
251 
252 XCamReturn
253 rk_aiq_get_again_manual_attr(const rk_aiq_sys_ctx_t *sys_ctx,
254                              again_uapi_manual_t *manual);
255 
256 XCamReturn
257 rk_aiq_get_ablc_info(const rk_aiq_sys_ctx_t *sys_ctx,
258                      ablc_uapi_info_t *info);
259 
260 XCamReturn
261 rk_aiq_get_abayertnr_info(const rk_aiq_sys_ctx_t *sys_ctx,
262                           abayertnr_uapi_info_t *info);
263 
264 XCamReturn
265 rk_aiq_get_abayer2dnr_info(const rk_aiq_sys_ctx_t *sys_ctx,
266                            abayer2dnr_uapi_info_t *info) ;
267 XCamReturn
268 rk_aiq_get_aynr_info(const rk_aiq_sys_ctx_t *sys_ctx,
269                      aynr_uapi_info_t *info);
270 XCamReturn
271 rk_aiq_get_acnr_info(const rk_aiq_sys_ctx_t *sys_ctx,
272                      acnr_uapi_info_t *info);
273 XCamReturn
274 rk_aiq_get_asharp_info(const rk_aiq_sys_ctx_t *sys_ctx,
275                        asharp_uapi_info_t *info);
276 
277 XCamReturn
278 rk_aiq_get_again_info(const rk_aiq_sys_ctx_t *sys_ctx,
279                       again_uapi_info_t *info);
280 
281 
282 #endif /*__RK_AIQ_USER_API2_WRAPPER_H__*/
283