25 get_value(
const double precision)
27 this->precision = precision;
37 inline int operator()(
const double key)
const
39 return (
int) ((
key + 0.5*precision) / precision);
54int main(
int argc,
char **argv)
64 JParser<> zap(
"Example program to test hash collection.");
71 catch(
const exception &error) {
81 set<double> input = { 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0 };
89 for (hash_collection::const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
93 ASSERT(buffer.size() == input.size(),
"Test of buffer size with multiple inserts of same element.");
100 ASSERT(buffer.has(*x),
"Test of buffer content.");
112 ASSERT(out.has(*x),
"Test of buffer content after assignment.");
118 hash_collection::iterator p = buffer.find(*x);
120 DEBUG(
"find " <<
FIXED(5,2) << *x <<
" at position " <<
distance(buffer.begin(),p) <<
' ' << buffer.getIndex(*x) <<
endl);
127 ASSERT(buffer.has(*x) == (
rm.count(*x) == 0),
"Test of buffer content after erase.");
int main(int argc, char **argv)
General purpose class for a hash collection of unique elements.
General purpose messaging.
#define DEBUG(A)
Message macros.
#define ASSERT(A,...)
Assert macro.
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
I/O formatting auxiliaries.
Template definition of a multi-dimensional oscillation probability interpolation table.
Utility class to parse command line options.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary data structure for floating point format specification.