31 double maxFrequency) :
32 RTFilterBase(timeWindowSize.toSecondsDouble() * maxFrequency),
33 timeWindowSize(timeWindowSize)
44 IceUtil::Time newestTimestamp =
dataHistory.back().first;
45 IceUtil::Time timeBorder = (newestTimestamp - timeWindowSize);
50 IceUtil::Time& t = it->first;
51 double val = it->second;
76 return std::make_shared<TimeWindowAverageFilter>(*
this);
boost::circular_buffer< std::pair< IceUtil::Time, double > > dataHistory
RTFilterBase(size_t historySize)
TimeWindowAverageFilter(IceUtil::Time timeWindowSize, double maxFrequency)
double calculate() override
RTFilterBasePtr clone() const override
std::shared_ptr< RTFilterBase > RTFilterBasePtr