StepHandler
s.
More...
#include <HandlerGroup.h>
Public Types | |
typedef Ptr< HDLR >::pointer | HdlPtr |
A pointer to the template argument class. | |
typedef Ptr< HDLR > ::transient_pointer | tHdlPtr |
A transient pointer to the template argument class. | |
Public Member Functions | |
virtual | ~HandlerGroup () |
Destructor. | |
virtual bool | setHandler (tStepHdlPtr, const HandlerGroupBase &ext) |
Set the current main handler. | |
virtual void | setHandler () |
Unset the current main handler. | |
virtual tStepHdlPtr | handler () const |
Return a pointer to the current main handler. | |
virtual tStepHdlPtr | defaultHandler () const |
Return a pointer to the default main handler. | |
virtual void | refillDefaultHandler (tStepHdlPtr) |
Set the current main handler. | |
virtual void | clear () |
Clear all current handlers, but don't touch the default ones. | |
virtual string | handlerClass () const |
Return the base class name of the main handler type. | |
void | interfaceSetHandler (HdlPtr) |
Utility function used for the interface. | |
HdlPtr | interfaceGetHandler () const |
Utility function used for the interface. | |
virtual void | write (PersistentOStream &os) const |
Write to persistent streams. | |
virtual void | read (PersistentIStream &is) |
Read from persistent streams. | |
Private Member Functions | |
HandlerGroup< HDLR > & | operator= (const HandlerGroup< HDLR > &) |
Assignment is private. | |
Private Attributes | |
HdlPtr | theDefaultHandler |
The default main handler. | |
HdlPtr | theHandler |
The current main handler. |
StepHandler
s.
All HandlerGroup classes are derived from the HandlerGroupBase
class. As an example the specialization HandlerGroup<CascadeHandler>
keeps a CascadeHandler object and associated pre- and post- StepHandlers, defining shich steps should be performed before the perturbative cascade, which object should be used for the cascade and which steps should be performed after.
The HandlerGroup
keesp both a default main handler and the corresponding default pre- and post- handlers as well as the main handler and pre/post hadlers chosen for the current event. The current handlers are accompanied by Hints. Handlers which are copied from the default ones are accompanied by the default Hint, while handlers supplied from the outside may be accompanied by any kind of hint. The main handler can be supplied with several hints, the pre- and post- handlers may only have one hint each.
The HandlerGroup
class is used in the EventHandler and SubProcessHandler to manage the post-sub-process handler, the cascade, multiple interaction, hadronization and decay handler groups.
Definition at line 321 of file HandlerGroup.h.
typedef Ptr<HDLR>::pointer ThePEG::HandlerGroup< HDLR >::HdlPtr |
typedef Ptr<HDLR>::transient_pointer ThePEG::HandlerGroup< HDLR >::tHdlPtr |
virtual bool ThePEG::HandlerGroup< HDLR >::setHandler | ( | tStepHdlPtr | , | |
const HandlerGroupBase & | ext | |||
) | [virtual] |
Set the current main handler.
Also refill the current pre- and post- handlers with the defaults from ext.
Implements ThePEG::HandlerGroupBase.
virtual void ThePEG::HandlerGroup< HDLR >::refillDefaultHandler | ( | tStepHdlPtr | ) | [virtual] |
Set the current main handler.
If the null pointer use the default main handler.
Implements ThePEG::HandlerGroupBase.