MCU
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
Filter_IIR< dataType > Class Template Reference

#include <Filter_IIR.h>

Collaboration diagram for Filter_IIR< dataType >:
Collaboration graph

Public Member Functions

 Filter_IIR (float alpha, dataType init_val=0)
 
 Filter_IIR ()
 
void set_alpha (float alpha)
 
dataType get_prev_reading () const
 
dataType filtered_result (dataType new_val)
 

Private Attributes

float alpha
 
dataType prev_reading
 

Detailed Description

template<typename dataType>
class Filter_IIR< dataType >

Definition at line 10 of file Filter_IIR.h.

Constructor & Destructor Documentation

◆ Filter_IIR() [1/2]

template<typename dataType >
Filter_IIR< dataType >::Filter_IIR ( float  alpha,
dataType  init_val = 0 
)
inline

Constructors

Definition at line 17 of file Filter_IIR.h.

17 {
19 prev_reading = init_val;
20 }
dataType prev_reading
Definition: Filter_IIR.h:32
void set_alpha(float alpha)
Definition: Filter_IIR.h:36
float alpha
Definition: Filter_IIR.h:31

◆ Filter_IIR() [2/2]

template<typename dataType >
Filter_IIR< dataType >::Filter_IIR ( )
inline

Definition at line 21 of file Filter_IIR.h.

21 {
23 }
#define DEFAULT_ALPHA
Definition: Filter_IIR.h:7

Member Function Documentation

◆ filtered_result()

template<typename dataType >
dataType Filter_IIR< dataType >::filtered_result ( dataType  new_val)

Definition at line 50 of file Filter_IIR.h.

50 {
51 prev_reading = (1 - alpha) * new_val + alpha * prev_reading;
52
53 return prev_reading;
54}

◆ get_prev_reading()

template<typename dataType >
dataType Filter_IIR< dataType >::get_prev_reading ( ) const
inline

Definition at line 26 of file Filter_IIR.h.

26{return prev_reading;}

◆ set_alpha()

template<typename dataType >
void Filter_IIR< dataType >::set_alpha ( float  alpha)

Definition at line 36 of file Filter_IIR.h.

36 {
37 if (alpha > 1.0) {
38 this->alpha = 1.0;
39 }
40 else if (alpha < 0.0) {
41 this->alpha = 0.0;
42 }
43 else
44 {
45 this->alpha = alpha;
46 }
47}

Member Data Documentation

◆ alpha

template<typename dataType >
float Filter_IIR< dataType >::alpha
private

Definition at line 31 of file Filter_IIR.h.

◆ prev_reading

template<typename dataType >
dataType Filter_IIR< dataType >::prev_reading
private

Definition at line 32 of file Filter_IIR.h.


The documentation for this class was generated from the following file: