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.
 
◆ main()
      
        
          | 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);
 
   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.");
 
#define DEBUG(A)
Message macros.
 
#define ASSERT(A,...)
Assert macro.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
 
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.