ThePEG::EventGenerator Class Reference

The EventGenerator class manages a whole event generator run. More...

#include <EventGenerator.h>

Inheritance diagram for ThePEG::EventGenerator:

ThePEG::Interfaced ThePEG::InterfacedBase ThePEG::Base ThePEG::Named ThePEG::Pointer::ReferenceCounted ThePEG::MultiEventGenerator

List of all members.

The following functions may be called by objects belonging

to this event generator during the initialization phase (in the doinit() function).

It is typically used by objects which need to introduce other Interfaced objects depending the parameters of the StandardModel object used. Note that objects which use these functions MUST override the preInitialize() function to return true, otherwize the whole initialization procedure may be corrupted.

bool preinitRegister (IPtr obj, string fullname)
 Register a new object to be included in the run currently being initialized.
IPtr preinitCreate (string classname, string fullname, string libraries="")
 Create a new Interfaced object to be used in the run being initialized.
string preinitInterface (string fullname, string ifcname, string cmd, string value)
 Manipulate an interface of an Interfaced object.
string preinitInterface (string fullname, string ifcname, int index, string cmd, string value)
 Manipulate an interface of vector type (RefVector or ParVector) of an Interfaced object.
string preinitInterface (IPtr obj, string ifcname, string cmd, string value)
 Manipulate an interface of an Interfaced object.
string preinitInterface (IPtr obj, string ifcname, int index, string cmd, string value)
 Manipulate an interface of vector type (RefVector or ParVector) of an Interfaced object.
tDMPtr findDecayMode (string tag) const
 Find a decaymode given a decay tag.
tDMPtr preinitCreateDecayMode (string tag)
 Create a decay mode according to the given tag.
tPDPtr findParticle (string pdgname) const
 Find a particle in this run, using its PDG name.
tPMPtr findMatcher (string name) const
 Find a matcher in this run given its name.
DMPtr constructDecayMode (string &tag)
 Used internally by preinitCreateDecayMode();.

Public Types

typedef map< pair< string,
Exception::Severity >, int > 
ExceptionMap
 A map of integers giving the number of times an exception of the key type has been thrown.

Public Member Functions

Standard constructors and destructors.
 EventGenerator ()
 Default constructor.
 EventGenerator (const EventGenerator &)
 Copy-constructor.
virtual ~EventGenerator ()
 Destructor.
Access special objects in the run.
tSMPtr standardModel () const
 Return a pointer to the standard model parameters.
tStrategyPtr strategy () const
 Return a pointer to the strategy object containing a set of non-default particles to use.
tEHPtr currentEventHandler () const
 Get the currently active EventHandler.
void currentEventHandler (tEHPtr eh)
 Set the currently active EventHandler.
tStepHdlPtr currentStepHandler () const
 Get the currently active step handler.
void currentStepHandler (tStepHdlPtr sh)
 Set the currently active step handler.
tEHPtr eventHandler () const
 Return a pointer to the EventHandler.
AnalysisVectoranalysisHandlers ()
 Return the vector of analysis objects to be used in the run.
tHistFacPtr histogramFactory () const
 Return a pointer to an associated factory objects for handling histograms to be used by AnalysisHandlers.
tEvtManipPtr manipulator () const
 Return the EventManipulator used in the run.
Main functions to controll the run.
void initialize ()
 Initialize this generator.
void go (long next=1, long maxevent=-1, bool tics=false)
 Run this EventGenerator session.
EventPtr shoot ()
 Generate one event.
EventPtr generateEvent (Event &event)
 Finish generating an event which has already been partially constructed from the outside.
EventPtr generateEvent (Step &step)
 Finish generating an event starting from a step which has already been partially constructed from the outside.
void finalize ()
 Indicate that the run has ended and call finish() for all objects including this one.
bool loadMain (string file)
 Dynamically load the Main class in the given file, making it run its Init() method where it may use this EventGenerator.
virtual Energy maximumCMEnergy () const
 Return the maximum center of mass energy possible for an event.
long currentEventNumber () const
 The number of the event currently being generated.
tcEventPtr currentEvent () const
 Return the event being generated.
