/********************************************************************************** * * Copyright (c) 2019-2020 Beijing AXera Technology Co., Ltd. All Rights Reserved. * * This source file is the property of Beijing AXera Technology Co., Ltd. and * may not be copied or distributed in any isomorphic form without the prior * written consent of Beijing AXera Technology Co., Ltd. * **********************************************************************************/ #ifndef _AX_LENS_AF_STRUCT_H_ #define _AX_LENS_AF_STRUCT_H_ #include "ax_base_type.h" #define ACTUATOR_MAX_NUM 8 typedef struct _AX_LENS_ACTUATOR_AF_FUNC_T_ { /* af focus actuator */ AX_S32 (*pfn_af_focus_init)(AX_U8 nPipeId, AX_U8 nBusNum, AX_U8 nCs); AX_U8 (*pfn_af_focus_rstb_status)(AX_U8 nPipeId); AX_U8 (*pfn_af_focus_get_status)(AX_U8 nPipeId); AX_S32 (*pfn_af_focus_to_dest_pos)(AX_U8 nPipeId, AX_S32 nPos, AX_U32 nPps); AX_S32 (*pfn_af_focus_to_dest_pos_direction)(AX_U8 nPipeId, AX_S32 nPos, AX_S32 nDirection); AX_S32 (*pfn_af_focus_exit)(AX_U8 nPipeId); /* af zoom actuator */ AX_S32 (*pfn_af_zoom_init)(AX_U8 nPipeId, AX_U8 nBusNum, AX_U8 nCs); AX_U8 (*pfn_af_zoom_rstb_status)(AX_U8 nPipeId); AX_U8 (*pfn_af_zoom1_get_status)(AX_U8 nPipeId); AX_U8 (*pfn_af_zoom2_get_status)(AX_U8 nPipeId); AX_S32 (*pfn_af_zoom1_to_dest_pos)(AX_U8 nPipeId, AX_S32 nPos, AX_U32 nPps); AX_S32 (*pfn_af_zoom2_to_dest_pos)(AX_U8 nPipeId, AX_S32 nPos, AX_U32 nPps); AX_S32 (*pfn_af_zoom1_to_dest_pos_direction)(AX_U8 nPipeId, AX_S32 nPos, AX_S32 nDirection); AX_S32 (*pfn_af_zoom2_to_dest_pos_direction)(AX_U8 nPipeId, AX_S32 nPos, AX_S32 nDirection); AX_S32 (*pfn_af_zoom_exit)(AX_U8 nPipeId); } AX_LENS_ACTUATOR_AF_FUNC_T; #endif