50  template<
class JType_t>
 
   51  int do_main(
int argc, 
char **argv, 
const char* title)
 
   63      JParser<> zap(
"Auxiliary program to test speed of memory allocation.");
 
   73    catch(
const exception &error) {
 
   74      FATAL(error.what() << endl);
 
   80    cout << endl << title << endl;
 
   91    for (
int event_count = 0; event_count != numberOfEvents; ++event_count) {
 
   93      buffer.resize(numberOfAllocs);
 
   99      for (
int i = numberOfAllocs; i != 0; --i, ++out) {
 
  100        *out = 
new JType_t();
 
  110        std::shuffle(buffer.begin(), buffer.end(), g);
 
  114        std::reverse(buffer.begin(), buffer.end());
 
  126    const double factor = 1.0 / (numberOfEvents * numberOfAllocs);
 
  128    timer1.print(cout, factor, nano_t);
 
  129    timer2.print(cout, factor, nano_t);
 
  143  if (do_main<__A__>(argc, argv, 
"C++")        != 0) 
return 1;
 
  144  if (do_main<__B__>(argc, argv, 
"JAllocator") != 0) 
return 1;
 
  145  if (do_main<__C__>(argc, argv, 
"JRAM")       != 0) 
return 1;
 
 
int main(int argc, char **argv)
 
Auxiliary class to speed up new/delete operations of any class.
 
General purpose messaging.
 
Auxiliary base class to speed up new/delete operations of any class.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
Auxiliary class to speed up new/delete operations of any class.
 
Auxiliary class for CPU timing and usage.
 
Base class for customized new/delete operators.
 
Utility class to parse command line options.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).