Herwig++
2.7.0
|
00001 // -*- C++ -*- 00002 #ifndef HERWIG_OmegaPhi3PionAnalysis_H 00003 #define HERWIG_OmegaPhi3PionAnalysis_H 00004 // 00005 // This is the declaration of the OmegaPhi3PionAnalysis 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 OmegaPhi3PionAnalysis: public AnalysisHandler { 00022 00023 public: 00024 00028 inline OmegaPhi3PionAnalysis() : _nmax(50000) {} 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 protected: 00093 00100 virtual void doinitrun(); 00101 00106 virtual void dofinish(); 00108 00109 private: 00110 00115 static NoPIOClassDescription<OmegaPhi3PionAnalysis> initOmegaPhi3PionAnalysis; 00116 00121 OmegaPhi3PionAnalysis & operator=(const OmegaPhi3PionAnalysis &); 00122 00123 private: 00124 00128 vector<HistogramPtr> _xhist; 00129 00133 vector<HistogramPtr> _yhist; 00134 00142 vector<HistogramPtr> _mplus; 00143 00147 vector<HistogramPtr> _mminus; 00148 00152 vector<HistogramPtr> _m0; 00154 00161 vector<vector<Energy> > _xvalue; 00162 00166 vector<vector<Energy> > _yvalue; 00168 00172 unsigned int _nmax; 00173 }; 00174 00175 } 00176 00177 #include "ThePEG/Utilities/ClassTraits.h" 00178 00179 namespace ThePEG { 00180 00185 template <> 00186 struct BaseClassTrait<Herwig::OmegaPhi3PionAnalysis,1> { 00188 typedef AnalysisHandler NthBase; 00189 }; 00190 00193 template <> 00194 struct ClassTraits<Herwig::OmegaPhi3PionAnalysis> 00195 : public ClassTraitsBase<Herwig::OmegaPhi3PionAnalysis> { 00197 static string className() { return "Herwig::OmegaPhi3PionAnalysis"; } 00205 static string library() { return "HwDecayAnalysis.so"; } 00206 }; 00207 00210 } 00211 00212 #endif /* HERWIG_OmegaPhi3PionAnalysis_H */