9 #ifndef THEPEG_MultiColour_H
10 #define THEPEG_MultiColour_H
15 #include "ThePEG/EventRecord/ColourBase.h"
148 #include "ThePEG/Utilities/ClassTraits.h"
157 struct BaseClassTrait<MultiColour,1> {
165 struct ClassTraits<MultiColour>
166 :
public ClassTraitsBase<MultiColour> {
168 static string className() {
return "ThePEG::MultiColour"; }
176 static string library() {
return "MultiColour.so"; }
Ptr< T >::pointer new_ptr()
Simple interface to the PtrTraits
::create()
PersistentIStream is used to read persistent objects from a stream where they were previously written...
This class is used to store colour information of RemnantParticle objects and other particle classes ...
list< cColinePtr > theAntiColourLines
The set of anti-colour lines to which a particle is attached.
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data...
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
tColinePtr antiColourLine() const
Return the anti-colour line to which this particle is connected.
TransientRCPtr is a simple wrapper around a bare pointer which can be assigned to and from an RCPtr a...
tColinePtr colourLine() const
Return the colour line to which this particle is connected.
This is the main namespace within which all identifiers in ThePEG are declared.
static void Init()
The standard Init function used to initialize the interfaces.
virtual void removeAntiColourLine(tcColinePtr line)
Remove the given anti-colour line from the particle.
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
static string library()
The name of a file containing the dynamic library where the class T is implemented.
virtual vector< tcColinePtr > antiColourLines() const
Return the anti-colour lines to which this particle is connected.
RCPtr is a reference counted (smart) pointer.
virtual bool hasColourLine(tcColinePtr line, bool anti=false) const
Return true if the particle is connected to the given (anti-) colour line.
ColourBase is the base class to be used to supply a Particle with information about its colour state...
static ClassDescription< MultiColour > initMultiColour
The static object used to initialize the description of this class.
list< cColinePtr > theColourLines
The set of colour lines to which a particle is attached.
virtual EIPtr clone() const
Standard clone method.
static string className()
Return the name of class T.
int NthBase
The type of the BaseN'th base class (int means there are no further base classes).
virtual void removeColourLine(tcColinePtr line, bool anti=false)
Remove the given (anti-) colour line from the particle.
MultiColour & operator=(const MultiColour &)
The assignment operator is private and must never be called.
virtual vector< tcColinePtr > colourLines() const
Return the colour lines to which this particle is connected.
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.