Import Geant4 11.0.0.beta source tree
This commit is contained in:
@@ -46,7 +46,6 @@
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4VCrossSectionDataSet.hh"
|
||||
#include "G4FastPathHadronicCrossSection.hh"
|
||||
#include "G4DynamicParticle.hh"
|
||||
#include "G4PhysicsVector.hh"
|
||||
#include <vector>
|
||||
@@ -68,7 +67,7 @@ public:
|
||||
~G4CrossSectionDataStore();
|
||||
|
||||
// Cross section per unit volume is computed (inverse mean free path)
|
||||
inline G4double GetCrossSection(const G4DynamicParticle*, const G4Material*);
|
||||
G4double GetCrossSection(const G4DynamicParticle*, const G4Material*);
|
||||
G4double ComputeCrossSection(const G4DynamicParticle*, const G4Material*);
|
||||
|
||||
// Cross section per element is computed
|
||||
@@ -124,34 +123,8 @@ private:
|
||||
|
||||
G4int nDataSetList;
|
||||
G4int verboseLevel;
|
||||
//Fast path: caching
|
||||
public:
|
||||
inline const G4FastPathHadronicCrossSection::fastPathParameters&
|
||||
GetFastPathParameters() const { return fastPathParams; }
|
||||
inline const G4FastPathHadronicCrossSection::controlFlag&
|
||||
GetFastPathControlFlags() const { return fastPathFlags; }
|
||||
void DumpFastPath( const G4ParticleDefinition* , const G4Material* , std::ostream& os);
|
||||
void ActivateFastPath( const G4ParticleDefinition*, const G4Material* , G4double);
|
||||
private:
|
||||
friend struct G4FastPathHadronicCrossSection::fastPathEntry;
|
||||
//The following method is called by the public one GetCrossSection(const G4DynamicParticle*, const G4Material*)
|
||||
//The third parameter is used to force the calculation of cross-sections skipping the fast-path mechanism
|
||||
G4double GetCrossSection(const G4DynamicParticle*, const G4Material*, G4bool requiresSlowPath);
|
||||
G4FastPathHadronicCrossSection::controlFlag fastPathFlags;
|
||||
G4FastPathHadronicCrossSection::fastPathParameters fastPathParams;
|
||||
//Counters
|
||||
G4FastPathHadronicCrossSection::getCrossSectionCount counters;
|
||||
//TODO: share this among threads
|
||||
G4FastPathHadronicCrossSection::G4CrossSectionDataStore_Cache fastPathCache;
|
||||
G4FastPathHadronicCrossSection::timing timing;
|
||||
G4FastPathHadronicCrossSection::G4CrossSectionDataStore_Requests requests;
|
||||
};
|
||||
|
||||
inline G4double G4CrossSectionDataStore::GetCrossSection(const G4DynamicParticle* particle , const G4Material* material ) {
|
||||
//By default tries to use the fast-path mechanism
|
||||
return GetCrossSection( particle , material , false);
|
||||
}
|
||||
|
||||
inline void G4CrossSectionDataStore::SetVerboseLevel(G4int value)
|
||||
{
|
||||
verboseLevel = value;
|
||||
|
||||
Reference in New Issue
Block a user