virtual void dump () const
 Dump the full state of the current run - including the number of generated events, so that it can be fully continued from this point.
void use (const Interfaced &i)
 Register a given object as used.
void setSeed (long seed)
 Set the random seed for the global random number generator.
void logWarning (const Exception &)
 Log a given exception.
long N () const
 The number of events to be generated in this run.
CrossSection histogramScale () const
 Histogram scale.
CrossSection integratedXSec () const
 The total integrated cross section of the processes generated in this run.
CrossSection integratedXSecErr () const
 The error estimate for the total integrated cross section of the processes generated in this run.
double sumWeights () const
 The sum of all weight of the events generated so far.
Functions for accessing output files.
string filename () const
 The base filename used in this run.
string runName () const
 Return the name assigned to this run.
string path () const
 The directory in which the filename() is located.
bool useStdOut () const
 Has the generator been asked to redirect everything to standard output?
void openOutputFiles ()
 Open all ouput files.
void closeOutputFiles ()
 Close all ouput files.
ofstream & outfile ()
 Return a reference to the output file stream.
ofstream & logfile ()
 Return a reference to the log file stream.
ofstream & reffile ()
 Return a reference to the reference file stream.
ostream & out ()
 Return a reference to the stream connected to the file for general output.
ostream & log ()
 Return a reference to the stream connected to the file for logging information.
ostream & misc ()
 Return a reference to a stream to be used to redirect cout for external modules which prints out messages there.
ostream & ref ()
 Return a reference to the stream connected to the filea for references from used objects.
Access objects included in this run.
const ObjectSet & objects () const
 Return the set of objects used in this run.
const ObjectMap & objectMap () const
 Return the map of objects used in this run indexed by their name.
template<typename T>
Ptr< T >::pointer getPtr (const T &) const
 Return a garbage collected pointer to a given object.
IBPtr getPointer (string name) const
 Return a pointer to an object present in this run given its full name.
template<typename T>
Ptr< T >::pointer getObject (string name) const
 Return a pointer to an object of type T present in this run given its full name.
template<typename T>
Ptr< T >::pointer getDefault () const
 Return the default object for class T.
PPtr getParticle (long id) const
 Create a particle instance corresponding to the given id number.
PDPtr getParticleData (long id) const
 Return a pointer to the ParticleData object corresponding to the given id number.
const MatcherSet & matchers () const
 Return a reference to the complete list of matchers in this generator.
const ParticleMap & particles () const
 Return a reference to the complete map of particle data objects in this generator, indexed by their id numbers.
const ObjectSet & used () const
 Return a reference to the set of objects which have been registered as used during the current run.
Functions used by the persistent I/O system.
void persistentOutput (PersistentOStream &os) const
 Function used to write out object persistently.
void persistentInput (PersistentIStream &is, int version)
 Function used to read in object persistently.

Static Public Member Functions

static void Init ()
 Standard Init function used to initialize the interface.

Protected Member Functions

void checkSignalState ()
 Check if there has been an interrupt signal from the OS.
RandomGeneratorrandom () const
 Return a reference to the default RandomGenerator object in this run.
void setup (string newRunName, ObjectSet &newObjects, ParticleMap &newParticles, MatcherSet &newMatchers)
 Finish the setup of an event generator run.
void printException (const Exception &)
 Print the message of an exception to the log file.
bool logException (const Exception &, tcEventPtr)
 Log a given exception.
void N (long n)
 Set number of events to be generated.
void runName (string f)
 Set the name of this run.
ObjectSet & objects ()
 Return the set of all objects to be used in this run.
ObjectMap & objectMap ()
 Return the map of all objects to be used in this run indexed by their name.
void generateReferences ()
 Print out the .tex file with descriptions of and references to all models used in the run.
int count (const Exception &)
 Increase and return the count for the given exception.
Main virtual functions to be overridden by sub-classes.
virtual void doGo (long next, long maxevent, bool tics)
 Run this EventGenerator session.
virtual void doInitialize ()
 Initialize this generator.
virtual EventPtr doShoot ()
 Generate one event.
