Geant4  10.01.p01
G4GeneralParticleSourceData Class Reference

#include <G4GeneralParticleSourceData.hh>

+ Collaboration diagram for G4GeneralParticleSourceData:

Public Member Functions

void AddASource (G4double intensity)
 
void DeleteASource (G4int idx)
 
void ClearSources ()
 
void SetSourceVerbosity (G4int verb)
 
void IntensityNormalise ()
 
G4bool Normalised () const
 
G4SingleParticleSourceGetCurrentSource (G4int idx)
 
G4SingleParticleSourceGetCurrentSource () const
 
G4int GetSourceVectorSize () const
 
G4int GetIntensityVectorSize () const
 
G4double GetIntensity (G4int idx) const
 
G4double GetSourceProbability (G4int idx) const
 
void SetCurrentSourceIntensity (G4double)
 
void SetFlatSampling (G4bool fSamp)
 
void Lock ()
 
void Unlock ()
 

Static Public Member Functions

static
G4GeneralParticleSourceData
Instance ()
 

Private Member Functions

 G4GeneralParticleSourceData ()
 
 ~G4GeneralParticleSourceData ()
 

Private Attributes

std::vector
< G4SingleParticleSource * > 
sourceVector
 
std::vector< G4doublesourceIntensity
 
std::vector< G4doublesourceProbability
 
G4bool flat_sampling
 
G4bool normalised
 
G4int currentSourceIdx
 
G4SingleParticleSourcecurrentSource
 
G4Mutex mutex
 

Detailed Description

Definition at line 63 of file G4GeneralParticleSourceData.hh.

Constructor & Destructor Documentation

G4GeneralParticleSourceData::G4GeneralParticleSourceData ( )
private
G4GeneralParticleSourceData::~G4GeneralParticleSourceData ( )
private

Definition at line 82 of file G4GeneralParticleSourceData.cc.

References G4MUTEXDESTROY, mutex, and sourceVector.

Member Function Documentation

void G4GeneralParticleSourceData::AddASource ( G4double  intensity)

Definition at line 146 of file G4GeneralParticleSourceData.cc.

References currentSource, currentSourceIdx, normalised, sourceIntensity, and sourceVector.

Referenced by G4GeneralParticleSource::AddaSource().

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::ClearSources ( )

Definition at line 177 of file G4GeneralParticleSourceData.cc.

References currentSource, currentSourceIdx, sourceIntensity, and sourceVector.

Referenced by G4GeneralParticleSource::ClearAll().

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::DeleteASource ( G4int  idx)

Definition at line 155 of file G4GeneralParticleSourceData.cc.

References currentSource, currentSourceIdx, GetCurrentSource(), GetIntensityVectorSize(), normalised, sourceIntensity, and sourceVector.

Referenced by G4GeneralParticleSource::DeleteaSource().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4SingleParticleSource * G4GeneralParticleSourceData::GetCurrentSource ( G4int  idx)

Definition at line 186 of file G4GeneralParticleSourceData.cc.

References currentSource, currentSourceIdx, and sourceVector.

Referenced by G4GeneralParticleSource::AddaSource(), G4GeneralParticleSource::G4GeneralParticleSource(), G4GeneralParticleSource::GeneratePrimaryVertex(), and G4GeneralParticleSource::SetCurrentSourceto().

+ Here is the caller graph for this function:

G4SingleParticleSource* G4GeneralParticleSourceData::GetCurrentSource ( ) const
inline

Definition at line 78 of file G4GeneralParticleSourceData.hh.

References currentSource.

Referenced by DeleteASource(), and IntensityNormalise().

+ Here is the caller graph for this function:

G4double G4GeneralParticleSourceData::GetIntensity ( G4int  idx) const
inline

Definition at line 82 of file G4GeneralParticleSourceData.hh.

References sourceIntensity.

Referenced by G4GeneralParticleSource::GetCurrentSourceIntensity(), and G4GeneralParticleSource::ListSource().

+ Here is the caller graph for this function:

G4int G4GeneralParticleSourceData::GetIntensityVectorSize ( ) const
inline

