#ifndef ENDLESSAVG_H #define ENDLESSAVG_H template class EndlessAVG { private: /** track the current sum of the vector's values */ T curSum; /** the number of elements to average */ int count; public: /** ctor */ EndlessAVG() : curSum(), count(0) {;} /** add a new value */ void add(const T val) { curSum += val; ++count; } /** get the current average */ T get() const { return curSum / count; } /** get number of entries to average */ int getSize() const { return count; } }; #endif // ENDLESSAVG_H