acc_detector_distance.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include "acc_definitions_a121.h"
#include "acc_definitions_common.h"
#include "acc_detector_distance_definitions.h"
#include "acc_processing.h"
#include "acc_sensor.h"

Go to the source code of this file.

Data Structures

struct  acc_detector_distance_result_t
 Distance Detector result returned from acc_detector_distance_process. More...
 

Macros

#define ACC_DETECTOR_DISTANCE_RESULT_MAX_NUM_DISTANCES   (10U)
 The maximum number of estimated distances that is returned in the Detector result. More...
 

Typedefs

typedef struct acc_detector_distance_handle acc_detector_distance_handle_t
 Distance Detector handle. More...
 
typedef struct acc_detector_distance_config acc_detector_distance_config_t
 Distance Detector configuration. More...
 

Functions

acc_detector_distance_config_tacc_detector_distance_config_create (void)
 Create a Distance Detector configuration. More...
 
void acc_detector_distance_config_destroy (acc_detector_distance_config_t *config)
 Destroy Distance Detector configuration. More...
 
void acc_detector_distance_config_log (const acc_detector_distance_handle_t *handle, const acc_detector_distance_config_t *config)
 Log Distance configuration, typically through printf. More...
 
bool acc_detector_distance_get_sizes (const acc_detector_distance_handle_t *handle, uint32_t *buffer_size, uint32_t *detector_cal_result_static_size)
 Get the memory size needed to use the Distance Detector API functions. More...
 
acc_detector_distance_handle_tacc_detector_distance_create (const acc_detector_distance_config_t *config)
 Create Distance Detector handle using the provided Distance Detector configuration. More...
 
void acc_detector_distance_destroy (acc_detector_distance_handle_t *handle)
 Destroy Distance Detector handle, freeing its resources. More...
 
bool acc_detector_distance_calibrate (acc_sensor_t *sensor, acc_detector_distance_handle_t *handle, const acc_cal_result_t *sensor_cal_result, void *buffer, uint32_t buffer_size, uint8_t *detector_cal_result_static, uint32_t detector_cal_result_static_size, acc_detector_cal_result_dynamic_t *detector_cal_result_dynamic, bool *calibration_complete)
 Calibrate detector. More...
 
bool acc_detector_distance_update_calibration (acc_sensor_t *sensor, acc_detector_distance_handle_t *handle, const acc_cal_result_t *sensor_cal_result, void *buffer, uint32_t buffer_size, acc_detector_cal_result_dynamic_t *detector_cal_result_dynamic, bool *calibration_complete)
 Perform a subset of the full Detector calibration. More...
 
bool acc_detector_distance_prepare (const acc_detector_distance_handle_t *handle, const acc_detector_distance_config_t *config, acc_sensor_t *sensor, const acc_cal_result_t *sensor_cal_result, void *buffer, uint32_t buffer_size)
 Prepare the Detector for measurements. More...
 
bool acc_detector_distance_process (acc_detector_distance_handle_t *handle, void *buffer, uint8_t *detector_cal_result_static, acc_detector_cal_result_dynamic_t *detector_cal_result_dynamic, bool *result_available, acc_detector_distance_result_t *result)
 Process sensor data into a Detector result. More...
 
void acc_detector_distance_config_start_set (acc_detector_distance_config_t *config, float start_m)
 Set start of measured interval (m) More...
 
float acc_detector_distance_config_start_get (const acc_detector_distance_config_t *config)
 Get start of measured interval (m) More...
 
void acc_detector_distance_config_end_set (acc_detector_distance_config_t *config, float end_m)
 Set end of measured interval (m) More...
 
float acc_detector_distance_config_end_get (const acc_detector_distance_config_t *config)
 Get end of measured interval (m) More...
 
void acc_detector_distance_config_max_step_length_set (acc_detector_distance_config_t *config, uint16_t max_step_length)
 Set maximum step length. More...
 
uint16_t acc_detector_distance_config_max_step_length_get (const acc_detector_distance_config_t *config)
 Get maximum step length. More...
 
void acc_detector_distance_config_close_range_leakage_cancellation_set (acc_detector_distance_config_t *config, bool enable)
 Enable close range leakage cancellation. More...
 
bool acc_detector_distance_config_close_range_leakage_cancellation_get (const acc_detector_distance_config_t *config)
 Get if close range leakage cancellation is enabled. More...
 
void acc_detector_distance_config_signal_quality_set (acc_detector_distance_config_t *config, float signal_quality)
 Set signal quality (dB) More...
 
float acc_detector_distance_config_signal_quality_get (const acc_detector_distance_config_t *config)
 Get signal quality. More...
 
void acc_detector_distance_config_max_profile_set (acc_detector_distance_config_t *config, acc_config_profile_t max_profile)
 Set maximum Profile. More...
 
acc_config_profile_t acc_detector_distance_config_max_profile_get (const acc_detector_distance_config_t *config)
 Get maximum Profile. More...
 
void acc_detector_distance_config_threshold_method_set (acc_detector_distance_config_t *config, acc_detector_distance_threshold_method_t threshold_method)
 Set threshold method. More...
 
acc_detector_distance_threshold_method_t acc_detector_distance_config_threshold_method_get (const acc_detector_distance_config_t *config)
 Get threshold method. More...
 
void acc_detector_distance_config_peak_sorting_set (acc_detector_distance_config_t *config, acc_detector_distance_peak_sorting_t peak_sorting)
 Set peak sorting method. More...
 
acc_detector_distance_peak_sorting_t acc_detector_distance_config_peak_sorting_get (const acc_detector_distance_config_t *config)
 Get peak sorting method. More...
 
void acc_detector_distance_config_num_frames_recorded_threshold_set (acc_detector_distance_config_t *config, uint16_t num_frames)
 Set number of frames to use for recorded threshold. More...
 
uint16_t acc_detector_distance_config_num_frames_recorded_threshold_get (const acc_detector_distance_config_t *config)
 Get number of frames to use for recorded threshold. More...
 
void acc_detector_distance_config_fixed_amplitude_threshold_value_set (acc_detector_distance_config_t *config, float fixed_threshold_value)
 Set fixed amplitude threshold value. More...
 
float acc_detector_distance_config_fixed_amplitude_threshold_value_get (const acc_detector_distance_config_t *config)
 Get fixed amplitude threshold value. More...
 
void acc_detector_distance_config_fixed_strength_threshold_value_set (acc_detector_distance_config_t *config, float fixed_threshold_value)
 Set fixed strength threshold value. More...
 
float acc_detector_distance_config_fixed_strength_threshold_value_get (const acc_detector_distance_config_t *config)
 Get fixed strength threshold value. More...
 
void acc_detector_distance_config_threshold_sensitivity_set (acc_detector_distance_config_t *config, float threshold_sensitivity)
 Set threshold sensitivity. More...
 
float acc_detector_distance_config_threshold_sensitivity_get (const acc_detector_distance_config_t *config)
 Get threshold sensitivity. More...
 
void acc_detector_distance_config_reflector_shape_set (acc_detector_distance_config_t *config, acc_detector_distance_reflector_shape_t reflector_shape)
 Set reflector shape. More...
 
acc_detector_distance_reflector_shape_t acc_detector_distance_config_reflector_shape_get (const acc_detector_distance_config_t *config)
 Get reflector shape. More...