Example program to test JTOOLS::JHashCollection class.  
More...
#include <iostream>
#include <iomanip>
#include <cmath>
#include <set>
#include "JTools/JHashCollection.hh"
#include "Jeep/JPrint.hh"
#include "Jeep/JParser.hh"
#include "Jeep/JMessage.hh"
 
Go to the source code of this file.
 | 
| int  | main (int argc, char **argv) | 
|   | 
Example program to test JTOOLS::JHashCollection class. 
- Author
 - mdejong 
 
Definition in file JHashCollection.cc.
 
      
        
          | int main  | 
          ( | 
          int  | 
          argc,  | 
        
        
           | 
           | 
          char **  | 
          argv  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Definition at line 54 of file JHashCollection.cc.
   63     JParser<> zap(
"Example program to test hash collection.");
 
   70   catch(
const exception &error) {
 
   71     FATAL(error.what() << endl);
 
   77   typedef JHashCollection<double, get_value>   hash_collection;
 
   79   hash_collection buffer(precision);
 
   82   set<double> input = { 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 2.0 };
 
   90   for (hash_collection::const_iterator 
i = buffer.begin(); 
i != buffer.end(); ++
i) {
 
   94   ASSERT(buffer.size() == input.size(), 
"Test of buffer size with multiple inserts of same element.");
 
   99     DEBUG(
FIXED(5,2) << *
x << 
' ' << buffer.getIndex(*
x) << endl);
 
  101     ASSERT(buffer.has(*
x), 
"Test of buffer content.");
 
  105     hash_collection out(precision);
 
  111       DEBUG(
FIXED(5,2) << *
x << 
' ' << out.getIndex(*
x) << endl);
 
  113       ASSERT(out.has(*
x), 
"Test of buffer content after assignment.");
 
  119     hash_collection::iterator p = buffer.find(*
x);
 
  121     DEBUG(
"find " << 
FIXED(5,2) << *
x << 
" at position " << 
distance(buffer.begin(),p) << 
' ' << buffer.getIndex(*
x) << endl);
 
  128     ASSERT(buffer.has(*
x) == (
rm.count(*
x) == 0), 
"Test of buffer content after erase.");
 
Utility class to parse command line options. 
 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance. 
 
Auxiliary data structure for floating point format specification. 
 
#define ASSERT(A,...)
Assert macro. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
#define DEBUG(A)
Message macros.