Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4QGSMSplitableHadron Class Reference

#include <G4QGSMSplitableHadron.hh>

+ Inheritance diagram for G4QGSMSplitableHadron:

Public Member Functions

 G4QGSMSplitableHadron ()
 
 G4QGSMSplitableHadron (const G4ReactionProduct &aPrimary)
 
 G4QGSMSplitableHadron (const G4ReactionProduct &aPrimary, G4bool Direction)
 
 G4QGSMSplitableHadron (const G4Nucleon &aNucleon)
 
 G4QGSMSplitableHadron (const G4Nucleon &aNucleon, G4bool Direction)
 
virtual ~G4QGSMSplitableHadron ()
 
virtual void SplitUp ()
 
virtual void SetFirstParton (G4int PDGcode)
 
virtual void SetSecondParton (G4int PDGcode)
 
virtual G4PartonGetNextParton ()
 
virtual G4PartonGetNextAntiParton ()
 
- Public Member Functions inherited from G4VSplitableHadron
 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 ()
 

Additional Inherited Members

- Protected Member Functions inherited from G4VSplitableHadron
void Splitting ()
 

Detailed Description

Definition at line 41 of file G4QGSMSplitableHadron.hh.

Constructor & Destructor Documentation

◆ G4QGSMSplitableHadron() [1/5]

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( )

Definition at line 72 of file G4QGSMSplitableHadron.cc.

73{
74 InitParameters();
75}

◆ G4QGSMSplitableHadron() [2/5]

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4ReactionProduct aPrimary)

Definition at line 85 of file G4QGSMSplitableHadron.cc.

86: G4VSplitableHadron(aPrimary)
87{
88 InitParameters();
89}

◆ G4QGSMSplitableHadron() [3/5]

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4ReactionProduct aPrimary,
G4bool  Direction 
)

Definition at line 77 of file G4QGSMSplitableHadron.cc.

78:G4VSplitableHadron(aPrimary)
79{
80 InitParameters();
81 Direction = aDirection;
82}

◆ G4QGSMSplitableHadron() [4/5]

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4Nucleon aNucleon)

Definition at line 91 of file G4QGSMSplitableHadron.cc.

92: G4VSplitableHadron(aNucleon)
93{
94 InitParameters();
95}

◆ G4QGSMSplitableHadron() [5/5]

G4QGSMSplitableHadron::G4QGSMSplitableHadron ( const G4Nucleon aNucleon,
G4bool  Direction 
)

Definition at line 97 of file G4QGSMSplitableHadron.cc.

98: G4VSplitableHadron(aNucleon)
99{
100 InitParameters();
101 Direction = aDirection;
102}

◆ ~G4QGSMSplitableHadron()

G4QGSMSplitableHadron::~G4QGSMSplitableHadron ( )
virtual

Definition at line 104 of file G4QGSMSplitableHadron.cc.

104{}

Member Function Documentation

◆ GetNextAntiParton()

G4Parton * G4QGSMSplitableHadron::GetNextAntiParton ( )
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 103 of file G4QGSMSplitableHadron.hh.

104{
105 if(AntiColor.size() == 0) return 0;
106 G4Parton * result = AntiColor.front();
107 AntiColor.pop_front();
108 return result;
109}

◆ GetNextParton()

G4Parton * G4QGSMSplitableHadron::GetNextParton ( )
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 95 of file G4QGSMSplitableHadron.hh.

96{
97 if(Color.size()==0) return 0;
98 G4Parton * result = Color.back();
99 Color.pop_back();
100 return result;
101}

◆ SetFirstParton()

void G4QGSMSplitableHadron::SetFirstParton ( G4int  PDGcode)
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 111 of file G4QGSMSplitableHadron.hh.

112{PDGcode++;}

◆ SetSecondParton()

void G4QGSMSplitableHadron::SetSecondParton ( G4int  PDGcode)
inlinevirtual

Implements G4VSplitableHadron.

Definition at line 113 of file G4QGSMSplitableHadron.hh.

114{PDGcode++;}

◆ SplitUp()

void G4QGSMSplitableHadron::SplitUp ( )
virtual

Implements G4VSplitableHadron.

Definition at line 110 of file G4QGSMSplitableHadron.cc.

111{
112 if (IsSplit()) return;
113 Splitting();
114 if (Color.size()!=0) return;
115 if (GetSoftCollisionCount() == 0)
116 {
117 DiffractiveSplitUp();
118 }
119 else
120 {
121 SoftSplitUp();
122 }
123}

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