
26 Jul
2007
26 Jul
'07
12:37 a.m.
It struck me that the boost::circular_buffer might work great as an underlying container in the accumulators library; which then could be used as the basis for many of the smoothing functions that could be created in the time_series library, similar to the "simple_moving_average" functor that we just created. In addition, the accumulator::tag could be sent in as a template parameter to the time_series functors, eliminating the need to have a functor for each of the accumulator statistical algorithms. Example might be: template <typename Accumulator> struct generic_smoothing_functor { Accumulator accumulator; out operator()(Type in, offset start, offset end) { accumulator(in); } };