herwig is hosted by Hepforge, IPPP Durham
Herwig++  2.7.0
ZpTRun2.h
00001 // -*- C++ -*-
00002 #ifndef HERWIG_ZpTRun2_H
00003 #define HERWIG_ZpTRun2_H
00004 //
00005 // This is the declaration of the ZpTRun2 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 ZpTRun2: public AnalysisHandler {
00022 
00023 public:
00024 
00044   virtual void analyze(tEventPtr event, long ieve, int loop, int state);
00046 
00047 public:
00048 
00055   static void Init();
00056 
00057 protected:
00058 
00065   inline virtual IBPtr clone() const;
00066 
00071   inline virtual IBPtr fullclone() const;
00073 
00074 protected:
00075 
00082   virtual void doinitrun();
00083 
00088   virtual void dofinish();
00090 
00091 private:
00092 
00097   static NoPIOClassDescription<ZpTRun2> initZpTRun2;
00098 
00103   ZpTRun2 & operator=(const ZpTRun2 &);
00104 
00105 private:
00106 
00110   HistogramPtr _pt;
00111 
00112 };
00113 
00114 }
00115 
00116 #include "ThePEG/Utilities/ClassTraits.h"
00117 
00118 namespace ThePEG {
00119 
00124 template <>
00125 struct BaseClassTrait<Herwig::ZpTRun2,1> {
00127   typedef AnalysisHandler NthBase;
00128 };
00129 
00132 template <>
00133 struct ClassTraits<Herwig::ZpTRun2>
00134   : public ClassTraitsBase<Herwig::ZpTRun2> {
00136   static string className() { return "Herwig::ZpTRun2"; }
00144   static string library() { return "HwTevatronAnalysis.so"; }
00145 };
00146 
00149 }
00150 
00151 #endif /* HERWIG_ZpTRun2_H */