Geant4-11
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
G4VSplitableHadron Class Referenceabstract

#include <G4VSplitableHadron.hh>

Inheritance diagram for G4VSplitableHadron:
G4DiffractiveSplitableHadron G4QGSMSplitableHadron

Public Member Functions

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

Protected Member Functions

void Splitting ()
 

Private Member Functions

 G4VSplitableHadron (const G4VSplitableHadron &right)
 
const G4VSplitableHadronoperator= (const G4VSplitableHadron &right)
 

Private Attributes

G4int curStatus
 
G4bool isSplit
 
G4LorentzVector the4Momentum
 
G4int theCollisionCount
 
const G4ParticleDefinitiontheDefinition
 
G4ThreeVector thePosition
 
G4double TimeOfCreation
 

Detailed Description

Definition at line 52 of file G4VSplitableHadron.hh.

Constructor & Destructor Documentation

◆ G4VSplitableHadron() [1/5]

G4VSplitableHadron::G4VSplitableHadron ( )

Definition at line 41 of file G4VSplitableHadron.cc.

◆ G4VSplitableHadron() [2/5]

G4VSplitableHadron::G4VSplitableHadron ( const G4ReactionProduct aPrimary)

◆ G4VSplitableHadron() [3/5]

G4VSplitableHadron::G4VSplitableHadron ( const G4Nucleon aNucleon)

Definition at line 54 of file G4VSplitableHadron.cc.

55{
56 TimeOfCreation = 0.;
58 isSplit = false;
59 theDefinition = aNucleon.GetParticleType();
60 the4Momentum = aNucleon.GetMomentum();
61 thePosition = aNucleon.GetPosition();
62 curStatus = 0;
63}
const G4ThreeVector & GetPosition() const
Definition: G4Nucleon.hh:140
const G4ParticleDefinition * GetParticleType() const
Definition: G4Nucleon.hh:85
const G4LorentzVector & GetMomentum() const
Definition: G4Nucleon.hh:71

References curStatus, G4Nucleon::GetMomentum(), G4Nucleon::GetParticleType(), G4Nucleon::GetPosition(), isSplit, the4Momentum, theCollisionCount, theDefinition, thePosition, and TimeOfCreation.

◆ G4VSplitableHadron() [4/5]

G4VSplitableHadron::G4VSplitableHadron ( const G4VKineticNucleon aNucleon)

Definition at line 65 of file G4VSplitableHadron.cc.

66{
67 TimeOfCreation = 0.;
69 isSplit = false;
70 theDefinition = aNucleon->GetDefinition();
71 the4Momentum = aNucleon->Get4Momentum();
72 thePosition = aNucleon->GetPosition();
73 curStatus = 0;
74}
virtual const G4ParticleDefinition * GetDefinition() const =0
virtual const G4ThreeVector & GetPosition() const =0
virtual const G4LorentzVector & Get4Momentum() const =0

References curStatus, G4VKineticNucleon::Get4Momentum(), G4VKineticNucleon::GetDefinition(), G4VKineticNucleon::GetPosition(), isSplit, the4Momentum, theCollisionCount, theDefinition, thePosition, and TimeOfCreation.

◆ ~G4VSplitableHadron()

G4VSplitableHadron::~G4VSplitableHadron ( )
virtual

Definition at line 88 of file G4VSplitableHadron.cc.

89{
90}

◆ G4VSplitableHadron() [5/5]

G4VSplitableHadron::G4VSplitableHadron ( const G4VSplitableHadron right)
private

Definition at line 76 of file G4VSplitableHadron.cc.

77{
78 TimeOfCreation = 0.;
80 isSplit = false;
82 the4Momentum = right.Get4Momentum();
83 thePosition = right.GetPosition();
84 curStatus = 0;
85}
const G4ParticleDefinition * GetDefinition() const
const G4LorentzVector & Get4Momentum() const
const G4ThreeVector & GetPosition() const

References curStatus, Get4Momentum(), GetDefinition(), GetPosition(), isSplit, the4Momentum, theCollisionCount, theDefinition, thePosition, and TimeOfCreation.

Member Function Documentation

◆ Get4Momentum()

const G4LorentzVector & G4VSplitableHadron::Get4Momentum ( ) const
inline

◆ GetDefinition()

const G4ParticleDefinition * G4VSplitableHadron::GetDefinition ( ) const
inline

◆ GetNextAntiParton()

virtual G4Parton * G4VSplitableHadron::GetNextAntiParton ( )
pure virtual

◆ GetNextParton()

