Geant4-11
Public Member Functions | Data Fields | Private Attributes
MCGIDI_samplingSettings Class Reference

#include <MCGIDI.h>

Public Member Functions

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

Data Fields

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

Private Attributes

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

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}
enum GIDI::xDataTOM_frame mWantFrame
Definition: MCGIDI.h:131
GIDI::MCGIDI_POP * mPoP
Definition: MCGIDI.h:139
double(* mRng)(void *)
Definition: MCGIDI.h:133
enum GIDI::xDataTOM_frame mGotFrame
Definition: MCGIDI.h:138
@ xDataTOM_frame_invalid
Definition: xDataTOM.h:23

References mEp, mGotFrame, mMu, mPoP, mRng, mRngState, mWantFrame, mWantVelocities, and xDataTOM_frame_invalid.

◆ ~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

References mSamplingMultiplicityBiases.

◆ 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}
#define smr_setReportError2(smr, libraryID, code, fmt,...)
#define smr_unknownID

References mSamplingMultiplicityBiases, smr_setReportError2, and smr_unknownID.

Field Documentation

◆ mEp

double MCGIDI_samplingSettings::mEp

Definition at line 141 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mGotFrame

enum GIDI::xDataTOM_frame MCGIDI_samplingSettings::mGotFrame

Definition at line 138 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mMu

double MCGIDI_samplingSettings::mMu

Definition at line 140 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mPoP

GIDI::MCGIDI_POP* MCGIDI_samplingSettings::mPoP

Definition at line 139 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mRng

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

Definition at line 133 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mRngState

void* MCGIDI_samplingSettings::mRngState
private

Definition at line 134 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mSamplingMultiplicityBiases

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

Definition at line 135 of file MCGIDI.h.

Referenced by getProductMultiplicityBias(), and setProductMultiplicityBias().

◆ mWantFrame

enum GIDI::xDataTOM_frame MCGIDI_samplingSettings::mWantFrame
private

Definition at line 131 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().

◆ mWantVelocities

bool MCGIDI_samplingSettings::mWantVelocities
private

Definition at line 132 of file MCGIDI.h.

Referenced by MCGIDI_samplingSettings().


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