void tic (long currev=0, long totev=0) const
 Write out the number of events generated and the elapsed time in suitable periods.
virtual EventPtr doGenerateEvent (tEventPtr)
 Finish generating an event constructed from the outside.
virtual EventPtr doGenerateEvent (tStepPtr)
 Finish generating an event starting from a Step constructed from the outside.
Clone Methods.
virtual IBPtr clone () const
 Make a simple clone of this object.
virtual IBPtr fullclone () const
 Make a clone of this object, possibly modifying the cloned object to make it sane.
Standard Interfaced functions.
virtual void doinit ()
 Initialize this object after the setup phase before saving an EventGenerator to disk.
virtual void doinitrun ()
 Initialize this object.
virtual void dofinish ()
 Finalize this object.
void finally ()
 Additional things to do at the very end after the (do)finish(), such as closing output files etc.

Protected Attributes

long ieve
 The current event number;.
double weightSum
 The sum of the weights of the events produced so far.
int theDebugLevel
 The debug level.

Private Member Functions

const vector< IPtr > & defaultObjects () const
 Return the vector of default objects.
ParticleMap & localParticles ()
 Access the special particles used in this generator.
const ParticleMap & localParticles () const
 Access the special particles used in this generator.
void path (string f)
 Set the directory where the output files will be stored.
void strategy (StrategyPtr)
 Set a pointer to the strategy object containing a set of non-default particles to use.
string doSaveRun (string)
 Isolate, initialize and save this generator to a file.
string doMakeRun (string)
 Isolate and initialize this generator.
void setLocalParticles (PDPtr pd, int)
 Utility function for the interface.
void insLocalParticles (PDPtr pd, int)
 Utility function for the interface.
void delLocalParticles (int place)
 Utility function for the interface.
vector< PDPtrgetLocalParticles () const
 Utility function for the interface.
void setPath (string newPath)
 Utility function for the interface.
string defPath () const
 Utility function for the interface.
EventGeneratoroperator= (const EventGenerator &)
 Private and non-existent assignment operator.

Private Attributes

vector< IPtrtheDefaultObjects
 A vector of default objects.
ParticleMap theLocalParticles
 Map of non-default particles used in this EventGenerator.
SMPtr theStandardModel
 Pointer to an object containing standard model parameters.
StrategyPtr theStrategy
 Pointer to a strategy object with other non-default particles to be used in this EventGenerator.
RanGenPtr theRandom
 Pointer to the default RandomGenerator to be used in this run.
EHPtr theEventHandler
 Pointer to the event handler used to generate the indivudual events.
AnalysisVector theAnalysisHandlers
 A vector of all analysis handlers to be called after each event.
HistFacPtr theHistogramFactory
 A pointer to an associated factory objects for handling histograms to be used by AnalysisHandlers.
EvtManipPtr theEventManipulator
 A pointer to an optional event manipulator object.
string thePath
 The directory where the input and output files resides.
string theRunName
 THe name of this run.
ofstream theOutfile
 A reference to the output file stream.
ofstream theLogfile
 A reference to the log file stream.
ofstream theReffile
 A reference to the reference file stream.
ostringstream theMiscStream
 A stream to be used to redirect cout for external modules which prints out messages there.
long theNumberOfEvents
 Number of events to be generated in this run.
ObjectSet theObjects
 The set of all objects to be used in this run.
ObjectMap theObjectMap
 All objects to be used in this run mapped to their name.
ParticleMap theParticles
 The map of all particles to be used in this run, indexed by the id number.
PDVector theQuickParticles
 A vector of particles indexed by the id number for quick access.
int theQuickSize
 Only particles with id number less than theQuickSize are available in theQuickParticles.
bool preinitializing
 A flag to tell if we are in the pre-initialization phase where objects with preInitialize() functions returning true are initialized before others.
MatcherSet theMatchers
 The set of all matchers to be used in this run.
ObjectSet usedObjects
 The set of objects which have actually been used in this run.
int printEvent
 If the debug level is higher than 0, print the first 'printEvent' events to the logfile.
