Newer
Older
#ifndef TOP_H
#define TOP_H
#include <limits>
template <typename T>
struct topresult
{
double s1, s2;
T i1, i2;
topresult() {s1 = s2 = std::numeric_limits<double>::infinity();}
void
test(double s, const T & i)
{
if (s < s1) {
s2 = s1;
i2 = i1;
s1 = s;
i1 = i;
}
else if (s < s2 && i1 != i) { // additional test because we may have several tests with the same feature
s2 = s;
i2 = i;
}
}
};
#endif