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; }
166 { theCreatorModel = mod; }
169 {
return theCreatorModel; }
175 {
return NewlyAdded; }
181 {
return MayBeKilled; }
191 positionInNucleus.
setX(x);
192 positionInNucleus.
setY(y);
193 positionInNucleus.
setZ(z);
198 positionInNucleus = aPosition;
221 G4bool hasInitialStateParton;
238 G4int theCreatorModel;
G4DLLIMPORT G4Allocator< G4ReactionProduct > *& aRPAllocator()
void SetMomentum(const G4double x, const G4double y, const G4double z)
void SetTotalEnergy(const G4double en)
G4double GetTotalMomentum() const
G4double GetKineticEnergy() const
const G4ParticleDefinition * GetDefinition() const
void SetPositionInNucleus(G4ThreeVector &aPosition)
G4double GetTotalEnergy() const
G4double GetZPositionInNucleus() const
void HasInitialStateParton(G4bool aFlag)
void SetMayBeKilled(const G4bool f)
G4ThreeVector GetPositionInNucleus() const
G4bool GetNewlyAdded() const
G4double GetXPositionInNucleus() const
friend G4ReactionProduct operator+(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
void SetNewlyAdded(const G4bool f)
G4double GetYPositionInNucleus() const
G4ThreeVector GetMomentum() const
void SetSide(const G4int sid)
void SetMomentum(const G4ThreeVector &mom)
friend G4ReactionProduct operator-(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
G4ReactionProduct & operator=(const G4ReactionProduct &right)
G4bool HasInitialStateParton() const
G4bool operator!=(const G4ReactionProduct &right) const
void SetPositionInNucleus(G4double x, G4double y, G4double z)
void SetCreatorModel(const G4int mod)
void Lorentz(const G4ReactionProduct &p1, const G4ReactionProduct &p2)
void SetDefinitionAndUpdateE(const G4ParticleDefinition *aParticleDefinition)
void SetDefinition(const G4ParticleDefinition *aParticleDefinition)
void SetKineticEnergy(const G4double en)
void SetTOF(const G4double t)
G4double GetFormationTime() const
friend G4ReactionProduct operator*(const G4double aDouble, const G4ReactionProduct &p2)
G4bool operator==(const G4ReactionProduct &right) const
G4double Angle(const G4ReactionProduct &p) const
void SetFormationTime(G4double aTime)
G4int GetCreatorModel() const
G4bool GetMayBeKilled() const
void SetMass(const G4double mas)