#include "lastseen.h" // Initialized tracker with max count of item -1. LastSeen::LastSeen(int max) : tracker(max, -1) { this->max = max; tracker.reserve(max); /* while ((int)tracker.size() < max) tracker.insert(tracker.begin(), -1); */ } /* int LastSeen::bestsize(int max_items) { int best = max_items / 2; return best; } */ int LastSeen::getmax(void) { return this->max; } LastSeen::~LastSeen(){}; bool LastSeen::seen_before(int this_one) { for (auto it = this->tracker.begin(); it != this->tracker.end(); ++it) { if (*it == this_one) return true; } // Ok, it hasn't been seen before. this->tracker.erase(this->tracker.begin()); this->tracker.push_back(this_one); return false; } int LastSeen::best_guess(int max) { return max / 2; }