From ad6a598de4025321a5227edf2a676c0f3397927c Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Wed, 5 Dec 2012 21:14:14 +0100 Subject: Basic infrastructure to read muscle activation profiles from CSV --- MuscleEMGProfile.h | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 MuscleEMGProfile.h (limited to 'MuscleEMGProfile.h') diff --git a/MuscleEMGProfile.h b/MuscleEMGProfile.h new file mode 100644 index 0000000..2d31f27 --- /dev/null +++ b/MuscleEMGProfile.h @@ -0,0 +1,49 @@ +#ifndef MUSCLE_EMG_PROFILE_H_ +#define MUSCLE_EMG_PROFILE_H_ + +#include +#include +#include + +class MuscleEMGProfile { +public: + MuscleEMGProfile(const std::string &name, unsigned capacity) + : _name(const_cast(name)) + { + if (capacity == 0) + capacity = 100; + _x.reserve(capacity); + _y.reserve(capacity); + } + + MuscleEMGProfile& operator=(const MuscleEMGProfile &m) + { + _name = m._name; + _x = m._x; + _y = m._y; + + return *this; + } + + unsigned getIdx() { return _x.size(); } + unsigned getCapacity() { return _x.max_size(); } + const std::string &getName() { return _name; } + + void addData(double x, double y); + +private: + std::string _name; + std::vector _x; + std::vector _y; + +// friend std::ostream& operator<<(std::ostream &s, const MuscleEMGProfile &m); +}; + +/* +std::ostream& operator<<(std::ostream &s, const MuscleEMGProfile &m) +{ + return s << "MuscleEMGProfile(" << m._name << ", " << m._idx << "/" << m._capacity << ")" << std::endl; +} +*/ + +#endif /* MUSCLE_EMG_PROFILE_H_ */ \ No newline at end of file -- cgit v1.2.3-54-g00ecf