xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/hwi/simulator/CamHwSimulator.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  *  Copyright (c) 2019 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 _CAM_HW_SIMULATOR_H_
19 #define _CAM_HW_SIMULATOR_H_
20 
21 #include "CamHwBase.h"
22 
23 namespace RkCam {
24 
25 class CamHwSimulator : public CamHwBase {
26 public:
27     explicit CamHwSimulator();
28     virtual ~CamHwSimulator();
29     // from ICamHw
30     virtual XCamReturn init(const char* sns_ent_name);
31     virtual XCamReturn deInit();
32     virtual XCamReturn prepare(uint32_t width, uint32_t height, rk_aiq_working_mode_t mode);
33     virtual XCamReturn start();
34     virtual XCamReturn stop();
35     virtual XCamReturn getSensorModeData(const char* sns_ent_name,
36                                          rk_aiq_exposure_sensor_descriptor& sns_des);
37     virtual XCamReturn setIspParams(SmartPtr<RkAiqIspParamsProxy>& ispParams);
38     virtual XCamReturn setHdrProcessCount(uint32_t frame_id, int count);
39     virtual XCamReturn setExposureParams(SmartPtr<RkAiqExpParamsProxy>& expPar);
40     virtual XCamReturn setFocusParams(SmartPtr<RkAiqFocusParamsProxy>& focus_params);
41     virtual XCamReturn setIspLumaListener(IspLumaListener* lumaListener);
42     virtual XCamReturn setIspStatsListener(IspStatsListener* statsListener);
43     virtual XCamReturn setEvtsListener(IspEvtsListener* evtListener);
setModuleCtl(rk_aiq_module_id_t moduleId,bool en)44     XCamReturn setModuleCtl(rk_aiq_module_id_t moduleId, bool en) {
45         return XCAM_RETURN_NO_ERROR;
46     };
getModuleCtl(rk_aiq_module_id_t moduleId,bool & en)47     XCamReturn getModuleCtl(rk_aiq_module_id_t moduleId, bool& en) {
48         return XCAM_RETURN_NO_ERROR;
49     };
notify_capture_raw()50     XCamReturn notify_capture_raw() {
51         return XCAM_RETURN_NO_ERROR;
52     };
capture_raw_ctl(bool sync)53     XCamReturn capture_raw_ctl(bool sync) {
54         return XCAM_RETURN_NO_ERROR;
55     };
getShareMemOps(isp_drv_share_mem_ops_t ** mem_ops)56     virtual void getShareMemOps(isp_drv_share_mem_ops_t** mem_ops) {};
enqueueRawBuffer(struct rk_aiq_vbuf * vbuf,bool sync)57     virtual XCamReturn enqueueRawBuffer(struct rk_aiq_vbuf *vbuf, bool sync) {
58         return  XCAM_RETURN_ERROR_FAILED;
59     }
enqueueRawFile(const char * path)60     virtual XCamReturn enqueueRawFile(const char *path) {
61         return  XCAM_RETURN_ERROR_FAILED;
62     }
registRawdataCb(void (* callback)(void *))63     virtual XCamReturn registRawdataCb(void (*callback)(void *)) {
64         return  XCAM_RETURN_ERROR_FAILED;
65     }
rawdataPrepare(rk_aiq_raw_prop_t prop)66     virtual XCamReturn rawdataPrepare(rk_aiq_raw_prop_t prop) {
67         return  XCAM_RETURN_ERROR_FAILED;
68     }
69 private:
70     XCAM_DEAD_COPY (CamHwSimulator);
71 };
72 
73 };
74 
75 #endif
76