
d
Dependencies: mbed
Fork of AEB by
CircularBuffer.cpp@5:d64e042b573d, 2016-07-31 (annotated)
- Committer:
- clynamen
- Date:
- Sun Jul 31 15:01:10 2016 +0000
- Revision:
- 5:d64e042b573d
- Parent:
- 2:5811e080f41d
final;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
clynamen | 2:5811e080f41d | 1 | #include "CircularBuffer.h" |
clynamen | 2:5811e080f41d | 2 | |
clynamen | 2:5811e080f41d | 3 | #include <algorithm> |
clynamen | 2:5811e080f41d | 4 | #include <math.h> |
clynamen | 2:5811e080f41d | 5 | |
clynamen | 2:5811e080f41d | 6 | CircularBuffer::CircularBuffer(int size) : size(size) { |
clynamen | 2:5811e080f41d | 7 | } |
clynamen | 2:5811e080f41d | 8 | |
clynamen | 2:5811e080f41d | 9 | void CircularBuffer::push_back(float v) { |
clynamen | 2:5811e080f41d | 10 | values.push_back(v); |
clynamen | 2:5811e080f41d | 11 | } |
clynamen | 2:5811e080f41d | 12 | |
clynamen | 2:5811e080f41d | 13 | bool isFirstGreater(float x, float y) { |
clynamen | 2:5811e080f41d | 14 | return x > y; |
clynamen | 2:5811e080f41d | 15 | } |
clynamen | 2:5811e080f41d | 16 | |
clynamen | 2:5811e080f41d | 17 | float CircularBuffer::median() { |
clynamen | 2:5811e080f41d | 18 | std::sort(values.begin(), values.end(), isFirstGreater); |
clynamen | 2:5811e080f41d | 19 | return values[floor((float)values.size()/2)]; |
clynamen | 2:5811e080f41d | 20 | } |
clynamen | 2:5811e080f41d | 21 |