47#ifndef G4IONDEDXHANDLER_HH
48#define G4IONDEDXHANDLER_HH
84 G4int maxCacheSize = 5,
111 G4int atomicNumberIon,
122 G4bool logScaleEnergy =
true);
159 typedef std::pair<G4int, const G4Material*>
G4IonKey;
177 typedef std::pair<const G4ParticleDefinition*, const G4Material*>
G4CacheKey;
struct CacheValue G4CacheValue
std::map< G4IonKey, G4PhysicsVector * > DEDXTable
void PrintDEDXTable(const G4ParticleDefinition *, const G4Material *, G4double, G4double, G4int, G4bool logScaleEnergy=true)
std::pair< const G4ParticleDefinition *, const G4Material * > G4CacheKey
DEDXTable stoppingPowerTable
G4IonDEDXHandler & operator=(const G4IonDEDXHandler &r)=delete
CacheIterPointerMap cacheKeyPointers
G4bool BuildDEDXTable(const G4ParticleDefinition *, const G4Material *)
std::map< G4CacheKey, void * > CacheIterPointerMap
CacheEntryList cacheEntries
struct G4IonDEDXHandler::CacheEntry G4CacheEntry
G4IonDEDXHandler(G4VIonDEDXTable *tables, G4VIonDEDXScalingAlgorithm *algorithm, const G4String &name, G4int maxCacheSize=5, G4bool splines=true)
G4bool IsApplicable(const G4ParticleDefinition *, const G4Material *)
std::pair< G4int, const G4Material * > G4IonKey
G4CacheValue UpdateCacheValue(const G4ParticleDefinition *, const G4Material *)
G4double GetLowerEnergyEdge(const G4ParticleDefinition *, const G4Material *)
G4VIonDEDXScalingAlgorithm * algorithm
std::list< G4CacheEntry > CacheEntryList
DEDXTableBraggRule stoppingPowerTableBragg
std::map< G4IonKey, G4PhysicsVector * > DEDXTableBraggRule
G4IonDEDXHandler(const G4IonDEDXHandler &)=delete
G4double GetUpperEnergyEdge(const G4ParticleDefinition *, const G4Material *)
G4double GetDEDX(const G4ParticleDefinition *, const G4Material *, G4double)
G4CacheValue GetCacheValue(const G4ParticleDefinition *, const G4Material *)
const char * name(G4int ptype)
G4PhysicsVector * dedxVector