Geant4  10.02.p03
MCGIDI_samplingSettings Class Reference

#include <MCGIDI.h>

Collaboration diagram for MCGIDI_samplingSettings:

Public Member Functions

 MCGIDI_samplingSettings (enum GIDI::xDataTOM_frame frame, bool wantVelocities, double(*rng)(void *), void *rngState)
 
 ~MCGIDI_samplingSettings ()
 
double getProductMultiplicityBias (int PoPID) const
 
int setProductMultiplicityBias (GIDI::statusMessageReporting *smr, int PoPID, double fractor)
 

Public Attributes

enum GIDI::xDataTOM_frame mGotFrame
 
GIDI::MCGIDI_POPmPoP
 
double mMu
 
double mEp
 

Private Attributes

enum GIDI::xDataTOM_frame mWantFrame
 
bool mWantVelocities
 
double(* mRng )(void *)
 
void * mRngState
 
std::vector< struct MCGIDI_samplingMultiplicityBias_smSamplingMultiplicityBiases
 

Detailed Description

Definition at line 128 of file MCGIDI.h.

Constructor & Destructor Documentation

◆ MCGIDI_samplingSettings()

MCGIDI_samplingSettings::MCGIDI_samplingSettings ( enum GIDI::xDataTOM_frame  frame,
bool  wantVelocities,
double(*)(void *)  rng,
void *  rngState 
)

Definition at line 27 of file MCGIDI_samplingSettings.cc.

27  {
28 
29  mWantFrame = frame;
30  mWantVelocities = wantVelocities;
31  mRng = rng;
32  mRngState = rngState;
33 
35  mPoP = NULL;
36  mMu = 0.;
37  mEp = 0.;
38 }
double(* mRng)(void *)
Definition: MCGIDI.h:133
GIDI::MCGIDI_POP * mPoP
Definition: MCGIDI.h:139
enum GIDI::xDataTOM_frame mGotFrame
Definition: MCGIDI.h:138
enum GIDI::xDataTOM_frame mWantFrame
Definition: MCGIDI.h:131

◆ ~MCGIDI_samplingSettings()

MCGIDI_samplingSettings::~MCGIDI_samplingSettings ( void  )

Definition at line 42 of file MCGIDI_samplingSettings.cc.

42  {
43 
44 }

Member Function Documentation

◆ getProductMultiplicityBias()

double MCGIDI_samplingSettings::getProductMultiplicityBias ( int  PoPID) const
inline

Definition at line 147 of file MCGIDI.h.

147  {
148  for( int i1 = 0; i1 < (int) mSamplingMultiplicityBiases.size( ); ++i1 ) {
149  if( PoPID == mSamplingMultiplicityBiases[i1].PoPID ) return( mSamplingMultiplicityBiases[i1].multiplicityFactor );
150  }
151  return( 1. ); }
std::vector< struct MCGIDI_samplingMultiplicityBias_s > mSamplingMultiplicityBiases
Definition: MCGIDI.h:135

◆ setProductMultiplicityBias()

int MCGIDI_samplingSettings::setProductMultiplicityBias ( GIDI::statusMessageReporting smr,
int  PoPID,
double  fractor 
)

Definition at line 48 of file MCGIDI_samplingSettings.cc.

48  {
49 
50  if( factor < 0 ) {
51  smr_setReportError2( smr, smr_unknownID, 1, "factor = %e cannot be negative", factor );
52  return( 1 );
53  }
54 
55  for( int i1 = 0; i1 < (int) mSamplingMultiplicityBiases.size( ); ++i1 ) {
56  if( PoPID == mSamplingMultiplicityBiases[i1].PoPID ) {
57  mSamplingMultiplicityBiases[i1].multiplicityFactor = factor;
58  return( 0 );
59  }
60  }
61  MCGIDI_samplingMultiplicityBias samplingMultiplicityBias = { PoPID, factor };
62  mSamplingMultiplicityBiases.push_back( samplingMultiplicityBias );
63  return( 0 );
64 }
std::vector< struct MCGIDI_samplingMultiplicityBias_s > mSamplingMultiplicityBiases
Definition: MCGIDI.h:135
#define smr_setReportError2(smr, libraryID, code, fmt,...)
#define smr_unknownID
static const G4double factor

Member Data Documentation

◆ mEp

double MCGIDI_samplingSettings::mEp

Definition at line 141 of file MCGIDI.h.

◆ mGotFrame

enum GIDI::xDataTOM_frame MCGIDI_samplingSettings::mGotFrame

Definition at line 138 of file MCGIDI.h.

◆ mMu

double MCGIDI_samplingSettings::mMu

Definition at line 140 of file MCGIDI.h.

◆ mPoP

GIDI::MCGIDI_POP* MCGIDI_samplingSettings::mPoP

Definition at line 139 of file MCGIDI.h.

◆ mRng

double(* MCGIDI_samplingSettings::mRng) (void *)
private

Definition at line 133 of file MCGIDI.h.

◆ mRngState

void* MCGIDI_samplingSettings::mRngState
private

Definition at line 134 of file MCGIDI.h.

◆ mSamplingMultiplicityBiases

std::vector<struct MCGIDI_samplingMultiplicityBias_s> MCGIDI_samplingSettings::mSamplingMultiplicityBiases
private

Definition at line 135 of file MCGIDI.h.

◆ mWantFrame

enum GIDI::xDataTOM_frame MCGIDI_samplingSettings::mWantFrame
private

Definition at line 131 of file MCGIDI.h.

◆ mWantVelocities

bool MCGIDI_samplingSettings::mWantVelocities
private

Definition at line 132 of file MCGIDI.h.


The documentation for this class was generated from the following files: