51 #ifndef G4LossTableBuilder_h
52 #define G4LossTableBuilder_h 1
72 const std::vector<G4PhysicsTable*>&);
77 G4bool isIonisation =
false);
82 G4bool isIonisation =
false);
108 void InitialiseCouples();
116 std::vector<G4double>* theDensityFactor;
117 std::vector<G4int>* theDensityIdx;
118 std::vector<G4bool>* theFlag;
122 inline const std::vector<G4int>*
125 if(theDensityIdx->size() == 0) { InitialiseCouples(); }
126 return theDensityIdx;
129 inline const std::vector<G4double>*
132 if(theDensityIdx->size() == 0) { InitialiseCouples(); }
133 return theDensityFactor;
138 return (*theFlag)[idx];
148 isInitialized = flag;
void BuildRangeTable(const G4PhysicsTable *dedxTable, G4PhysicsTable *rangeTable, G4bool isIonisation=false)
const std::vector< G4double > * GetDensityFactors()
G4PhysicsTable * BuildTableForModel(G4PhysicsTable *table, G4VEmModel *model, const G4ParticleDefinition *, G4double emin, G4double emax, G4bool spline)
G4bool GetFlag(size_t idx) const
void SetInitialisationFlag(G4bool flag)
const XML_Char XML_Content * model
virtual ~G4LossTableBuilder()
void BuildInverseRangeTable(const G4PhysicsTable *rangeTable, G4PhysicsTable *invRangeTable, G4bool isIonisation=false)
void BuildDEDXTable(G4PhysicsTable *dedxTable, const std::vector< G4PhysicsTable * > &)
void InitialiseBaseMaterials(G4PhysicsTable *table)
void SetSplineFlag(G4bool flag)
const std::vector< G4int > * GetCoupleIndexes()