/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Generator/GeneratorModule/GeneratorModule-00-01-05/GeneratorModule/GeneratorName.h File Reference

#include <iosfwd>
#include <string>

Go to the source code of this file.

Enumerations

enum  GeneratorName {
  PYTHIA = 1000000, HERWIG = 2000000, ISAJET = 3000000, SINGLE = 4000000,
  HIJING = 5000000, PHOJET = 6000000, COMPHEP = 100000, USER = 200000,
  ACERMC = 300000, ALPGEN = 400000, TAUOLA = 10000, PHOTOS = 20000,
  TAUOLA_PHOTOS = 30000, UNKNOWN = -999
}

Functions

GeneratorName generator_name (const int &index)
GeneratorName first_generator (int &index)
GeneratorName second_generator (int &index)
GeneratorName third_generator (int &index)
int generator_process (int &index)
void GeneratorName_print (int &id)
std::string generator_string (const int &index)
std::ostreamoperator<< (std::ostream &lhs, GeneratorName rhs)


Enumeration Type Documentation

enum GeneratorName

Enumerator:
PYTHIA 
HERWIG 
ISAJET 
SINGLE 
HIJING 
PHOJET 
COMPHEP 
USER 
ACERMC 
ALPGEN 
TAUOLA 
PHOTOS 
TAUOLA_PHOTOS 
UNKNOWN 

Definition at line 7 of file GeneratorName.h.

00008 {
00009   PYTHIA          = 1000000,
00010   HERWIG          = 2000000,
00011   ISAJET          = 3000000,
00012   SINGLE          = 4000000,
00013   HIJING          = 5000000,
00014   PHOJET          = 6000000,
00015   COMPHEP         = 100000,
00016   USER            = 200000,
00017   ACERMC          = 300000,
00018   ALPGEN          = 400000,
00019   TAUOLA          = 10000,
00020   PHOTOS          = 20000,
00021   TAUOLA_PHOTOS   = 30000,
00022   UNKNOWN         = -999
00023 };


Function Documentation

GeneratorName first_generator ( int &  index  ) 

Definition at line 26 of file GeneratorName.cxx.

References generator_name().

Referenced by GeneratorName_print().

00027 {
00028   int gen1 = 1000000*(index/1000000);
00029   return generator_name(gen1);
00030 }

GeneratorName generator_name ( const int &  index  ) 

Definition at line 5 of file GeneratorName.cxx.

References ACERMC, ALPGEN, COMPHEP, HERWIG, HIJING, ISAJET, PHOJET, PHOTOS, PYTHIA, SINGLE, TAUOLA, TAUOLA_PHOTOS, UNKNOWN, and USER.

Referenced by first_generator(), second_generator(), and third_generator().

00006 {
00007   switch (index) {
00008   case 1000000  : return PYTHIA;
00009   case 2000000  : return HERWIG;
00010   case 3000000  : return ISAJET;
00011   case 4000000  : return SINGLE;
00012   case 5000000  : return HIJING;
00013   case 6000000  : return PHOJET;
00014   case 100000   : return COMPHEP;
00015   case 200000   : return USER;
00016   case 300000   : return ACERMC;
00017   case 400000   : return ALPGEN;
00018   case 10000    : return TAUOLA;
00019   case 20000    : return PHOTOS;
00020   case 30000    : return TAUOLA_PHOTOS;
00021   }
00022   return UNKNOWN;
00023 }

int generator_process ( int &  index  ) 

Definition at line 53 of file GeneratorName.cxx.

Referenced by GeneratorName_print().

00054 { return index%10000; }

std::string generator_string ( const int &  index  ) 

Definition at line 67 of file GeneratorName.cxx.

Referenced by operator<<().

00068 {
00069   switch (index) {
00070   case 1000000  : return "PYTHIA";
00071   case 2000000  : return "HERWIG";
00072   case 3000000  : return "ISAJET";
00073   case 4000000  : return "SINGLE";
00074   case 5000000  : return "HIJING";
00075   case 6000000  : return "PHOJET";
00076   case 100000   : return "COMPHEP";
00077   case 200000   : return "USER";
00078   case 300000   : return "ACERMC";
00079   case 400000   : return "ALPGEN";
00080   case 10000    : return "TAUOLA";
00081   case 20000    : return "PHOTOS";
00082   case 30000    : return "TAUOLA_PHOTOS";
00083   }
00084   return " ";
00085 }

void GeneratorName_print ( int &  id  ) 

Definition at line 57 of file GeneratorName.cxx.

References first_generator(), generator_process(), second_generator(), and third_generator().

00058 {
00059   std::cout << first_generator(id) << " "
00060             << second_generator(id) << " "
00061             << third_generator(id) << " + "
00062             << generator_process(id);
00063 }

std::ostream& operator<< ( std::ostream lhs,
GeneratorName  rhs 
)

Definition at line 87 of file GeneratorName.cxx.

00087                                                            {
00088   lhs << generator_string(rhs);
00089   return lhs;
00090 }

GeneratorName second_generator ( int &  index  ) 

Definition at line 33 of file GeneratorName.cxx.

References generator_name().

Referenced by GeneratorName_print().

00034 {
00035   int gen1 = 1000000*(index/1000000);
00036   int gen2 = index - gen1;
00037   gen2 = 100000*(gen2/100000);
00038   return generator_name(gen2);
00039 }

GeneratorName third_generator ( int &  index  ) 

Definition at line 42 of file GeneratorName.cxx.

References generator_name().

Referenced by GeneratorName_print().

00043 {
00044   int gen1 = 1000000*(index/1000000);
00045   int gen2 = index - gen1;
00046   gen2 = 100000*(gen2/100000);
00047   int gen3 = index - gen1 - gen2;
00048   gen3 = 10000*(gen3/10000);
00049   return generator_name(gen3);
00050 }


Generated on Tue Nov 29 23:16:14 2016 for BOSS_7.0.2 by  doxygen 1.4.7