long dumpPeriod
 If the dubug level is higher than 0, dump the complete state of this run to the default dump file every 'dumpPeriod' events.
long debugEvent
 If the dubug level is higher than 0, step up to the highest debug level just before the event with number debugEvent is performed.
int maxWarnings
 The maximum number of warnings reported of each type.
int maxErrors
 The maximum number of warnings and errors reported of each type.
ExceptionMap theExceptions
 A map of all Exceptions which have been caught by the event generator and the number of time each exception type has been caught.
UseRandomtheCurrentRandom
 The UseRandom object constructed for the duration of an EventGenerator run so that the default random number generator always can be accessed through the static methods of the UseRandom class.
CurrentGeneratortheCurrentGenerator
 The CurrentGenerator object constructed for the duration of an EventGenerator run so that the default event generator always can be accessed through the static methods of the CurrentGenerator class.
tEHPtr theCurrentEventHandler
 The currently active EventHandler.
tStepHdlPtr theCurrentStepHandler
 The currently active step handler.
bool useStdout
 Whether to use files or stdout for logging and output.

Static Private Attributes

static ClassDescription
< EventGenerator
initEventGenerator
 Describe an abstract class with persistent data.

Friends

class Repository
 The Repository is a friend.


Detailed Description

The EventGenerator class manages a whole event generator run.

It keeps a list of all Interfaced objects which are needed for a particular run (these objects each have a pointer back to the EventGenerator). Some objects are special, such as a default RandomGenerator object, a StandardModelBase object and a Strategy object and lists of ParticleData and MatcherBase objects used in the run.

The EventGenerator also manages information about the run such as the exceptions being thrown, files to write output and error messages to, etc.

There are three main external member functions:
go() generates a specified number of events and exits.

shoot() generates one Event and returns it.

generateEvent() takes an initial Step or a partially generated Event as argument and generates subsequent steps defined in the generator.

doShoot() is a virtual function called by shoot() and may be overridden in sub-classes.

doGenrateEvent() is a virtual function called by generateEvent() and may to be overridden in sub-classes.

See also:
The interfaces defined for EventGenerator.

Interfaced

RandomGenerator

StandardModelBase

Strategy

ParticleData

Event

Step

FullEventGenerator

Definition at line 68 of file EventGenerator.h.


Member Typedef Documentation

A map of integers giving the number of times an exception of the key type has been thrown.

Definition at line 79 of file EventGenerator.h.


Member Function Documentation

void ThePEG::EventGenerator::initialize (  ) 

Initialize this generator.

This is done automatically if 'go()' is used. Calls the virtual method doInitialize().

void ThePEG::EventGenerator::go ( long  next = 1,
long  maxevent = -1,
bool  tics = false 
)

Run this EventGenerator session.

Calls the virtual method doGo().

Parameters:
next the number of the firts event to be generated. If negative it is assumed that this generator was previously interrupted (or dumped to a file) and the execution will resume from where it started. Default is 1.
maxevent the maximum number of events to be generated. If negative the N() is used instead. Default is -1.
tics if true information the number of events generated and elapsed time will be written to std::cerr after each event.

EventPtr ThePEG::EventGenerator::shoot (  ) 

Generate one event.

Calls the virtual method doShoot();

EventPtr ThePEG::EventGenerator::generateEvent ( Event event  ) 

Finish generating an event which has already been partially constructed from the outside.

Calls the virtual method do doGenerateEvent().

EventPtr ThePEG::EventGenerator::generateEvent ( Step step  ) 

Finish generating an event starting from a step which has already been partially constructed from the outside.

Calls the virtual method do doGenerateEvent().

void ThePEG::EventGenerator::finalize (  ) 

Indicate that the run has ended and call finish() for all objects including this one.

Note that finish() should not be called directly.

bool ThePEG::EventGenerator::loadMain ( string  file  ) 

Dynamically load the Main class in the given file, making it run its Init() method where it may use this EventGenerator.

Also call the initialize function before and the finish() function afterwards.

virtual Energy ThePEG::EventGenerator::maximumCMEnergy (  )  const [virtual]

