Geant4  v4-10.4-release
 모두 클래스 네임스페이스들 파일들 함수 변수 타입정의 열거형 타입 열거형 멤버 Friends 매크로 그룹들 페이지들
MCGIDI_samplingSettings.cc
이 파일의 문서화 페이지로 가기
1 /*
2 # <<BEGIN-copyright>>
3 # <<END-copyright>>
4 */
5 
6 #include "MCGIDI.h"
7 
8 using namespace GIDI;
9 /* ---- MCGIDI_samplingMethods ---- */
10 /*
11 =========================================================
12 */
14 
15 }
16 /*
17 =========================================================
18 */
20 
21 }
22 
23 /* ---- MCGIDI_samplingSettings ---- */
24 /*
25 =========================================================
26 */
27 MCGIDI_samplingSettings::MCGIDI_samplingSettings( enum xDataTOM_frame frame, bool wantVelocities, double (*rng)( void * ), void *rngState ) {
28 
29  mWantFrame = frame;
30  mWantVelocities = wantVelocities;
31  mRng = rng;
32  mRngState = rngState;
33 
34  mGotFrame = xDataTOM_frame_invalid;
35  mPoP = NULL;
36  mMu = 0.;
37  mEp = 0.;
38 }
39 /*
40 =========================================================
41 */
43 
44 }
45 /*
46 =========================================================
47 */
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 }
xDataTOM_frame
Definition: xDataTOM.h:23
#define smr_setReportError2(smr, libraryID, code, fmt,...)
typedef int(XMLCALL *XML_NotStandaloneHandler)(void *userData)
#define smr_unknownID
int setProductMultiplicityBias(GIDI::statusMessageReporting *smr, int PoPID, double fractor)
MCGIDI_samplingSettings(enum GIDI::xDataTOM_frame frame, bool wantVelocities, double(*rng)(void *), void *rngState)