18#ifndef BDSHITCOLLIMATOR_H
19#define BDSHITCOLLIMATOR_H
23#include "G4ThreeVector.hh"
24#include "G4THitsCollection.hh"
25#include "G4Allocator.hh"
43 G4int collimatorIndexIn,
44 const G4ThreeVector& preStepPositionIn,
45 const G4ThreeVector& preStepMomentumIn,
46 G4double totalEnergyIn,
47 G4double globalTimeIn,
57 inline void*
operator new(size_t);
58 inline void operator delete(
void* aHit);
78extern G4Allocator<BDSHitCollimator> BDSAllocatorCollimator;
80inline void* BDSHitCollimator::operator
new(size_t)
83 aHit=(
void*) BDSAllocatorCollimator.MallocSingle();
87inline void BDSHitCollimator::operator
delete(
void* aHit)
A vector of BDSBeamlineElement instances - a beamline.
Snapshot of information for particle passing through a collimator.
G4double totalEnergy
Total energy of particle.
virtual ~BDSHitCollimator()
Note this should not be inline when we use a G4Allocator.
G4int parentID
Track ID of the parent of the particle.
G4ThreeVector preStepMomentum
Local pre step point momentum.
G4int turnsTaken
Turn number of the hit.
G4double globalTime
Pre step point global time.
G4int collimatorIndex
Index of collimator the hit is in.
G4double weight
Statistical weight of the track.
G4int partID
PDG ID of the particle.
const BDSBeamline * beamline
Which beam line the collimator is in.
BDSHitEnergyDeposition * energyDepositionHit
G4ThreeVector preStepPosition
Local pre step point (z from centre of object).
Information recorded for a single piece of energy deposition.