thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Analysis
NLOHepMCFile.h
1
// -*- C++ -*-
2
#ifndef ThePEG_NLOHepMCFile_H
3
#define ThePEG_NLOHepMCFile_H
4
//
5
// This is the declaration of the NLOHepMCFile class.
6
//
7
#include <config.h>
8
#include "ThePEG/Handlers/AnalysisHandler.h"
9
#include "ThePEG/Config/HepMCHelper.h"
10
namespace
ThePEG
{
11
18
class
NLOHepMCFile
:
public
AnalysisHandler
{
19
20
public
:
21
27
NLOHepMCFile
();
28
32
NLOHepMCFile
(
const
NLOHepMCFile
&);
34
35
public
:
36
56
virtual
void
analyze
(
tEventPtr
event,
long
ieve,
int
loop,
int
state
);
57
61
HepMC::GenEvent *
makeEvent
(
tEventPtr
event,
tSubProPtr
sub,
long
no,
62
Energy
eUnit,
Length
lUnit,
63
CrossSection
xsec,
CrossSection
xsecErr)
const
;
64
66
67
public
:
68
75
void
persistentOutput
(
PersistentOStream
& os)
const
;
76
82
void
persistentInput
(
PersistentIStream
& is,
int
version);
84
91
static
void
Init
();
92
93
protected
:
94
101
virtual
void
doinitrun
();
102
107
virtual
void
dofinish
();
109
110
protected
:
111
118
virtual
IBPtr
clone
()
const
;
119
124
virtual
IBPtr
fullclone
()
const
;
126
127
128
// If needed, insert declarations of virtual function defined in the
129
// InterfacedBase class here (using ThePEG-interfaced-decl in Emacs).
130
131
private
:
132
136
long
_remnantId
;
137
141
int
_format
;
142
146
string
_filename
;
147
148
#ifdef HAVE_HEPMC_ROOTIO
152
string
_ttreename;
153
157
string
_tbranchname;
158
159
#endif
163
#ifdef HAVE_HEPMC3
164
HepMC::Writer *
_hepmcio
;
165
#else
166
HepMC::IO_BaseClass *
_hepmcio
;
167
#endif
168
172
ofstream
_hepmcdump
;
173
177
int
_unitchoice
;
178
182
unsigned
int
_geneventPrecision
;
183
187
unsigned
long
_eventNumber
;
188
189
private
:
190
195
NLOHepMCFile
&
operator=
(
const
NLOHepMCFile
&) =
delete
;
196
197
};
198
199
}
200
201
#endif
/* ThePEG_NLOHepMCFile_H */
ThePEG::AnalysisHandler
The AnalysisHandler is the base class of all analysis objects which may be handled by the FullEventGe...
Definition:
AnalysisHandler.h:41
ThePEG::InterfacedBase::state
InitState state() const
Return the state of initialization of this object.
Definition:
InterfacedBase.h:298
ThePEG::NLOHepMCFile
Write hard sub processes or sub process groups to HepMC.
Definition:
NLOHepMCFile.h:18
ThePEG::NLOHepMCFile::dofinish
virtual void dofinish()
Finalize this object.
ThePEG::NLOHepMCFile::makeEvent
HepMC::GenEvent * makeEvent(tEventPtr event, tSubProPtr sub, long no, Energy eUnit, Length lUnit, CrossSection xsec, CrossSection xsecErr) const
Produca a HepMC event for the given subprocess.
ThePEG::NLOHepMCFile::persistentInput
void persistentInput(PersistentIStream &is, int version)
Function used to read in object persistently.
ThePEG::NLOHepMCFile::Init
static void Init()
The standard Init function used to initialize the interfaces.
ThePEG::NLOHepMCFile::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
ThePEG::NLOHepMCFile::_eventNumber
unsigned long _eventNumber
Count events.
Definition:
NLOHepMCFile.h:187
ThePEG::NLOHepMCFile::_format
int _format
The HepMC format.
Definition:
NLOHepMCFile.h:141
ThePEG::NLOHepMCFile::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::NLOHepMCFile::doinitrun
virtual void doinitrun()
Initialize this object.
ThePEG::NLOHepMCFile::persistentOutput
void persistentOutput(PersistentOStream &os) const
Function used to write out object persistently.
ThePEG::NLOHepMCFile::_filename
string _filename
The HepMC filename.
Definition:
NLOHepMCFile.h:146
ThePEG::NLOHepMCFile::NLOHepMCFile
NLOHepMCFile()
The default constructor.
ThePEG::NLOHepMCFile::NLOHepMCFile
NLOHepMCFile(const NLOHepMCFile &)
The copy constructor.
ThePEG::NLOHepMCFile::_unitchoice
int _unitchoice
Selector for the choice of units.
Definition:
NLOHepMCFile.h:177
ThePEG::NLOHepMCFile::_geneventPrecision
unsigned int _geneventPrecision
Choice of output precision in GenEvent format.
Definition:
NLOHepMCFile.h:182
ThePEG::NLOHepMCFile::analyze
virtual void analyze(tEventPtr event, long ieve, int loop, int state)
Analyze a given Event.
ThePEG::NLOHepMCFile::_hepmcio
HepMC::Writer * _hepmcio
The HepMC I/O handler.
Definition:
NLOHepMCFile.h:164
ThePEG::NLOHepMCFile::operator=
NLOHepMCFile & operator=(const NLOHepMCFile &)=delete
The assignment operator is private and must never be called.
ThePEG::NLOHepMCFile::_hepmcdump
ofstream _hepmcdump
The HepMC dump file.
Definition:
NLOHepMCFile.h:172
ThePEG::NLOHepMCFile::_remnantId
long _remnantId
The PDG ID to be used for remnants.
Definition:
NLOHepMCFile.h:136
ThePEG::PersistentIStream
PersistentIStream is used to read persistent objects from a stream where they were previously written...
Definition:
PersistentIStream.h:48
ThePEG::PersistentOStream
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
Definition:
PersistentOStream.h:51
ThePEG::Pointer::RCPtr
RCPtr is a reference counted (smart) pointer.
Definition:
RCPtr.h:60
ThePEG::Pointer::TransientRCPtr
TransientRCPtr is a simple wrapper around a bare pointer which can be assigned to and from an RCPtr a...
Definition:
RCPtr.h:519
ThePEG::Qty< std::ratio< L, DL >, std::ratio< E, DE >, std::ratio< Q, DQ > >
Definition:
PhysicalQty.h:77
ThePEG::Qty< 0, 1, 0 >
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6