Return the maximum center of mass energy possible for an event.

Return zero if the assigned EventHander is not able to generatr full events.

void ThePEG::EventGenerator::use ( const Interfaced i  ) 

Register a given object as used.

Only objects registered in this way will be included in the file with model references.

CrossSection ThePEG::EventGenerator::histogramScale (  )  const

Histogram scale.

A histogram bin which has been filled with the weights associated with the Event objects should be scaled by this factor to give the correct cross section.

string ThePEG::EventGenerator::filename (  )  const [inline]

The base filename used in this run.

The actual files are called filename.run, filename.dump, filename.out, filename.log and filename.tex for the input configuration file, output dump file, output file, log file, and reference file respectively. The filename is constructed from the path() and runName().

Definition at line 296 of file EventGenerator.h.

References path(), and runName().

string ThePEG::EventGenerator::runName (  )  const [inline]

Return the name assigned to this run.

If no name is given, the name of the EventGenerator object is returned.

Definition at line 302 of file EventGenerator.h.

References ThePEG::InterfacedBase::name(), and theRunName.

Referenced by filename().

ofstream& ThePEG::EventGenerator::reffile (  )  [inline]

Return a reference to the reference file stream.

This file is used to output LaTeX text with information about the models used in the run.

Definition at line 340 of file EventGenerator.h.

References theReffile.

ostream& ThePEG::EventGenerator::out (  ) 

Return a reference to the stream connected to the file for general output.

If no file is connected, the BaseRepository::cout() will be used instead.

Referenced by ThePEG::CurrentGenerator::out().

ostream& ThePEG::EventGenerator::log (  ) 

Return a reference to the stream connected to the file for logging information.

If no file is connected, BaseRepository::clog() will be used instead.

Referenced by ThePEG::CurrentGenerator::log().

ostream& ThePEG::EventGenerator::misc (  )  [inline]

Return a reference to a stream to be used to redirect cout for external modules which prints out messages there.

The output will instead be appended to the log() stream at the end of the run.

Definition at line 361 of file EventGenerator.h.

References theMiscStream.

ostream& ThePEG::EventGenerator::ref (  ) 

Return a reference to the stream connected to the filea for references from used objects.

If no file is connected, BaseRepository::cout() will be used instead.

Referenced by ThePEG::CurrentGenerator::ref().

template<typename T>
Ptr<T>::pointer ThePEG::EventGenerator::getPtr ( const T &   )  const [inline]

Return a garbage collected pointer to a given object.

If the object is not included in the run, a null pointer will be returned.

Referenced by ThePEG::CurrentGenerator::getPtr().

IBPtr ThePEG::EventGenerator::getPointer ( string  name  )  const

Return a pointer to an object present in this run given its full name.

Return the null pointer if non-existent.

Referenced by getObject(), and ThePEG::CurrentGenerator::getPointer().

template<typename T>
Ptr<T>::pointer ThePEG::EventGenerator::getObject ( string  name  )  const [inline]

Return a pointer to an object of type T present in this run given its full name.

Return the null pointer if non-existent. Calls getPointer(string) and dynamically casts the result to the requested pointer type.

Definition at line 407 of file EventGenerator.h.

References ThePEG::Pointer::dynamic_ptr_cast(), and getPointer().

Referenced by ThePEG::CurrentGenerator::getObject().

template<typename T>
Ptr<T>::pointer ThePEG::EventGenerator::getDefault (  )  const [inline]

Return the default object for class T.

Returns the null pointer if non-existent.

Referenced by ThePEG::CurrentGenerator::getDefault().

void ThePEG::EventGenerator::checkSignalState (  )  [protected]

Check if there has been an interrupt signal from the OS.

If that's the case, finalize() is called

void ThePEG::EventGenerator::setup ( string  newRunName,
ObjectSet &  newObjects,
ParticleMap &  newParticles,
MatcherSet &  newMatchers 
) [protected]

Finish the setup of an event generator run.

Set run name, all particles, matchers and other objects to be used. Is used by the Repository when isolating an EventGenerator.