virtual G4Parton * G4VSplitableHadron::GetNextParton ( )
pure virtual

◆ GetPosition()

const G4ThreeVector & G4VSplitableHadron::GetPosition ( void  ) const
inline

◆ GetSoftCollisionCount()

G4int G4VSplitableHadron::GetSoftCollisionCount ( )
inline

◆ GetStatus()

G4int G4VSplitableHadron::GetStatus ( )
inline

◆ GetTimeOfCreation()

G4double G4VSplitableHadron::GetTimeOfCreation ( )
inline

◆ IncrementCollisionCount()

void G4VSplitableHadron::IncrementCollisionCount ( G4int  aCount)
inline

◆ IsSplit()

G4bool G4VSplitableHadron::IsSplit ( )
inline

Definition at line 88 of file G4VSplitableHadron.hh.

88{ return isSplit;}

References isSplit.

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

◆ operator!=()

G4bool G4VSplitableHadron::operator!= ( const G4VSplitableHadron right) const

Definition at line 106 of file G4VSplitableHadron.cc.

107{
108 return this!=&right;
109}

◆ operator=()

const G4VSplitableHadron & G4VSplitableHadron::operator= ( const G4VSplitableHadron right)
private

Definition at line 93 of file G4VSplitableHadron.cc.

94{
95 throw G4HadronicException(__FILE__, __LINE__,
96 "G4VSplitableHadron::operator= meant to not be accessible");
97 return *this;
98}

◆ operator==()

G4bool G4VSplitableHadron::operator== ( const G4VSplitableHadron right) const

Definition at line 101 of file G4VSplitableHadron.cc.

102{
103 return this==&right;
104}

◆ Set4Momentum()

void G4VSplitableHadron::Set4Momentum ( const G4LorentzVector a4Momentum)
inline

◆ SetCollisionCount()

void G4VSplitableHadron::SetCollisionCount ( G4int  aCount)
inline

◆ SetDefinition()

void G4VSplitableHadron::SetDefinition ( const G4ParticleDefinition aDefinition)
inline

◆ SetFirstParton()

virtual void G4VSplitableHadron::SetFirstParton ( G4int  PDGcode)
pure virtual

◆ SetPosition()

void G4VSplitableHadron::SetPosition ( const G4ThreeVector aPosition)
inline

◆ SetSecondParton()

virtual void G4VSplitableHadron::SetSecondParton ( G4int  PDGcode)
pure virtual

◆ SetStatus()

void G4VSplitableHadron::SetStatus ( const G4int  aStatus)
inline

◆ SetTimeOfCreation()

void G4VSplitableHadron::SetTimeOfCreation ( G4double  aTime)
inline

◆ Splitting()

void G4VSplitableHadron::Splitting ( )
inlineprotected

Definition at line 93 of file G4VSplitableHadron.hh.

93{isSplit = true;}

References isSplit.

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

◆ SplitUp()

void G4VSplitableHadron::SplitUp ( )
pure virtual

Field Documentation

◆ curStatus

G4int G4VSplitableHadron::curStatus
private

Definition at line 108 of file G4VSplitableHadron.hh.

Referenced by G4VSplitableHadron(), GetStatus(), and SetStatus().

◆ isSplit

G4bool G4VSplitableHadron::isSplit
private

Definition at line 109 of file G4VSplitableHadron.hh.

Referenced by G4VSplitableHadron(), IsSplit(), and Splitting().

◆ the4Momentum

G4LorentzVector G4VSplitableHadron::the4Momentum
private

Definition at line 102 of file G4VSplitableHadron.hh.

Referenced by G4VSplitableHadron(), Get4Momentum(), and Set4Momentum().

◆ theCollisionCount

G4int G4VSplitableHadron::theCollisionCount
private

◆ theDefinition

const G4ParticleDefinition* G4VSplitableHadron::theDefinition
private

Definition at line 100 of file G4VSplitableHadron.hh.

Referenced by G4VSplitableHadron(), GetDefinition(), and SetDefinition().

◆ thePosition

G4ThreeVector G4VSplitableHadron::thePosition
private

Definition at line 105 of file G4VSplitableHadron.hh.

Referenced by G4VSplitableHadron(), GetPosition(), and SetPosition().

◆ TimeOfCreation

G4double G4VSplitableHadron::TimeOfCreation
private

Definition at line 104 of file G4VSplitableHadron.hh.

Referenced by G4VSplitableHadron(), GetTimeOfCreation(), and SetTimeOfCreation().


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