The Event class contains all Particles produced in the generation of an event. More...
#include <Event.h>
Public Types | |
typedef map< tcColinePtr, int > | ColourLineMap |
Map colour lines to indices. More... | |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
typedef unsigned int | CounterType |
The integer type used for counting. | |
Public Member Functions | |
Event (const PPair &newIncoming, tcEventBasePtr newHandler=tcEventBasePtr(), string newName="", long newNumber=-1, double weight=1.0) | |
The standard constructor for an Event takes as arguments a pair of colliding particles (corresponding to the primary collision in case of multiple collisions in an event). More... | |
Event (const Event &) | |
The copy constructor. | |
~Event () | |
The destructor. | |
EventPtr | clone () const |
Returns a full clone of this Event. More... | |
tcEventBasePtr | handler () const |
Return a pointer to the EventHandler which produced this Event. More... | |
tCollPtr | newCollision () |
Create a new Collision in this event and return a pointer to it. | |
tStepPtr | newStep () |
Create a new Step in the current Collision, which is a copy of the last Step (if any) and return a pointer to it. More... | |
void | transform (const LorentzRotation &) |
Transform all particles in this Event. | |
long | number () const |
Return the number assigned to this Event. More... | |
int | colourLineIndex (tcColinePtr) const |
Return the index of the given colour line. | |
double | weight () const |
Return the weight associated with this event. | |
double | optionalWeight (const string &name) const |
Return an optional named weight associated to this event. More... | |
const map< string, double > & | optionalWeights () const |
Return the optional named weights associated to this event. | |
void | printGraphviz () const |
Print this Event in Graphviz format on the standard output. | |
void | weight (double w) |
Set the weight associated with this event. | |
void | optionalWeight (const string &name, double value) |
Set an optional named weight associated to this event. | |
map< string, double > & | optionalWeights () |
Access the optional named weights associated to this event. | |
void | setInfo (tcEventBasePtr newHandler, string newName, long newNumber, double weight) |
Set event info. | |
void | addCollision (tCollPtr c) |
Add a collision to this Event. | |
void | primaryCollision (tCollPtr c) |
Set the primary collision in this Event. | |
void | persistentOutput (PersistentOStream &) const |
Standard function for writing to a persistent stream. | |
void | persistentInput (PersistentIStream &, int) |
Standard functions for reading from a persistent stream. | |
virtual void | debugme () const |
Print out debugging information for this object on std::cerr. More... | |
Functions for accessing particles etc. | |
template<class OutputIterator > | |
void | select (OutputIterator r, const SelectorBase &s) const |
Extract particles from this event which satisfies the requirements given by an object of the SelectorBase class. More... | |
template<class OutputIterator > | |
void | selectFinalState (OutputIterator r) const |
Extract all final state particles in this Event. More... | |
template<class Container > | |
void | getFinalState (Container &c) const |
Extract all final state particles in this Event. More... | |
tPVector | getFinalState () const |
Extract all final state particles in this Event. More... | |
tCollPtr | primaryCollision () const |
Return a pointer to the primary Collision in this Event. More... | |
const CollisionVector & | collisions () const |
Return a possibly empty list of collisions in this Event. | |
tSubProPtr | primarySubProcess () const |
Return a pointer to the primary SubProcess in the prinmary Collision in this Event. More... | |
const PPair & | incoming () const |
Return a reference to the pair of colliding particles in the primary Collision of this Event. | |
Functions for removing entires from an Event. | |
void | removeDecay (tPPtr) |
Remove (recursively) the decay products from a given Particle and add the particle to the list of final state particles. | |
void | removeParticle (tPPtr) |
Remove the given Particle from the Collision. More... | |
void | cleanSteps () |
Remove all steps which have no new particles introduced in them. | |
Public Member Functions inherited from ThePEG::Base | |
virtual | ~Base () |
The virtual destructor. | |
void | debug () const |
Print out debugging information for this object on std::cerr. More... | |
Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
CounterType | referenceCount () const |
Return the reference count. | |
Public Member Functions inherited from ThePEG::Named | |
Named (const string &newName=string()) | |
Constructor with name. | |
Named (const Named &)=default | |
Explicit default copy-constructor (too avoid compiler warnings) | |
const string & | name () const |
Return name. | |
bool | operator== (const Named &other) const |
Test for equality. | |
bool | operator< (const Named &other) const |
Lexicographical comparison. | |
Static Public Member Functions | |
static void | Init () |
Standard Init function. More... | |
Static Public Member Functions inherited from ThePEG::Base | |
static void | Init () |
The standard Init function used to initialize the interfaces. More... | |
Protected Member Functions | |
template<class Iterator > | |
void | addParticles (Iterator first, Iterator last) |
Add a range of particles to this Collision. | |
void | addParticle (tPPtr p) |
Add a particle to this Collision. | |
void | addSubProcess (tSubProPtr p) |
Add a new SubProcess to this Event. More... | |
void | removeSubProcess (tSubProPtr p) |
Remove a SubProcess from this Event. | |
void | addStep (tStepPtr s) |
Add a new Step to this Collision. More... | |
void | removeEntry (tPPtr p) |
Remove a given Particle entry. | |
void | rebind (const EventTranslationMap &trans) |
Rebind to cloned objects. More... | |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted () | |
Default constructor. | |
ReferenceCounted (const ReferenceCounted &) | |
Copy-constructor. | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Assignment. | |
Protected Member Functions inherited from ThePEG::Named | |
const Named & | operator= (const Named &other) |
Assignment. | |
const string & | name (const string &newName) |
Set new name. | |
Private Member Functions | |
Event () | |
Private default constructor must only be used by the PersistentIStream class via the ClassTraits<Event> class . | |
Event & | operator= (const Event &)=delete |
The assignment operator is private and not implemented. | |
Private Attributes | |
PPair | theIncoming |
The pair of colliding particles. | |
CollisionVector | theCollisions |
A vector of collisions in this Event. | |
StepSet | allSteps |
A set of all particles in this Event. | |
SubProcessSet | allSubProcesses |
A set of all sub-processes in this Event. | |
ParticleSet | allParticles |
A set of all particles in this Event. | |
tcEventBasePtr | theHandler |
A pointer to the EventHandler which performed the generation of this Event. | |
ColourLineMap | theColourLines |
Map of all registered colour lines to their index numbers. | |
long | theNumber |
The number assigned to this Event. | |
double | theWeight |
The weight associated with this event. | |
map< string, double > | theOptionalWeights |
Optional named weights. | |
long | theParticleNumber |
Counter to keep track of particle numbering. | |
Static Private Attributes | |
static ClassDescription< Event > | initEvent |
Describe concrete class with persistent data. | |
Friends | |
class | EventHandler |
EventHandler is a friend of most Event classes. | |
class | Collision |
Most of the Event classes are friends with each other. More... | |
struct | ClassTraits< Event > |
The ClassTraits<Event> class must be a friend to be able to use the private default constructor. | |
Additional Inherited Members | |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
The unique ID. More... | |
The Event class contains all Particles produced in the generation of an event.
The particles are divided into Collisions corresponding to the actiual collisions between incoming particles in a bunch crossing.
Event inherits from the Named which holds the name of an event.
typedef map<tcColinePtr, int> ThePEG::Event::ColourLineMap |
ThePEG::Event::Event | ( | const PPair & | newIncoming, |
tcEventBasePtr | newHandler = tcEventBasePtr() , |
||
string | newName = "" , |
||
long | newNumber = -1 , |
||
double | weight = 1.0 |
||
) |
The standard constructor for an Event takes as arguments a pair of colliding particles (corresponding to the primary collision in case of multiple collisions in an event).
Optionally a pointer to the EventHandler which performed the generation, an event name and event number can be given.
|
inlineprotected |
Add a new Step to this Collision.
For book keeping purposes only. The steps are accessed from the different Collisions in this Event.
Definition at line 298 of file Event.h.
References allSteps, Init(), persistentInput(), persistentOutput(), rebind(), and removeEntry().
|
inlineprotected |
Add a new SubProcess to this Event.
For book keeping purposes only. The sub-processes are accessed from the different Collisions in this Event.
Definition at line 284 of file Event.h.
References allSubProcesses.
EventPtr ThePEG::Event::clone | ( | ) | const |
|
virtual |
Print out debugging information for this object on std::cerr.
To be called from within a debugger via the debug() function.
Reimplemented from ThePEG::Base.
|
inline |
Extract all final state particles in this Event.
c | a container where the extracted (pointers to) particles will be appended. |
Definition at line 121 of file Event.h.
References ThePEG::inserter(), and selectFinalState().
|
inline |
Extract all final state particles in this Event.
Definition at line 129 of file Event.h.
References selectFinalState().
|
inline |
Return a pointer to the EventHandler which produced this Event.
May be the null pointer.
Definition at line 90 of file Event.h.
References select(), and theHandler.
|
static |
tStepPtr ThePEG::Event::newStep | ( | ) |
Create a new Step in the current Collision, which is a copy of the last Step (if any) and return a pointer to it.
If no collision exists, one will be added.
Referenced by incoming().
|
inline |
Return the number assigned to this Event.
The name is accessed with the name() method of the Named base class.
Definition at line 183 of file Event.h.
References cleanSteps(), colourLineIndex(), removeDecay(), removeParticle(), and theNumber.
double ThePEG::Event::optionalWeight | ( | const string & | name | ) | const |
Return an optional named weight associated to this event.
Returns 0, if no weight identified by this name is present.
Referenced by weight().
|
inline |
Return a pointer to the primary Collision in this Event.
May be the null pointer.
Definition at line 139 of file Event.h.
References collisions().
Referenced by optionalWeights(), primarySubProcess(), and select().
|
inline |
Return a pointer to the primary SubProcess in the prinmary Collision in this Event.
May be the null pointer.
Definition at line 457 of file Event.h.
References collisions(), and primaryCollision().
Referenced by collisions().
|
protected |
void ThePEG::Event::removeParticle | ( | tPPtr | ) |
void ThePEG::Event::select | ( | OutputIterator | r, |
const SelectorBase & | s | ||
) | const |
Extract particles from this event which satisfies the requirements given by an object of the SelectorBase class.
r | an output iterator specifying where the extracted (pointers to) particles will be appended. |
s | SelectorBase object defining which particles should be extracted. |
Definition at line 464 of file Event.h.
References ThePEG::SelectorBase::allCollisions(), primaryCollision(), and theCollisions.
Referenced by handler(), and selectFinalState().
|
inline |
Extract all final state particles in this Event.
r | an output iterator specifying where the extracted (pointers to) particles will be appended. |
Definition at line 111 of file Event.h.
References select().
Referenced by getFinalState().
|
friend |