Rapid-Mix API  v2.0.0
A simple library for machine learning & signal processing
rapidStream.h
Go to the documentation of this file.
1 /*
2  * rapidStream.h
3  * Created by Michael Zbyszynski on 6 Feb 2017
4  * Copyright © 2017 Goldsmiths. All rights reserved.
5  */
6 
7 #ifndef rapidStream_h
8 #define rapidStream_h
9 
10 #include <stdint.h>
11 class rapidStream {
12 public:
13 
17  rapidStream();
22  rapidStream(int windowSize);
23 
24  ~rapidStream();
25 
29  void clear();
30 
34  void pushToWindow(double input);
35 
39  double velocity();
40 
44  double acceleration();
45 
49  double minimum();
50 
54  double maximum();
55 
59  double sum();
60 
64  double mean();
65 
69  double standardDeviation();
70 
74  double minVelocity();
75 
79  double maxVelocity();
80 
84  double minAcceleration();
85 
89  double maxAcceleration();
90 
91 private:
92  uint32_t windowSize;
93  uint32_t windowIndex;
94  double *circularWindow;
95 
96  double calcCurrentVel(int i);
97 };
98 
99 
100 #endif
double maxAcceleration()
Definition: rapidStream.cpp:136
double minAcceleration()
Definition: rapidStream.cpp:122
double mean()
Definition: rapidStream.cpp:87
double maximum()
Definition: rapidStream.cpp:68
Definition: rapidStream.h:11
rapidStream()
Definition: rapidStream.cpp:20
double maxVelocity()
Definition: rapidStream.cpp:111
void pushToWindow(double input)
Definition: rapidStream.cpp:41
~rapidStream()
Definition: rapidStream.cpp:29
double sum()
Definition: rapidStream.cpp:78
double velocity()
Definition: rapidStream.cpp:50
double standardDeviation()
Definition: rapidStream.cpp:91
double minVelocity()
Definition: rapidStream.cpp:100
double acceleration()
Definition: rapidStream.cpp:54
double minimum()
Definition: rapidStream.cpp:58
void clear()
Definition: rapidStream.cpp:33