herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Decay
EvtGen
EvtGenDecayer.h
1
// -*- C++ -*-
2
#ifndef Herwig_EvtGenDecayer_H
3
#define Herwig_EvtGenDecayer_H
4
//
5
// This is the declaration of the EvtGenDecayer class.
6
//
7
8
#include "ThePEG/PDT/Decayer.h"
9
#include "EvtGenInterface.h"
10
11
namespace
Herwig
{
12
13
using namespace
ThePEG
;
14
26
class
EvtGenDecayer
:
public
Decayer
{
27
28
public
:
29
33
EvtGenDecayer
() :
check_
(0) ,
evtOpt_
(0)
34
{}
35
36
public
:
37
46
virtual
bool
accept
(
const
DecayMode
& dm)
const
;
47
54
virtual
ParticleVector
decay
(
const
DecayMode
& dm,
const
Particle
& p)
const
;
56
57
public
:
58
65
void
persistentOutput
(
PersistentOStream
& os)
const
;
66
72
void
persistentInput
(
PersistentIStream
& is,
int
version);
74
81
static
void
Init
();
82
83
protected
:
84
90
void
checkDecay
(
PPtr
parent)
const
;
91
96
bool
rescale
(
const
Particle
& parent,
97
const
ParticleVector
& children)
const
;
98
99
protected
:
100
107
virtual
IBPtr
clone
()
const
;
108
113
virtual
IBPtr
fullclone
()
const
;
115
116
private
:
117
122
EvtGenDecayer
&
operator=
(
const
EvtGenDecayer
&) =
delete
;
123
124
private
:
125
129
EvtGenInterfacePtr
evtgen_
;
130
134
unsigned
int
check_
;
135
139
unsigned
int
evtOpt_
;
140
141
};
142
143
}
144
145
#endif
/* Herwig_EvtGenDecayer_H */
Herwig::EvtGenDecayer
The EvtGenDecayer class is designed to allow the EvtGen decay package to be used as a Decayer in the ...
Definition:
EvtGenDecayer.h:26
Herwig::EvtGenDecayer::operator=
EvtGenDecayer & operator=(const EvtGenDecayer &)=delete
The assignment operator is private and must never be called.
Herwig::EvtGenDecayer::evtgen_
EvtGenInterfacePtr evtgen_
Pointer to the EvtGen interface object.
Definition:
EvtGenDecayer.h:129
Herwig::EvtGenDecayer::accept
virtual bool accept(const DecayMode &dm) const
Check if this decayer can perfom the decay specified by the given decay mode.
Herwig::EvtGenDecayer::checkDecay
void checkDecay(PPtr parent) const
Method to check conservation of charge and momentum in the decay for testing only.
Herwig::EvtGenDecayer::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::EvtGenDecayer::rescale
bool rescale(const Particle &parent, const ParticleVector &children) const
Method to rescale the momenta of the decay products if required to conserve 4-momentum.
Herwig::EvtGenDecayer::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
Herwig::EvtGenDecayer::EvtGenDecayer
EvtGenDecayer()
Standard constructors.
Definition:
EvtGenDecayer.h:33
Herwig::EvtGenDecayer::clone
virtual IBPtr clone() const
Make a simple clone of this object.
Herwig::EvtGenDecayer::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
Herwig::EvtGenDecayer::check_
unsigned int check_
Perform checks ?
Definition:
EvtGenDecayer.h:134
Herwig::EvtGenDecayer::evtOpt_
unsigned int evtOpt_
Option for how EvtGen is used.
Definition:
EvtGenDecayer.h:139
Herwig::EvtGenDecayer::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::EvtGenDecayer::decay
virtual ParticleVector decay(const DecayMode &dm, const Particle &p) const
Perform a decay for a given DecayMode and a given Particle instance.
ThePEG::DecayMode
ThePEG::Decayer
ThePEG::Particle
ThePEG::PersistentIStream
ThePEG::PersistentOStream
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::PPtr
ThePEG::Ptr< Particle >::pointer PPtr
ThePEG::ParticleVector
vector< PPtr > ParticleVector
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6