| Monado OpenXR Runtime
    | 
One Euro filter for a single float measurement. More...
#include <math/m_filter_one_euro.h>

| Public Member Functions | |
| void | m_filter_euro_f32_init (struct m_filter_euro_f32 *f, double fc_min, double fc_min_d, double beta) | 
| Initialize a 1D filter.  More... | |
| void | m_filter_euro_f32_run (struct m_filter_euro_f32 *f, uint64_t ts, const float *in_y, float *out_y) | 
| Filter a measurement and commit changes to filter state.  More... | |
| Data Fields | |
| struct m_filter_one_euro_base | base | 
| Base/common data.  More... | |
| double | prev_y | 
| The most recent measurement, after filtering.  More... | |
| double | prev_dy | 
| The most recent sample derivative, after filtering.  More... | |
One Euro filter for a single float measurement.
| void m_filter_euro_f32_init | ( | struct m_filter_euro_f32 * | f, | 
| double | fc_min, | ||
| double | fc_min_d, | ||
| double | beta | ||
| ) | 
Initialize a 1D filter.
| f | self pointer | 
| fc_min | Minimum frequency cutoff for filter | 
| fc_min_d | Minimum frequency cutoff for derivative filter | 
| beta | Beta value for "responsiveness" of filter | 
| void m_filter_euro_f32_run | ( | struct m_filter_euro_f32 * | f, | 
| uint64_t | ts, | ||
| const float * | in_y, | ||
| float * | out_y | ||
| ) | 
Filter a measurement and commit changes to filter state.
| [in,out] | f | self pointer | 
| ts | measurement timestamp | |
| in_y | raw measurement | |
| [out] | out_y | filtered measurement | 
References base, filter_one_euro_compute_alpha_d(), filter_one_euro_handle_first_sample(), prev_dy, and prev_y.
| struct m_filter_one_euro_base m_filter_euro_f32::base | 
Base/common data.
Referenced by m_filter_euro_f32_run().
| double m_filter_euro_f32::prev_dy | 
The most recent sample derivative, after filtering.
Referenced by m_filter_euro_f32_run().
| double m_filter_euro_f32::prev_y | 
The most recent measurement, after filtering.
Referenced by m_filter_euro_f32_run().