virtual void ThePEG::EventGenerator::doGo ( long  next,
long  maxevent,
bool  tics 
) [protected, virtual]

Run this EventGenerator session.

Is called from go(long,long,bool).

Reimplemented in ThePEG::MultiEventGenerator.

virtual void ThePEG::EventGenerator::doInitialize (  )  [protected, virtual]

Initialize this generator.

Is called from initialize().

virtual EventPtr ThePEG::EventGenerator::doShoot (  )  [protected, virtual]

Generate one event.

Is called from shoot().

virtual EventPtr ThePEG::EventGenerator::doGenerateEvent ( tEventPtr   )  [protected, virtual]

Finish generating an event constructed from the outside.

Is called by generateEvent(tEventPtr).

virtual EventPtr ThePEG::EventGenerator::doGenerateEvent ( tStepPtr   )  [protected, virtual]

Finish generating an event starting from a Step constructed from the outside.

Is called by generateEvent(tStepPtr).

ParticleMap& ThePEG::EventGenerator::localParticles (  )  [inline, private]

Access the special particles used in this generator.

Not relevant in the run phase.

Definition at line 538 of file EventGenerator.h.

References theLocalParticles.

const ParticleMap& ThePEG::EventGenerator::localParticles (  )  const [inline, private]

Access the special particles used in this generator.

Not relevant in the run phase.

Definition at line 544 of file EventGenerator.h.

References theLocalParticles.

bool ThePEG::EventGenerator::preinitRegister ( IPtr  obj,
string  fullname 
)

Register a new object to be included in the run currently being initialized.

Parameters:
obj (pointer to) the object being registered.
fullname the full name including the directory path. Note that although the full path is given the object will not be inserted in the Repository, but only in this current EventGenerator.
Returns:
false if another object of that name already exists.

IPtr ThePEG::EventGenerator::preinitCreate ( string  classname,
string  fullname,
string  libraries = "" 
)

Create a new Interfaced object to be used in the run being initialized.

Parameters:
classname the class name of the object being created.
fullname the full name including the directory path. Note that although the full path is given the object will not be inserted in the Repository, but only in this current EventGenerator.
libraries an optional list of shared libraries to be loaded to be able to create an object of the specified class.
Returns:
the created object if the it was successfully created. Return null if the object could not be created or if another object of that name already exists.

string ThePEG::EventGenerator::preinitInterface ( string  fullname,
string  ifcname,
string  cmd,
string  value 
)

Manipulate an interface of an Interfaced object.

Parameters:
fullname the name including the full path of an object to be manipulated.
ifcname the name of the interface to be used.
cmd the operation to be performed on the interface (set or get).
value Optional value to be passed to the interface.
Returns:
a string containing the result of the operation. If this string starts with "Error: " then something went wrong.

string ThePEG::EventGenerator::preinitInterface ( string  fullname,
string  ifcname,
int  index,
string  cmd,
string  value 
)

Manipulate an interface of vector type (RefVector or ParVector) of an Interfaced object.

Parameters:
fullname the name including the full path of an object to be manipulated.
ifcname the name of the interface to be used.
index the vector index corresponding to the element to be manipulated.
cmd the operation to be performed on the interface (set, get, insert or erase).
value Optional value to be passed to the interface.
Returns:
a string containing the result of the operation. If this string starts with "Error: " then something went wrong.

string ThePEG::EventGenerator::preinitInterface ( IPtr  obj,
string  ifcname,
string  cmd,
string  value 
)

Manipulate an interface of an Interfaced object.

Parameters:
obj the object to be manipulated.
ifcname the name of the interface to be used.
cmd the operation to be performed on the interface (set or get).
value Optional value to be passed to the interface.
Returns:
a string containing the result of the operation. If this string starts with "Error: " then something went wrong.

string ThePEG::EventGenerator::preinitInterface ( IPtr  obj,
string  ifcname,
int  index,
string  cmd,
string  value 
)

Manipulate an interface of vector type (RefVector or ParVector) of an Interfaced object.

