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. More...
 

Macros

#define ACC_DETECTOR_DISTANCE_RESULT_MAX_NUM_DISTANCES   (10U)
 

Typedefs

typedef struct acc_detector_distance_handle acc_detector_distance_handle_t
 
typedef struct acc_detector_distance_config acc_detector_distance_config_t
 

Functions

acc_detector_distance_config_tacc_detector_distance_config_create (void)
 Create a configuration for a distance detector. More...
 
void acc_detector_distance_config_destroy (acc_detector_distance_config_t *config)
 Destroy a configuration for a distance detector. More...
 
void acc_detector_distance_config_log (const acc_detector_distance_handle_t *handle, const acc_detector_distance_config_t *config)
 Print a configuration to the log. 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 sizes needed given the provided detector handle. More...
 
acc_detector_distance_handle_tacc_detector_distance_create (const acc_detector_distance_config_t *config)
 Create a distance detector with the provided configuration. More...
 
void acc_detector_distance_destroy (acc_detector_distance_handle_t *handle)
 Destroy the 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)
 Do a detector calibration. 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)
 Update the 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 the data according to the configuration used in acc_detector_distance_config_create. More...
 
void acc_detector_distance_config_sensor_set (acc_detector_distance_config_t *config, acc_sensor_id_t sensor)
 Set the sensor ID. More...
 
acc_sensor_id_t acc_detector_distance_config_sensor_get (const acc_detector_distance_config_t *config)
 Get the sensor ID. More...
 
void acc_detector_distance_config_start_set (acc_detector_distance_config_t *config, float start_m)
 Set the start of measured interval in meters. More...
 
float acc_detector_distance_config_start_get (const acc_detector_distance_config_t *config)
 Get the start of measured interval in meters. More...
 
void acc_detector_distance_config_end_set (acc_detector_distance_config_t *config, float end_m)
 Set the end of measured interval in meters. More...
 
float acc_detector_distance_config_end_get (const acc_detector_distance_config_t *config)
 Get the end of measured interval in meters. More...
 
void acc_detector_distance_config_max_step_length_set (acc_detector_distance_config_t *config, uint16_t max_step_length)
 Set the maximum step length. More...
 
uint16_t acc_detector_distance_config_max_step_length_get (const acc_detector_distance_config_t *config)
 Get the maximum step length. More...
 
void acc_detector_distance_config_close_range_leakage_cancellation_set (acc_detector_distance_config_t *config, bool enable)
 Enable the close range leakage cancellation logic. More...
 
bool acc_detector_distance_config_close_range_leakage_cancellation_get (const acc_detector_distance_config_t *config)
 Get if the close range leakage cancellation logic is enabled. More...
 
void acc_detector_distance_config_signal_quality_set (acc_detector_distance_config_t *config, float signal_quality)
 Set the signal quality. More...
 
float acc_detector_distance_config_signal_quality_get (const acc_detector_distance_config_t *config)
 Get the signal quality. More...
 
void acc_detector_distance_config_max_profile_set (acc_detector_distance_config_t *config, acc_config_profile_t max_profile)
 Set the max profile. More...
 
acc_config_profile_t acc_detector_distance_config_max_profile_get (const acc_detector_distance_config_t *config)
 Get the max 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 the threshold method. More...
 
acc_detector_distance_threshold_method_t acc_detector_distance_config_threshold_method_get (const acc_detector_distance_config_t *config)
 Get the 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 the 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 the 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 the number 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 the 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...