ThePEG
1.8.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Handlers
CascadeHandler.h
1
// -*- C++ -*-
2
//
3
// CascadeHandler.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_CascadeHandler_H
10
#define ThePEG_CascadeHandler_H
11
// This is the declaration of the CascadeHandler class.
12
13
#include "StepHandler.h"
14
#include "ThePEG/Handlers/LastXCombInfo.h"
15
#include "ThePEG/PDF/PDF.h"
16
17
namespace
ThePEG {
18
19
33
class
CascadeHandler
:
public
StepHandler
,
public
LastXCombInfo
<> {
34
35
public
:
36
42
virtual
~CascadeHandler
();
44
45
public
:
46
63
virtual
void
handle
(
EventHandler
& eh,
const
tPVector
&
tagged
,
64
const
Hint
&
hint
);
66
72
virtual
void
cascade
() = 0;
73
91
virtual
double
reweightCKKW
(
int
minMult,
int
maxMult);
92
93
public
:
94
102
const
tPVector
&
tagged
()
const
{
return
*
theTagged
; }
103
107
const
Hint
&
hint
()
const
{
return
*
theHint
; }
108
112
const
PDF
&
firstPDF
()
const
{
return
pdfs
().first; }
113
117
const
PDF
&
secondPDF
()
const
{
return
pdfs
().second; }
118
122
const
pair<PDF,PDF> &
pdfs
()
const
{
return
thePDFs
; }
123
127
void
resetPDFs
(
const
pair<tcPDFPtr,tcPDFPtr> & pdfpair);
128
133
void
setXComb
(
tXCombPtr
xc);
135
136
public
:
137
141
static
void
Init
();
142
143
private
:
144
148
const
tPVector
*
theTagged
;
149
153
const
Hint
*
theHint
;
154
158
pair<PDF,PDF>
thePDFs
;
159
160
private
:
161
166
static
AbstractNoPIOClassDescription<CascadeHandler>
initCascadeHandler
;
167
171
CascadeHandler
&
operator=
(
const
CascadeHandler
&);
172
173
};
174
179
template
<>
180
struct
BaseClassTrait
<
CascadeHandler
,1>:
public
ClassTraitsType
{
182
typedef
StepHandler
NthBase
;
183
};
184
187
template
<>
188
struct
ClassTraits<CascadeHandler>:
public
ClassTraitsBase<CascadeHandler> {
190
static
string
className
() {
return
"ThePEG::CascadeHandler"
; }
191
};
192
195
}
196
197
#endif
/* ThePEG_CascadeHandler_H */
Generated on Mon Jul 2 2012 16:06:46 for ThePEG by
1.8.1.1