Parameters:
obj the object to be manipulated.
ifcname the name of the interface to be used.
index the vector index corresponding to the element to be manipulated.
cmd the operation to be performed on the interface (set, get, insert or erase).
value Optional value to be passed to the interface.
Returns:
a string containing the result of the operation. If this string starts with "Error: " then something went wrong.

tDMPtr ThePEG::EventGenerator::findDecayMode ( string  tag  )  const

Find a decaymode given a decay tag.

Returns:
null if no decay mode was found.

tDMPtr ThePEG::EventGenerator::preinitCreateDecayMode ( string  tag  ) 

Create a decay mode according to the given tag.

Returns:
null if no decay mode could be created.

tPDPtr ThePEG::EventGenerator::findParticle ( string  pdgname  )  const

Find a particle in this run, using its PDG name.

Returns:
null if no particle is found.

tPMPtr ThePEG::EventGenerator::findMatcher ( string  name  )  const

Find a matcher in this run given its name.

Returns:
null if no mather is found.

void ThePEG::EventGenerator::persistentOutput ( PersistentOStream os  )  const

Function used to write out object persistently.

Parameters:
os the persistent output stream written to.

Reimplemented from ThePEG::Interfaced.

Reimplemented in ThePEG::MultiEventGenerator.

void ThePEG::EventGenerator::persistentInput ( PersistentIStream is,
int  version 
)

Function used to read in object persistently.

Parameters:
is the persistent input stream read from.
version the version number of the object when written.

Reimplemented from ThePEG::Interfaced.

Reimplemented in ThePEG::MultiEventGenerator.

virtual IBPtr ThePEG::EventGenerator::clone (  )  const [protected, virtual]

Make a simple clone of this object.

Returns:
a pointer to the new object.

Implements ThePEG::InterfacedBase.

Reimplemented in ThePEG::MultiEventGenerator.

virtual IBPtr ThePEG::EventGenerator::fullclone (  )  const [protected, virtual]

Make a clone of this object, possibly modifying the cloned object to make it sane.

Returns:
a pointer to the new object.

Reimplemented from ThePEG::InterfacedBase.

Reimplemented in ThePEG::MultiEventGenerator.

virtual void ThePEG::EventGenerator::doinit (  )  [protected, virtual]

Initialize this object after the setup phase before saving an EventGenerator to disk.

Exceptions:
InitException if object could not be initialized properly.

Reimplemented from ThePEG::InterfacedBase.

virtual void ThePEG::EventGenerator::doinitrun (  )  [protected, virtual]

Initialize this object.

Called in the run phase just before a run begins.

Reimplemented from ThePEG::InterfacedBase.

virtual void ThePEG::EventGenerator::dofinish (  )  [protected, virtual]

Finalize this object.

Called in the run phase just after a run has ended. Used eg. to write out statistics.

Reimplemented from ThePEG::InterfacedBase.


Friends And Related Function Documentation

friend class Repository [friend]

The Repository is a friend.

Reimplemented from ThePEG::Interfaced.

Definition at line 71 of file EventGenerator.h.


Member Data Documentation

ostringstream ThePEG::EventGenerator::theMiscStream [private]

A stream to be used to redirect cout for external modules which prints out messages there.

The output will instead be appended to the log() stream at the end of the run.

Definition at line 903 of file EventGenerator.h.

Referenced by misc().

A vector of particles indexed by the id number for quick access.

Only particles with id number less than theQuickSize are available.

Definition at line 930 of file EventGenerator.h.

If the dubug level is higher than 0, dump the complete state of this run to the default dump file every 'dumpPeriod' events.

If 'dumpPeriod' is -1, dumping is disabled completely, even when runs are aborted.

Definition at line 986 of file EventGenerator.h.

The maximum number of warnings reported of each type.

If more than maxWarnings warnings of one type is issued, the generation will continue without reporting this warning.

Definition at line 999 of file EventGenerator.h.

The maximum number of warnings and errors reported of each type.

If more than maxErrors errors is reported for one type the run will be aborted.

Definition at line 1006 of file EventGenerator.h.


The documentation for this class was generated from the following file:

Generated on Thu Apr 29 12:43:21 2010 for ThePEG by  doxygen 1.5.5