Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions
G4VSplitableHadron Class Referenceabstract

#include <G4VSplitableHadron.hh>

Inheritance diagram for G4VSplitableHadron:
G4DiffractiveSplitableHadron G4QGSMSplitableHadron

Public Member Functions

 G4VSplitableHadron ()
 
 G4VSplitableHadron (const G4ReactionProduct &aPrimary)
 
 G4VSplitableHadron (const G4Nucleon &aNucleon)
 
 G4VSplitableHadron (const G4VKineticNucleon *aNucleon)
 
virtual ~G4VSplitableHadron ()
 
int operator== (const G4VSplitableHadron &right) const
 
int operator!= (const G4VSplitableHadron &right) const
 
void Set4Momentum (const G4LorentzVector &a4Momentum)
 
const G4LorentzVectorGet4Momentum () const
 
void SetDefinition (G4ParticleDefinition *aDefinition)
 
G4ParticleDefinitionGetDefinition () const
 
void IncrementCollisionCount (G4int aCount)
 
void SetCollisionCount (G4int aCount)
 
void SetTimeOfCreation (G4double aTime)
 
G4double GetTimeOfCreation ()
 
void SetPosition (const G4ThreeVector &aPosition)
 
const G4ThreeVectorGetPosition () const
 
void SetStatus (const G4int aStatus)
 
G4int GetStatus ()
 
virtual void SplitUp ()=0
 
virtual void SetFirstParton (G4int PDGcode)=0
 
virtual void SetSecondParton (G4int PDGcode)=0
 
virtual G4PartonGetNextParton ()=0
 
virtual G4PartonGetNextAntiParton ()=0
 
G4bool IsSplit ()
 
G4int GetSoftCollisionCount ()
 

Protected Member Functions

void Splitting ()
 

Detailed Description

Definition at line 52 of file G4VSplitableHadron.hh.

Constructor & Destructor Documentation

G4VSplitableHadron::G4VSplitableHadron ( )

Definition at line 42 of file G4VSplitableHadron.cc.

43  : theDefinition(NULL), TimeOfCreation(0.), theCollisionCount(0), // Uzhi 8.05.08
44  curStatus(0), isSplit(false) // Uzhi 17.07.09
45 {
46 }
G4VSplitableHadron::G4VSplitableHadron ( const G4ReactionProduct aPrimary)

Definition at line 48 of file G4VSplitableHadron.cc.

References G4ReactionProduct::GetDefinition(), G4ReactionProduct::GetMomentum(), G4ReactionProduct::GetTotalEnergy(), CLHEP::HepLorentzVector::setE(), and CLHEP::HepLorentzVector::setVect().

49  : TimeOfCreation(0.), theCollisionCount(0), // Uzhi 8.05.08
50  curStatus(0), isSplit(false) // Uzhi 17.07.09
51 {
52  theDefinition=aPrimary.GetDefinition();
53  the4Momentum.setVect(aPrimary.GetMomentum());
54  the4Momentum.setE(aPrimary.GetTotalEnergy());
55 }
G4ParticleDefinition * GetDefinition() const
G4double GetTotalEnergy() const
G4ThreeVector GetMomentum() const
void setVect(const Hep3Vector &)
G4VSplitableHadron::G4VSplitableHadron ( const G4Nucleon aNucleon)

Definition at line 57 of file G4VSplitableHadron.cc.

References G4Nucleon::GetMomentum(), G4Nucleon::GetParticleType(), and G4Nucleon::GetPosition().

58 {
59  TimeOfCreation = 0.; // Uzhi 8.05.08
60  theCollisionCount= 0;
61  isSplit = false;
62  theDefinition =aNucleon.GetParticleType();
63  the4Momentum =aNucleon.GetMomentum();
64  thePosition =aNucleon.GetPosition();
65  curStatus = 0; // Uzhi 17.07.09
66 }
const G4LorentzVector & GetMomentum() const
Definition: G4Nucleon.hh:71
virtual const G4ThreeVector & GetPosition() const
Definition: G4Nucleon.hh:68
G4ParticleDefinition * GetParticleType() const
Definition: G4Nucleon.hh:84
G4VSplitableHadron::G4VSplitableHadron ( const G4VKineticNucleon aNucleon)

Definition at line 68 of file G4VSplitableHadron.cc.

References G4VKineticNucleon::Get4Momentum(), G4VKineticNucleon::GetDefinition(), and G4VKineticNucleon::GetPosition().

