exp-moving-avg.hh
Go to the documentation of this file.
1 /*
2  * Copyright 2018,
3  * Julian Viereck
4  *
5  * CNRS/AIST
6  *
7  */
8 
9 #ifndef __SOT_EXPMOVINGAVG_H__
10 #define __SOT_EXPMOVINGAVG_H__
11 
12 /* --------------------------------------------------------------------- */
13 /* --- INCLUDE --------------------------------------------------------- */
14 /* --------------------------------------------------------------------- */
15 
16 #include <dynamic-graph/entity.h>
17 #include <dynamic-graph/signal-ptr.h>
18 #include <dynamic-graph/signal-time-dependent.h>
19 #include <sot/core/config.hh>
20 
21 namespace dg = ::dynamicgraph;
22 
23 namespace dynamicgraph {
24 namespace sot {
25 
26 /* --------------------------------------------------------------------- */
27 /* --- TRACER ---------------------------------------------------------- */
28 /* --------------------------------------------------------------------- */
29 
30 using dynamicgraph::Entity;
31 using dynamicgraph::SignalPtr;
32 using dynamicgraph::SignalTimeDependent;
33 
34 class SOT_CORE_DLLAPI ExpMovingAvg : public Entity {
35  DYNAMIC_GRAPH_ENTITY_DECL();
36 
37 public:
38  SignalPtr<dg::Vector, int> updateSIN;
39  SignalTimeDependent<int, int> refresherSINTERN;
40  SignalTimeDependent<dg::Vector, int> averageSOUT;
41 
42 public:
43  ExpMovingAvg(const std::string &n);
44  virtual ~ExpMovingAvg(void);
45 
46  void setAlpha(const double &alpha_);
47 
48 protected:
49  dg::Vector &update(dg::Vector &res, const int &inTime);
50 
51  dg::Vector average;
52 
53  double alpha;
54  bool init;
55 };
56 
57 } /* namespace sot */
58 } /* namespace dynamicgraph */
59 
60 #endif /* #ifndef __SOT_TRACER_H__ */
dynamicgraph
Definition: abstract-sot-external-interface.hh:17
dynamicgraph::sot::ExpMovingAvg::alpha
double alpha
Definition: exp-moving-avg.hh:53
dynamicgraph::sot::ExpMovingAvg::average
dg::Vector average
Definition: exp-moving-avg.hh:51
dynamicgraph::sot::ExpMovingAvg::init
bool init
Definition: exp-moving-avg.hh:54
dynamicgraph::sot::ExpMovingAvg
Definition: exp-moving-avg.hh:34
dynamicgraph::sot::ExpMovingAvg::averageSOUT
SignalTimeDependent< dg::Vector, int > averageSOUT
Definition: exp-moving-avg.hh:40
dynamicgraph::sot::ExpMovingAvg::refresherSINTERN
SignalTimeDependent< int, int > refresherSINTERN
Definition: exp-moving-avg.hh:39
SOT_CORE_DLLAPI
#define SOT_CORE_DLLAPI
Definition: config.hh:64
dynamicgraph::sot::ExpMovingAvg::updateSIN
SignalPtr< dg::Vector, int > updateSIN
Definition: exp-moving-avg.hh:38
config.hh