File: BeamParticleData.h
Description:
BeamParticleData inherits from the
ParticleData class and is used for particles which
have information about their sub-structure implemented as a pointer
to a PDFBase object.
See
also:
namespace Pythia7
CLASS
BeamParticleData:
Base class:
Public members:
inline BeamParticleData();
inline BeamParticleData(const BeamParticleData &);
virtual ~BeamParticleData();
Standard ctors and dtor
static PDPtr Create(long newId, string newPDGName);
Create a Particle which is its own anti-particle.
static PDPair Create(long newId, string newPDGName, string newAntiPDGName);
Create a particle - anti particle pair. Note that setting the
parton density object on this particle does not change the parton
density of the anti particle iven if synchronized() is true.
inline tcPDFPtr pdf() const;
Return a pointer to the parton density object describing the
sub-structure of this particle type.
void persistentOutput(PersistentOStream &) const;
void persistentInput(PersistentIStream &, int);
Standard functions for writing and reading from persistent streams.
static void Init();
Standard Init function used to initialize the interface.
Protected members:
BeamParticleData(long newId, string newPDGName);
Protected constructor only to be used by subclasses or by the
Create method.
virtual PDPtr pdclone() const;
ParticleData clone method
inline virtual void doupdate() throw(UpdateException);
inline virtual void doinit() throw(InitException);
inline virtual void dofinish();
Standard Interfaced virtual functions.
inline virtual void rebind(const TranslationMap & trans)
throw(RebindException);
Change all pointers to Interfaced objects to corresponding clones.
inline virtual IVector getReferences();
Return pointers to all Interfaced objects refered to by this.
Private members:
void setPDF(PDFPtr);
Set the parton density object.
PDFPtr thePDF;
The pointer to the parton density object.
static ClassDescription<BeamParticleData> initBeamParticleData;
BeamParticleData & operator=(const BeamParticleData &);
Private and non-existent assignment operator.
template <>
STRUCT
BaseClassTrait<BeamParticleData,1>
Public members:
typedef ParticleData NthBase;
template <>
STRUCT
ClassTraits<BeamParticleData>:
Public members:
static string className() { return "/Pythia7/BeamParticleData"; }
DEFINED MACROS
PYTHIA7_BeamParticleData_H
INCLUDED FILES
Pythia7/PDT/ParticleData.h
Pythia7/PDF/PDFBase.h
BeamParticleData.xh
BeamParticleData.icc