35 #ifndef G4VLongitudinalStringDecay_h
36 #define G4VLongitudinalStringDecay_h 1
71 typedef std::pair<G4ParticleDefinition*, G4ParticleDefinition*>
pDefPair;
80 Pcreate build=0, pDefPair * pdefs=0);
129 G4int PartonEncoding,
int operator!=(const G4VLongitudinalStringDecay &right) const
G4ParticleDefinition *(G4HadronBuilder::* Pcreate)(G4ParticleDefinition *, G4ParticleDefinition *)
G4double GetDiquarkBreakProb()
G4ParticleDefinition * QuarkSplitup(G4ParticleDefinition *decay, G4ParticleDefinition *&created)
virtual G4double GetLightConeZ(G4double zmin, G4double zmax, G4int PartonEncoding, G4ParticleDefinition *pHadron, G4double Px, G4double Py)=0
CLHEP::Hep3Vector G4ThreeVector
G4ExcitedString * CPExcited(const G4ExcitedString &string)
void SetStrangenessSuppression(G4double aValue)
G4int StringLoopInterrupt
virtual G4KineticTrackVector * FragmentString(const G4ExcitedString &theString)=0
G4int ClusterLoopInterrupt
G4ThreeVector SampleQuarkPt(G4double ptMax=-1.)
std::vector< G4double > vectorMesonMix
G4double FragmentationMass(const G4FragmentingString *const string, Pcreate build=0, pDefPair *pdefs=0)
virtual void SetMassCut(G4double aValue)
G4VLongitudinalStringDecay()
G4int SampleQuarkFlavor(void)
virtual G4bool StopFragmenting(const G4FragmentingString *const string)=0
G4KineticTrackVector * DecayResonans(G4KineticTrackVector *aHadrons)
virtual ~G4VLongitudinalStringDecay()
pDefPair CreatePartonPair(G4int NeedParticle, G4bool AllowDiquarks=true)
void SetStringTensionParameter(G4double aValue)
const G4VLongitudinalStringDecay & operator=(const G4VLongitudinalStringDecay &right)
void SetDiquarkBreakProbability(G4double aValue)
G4double GetStrangeSuppress()
G4ParticleDefinition * CreateHadron(G4int id1, G4int id2, G4bool theGivenSpin, G4int theSpin)
ParticleList decay(Cluster *const c)
Carries out a cluster decay.
G4KineticTrackVector * LightFragmentationTest(const G4ExcitedString *const theString)
std::pair< G4ParticleDefinition *, G4ParticleDefinition * > pDefPair
G4ParticleDefinition * FindParticle(G4int Encoding)
virtual void Sample4Momentum(G4LorentzVector *Mom, G4double Mass, G4LorentzVector *AntiMom, G4double AntiMass, G4double InitialMass)=0
G4double GetClusterMass()
std::vector< G4double > scalarMesonMix
virtual G4bool IsFragmentable(const G4FragmentingString *const string)=0
int operator==(const G4VLongitudinalStringDecay &right) const
virtual G4bool SplitLast(G4FragmentingString *string, G4KineticTrackVector *LeftVector, G4KineticTrackVector *RightVector)=0
void SetVectorMesonProbability(G4double aValue)
G4double GetDiquarkSuppress()
G4double GetStringTensionParameter()
G4HadronBuilder * hadronizer
void SetVectorMesonMixings(std::vector< G4double > aVector)
void SetSpinThreeHalfBarionProbability(G4double aValue)
G4double DiquarkBreakProb
void SetSigmaTransverseMomentum(G4double aQT)
G4int GetClusterLoopInterrupt()
virtual G4ParticleDefinition * DiQuarkSplitup(G4ParticleDefinition *decay, G4ParticleDefinition *&created)=0
void SetScalarMesonMixings(std::vector< G4double > aVector)
void CalculateHadronTimePosition(G4double theInitialStringMass, G4KineticTrackVector *)
virtual G4LorentzVector * SplitEandP(G4ParticleDefinition *pHadron, G4FragmentingString *string, G4FragmentingString *newString)=0
G4KineticTrack * Splitup(G4FragmentingString *string, G4FragmentingString *&newString)
void SetDiquarkSuppression(G4double aValue)
CLHEP::HepLorentzVector G4LorentzVector