herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Decay
HwDecayHandler.h
1
// -*- C++ -*-
2
//
3
// HwDecayHandler.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4
// Copyright (C) 2002-2019 The Herwig Collaboration
5
//
6
// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef HERWIG_HwDecayHandler_H
10
#define HERWIG_HwDecayHandler_H
11
//
12
// This is the declaration of the HwDecayHandler class.
13
//
14
#include "ThePEG/Handlers/DecayHandler.h"
15
#include "ThePEG/EventRecord/Particle.h"
16
17
18
namespace
Herwig
{
19
using namespace
ThePEG
;
20
39
class
HwDecayHandler
:
public
DecayHandler
{
40
41
public
:
42
46
HwDecayHandler
() :
DecayHandler
(),
_newstep
(true)
47
{}
48
49
public
:
50
58
virtual
void
handle
(
EventHandler
& eh,
const
tPVector
& tagged,
59
const
Hint
& hint)
60
;
61
69
virtual
void
performDecay
(
tPPtr
parent,
Step
& s)
const
70
;
71
79
void
addDecayedParticle
(
tPPtr
parent,
Step
& s)
const
80
;
81
85
static
void
Init
();
86
87
public
:
88
95
void
persistentOutput
(
PersistentOStream
& os)
const
;
96
102
void
persistentInput
(
PersistentIStream
& is,
int
version);
104
105
protected
:
106
113
virtual
IBPtr
clone
()
const
{
return
new_ptr(*
this
);}
114
119
virtual
IBPtr
fullclone
()
const
{
return
new_ptr(*
this
);}
121
122
protected
:
123
131
virtual
void
doinit
();
133
134
protected
:
135
139
void
develop
(
tPPtr
particle)
const
{
140
tcSpinPtr
hwspin = particle->spinInfo();
141
if
( hwspin )
142
hwspin->develop();
143
}
144
145
private
:
146
150
HwDecayHandler
&
operator=
(
const
HwDecayHandler
&) =
delete
;
151
152
private
:
153
157
bool
_newstep
;
158
162
set<tcPDPtr>
_excluded
;
163
167
vector<PDPtr>
_excludedVector
;
168
169
};
170
}
171
172
#endif
/* HERWIG_HwDecayHandler_H */
Herwig::HwDecayHandler
The HwDecayHandler is the Herwig decay handler which administers the decays of unstable particles in ...
Definition:
HwDecayHandler.h:39
Herwig::HwDecayHandler::HwDecayHandler
HwDecayHandler()
Default constructor.
Definition:
HwDecayHandler.h:46
Herwig::HwDecayHandler::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Definition:
HwDecayHandler.h:119
Herwig::HwDecayHandler::_newstep
bool _newstep
Option for adding particles in a new Step.
Definition:
HwDecayHandler.h:157
Herwig::HwDecayHandler::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::HwDecayHandler::addDecayedParticle
void addDecayedParticle(tPPtr parent, Step &s) const
add the decay products of in intermediate particle produced in a decay
Herwig::HwDecayHandler::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::HwDecayHandler::_excludedVector
vector< PDPtr > _excludedVector
Vector to fill the set as an interface.
Definition:
HwDecayHandler.h:167
Herwig::HwDecayHandler::performDecay
virtual void performDecay(tPPtr parent, Step &s) const
Perform the decay of one unstable particle.
Herwig::HwDecayHandler::Init
static void Init()
Standard Init function.
Herwig::HwDecayHandler::develop
void develop(tPPtr particle) const
Develop a stable particle.
Definition:
HwDecayHandler.h:139
Herwig::HwDecayHandler::doinit
virtual void doinit()
Initialize this object after the setup phase before saving an EventGenerator to disk.
Herwig::HwDecayHandler::_excluded
set< tcPDPtr > _excluded
Particles which should not be decayed.
Definition:
HwDecayHandler.h:162
Herwig::HwDecayHandler::handle
virtual void handle(EventHandler &eh, const tPVector &tagged, const Hint &hint)
Look through all tagged particled and decay all unstable ones.
Herwig::HwDecayHandler::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Definition:
HwDecayHandler.h:113
Herwig::HwDecayHandler::operator=
HwDecayHandler & operator=(const HwDecayHandler &)=delete
Private and non-existent assignment operator.
ThePEG::DecayHandler
ThePEG::EventHandler
ThePEG::Hint
ThePEG::PersistentIStream
ThePEG::PersistentOStream
ThePEG::Step
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::tPPtr
ThePEG::Ptr< Particle >::transient_pointer tPPtr
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::tcSpinPtr
ThePEG::Ptr< SpinInfo >::transient_const_pointer tcSpinPtr
ThePEG::tPVector
vector< tPPtr > tPVector
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6