34 #ifndef G4ReactionProduct_h
35 #define G4ReactionProduct_h 1
47 #if defined G4HADRONIC_ALLOC_EXPORT
82 inline void*
operator new(size_t) {
87 inline void*
operator new(size_t,
void *
p) {
91 inline void operator delete(
void* aReactionProduct) {
108 {
return theParticleDefinition; }
127 {
return std::sqrt(std::abs(kineticEnergy*(totalEnergy+mass))); }
130 {
return totalEnergy; }
135 totalEnergy = kineticEnergy + mass;
139 {
return kineticEnergy; }
144 kineticEnergy = totalEnergy - mass;
154 { timeOfFlight = t; }
157 {
return timeOfFlight; }
169 {
return NewlyAdded; }
175 {
return MayBeKilled; }
185 positionInNucleus.
setX(x);
186 positionInNucleus.
setY(y);
187 positionInNucleus.
setZ(z);
192 positionInNucleus = aPosition;
208 #ifdef PRECOMPOUND_TEST
209 void SetCreatorModel(
const G4String& aModel) { theCreatorModel = aModel; }
210 G4String GetCreatorModel()
const {
return theCreatorModel; }
220 G4bool hasInitialStateParton;
242 #ifdef PRECOMPOUND_TEST
void SetPositionInNucleus(G4double x, G4double y, G4double z)
void HasInitialStateParton(G4bool aFlag)
G4double GetTotalMomentum() const
void Lorentz(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
void SetMayBeKilled(const G4bool f)
void SetKineticEnergy(const G4double en)
void SetMomentum(const G4double x, const G4double y, const G4double z)
G4bool GetMayBeKilled() const
void SetSide(const G4int sid)
G4double GetZPositionInNucleus() const
friend G4ReactionProduct operator-(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
G4double GetXPositionInNucleus() const
void SetDefinitionAndUpdateE(G4ParticleDefinition *aParticleDefinition)
G4bool operator!=(const G4ReactionProduct &right) const
G4double Angle(const G4ReactionProduct &p) const
G4ParticleDefinition * GetDefinition() const
void SetNewlyAdded(const G4bool f)
G4ReactionProduct & operator=(const G4ReactionProduct &right)
G4bool operator==(const G4ReactionProduct &right) const
void SetMass(const G4double mas)
void SetTotalEnergy(const G4double en)
G4DLLIMPORT G4ThreadLocal G4Allocator< G4ReactionProduct > * aRPAllocator
friend G4ReactionProduct operator*(const G4double aDouble, const G4ReactionProduct &p2)
G4double GetKineticEnergy() const
G4double GetFormationTime() const
void SetMomentum(const G4ThreeVector &mom)
G4double GetTotalEnergy() const
void SetDefinition(G4ParticleDefinition *aParticleDefinition)
friend G4ReactionProduct operator+(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
G4ThreeVector GetPositionInNucleus() const
G4ThreeVector GetMomentum() const
G4bool GetNewlyAdded() const
void SetTOF(const G4double t)
G4bool HasInitialStateParton() const
void SetFormationTime(G4double aTime)
void SetPositionInNucleus(G4ThreeVector &aPosition)
G4double GetYPositionInNucleus() const