herwig is hosted by Hepforge, IPPP Durham
Herwig++  2.7.0
VffGammaAnalysis.h
00001 // -*- C++ -*-
00002 #ifndef HERWIG_VffGammaAnalysis_H
00003 #define HERWIG_VffGammaAnalysis_H
00004 //
00005 // This is the declaration of the VffGammaAnalysis class.
00006 //
00007 
00008 #include "ThePEG/Handlers/AnalysisHandler.h"
00009 #include "Herwig++/Utilities/Histogram.h"
00010 
00011 namespace Herwig {
00012 
00013 using namespace ThePEG;
00014 
00021 class VffGammaAnalysis: public AnalysisHandler {
00022 
00023 public:
00024 
00028   VffGammaAnalysis();
00029 
00049   virtual void analyze(tEventPtr event, long ieve, int loop, int state);
00050 
00056   virtual void analyze(const tPVector & particles);
00057 
00062   virtual void analyze(tPPtr particle);
00064 
00065 public:
00066 
00073   static void Init();
00074 
00075 protected:
00076 
00083   inline virtual IBPtr clone() const {return new_ptr(*this);}
00084 
00089   inline virtual IBPtr fullclone() const {return new_ptr(*this);}
00091 
00092 
00093 protected:
00094 
00101   virtual void doinitrun();
00102 
00107   virtual void dofinish();
00109 
00110 private:
00111 
00116   static NoPIOClassDescription<VffGammaAnalysis> initVffGammaAnalysis;
00117 
00122   VffGammaAnalysis & operator=(const VffGammaAnalysis &);
00123 
00124 private:
00125 
00129   vector<long> _id;
00130 
00134   vector<HistogramPtr> _masstotal;
00135 
00142   vector<HistogramPtr> _etotal;
00143 
00147   vector<HistogramPtr> _eall;
00148 
00152   vector<HistogramPtr> _esingle;
00154 
00158   vector<HistogramPtr> _nphoton;
00159 };
00160 
00161 }
00162 
00163 #include "ThePEG/Utilities/ClassTraits.h"
00164 
00165 namespace ThePEG {
00166 
00171 template <>
00172 struct BaseClassTrait<Herwig::VffGammaAnalysis,1> {
00174   typedef AnalysisHandler NthBase;
00175 };
00176 
00179 template <>
00180 struct ClassTraits<Herwig::VffGammaAnalysis>
00181   : public ClassTraitsBase<Herwig::VffGammaAnalysis> {
00183   static string className() { return "Herwig::VffGammaAnalysis"; }
00191   static string library() { return "HwDecayAnalysis.so"; }
00192 };
00193 
00196 }
00197 
00198 #endif /* HERWIG_VffGammaAnalysis_H */