ThePEG
1.8.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
PDT
V2PPDecayer.h
1
// -*- C++ -*-
2
//
3
// V2PPDecayer.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2011 Leif Lonnblad
5
//
6
// ThePEG is licenced under version 2 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef THEPEG_V2PPDecayer_H
10
#define THEPEG_V2PPDecayer_H
11
// This is the declaration of the V2PPDecayer class.
12
13
#include "ThePEG/PDT/FlatDecayer.h"
14
15
namespace
ThePEG {
16
30
class
V2PPDecayer
:
public
FlatDecayer
{
31
32
public
:
33
39
virtual
~V2PPDecayer
();
41
42
public
:
43
53
virtual
bool
accept
(
const
DecayMode
& dm)
const
;
54
61
virtual
ParticleVector
decay
(
const
DecayMode
& dm,
const
Particle
& p)
const
;
62
74
virtual
double
reweight
(
const
DecayMode
& dm,
const
Particle
& parent,
75
const
ParticleVector
& children)
const
;
77
78
public
:
79
80
87
void
persistentOutput
(
PersistentOStream
& os)
const
;
88
94
void
persistentInput
(
PersistentIStream
& is,
int
version);
96
100
static
void
Init
();
101
102
protected
:
103
104
105
protected
:
106
113
virtual
IBPtr
clone
()
const
;
114
119
virtual
IBPtr
fullclone
()
const
;
121
122
private
:
123
127
mutable
tPPtr
grandParent
;
128
132
mutable
tPPtr
sibling
;
133
134
private
:
135
139
static
ClassDescription<V2PPDecayer>
initV2PPDecayer
;
140
144
V2PPDecayer
&
operator=
(
const
V2PPDecayer
&);
145
146
};
147
148
}
149
150
151
namespace
ThePEG {
152
157
template
<>
158
struct
BaseClassTrait<V2PPDecayer,1>:
public
ClassTraitsType {
160
typedef
FlatDecayer
NthBase
;
161
};
162
166
template
<>
167
struct
ClassTraits<V2PPDecayer>
168
:
public
ClassTraitsBase<V2PPDecayer> {
170
static
string
className
() {
return
"ThePEG::V2PPDecayer"
; }
174
static
string
library
() {
return
"V2PPDecayer.so"
; }
175
};
176
179
}
180
181
#endif
/* THEPEG_V2PPDecayer_H */
Generated on Mon Jul 2 2012 16:06:48 for ThePEG by
1.8.1.1