69 {
70  TimeOfCreation = 0.; // Uzhi 8.05.08
71  theCollisionCount= 0;
72  isSplit = false;
73  theDefinition =aNucleon->GetDefinition();
74  the4Momentum =aNucleon->Get4Momentum();
75  thePosition =aNucleon->GetPosition();
76  curStatus = 0; // Uzhi 17.07.09
77 }
virtual const G4ThreeVector & GetPosition() const =0
virtual const G4LorentzVector & Get4Momentum() const =0
virtual G4ParticleDefinition * GetDefinition() const =0
G4VSplitableHadron::~G4VSplitableHadron ( )
virtual

Definition at line 91 of file G4VSplitableHadron.cc.

92 {
93 }

Member Function Documentation

const G4LorentzVector & G4VSplitableHadron::Get4Momentum ( ) const
inline
G4ParticleDefinition * G4VSplitableHadron::GetDefinition ( ) const
inline
virtual G4Parton* G4VSplitableHadron::GetNextAntiParton ( )
pure virtual
virtual G4Parton* G4VSplitableHadron::GetNextParton ( )
pure virtual
const G4ThreeVector & G4VSplitableHadron::GetPosition ( void  ) const
inline
G4int G4VSplitableHadron::GetSoftCollisionCount ( )
inline

Definition at line 117 of file G4VSplitableHadron.hh.

Referenced by G4QGSMSplitableHadron::SplitUp().

118 {
119 return theCollisionCount;
120 }
G4int G4VSplitableHadron::GetStatus ( )
inline

Definition at line 177 of file G4VSplitableHadron.hh.

Referenced by G4DiffractiveExcitation::CreateStrings(), and G4DiffractiveExcitation::ExciteParticipants().

178 {
179  return curStatus;
180 }
G4double G4VSplitableHadron::GetTimeOfCreation ( )
inline

Definition at line 157 of file G4VSplitableHadron.hh.

Referenced by G4FTFAnnihilation::Annihilate(), G4DiffractiveExcitation::CreateStrings(), and G4ElasticHNScattering::ElasticScattering().

158 {
159  return TimeOfCreation;
160 }
void G4VSplitableHadron::IncrementCollisionCount ( G4int  aCount)
inline
G4bool G4VSplitableHadron::IsSplit ( )
inline

Definition at line 90 of file G4VSplitableHadron.hh.

Referenced by G4DiffractiveSplitableHadron::SplitUp(), and G4QGSMSplitableHadron::SplitUp().

90 { return isSplit;}
int G4VSplitableHadron::operator!= ( const G4VSplitableHadron right) const

Definition at line 108 of file G4VSplitableHadron.cc.

References right.

109 {
110  return this!=&right;
111 }
int G4VSplitableHadron::operator== ( const G4VSplitableHadron right) const

Definition at line 103 of file G4VSplitableHadron.cc.

References right.

104 {
105  return this==&right;
106 }
void G4VSplitableHadron::Set4Momentum ( const G4LorentzVector a4Momentum)
inline
void G4VSplitableHadron::SetCollisionCount ( G4int  aCount)
inline

Definition at line 122 of file G4VSplitableHadron.hh.

123 {
124  theCollisionCount = aCount;
125 }
void G4VSplitableHadron::SetDefinition ( G4ParticleDefinition aDefinition)
inline

Definition at line 137 of file G4VSplitableHadron.hh.

Referenced by G4DiffractiveExcitation::ExciteParticipants().

138 {
139  theDefinition=aDefinition;
140 }
virtual void G4VSplitableHadron::SetFirstParton ( G4int  PDGcode)
pure virtual
void G4VSplitableHadron::SetPosition ( const G4ThreeVector aPosition)
inline
virtual void G4VSplitableHadron::SetSecondParton ( G4int  PDGcode)
pure virtual
void G4VSplitableHadron::SetStatus ( const G4int  aStatus)
inline

Definition at line 172 of file G4VSplitableHadron.hh.

Referenced by G4FTFAnnihilation::Annihilate(), G4DiffractiveExcitation::ExciteParticipants(), and G4FTFParticipants::GetList().

173 {
174  curStatus=aStatus;
175 }
void G4VSplitableHadron::SetTimeOfCreation ( G4double  aTime)
inline

Definition at line 152 of file G4VSplitableHadron.hh.

Referenced by G4FTFAnnihilation::Annihilate(), G4ElasticHNScattering::ElasticScattering(), and G4FTFParticipants::ShiftInteractionTime().

153 {
154  TimeOfCreation=aTime;
155 }
void G4VSplitableHadron::Splitting ( )
inlineprotected

Definition at line 95 of file G4VSplitableHadron.hh.

Referenced by G4DiffractiveSplitableHadron::SplitUp(), and G4QGSMSplitableHadron::SplitUp().

95 {isSplit = true;}
void G4VSplitableHadron::SplitUp ( )
pure virtual

The documentation for this class was generated from the following files: