ThePEG
1.8.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
PDF
PartonBin.h
1
// -*- C++ -*-
2
//
3
// PartonBin.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_PartonBin_H
10
#define ThePEG_PartonBin_H
11
// This is the declaration of the PartonBin class.
12
13
#include "ThePEG/Config/ThePEG.h"
14
#include "ThePEG/Utilities/ClassDescription.h"
15
#include "ThePEG/Utilities/Maths.h"
16
#include "ThePEG/PDF/PDFBase.h"
17
#include "ThePEG/PDF/PDFCuts.h"
18
#include "ThePEG/Vectors/Transverse.h"
19
#include "ThePEG/EventRecord/Particle.h"
20
#include "PartonBin.fh"
21
22
namespace
ThePEG {
23
38
class
PartonBin
:
public
Base
{
39
40
public
:
41
43
typedef
vector<PBPtr>
PBVector
;
44
45
public
:
46
61
PartonBin
(
tcPDPtr
p,
tPBPtr
prev,
tcPDPtr
pi,
tcPDFPtr
pdf
,
62
const
PDFCuts
& newCuts);
63
67
PartonBin
();
68
72
virtual
~PartonBin
();
74
75
public
:
76
82
tcPDPtr
particle
()
const
{
return
theParticle
; }
83
88
tPBPtr
incoming
()
const
{
return
theIncomingBin
; }
89
94
const
PBVector
&
outgoing
()
const
{
return
theOutgoing
; }
95
100
void
addOutgoing
(
tPBPtr
pb) {
theOutgoing
.push_back(pb); }
101
105
tcPDPtr
parton
()
const
{
return
theParton
; }
106
111
tcPDFPtr
pdf
()
const
{
return
thePDF
; }
112
116
tcRemHPtr
remnantHandler
()
const
{
return
theRemnantHandler
; }
117
124
int
nDim
(
bool
doscale);
125
130
int
pdfDim
()
const
{
return
thePDFDim
; }
131
136
int
remDim
()
const
{
return
theRemDim
; }
138
144
const
PDFCuts
&
cuts
()
const
{
return
theCuts
; }
145
149
tPBPtr
getFirst
();
151
152
public
:
153
160
void
persistentOutput
(
PersistentOStream
& os)
const
;
161
167
void
persistentInput
(
PersistentIStream
& is,
int
version);
169
173
static
void
Init
();
174
175
private
:
176
180
cPDPtr
theParticle
;
181
186
tPBPtr
theIncomingBin
;
187
192
PBVector
theOutgoing
;
193
197
cPDPtr
theParton
;
198
203
cPDFPtr
thePDF
;
204
208
cRemHPtr
theRemnantHandler
;
209
214
int
thePDFDim
;
215
220
int
theRemDim
;
221
225
PDFCuts
theCuts
;
226
227
private
:
228
232
static
ClassDescription<PartonBin>
initPartonBin
;
233
237
PartonBin
&
operator=
(
const
PartonBin
&);
238
239
};
240
245
template
<>
246
struct
BaseClassTrait
<
PartonBin
,1>:
public
ClassTraitsType
{
248
typedef
Base
NthBase
;
249
};
250
253
template
<>
254
struct
ClassTraits<PartonBin>:
public
ClassTraitsBase<PartonBin> {
256
static
string
className
() {
return
"ThePEG::PartonBin"
; }
257
};
258
261
}
262
263
#endif
/* ThePEG_PartonBin_H */
Generated on Sat Jun 16 2012 16:51:04 for ThePEG by
1.8.1.1