thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
NLORivetAnalysis.h
1 // -*- C++ -*-
2 #ifndef THEPEG_NLORivetAnalysis_H
3 #define THEPEG_NLORivetAnalysis_H
4 //
5 // This is the declaration of the NLORivetAnalysis class.
6 //
7 
8 #include "ThePEG/Handlers/AnalysisHandler.h"
9 #include "Rivet/AnalysisHandler.hh"
10 
11 namespace ThePEG {
12 
20 
21 public:
22 
27 
28 public:
29 
49  virtual void analyze(ThePEG::tEventPtr event, long ieve, int loop, int state);
50 
52 
53 public:
54 
62 
68  void persistentInput(ThePEG::PersistentIStream & is, int version);
70 
77  static void Init();
78 
79 protected:
80 
87  virtual ThePEG::IBPtr clone() const;
88 
93  virtual ThePEG::IBPtr fullclone() const;
95 
96 protected:
97 
103  virtual void doinit();
104 
109  virtual void doinitrun();
110 
115  virtual void dofinish();
117 
118 private:
119 
125 
130  NLORivetAnalysis & operator=(const NLORivetAnalysis &) = delete;
131 
132 private:
137 
142 
146  vector<string> _analyses;
147 
151  string filename;
152 
156  bool debug;
157 
161  Rivet::AnalysisHandler * _rivet;
162 
166  unsigned long _nevent;
167 };
168 
169 }
170 
171 #include "ThePEG/Utilities/ClassTraits.h"
172 
173 namespace ThePEG {
174 
179 template <>
180 struct BaseClassTrait<NLORivetAnalysis,1> {
182  typedef AnalysisHandler NthBase;
183 };
184 
187 template <>
188 struct ClassTraits<NLORivetAnalysis>
189  : public ClassTraitsBase<NLORivetAnalysis> {
191  static string className() { return "ThePEG::NLORivetAnalysis"; }
199  static string library() { return "RivetAnalysis.so"; }
200 };
201 
204 }
205 
206 #endif /* THEPEG_NLORivetAnalysis_H */
static ThePEG::ClassDescription< NLORivetAnalysis > initNLORivetAnalysis
The static object used to initialize the description of this class.
PersistentIStream is used to read persistent objects from a stream where they were previously written...
NLORivetAnalysis()
The default constructor.
virtual void doinit()
Initialize this object.
long _remnantId
The PDG ID to be used for remnants.
A concreate implementation of ClassDescriptionBase describing a concrete class with persistent data...
vector< string > _analyses
The Analyses to use.
PersistentOStream is used to write objects persistently to a stream from which they can be read in ag...
static void Init()
The standard Init function used to initialize the interfaces.
virtual void analyze(ThePEG::tEventPtr event, long ieve, int loop, int state)
Analyze a given Event.
TransientRCPtr is a simple wrapper around a bare pointer which can be assigned to and from an RCPtr a...
Definition: RCPtr.h:519
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
The AnalysisHandler is the base class of all analysis objects which may be handled by the FullEventGe...
Here is the documentation of the NLORivetAnalysis class.
int _unitchoice
Selector for the choice of units.
InitState state() const
Return the state of initialization of this object.
virtual ThePEG::IBPtr clone() const
Make a simple clone of this object.
virtual void doinitrun()
Initialize this object.
virtual ThePEG::IBPtr fullclone() const
Make a clone of this object, possibly modifying the cloned object to make it sane.
void persistentInput(ThePEG::PersistentIStream &is, int version)
Function used to read in object persistently.
virtual void dofinish()
Finalize this object.
unsigned long _nevent
Event count.
string filename
The base name of the output file.
RCPtr is a reference counted (smart) pointer.
Definition: RCPtr.h:60
NLORivetAnalysis & operator=(const NLORivetAnalysis &)=delete
The assignment operator is private and must never be called.
bool debug
Enable debugging information from NLORivet.
void persistentOutput(ThePEG::PersistentOStream &os) const
Function used to write out object persistently.
The default concrete implementation of ClassTraitsBase.
Definition: ClassTraits.h:134
BaseClassTraits describes the base classes of the templated class.
Definition: ClassTraits.h:156
Rivet::AnalysisHandler * _rivet
The NLORivetAnalysisHandler.
The templated ClassTraitsBase class defines a set of default information about classes used by ThePEG...
Definition: ClassTraits.h:52