NuclearModel.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::NuclearModel
5 
6 \brief Encapsulates an enumeration of nuclear model types
7 
8 \author Costas Andreopoulos <costas.andreopoulos \at stfc.ac.uk>
9  University of Liverpool & STFC Rutherford Appleton Lab
10 
11 \created Jun 09, 2009
12 
13 \cpright Copyright (c) 2003-2019, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15  or see $GENIE/LICENSE
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _NUCL_MODEL_TYPE_H_
20 #define _NUCL_MODEL_TYPE_H_
21 
22 #ifndef ROOT_Rtypes
23 #include "Rtypes.h"
24 #endif
25 
26 namespace genie {
27 
28 typedef enum ENuclearModel {
29 
35 
37 
44 
45 class NuclearModel {
46 
47 public:
48  static const char * AsString(NuclearModel_t nucmod) {
49  switch (nucmod) {
50  case kNucmUndefined: return "Undefined nuclear model"; break;
51  case kNucmFermiGas: return "Fermi gas model"; break;
52  case kNucmLocalFermiGas: return "Local Fermi gas model"; break;
53  case kNucmSpectralFunc: return "Spectral function model"; break;
54  case kNucmEffSpectralFunc: return "Effective spectral function model"; break;
55  default: break;
56  }
57  return " ";
58  }
59 
60 };
61 
62 }
63 #endif
static const char * AsString(NuclearModel_t nucmod)
Definition: NuclearModel.h:48
THE MAIN GENIE PROJECT NAMESPACE
Definition: GeneratorBase.h:8
enum genie::EFermiMoverInteractionType FermiMoverInteractionType_t
enum genie::ENuclearModel NuclearModel_t
Encapsulates an enumeration of nuclear model types.
Definition: NuclearModel.h:45
ENuclearModel
Definition: NuclearModel.h:28
EFermiMoverInteractionType
Definition: NuclearModel.h:38