31G4BaryonWidth* G4ConcreteMesonBaryonToResonance::baryonWidth =
nullptr;
39G4BaryonWidth & G4ConcreteMesonBaryonToResonance::theBaryonWidth()
41 if(!baryonWidth) { G4ConcreteMesonBaryonToResonance::InitialisePointers(); }
47 if(!baryonPartialWidth) { G4ConcreteMesonBaryonToResonance::InitialisePointers(); }
48 return *baryonPartialWidth;
53 if(!particleTypeConverter) { G4ConcreteMesonBaryonToResonance::InitialisePointers(); }
54 return *particleTypeConverter;
61 : thePrimary1(aPrimary), thePrimary2(bPrimary), theSecondary(aSecondary)
65 theBaryonPartialWidth(),
72 delete crossSectionSource;
75void G4ConcreteMesonBaryonToResonance::InitialisePointers()
95 if (myConv().GetGenericType(trk1)==myConv().GetGenericType(thePrimary1) &&
96 myConv().GetGenericType(trk2)==myConv().GetGenericType(thePrimary2))
return true;
97 if (myConv().GetGenericType(trk1)==myConv().GetGenericType(thePrimary2) &&
98 myConv().GetGenericType(trk2)==myConv().GetGenericType(thePrimary1))
return true;
107 if ( (state = myConv().FindIso3State(myConv().GetGenericType(theSecondary), secondaryIso3)) == NULL)
110 throw G4HadronicException(__FILE__, __LINE__,
"G4ConcreteMesonBaryonToResonance: Can't find iso3 state!");
#define G4MUTEX_INITIALIZER
#define G4MUTEXLOCK(mutex)
#define G4MUTEXUNLOCK(mutex)
G4GLOB_DLL std::ostream G4cerr
virtual const G4ParticleDefinition * GetOutgoingParticle(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
virtual ~G4ConcreteMesonBaryonToResonance()
virtual G4bool IsInCharge(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
G4ConcreteMesonBaryonToResonance(const G4ParticleDefinition *aPrimary, const G4ParticleDefinition *bPriamry, const G4ParticleDefinition *aSecondary, const G4String &partWidthLabel)
const G4ParticleDefinition * GetDefinition() const
G4int GetPDGiIsospin3() const
GenericType GetGenericType(const G4ParticleDefinition *const aParticleDef) const