Import Geant4 10.6.0 source tree
This commit is contained in:
@@ -23,8 +23,6 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
//
|
||||
// -------------------------------------------------------------------
|
||||
//
|
||||
// GEANT4 Class header file
|
||||
@@ -53,6 +51,7 @@
|
||||
#include <vector>
|
||||
#include "globals.hh"
|
||||
#include "G4PhysicsTable.hh"
|
||||
#include "G4Threading.hh"
|
||||
|
||||
class G4VEmModel;
|
||||
class G4ParticleDefinition;
|
||||
@@ -63,7 +62,7 @@ class G4LossTableBuilder
|
||||
|
||||
public:
|
||||
|
||||
G4LossTableBuilder();
|
||||
G4LossTableBuilder(G4bool master=true);
|
||||
|
||||
virtual ~G4LossTableBuilder();
|
||||
|
||||
@@ -74,12 +73,12 @@ public:
|
||||
// build range
|
||||
void BuildRangeTable(const G4PhysicsTable* dedxTable,
|
||||
G4PhysicsTable* rangeTable,
|
||||
G4bool isIonisation = false);
|
||||
G4bool useBM = false);
|
||||
|
||||
// build inverse range
|
||||
void BuildInverseRangeTable(const G4PhysicsTable* rangeTable,
|
||||
G4PhysicsTable* invRangeTable,
|
||||
G4bool isIonisation = false);
|
||||
G4bool useBM = false);
|
||||
|
||||
// build a table requested by any model class
|
||||
G4PhysicsTable* BuildTableForModel(G4PhysicsTable* table,
|
||||
@@ -89,15 +88,14 @@ public:
|
||||
G4bool spline);
|
||||
|
||||
// initialise base materials
|
||||
void InitialiseBaseMaterials(G4PhysicsTable* table);
|
||||
|
||||
void InitialiseBaseMaterials(const G4PhysicsTable* table=nullptr);
|
||||
|
||||
// access methods
|
||||
inline const std::vector<G4int>* GetCoupleIndexes();
|
||||
const std::vector<G4int>* GetCoupleIndexes() const;
|
||||
|
||||
inline const std::vector<G4double>* GetDensityFactors();
|
||||
const std::vector<G4double>* GetDensityFactors() const;
|
||||
|
||||
inline G4bool GetFlag(size_t idx) const;
|
||||
G4bool GetFlag(size_t idx);
|
||||
|
||||
inline void SetSplineFlag(G4bool flag);
|
||||
|
||||
@@ -105,41 +103,23 @@ public:
|
||||
|
||||
private:
|
||||
|
||||
void InitialiseCouples();
|
||||
G4LossTableBuilder & operator=(const G4LossTableBuilder &right);
|
||||
G4LossTableBuilder(const G4LossTableBuilder&);
|
||||
|
||||
G4LossTableBuilder & operator=(const G4LossTableBuilder &right) = delete;
|
||||
G4LossTableBuilder(const G4LossTableBuilder&) = delete;
|
||||
|
||||
G4EmParameters* theParameters;
|
||||
G4EmParameters* theParameters;
|
||||
|
||||
G4bool splineFlag;
|
||||
G4bool isInitialized;
|
||||
G4bool isMaster;
|
||||
|
||||
std::vector<G4double>* theDensityFactor;
|
||||
std::vector<G4int>* theDensityIdx;
|
||||
std::vector<G4bool>* theFlag;
|
||||
|
||||
static std::vector<G4double>* theDensityFactor;
|
||||
static std::vector<G4int>* theDensityIdx;
|
||||
static std::vector<G4bool>* theFlag;
|
||||
#ifdef G4MULTITHREADED
|
||||
static G4Mutex ltbMutex;
|
||||
#endif
|
||||
};
|
||||
|
||||
inline const std::vector<G4int>*
|
||||
G4LossTableBuilder::GetCoupleIndexes()
|
||||
{
|
||||
if(theDensityIdx->size() == 0) { InitialiseCouples(); }
|
||||
return theDensityIdx;
|
||||
}
|
||||
|
||||
inline const std::vector<G4double>*
|
||||
G4LossTableBuilder::GetDensityFactors()
|
||||
{
|
||||
if(theDensityIdx->size() == 0) { InitialiseCouples(); }
|
||||
return theDensityFactor;
|
||||
}
|
||||
|
||||
inline G4bool G4LossTableBuilder::GetFlag(size_t idx) const
|
||||
{
|
||||
return (*theFlag)[idx];
|
||||
}
|
||||
|
||||
inline void G4LossTableBuilder::SetSplineFlag(G4bool flag)
|
||||
{
|
||||
splineFlag = flag;
|
||||
|
||||
Reference in New Issue
Block a user