ThePEG
1.8.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
LesHouches
MadGraphReader.h
1
// -*- C++ -*-
2
//
3
// MadGraphReader.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_MadGraphReader_H
10
#define THEPEG_MadGraphReader_H
11
// This is the declaration of the MadGraphReader class.
12
13
#include "ThePEG/LesHouches/LesHouchesFileReader.h"
14
15
namespace
ThePEG {
16
24
class
MadGraphReader
:
public
LesHouchesFileReader
{
25
26
public
:
27
33
MadGraphReader
()
34
:
fixedScale
(91.188*GeV),
fixedAEM
(0.007546772),
fixedAS
(0.12),
35
doInitCuts
(false) {}
37
38
public
:
39
46
virtual
void
open
();
47
56
virtual
long
scan
();
57
63
virtual
bool
doReadEvent
();
65
66
public
:
67
74
void
persistentOutput
(
PersistentOStream
& os)
const
;
75
81
void
persistentInput
(
PersistentIStream
& is,
int
version);
83
87
static
void
Init
();
88
89
protected
:
90
97
virtual
IBPtr
clone
()
const
;
98
103
virtual
IBPtr
fullclone
()
const
;
105
106
protected
:
107
110
116
virtual
void
doinit
();
117
122
CutsPtr
initCuts
();
123
129
virtual
void
initPDFs
();
130
135
virtual
bool
preInitialize
()
const
;
136
141
virtual
void
dofinish
() {
142
LesHouchesFileReader::dofinish
();
143
if
(
stats
.
accepted
() > 0 )
useMe
();
144
}
146
147
protected
:
148
154
string
scanCuts
(
string
);
155
159
long
numberOfEvents
(
string
);
160
161
protected
:
162
168
Energy
fixedScale
;
169
175
double
fixedAEM
;
176
182
double
fixedAS
;
183
188
map<string,double>
cuts
;
189
193
bool
doInitCuts
;
194
195
public
:
196
201
struct
WeightedException
:
public
Exception
{};
202
203
private
:
204
208
static
ClassDescription<MadGraphReader>
initMadGraphReader
;
209
213
MadGraphReader
&
operator=
(
const
MadGraphReader
&);
214
215
};
216
217
}
218
219
220
#include "ThePEG/Utilities/ClassTraits.h"
221
222
namespace
ThePEG {
223
230
template
<>
231
struct
BaseClassTrait<MadGraphReader,1>:
public
ClassTraitsType {
233
typedef
LesHouchesFileReader
NthBase
;
234
};
235
241
template
<>
242
struct
ClassTraits<MadGraphReader>
243
:
public
ClassTraitsBase<MadGraphReader> {
245
static
string
className
() {
return
"ThePEG::MadGraphReader"
; }
249
static
string
library
() {
return
"MadGraphReader.so"
; }
250
251
};
252
255
}
256
257
#endif
/* THEPEG_MadGraphReader_H */
Generated on Mon Jul 2 2012 16:06:47 for ThePEG by
1.8.1.1