Definition at line 81 of file G4GeneralParticleSourceData.hh.

References sourceIntensity.

Referenced by DeleteASource(), G4GeneralParticleSource::DeleteaSource(), G4GeneralParticleSource::GeneratePrimaryVertex(), G4GeneralParticleSource::ListSource(), and G4GeneralParticleSource::SetCurrentSourceto().

+ Here is the caller graph for this function:

G4double G4GeneralParticleSourceData::GetSourceProbability ( G4int  idx) const
inline

Definition at line 83 of file G4GeneralParticleSourceData.hh.

References sourceProbability.

Referenced by G4GeneralParticleSource::GeneratePrimaryVertex().

+ Here is the caller graph for this function:

G4int G4GeneralParticleSourceData::GetSourceVectorSize ( ) const
inline

Definition at line 80 of file G4GeneralParticleSourceData.hh.

References sourceVector.

Referenced by G4GeneralParticleSource::AddaSource(), G4GeneralParticleSource::G4GeneralParticleSource(), and G4GeneralParticleSource::GetNumberofSource().

+ Here is the caller graph for this function:

G4GeneralParticleSourceData * G4GeneralParticleSourceData::Instance ( void  )
static

Definition at line 91 of file G4GeneralParticleSourceData.cc.

References instance.

Referenced by G4GeneralParticleSource::G4GeneralParticleSource().

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::IntensityNormalise ( )

Definition at line 103 of file G4GeneralParticleSourceData.cc.

References flat_sampling, G4SingleParticleSource::GetBiasRndm(), GetCurrentSource(), normalised, G4SPSRandomGenerator::SetIntensityWeight(), sourceIntensity, sourceProbability, and G4INCL::CrossSections::total().

Referenced by G4GeneralParticleSource::IntensityNormalization().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::Lock ( )

Definition at line 193 of file G4GeneralParticleSourceData.cc.

References G4MUTEXLOCK, and mutex.

Referenced by G4GeneralParticleSource::AddaSource(), G4GeneralParticleSource::GeneratePrimaryVertex(), and G4GeneralParticleSource::SetCurrentSourceIntensity().

+ Here is the caller graph for this function:

G4bool G4GeneralParticleSourceData::Normalised ( ) const
inline

Definition at line 75 of file G4GeneralParticleSourceData.hh.

References normalised.

Referenced by G4GeneralParticleSource::GeneratePrimaryVertex().

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::SetCurrentSourceIntensity ( G4double  intensity)

Definition at line 140 of file G4GeneralParticleSourceData.cc.

References currentSourceIdx, normalised, and sourceIntensity.

Referenced by G4GeneralParticleSource::SetCurrentSourceIntensity().

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::SetFlatSampling ( G4bool  fSamp)
inline

Definition at line 86 of file G4GeneralParticleSourceData.hh.

References flat_sampling.

Referenced by G4GeneralParticleSource::SetFlatSampling().

+ Here is the caller graph for this function:

void G4GeneralParticleSourceData::SetSourceVerbosity ( G4int  verb)
void G4GeneralParticleSourceData::Unlock ( )

Definition at line 198 of file G4GeneralParticleSourceData.cc.

References G4MUTEXUNLOCK, and mutex.

Referenced by G4GeneralParticleSource::AddaSource(), G4GeneralParticleSource::GeneratePrimaryVertex(), and G4GeneralParticleSource::SetCurrentSourceIntensity().

+ Here is the caller graph for this function:

Member Data Documentation

G4SingleParticleSource* G4GeneralParticleSourceData::currentSource
private
G4int G4GeneralParticleSourceData::currentSourceIdx
private
G4bool G4GeneralParticleSourceData::flat_sampling
private

Definition at line 105 of file G4GeneralParticleSourceData.hh.

Referenced by IntensityNormalise(), and SetFlatSampling().

G4Mutex G4GeneralParticleSourceData::mutex
private
G4bool G4GeneralParticleSourceData::normalised
private
std::vector<G4double> G4GeneralParticleSourceData::sourceIntensity
private
std::vector<G4double> G4GeneralParticleSourceData::sourceProbability
private

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