/* ****************************************************************************** * * isp_3a_md.h * * Hawkview ISP - isp_3a_md.h module * * Copyright (c) 2016 by Allwinnertech Co., Ltd. http://www.allwinnertech.com * * Version Author Date Description * * 3.0 Yang Feng 2016/03/31 VIDEO INPUT * ***************************************************************************** */ #ifndef _ISP_3A_MD_H_ #define _ISP_3A_MD_H_ #define ISP_LIB_USE_MD 0 enum direction { MD_LEFT = 0, MD_RIGHT, MD_UP, MD_DOWN, MD_BACKWARD, MD_FORWARD, MD_NO_MOTION, }; typedef enum isp_md_param_type { ISP_MD_PARAM_TYPE_MAX, } md_param_type_t; typedef struct md_test_config { HW_S32 isp_test_mode; } md_test_config_t; typedef struct isp_md_param { md_param_type_t type; HW_S32 isp_platform_id; HW_S32 md_frame_id; HW_S32 af_scene_motion_th; isp_sensor_info_t md_sensor_info; md_test_config_t test_cfg; } md_param_t; typedef struct isp_md_stats { struct isp_md_stats_s *md_stats; } md_stats_t; typedef struct isp_md_result { HW_S32 motion_flag; enum direction motion_dir; } md_result_t; typedef struct isp_md_core_ops { HW_S32 (*isp_md_set_params)(void *md_core_obj, md_param_t *param, md_result_t *result); HW_S32 (*isp_md_get_params)(void *md_core_obj, md_param_t **param); HW_S32 (*isp_md_run)(void *md_core_obj, md_stats_t *stats, md_result_t *result); } isp_md_core_ops_t; void* md_init(isp_md_core_ops_t **md_core_ops); void md_exit(void *md_core_obj); #endif /*_ISP_3A_MD_H_*/