GHepFlags.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::GHepFlag
5 
6 \brief An enumeration of event flags. Each represents a physical condition
7  or a computational error. If any is set the event would be marked as
8  unphysical.
9 
10 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
11  University of Liverpool & STFC Rutherford Appleton Laboratory
12 
13 \created May 06, 2004
14 
15 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
16  For the full text of the license visit http://copyright.genie-mc.org
17 */
18 //____________________________________________________________________________
19 
20 #ifndef _GHEP_FLAGS_H_
21 #define _GHEP_FLAGS_H_
22 
23 namespace genie {
24 
25  typedef enum EGHepFlag {
26 
35 
36  } GHepFlag_t;
37 
38 class GHepFlags {
39 
40  public:
41  //__________________________________________________________________________
42  static const char * Describe(GHepFlag_t flag)
43  {
44  switch (flag) {
45  case kGenericErr :
46  return "Generic error";
47  break;
48  case kPauliBlock :
49  return "Pauli-blocked event";
50  break;
51  case kBelowThrNRF :
52  return "E<Ethr in hit nucleon rest frame";
53  break;
54  case kBelowThrERF :
55  return "E<Ethr in hit e- rest frame";
56  break;
57  case kKineGenErr :
58  return "Generic error in kinematic generation";
59  break;
60  case kHadroSysGenErr :
61  return "Generic error in f/s hadronic system generation";
62  break;
63  case kLeptoGenErr :
64  return "Generic error in f/s lepton generation";
65  break;
66  case kDecayErr :
67  return "Generic error during unstable particle decay";
68  break;
69  default:
70  return "Unknown GHEP flag";
71  break;
72  }
73  return "Unknown GHEP flag";
74  }
75  //__________________________________________________________________________
76  static unsigned int NFlags(void) { return 16; }
77  //__________________________________________________________________________
78 };
79 
80 } // genie namespace
81 
82 #endif // _GHEP_FLAGS_H_
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
enum genie::EGHepFlag GHepFlag_t
static const char * Describe(GHepFlag_t flag)
Definition: GHepFlags.h:42
EGHepFlag
Definition: GHepFlags.h:25
static unsigned int NFlags(void)
Definition: GHepFlags.h:76