Flair
Framework Libre Air
LowPassFilter.h
Go to the documentation of this file.
1 // %flair:license{
2 // This file is part of the Flair framework distributed under the
3 // CECILL-C License, Version 1.0.
4 // %flair:license}
13 #ifndef LOWPASSFILTER_FILTER_H
14 #define LOWPASSFILTER_FILTER_H
15 
16 #include <IODevice.h>
17 
18 namespace flair {
19 namespace core {
20 class cvmatrix;
21 }
22 namespace gui {
23 class Layout;
24 class LayoutPosition;
25 }
26 }
27 
28 class LowPassFilter_impl;
29 
30 namespace flair {
31 namespace filter {
36 class LowPassFilter : public core::IODevice {
37 public:
56  LowPassFilter(const core::IODevice *parent,
57  const gui::LayoutPosition *position, std::string name,
58  const core::cvmatrix *init_value = NULL);
59 
65 
74  float Output(int row, int col) const;
75 
81  core::cvmatrix *Matrix(void) const;
82 
83 private:
91  void UpdateFrom(const core::io_data *data);
92 
93  class LowPassFilter_impl *pimpl_;
94 };
95 } // end namespace filter
96 } // end namespace flair
97 #endif // LOWPASSFILTER_FILTER_H
Abstract class for data types.
Definition: io_data.h:94
Abstract class for input/ouput system.
Definition: IODevice.h:45
namespace of the flair Framework
Definition: Ahrs.h:19
Class defining a matrix of kind CvMat.
Definition: cvmatrix.h:33
Abstract class for input/ouput system.
Class defining a first order low pass filter.
Definition: LowPassFilter.h:36
float Output(int row, int col) const
Output value.
LowPassFilter(const core::IODevice *parent, const gui::LayoutPosition *position, std::string name, const core::cvmatrix *init_value=NULL)
Constructor.
Class to define a position in a layout on the ground station.
Definition: LayoutPosition.h:28
core::cvmatrix * Matrix(void) const
Output matrix.