/* 
 | 
 *  Copyright (c) 2019 Rockchip Corporation 
 | 
 * 
 | 
 * Licensed under the Apache License, Version 2.0 (the "License";   XCamReturn returnvalue;}; 
 | 
 * 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 _RK_AIQ_UAPI_IMGPROC_PTL_H_ 
 | 
#define _RK_AIQ_UAPI_IMGPROC_PTL_H_ 
 | 
#include "rk_aiq_user_api_imgproc.h" 
 | 
  
 | 
RKAIQ_BEGIN_DECLARE 
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* Exposure 
 | 
********************************************************** 
 | 
*/ 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set exposure control mode 
 | 
* Argument: 
 | 
*   mode:  auto: auto exposure 
 | 
*          manual: manual exposure 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setExpMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setExpMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getExpMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   opMode_t attr; 
 | 
      XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getExpMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set auto exposure mode 
 | 
* Argument: 
 | 
*   mode: 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
  
 | 
typedef struct rk_aiq_uapi_setAeMode { 
 | 
    rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    aeMode_t attr; 
 | 
    XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setAeMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getAeMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    aeMode_t  attr; 
 | 
      XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getAeMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set exposure parameter 
 | 
* Argument: 
 | 
*    auto exposure mode: 
 | 
*      exposure gain will be adjust between [gain->min, gain->max]; 
 | 
*    manual exposure mode: 
 | 
*      gain->min == gain->max 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setExpGainRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    paRange_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setExpGainRange_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getExpGainRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    paRange_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getExpGainRange_t; 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set exposure parameter 
 | 
* Argument: 
 | 
*    auto exposure mode: 
 | 
*       exposure time will be adjust between [time->min, time->max]; 
 | 
*    manual exposure mode: 
 | 
*       exposure time will be set gain->min == gain->max; 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setExpTimeRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    paRange_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setExpTimeRange_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getExpTimeRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    paRange_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getExpTimeRange_t; 
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* Auto exposure advanced features 
 | 
********************************************************** 
 | 
*/ 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: blacklight compensation 
 | 
* Argument: 
 | 
*      on:  1  on 
 | 
*           0  off 
 | 
*      rect: blacklight compensation area 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setBLCMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    bool on; 
 | 
    aeMeasAreaType_t areaType; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setBLCMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: highlight compensation 
 | 
* Argument: 
 | 
*      on:  1  on 
 | 
*           0  off 
 | 
*      rect: blacklight compensation area 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setHLCMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    bool on; 
 | 
} rk_aiq_uapi_setHLCMode_t; 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set lowlight exposure mode 
 | 
* Argument: 
 | 
*    mode: 
 | 
*       auto: auto lowlight mode 
 | 
*       manual: manual lowlight mode 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setLExpMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setLExpMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getLExpMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getLExpMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual lowlight exposure time ratio 
 | 
* Argument: 
 | 
*    ratio:  [1.0, 128.0] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMLExp { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMLExp_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMLExp { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMLExp_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set power line frequence 
 | 
* Argument: 
 | 
*    freq 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setExpPwrLineFreqMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   expPwrLineFreq_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setExpPwrLineFreqMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getExpPwrLineFreqMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    expPwrLineFreq_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getExpPwrLineFreqMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_setAntiFlickerMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   antiFlickerMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setAntiFlickerMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getAntiFlickerMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   antiFlickerMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getAntiFlickerMode_t; 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set day night switch mode 
 | 
* Argument: 
 | 
*    mode 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setDayNSwMode { 
 | 
  
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setDayNSwMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getDayNSwMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getDayNSwMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual day night scene 
 | 
*    this function is active for DayNSw is manual mode 
 | 
* Argument: 
 | 
*    scene 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMDNScene { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    dayNightScene_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMDNScene_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMDNScene { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    dayNightScene_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMDNScene_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set auto day night switch sensitivity 
 | 
*    this function is active for DayNSw is auto mode 
 | 
* Argument: 
 | 
*    level: [1, 3] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setADNSens { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned    int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setADNSens_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getADNSens { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getADNSens_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set fill light mode 
 | 
* Argument: 
 | 
*    mode 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setFLightMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setFLightMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getFLightMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getFLightMode_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set maual fill light mode 
 | 
* Argument: 
 | 
*    on:  1: on 
 | 
*         0: off 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMFLight { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   bool level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMFLight_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMFLight { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    bool  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMFLight_t; 
 | 
  
 | 
  
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* White balance & Color 
 | 
********************************************************** 
 | 
*/ 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set white balance mode 
 | 
* Argument: 
 | 
*   mode:  auto: auto white balance 
 | 
*          manual: manual white balance 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setWBMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setWBMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getWBMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getWBMode_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: lock/unlock auto white balance 
 | 
* Argument: 
 | 
* 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_lockAWB { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   int abort; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_lockAWB_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_unlockAWB { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   int  abort; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_unlockAWB_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set auto white balance mode 
 | 
* Argument: 
 | 
* 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setAWBRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   awbRange_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setAWBRange_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getAWBRange { 
 | 
  
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    awbRange_t  attr; 
 | 
  
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getAWBRange_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual white balance scene mode 
 | 
* Argument: 
 | 
*   ct_scene: 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMWBScene { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    rk_aiq_wb_scene_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMWBScene_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMWBScene { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    rk_aiq_wb_scene_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMWBScene_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual white balance r/b gain 
 | 
* Argument: 
 | 
*   ct_scene: 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMWBGain { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    rk_aiq_wb_gain_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMWBGain_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMWBGain { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    rk_aiq_wb_gain_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMWBGain_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual white balance color temperature 
 | 
* Argument: 
 | 
*   ct: color temperature value [2800, 7500]K 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMWBCT { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMWBCT_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMWBCT { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMWBCT_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set color supperssion level 
 | 
* Argument: 
 | 
*   level: [0, 100] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setCrSuppsn { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setCrSuppsn_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getCrSuppsn { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getCrSuppsn_t; 
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* Focus & Zoom 
 | 
********************************************************** 
 | 
*/ 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set focus mode 
 | 
* Argument: 
 | 
*   mode:  auto: auto focus 
 | 
*          manual: manual focus 
 | 
*          semi-auto: semi-auto focus 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setFocusMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setFocusMode_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getFocusMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getFocusMode_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set minimum focus distance 
 | 
* Argument: 
 | 
*   disrance:  unint is cm 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMinFocusDis { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMinFocusDis_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getMinFocusDis { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMinFocusDis_t; 
 | 
  
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set optical zoom range 
 | 
* Argument: 
 | 
*   range:  [1.0, 100.0] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setOpZoomRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    paRange_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setOpZoomRange_t ; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getOpZoomRange { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    paRange_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getOpZoomRange_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set optical zoom speed 
 | 
* Argument: 
 | 
*   level:  [1, 10] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setOpZoomSpeed { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setOpZoomSpeed_t; 
 | 
  
 | 
typedef struct rk_aiq_uapi_getOpZoomSpeed { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getOpZoomSpeed_t; 
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* HDR 
 | 
********************************************************** 
 | 
*/ 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set hdr mode 
 | 
* Argument: 
 | 
*   mode: 
 | 
*     auto: auto hdr mode 
 | 
*     manual:manual hdr mode 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setHDRMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setHDRMode_t; 
 | 
typedef struct rk_aiq_uapi_getHDRMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   opMode_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getHDRMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual hdr strength 
 | 
*    this function is active for HDR is manual mode 
 | 
* Argument: 
 | 
*   on:   1: on 
 | 
*         0: off 
 | 
*   level: [0, 10] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMHDRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on;  
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMHDRStrth_t; 
 | 
typedef struct rk_aiq_uapi_getMHDRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMHDRStrth_t; 
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* Noise reduction 
 | 
********************************************************** 
 | 
*/ 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set noise reduction mode 
 | 
* Argument: 
 | 
*   mode: 
 | 
*     auto: auto noise reduction 
 | 
*     manual:manual noise reduction 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setNRMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setNRMode_t; 
 | 
typedef struct rk_aiq_uapi_getNRMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   opMode_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getNRMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set auto noise reduction strength 
 | 
* Argument: 
 | 
*   level: [0, 10] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setANRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setANRStrth_t; 
 | 
typedef struct rk_aiq_uapi_getANRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getANRStrth_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual spatial noise reduction strength 
 | 
*    this function is active for NR is manual mode 
 | 
* Argument: 
 | 
*   on: 1:on 
 | 
*      0: off 
 | 
*   level: [0, 10] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMSpaNRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on; 
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMSpaNRStrth_t; 
 | 
typedef struct rk_aiq_uapi_getMSpaNRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMSpaNRStrth_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual time noise reduction strength 
 | 
*     this function is active for NR is manual mode 
 | 
* Argument: 
 | 
*   level: [0, 10] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMTNRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on; 
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMTNRStrth_t; 
 | 
typedef struct rk_aiq_uapi_getMTNRStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on; 
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMTNRStrth_t; 
 | 
  
 | 
/* 
 | 
********************************************************** 
 | 
* Dehazer 
 | 
********************************************************** 
 | 
*/ 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set dehaze mode 
 | 
* Argument: 
 | 
*   mode: 
 | 
*     auto: auto dehaze 
 | 
*     manual:manual dehaze 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setDhzMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    opMode_t attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setDhzMode_t; 
 | 
typedef struct rk_aiq_uapi_getDhzMode { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   opMode_t  attr; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getDhzMode_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: set manual dehaze strength 
 | 
*     this function is active for dehaze is manual mode 
 | 
* Argument: 
 | 
*   level: [0, 10] 
 | 
* 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setMDhzStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on; 
 | 
  unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setMDhzStrth_t; 
 | 
typedef struct rk_aiq_uapi_getMDhzStrth { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   bool on; 
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getMDhzStrth_t; 
 | 
/* 
 | 
********************************************************** 
 | 
* Image adjust 
 | 
********************************************************** 
 | 
*/ 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: Adjust image contrast level 
 | 
* Argument: 
 | 
*    level: contrast level, [0, 100] 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setContrast { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setContrast_t; 
 | 
typedef struct rk_aiq_uapi_getContrast { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getContrast_t; 
 | 
  
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: Adjust image brightness level 
 | 
* Argument: 
 | 
*    level: contrast level, [0, 100] 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setBrightness { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setBrightness_t; 
 | 
typedef struct rk_aiq_uapi_getBrightness { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getBrightness_t; 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: Adjust image saturation level 
 | 
* Argument: 
 | 
*    level: contrast level, [0, 100] 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setSaturation { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   float level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setSaturation_t; 
 | 
typedef struct rk_aiq_uapi_getSaturation { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   float level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getSaturation_t; 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: Adjust image sharpness level 
 | 
* Argument: 
 | 
*    level: contrast level, [0, 100] 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setSharpness { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setSharpness_t; 
 | 
typedef struct rk_aiq_uapi_getSharpness { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx;  
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getSharpness_t; 
 | 
/* 
 | 
***************************** 
 | 
* 
 | 
* Desc: Adjust image hue level 
 | 
* Argument: 
 | 
*    level: hue level, [0, 100] 
 | 
***************************** 
 | 
*/ 
 | 
typedef struct rk_aiq_uapi_setHue { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
    unsigned int level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_setHue_t; 
 | 
typedef struct rk_aiq_uapi_getHue { 
 | 
   rk_aiq_sys_ctx_t* sys_ctx; 
 | 
   unsigned int  level; 
 | 
   XCamReturn returnvalue; 
 | 
} rk_aiq_uapi_getHue_t; 
 | 
RKAIQ_END_DECLARE 
 | 
  
 | 
#endif 
 |