ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MCGIDI_quantitiesLookupMode.cc
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file MCGIDI_quantitiesLookupMode.cc
1 /*
2 # <<BEGIN-copyright>>
3 # <<END-copyright>>
4 */
5 
6 #include "MCGIDI.h"
7 
8 /* ---- MCGIDI_quantitiesLookupModes ---- */
9 /*
10 =========================================================
11 */
13 
14  mProjectilesPOPID = projectilesPOPID;
15  mProjectileEnergy = -1.;
16  mGroupIndex = -1;
18  mTemperature = 0.;
21 }
22 /*
23 =========================================================
24 */
26 
27 }
28 /*
29 =========================================================
30 */
31 int MCGIDI_quantitiesLookupModes::setGroupIndex( GIDI_settings const &settings, bool encloseOutOfRange ) {
32 
34  if( particle == NULL ) throw 1;
35 
36  mGroupIndex = particle->getGroupIndexFromEnergy( mProjectileEnergy, encloseOutOfRange );
37  if( mGroupIndex == -3 ) throw 1;
38 
41  return( mGroupIndex );
42 }
43 /*
44 =========================================================
45 */
46 enum MCGIDI_quantityLookupMode MCGIDI_quantitiesLookupModes::getMode( std::string const &quantity ) const {
47 
48  if( quantity == std::string( "cross section" ) ) {
49  return( mCrossSectionMode ); }
50  else if( quantity == std::string( "multiplicity" ) ) {
51  return( mMultiplicityMode ); }
52  else {
53  throw 1;
54  }
55 }
56 /*
57 =========================================================
58 */
59 std::vector<std::string> MCGIDI_quantitiesLookupModes::getListOfLookupQuanities( ) const {
60 
61  std::vector<std::string> quanities;
62 
63  quanities.push_back( std::string( "cross section" ) );
64  quanities.push_back( std::string( "multiplicity" ) );
65 
66  return( quanities );
67 }
68 /*
69 =========================================================
70 */
71 void MCGIDI_quantitiesLookupModes::setMode( std::string const &quantity, enum MCGIDI_quantityLookupMode mode ) {
72 
73  if( quantity == std::string( "cross section" ) ) {
74  mCrossSectionMode = mode; }
75  else if( quantity == std::string( "multiplicity" ) ) {
76  mMultiplicityMode = mode; }
77  else {
78  throw 1;
79  }
80 }
81 /*
82 =========================================================
83 */
85 
86  mCrossSectionMode = mode;
87  mMultiplicityMode = mode;
88 }