herwig
is hosted by
Hepforge
,
IPPP Durham
Herwig
7.3.0
Contrib
MultiWeight
MultiWeight.h
1
// -*- C++ -*-
2
//
3
// MultiWeight.h is a part of Herwig - A multi-purpose Monte Carlo event generator
4
// Copyright (C) 2002-2019 The Herwig Collaboration
5
//
6
// Herwig is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef HERWIG_MultiWeight_H
10
#define HERWIG_MultiWeight_H
11
//
12
// This is the declaration of the MultiWeight class.
13
//
14
15
#include "ThePEG/Repository/CurrentGenerator.h"
16
#include "ThePEG/Handlers/AnalysisHandler.h"
17
#include "Herwig/Utilities/Histogram.h"
18
19
20
21
#include <cmath>
22
#include <fstream>
23
24
namespace
Herwig
{
25
26
using namespace
ThePEG
;
27
38
class
MultiWeight
:
public
AnalysisHandler
{
39
40
public
:
41
45
inline
MultiWeight
();
46
66
virtual
void
analyze
(
tEventPtr
event,
long
ieve,
int
loop,
int
state
);
67
68
70
71
72
public
:
73
80
static
void
Init
();
81
82
83
protected
:
90
virtual
IBPtr
clone
()
const
;
91
96
virtual
IBPtr
fullclone
()
const
;
98
99
protected
:
100
inline
virtual
void
doinitrun();
107
virtual
void
dofinish
();
109
110
private
:
111
116
static
NoPIOClassDescription<MultiWeight>
initMultiWeight
;
117
122
MultiWeight
&
operator=
(
const
MultiWeight
&) =
delete
;
123
124
private
:
125
126
};
127
128
}
129
130
#include "ThePEG/Utilities/ClassTraits.h"
131
132
namespace
ThePEG
{
133
138
template
<>
139
struct
BaseClassTrait
<
Herwig
::MultiWeight,1> {
141
typedef
AnalysisHandler
NthBase
;
142
};
143
146
template
<>
147
struct
ClassTraits
<
Herwig
::MultiWeight>
148
:
public
ClassTraitsBase
<Herwig::MultiWeight> {
150
static
string
className
() {
return
"Herwig::MultiWeight"
; }
154
static
string
library
() {
return
"MultiWeight.so"
; }
155
};
156
159
}
160
161
162
#endif
/* HERWIG_SimpleLHCAnalysis_H */
Herwig::MultiWeight
The MultiWeight class is designed to perform some simple analysis of gauge boson, W and Z,...
Definition:
MultiWeight.h:38
Herwig::MultiWeight::Init
static void Init()
The standard Init function used to initialize the interfaces.
Herwig::MultiWeight::operator=
MultiWeight & operator=(const MultiWeight &)=delete
The assignment operator is private and must never be called.
Herwig::MultiWeight::analyze
virtual void analyze(tEventPtr event, long ieve, int loop, int state)
Analyze a given Event.
Herwig::MultiWeight::dofinish
virtual void dofinish()
Finalize this object.
Herwig::MultiWeight::MultiWeight
MultiWeight()
The default constructor.
Herwig::MultiWeight::initMultiWeight
static NoPIOClassDescription< MultiWeight > initMultiWeight
The static object used to initialize the description of this class.
Definition:
MultiWeight.h:116
Herwig::MultiWeight::fullclone
virtual IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
Herwig::MultiWeight::clone
virtual IBPtr clone() const
Make a simple clone of this object.
ThePEG::AnalysisHandler
ThePEG::InterfacedBase::state
InitState state() const
ThePEG::NoPIOClassDescription
Herwig
-*- C++ -*-
Definition:
BasicConsistency.h:17
ThePEG
ThePEG::IBPtr
ThePEG::Ptr< InterfacedBase >::pointer IBPtr
ThePEG::tEventPtr
ThePEG::Ptr< Event >::transient_pointer tEventPtr
ThePEG::BaseClassTrait
ThePEG::BaseClassTrait::NthBase
int NthBase
ThePEG::ClassTraitsBase
ThePEG::ClassTraitsBase::className
static string className()
ThePEG::ClassTraitsBase::library
static string library()
ThePEG::ClassTraits
Generated on Thu Jun 20 2024 17:50:52 for Herwig by
1.9.6