Herwig++
2.7.0
|
00001 // -*- C++ -*- 00002 #ifndef HERWIG_Upsilon4SSpectrumAnalysis_H 00003 #define HERWIG_Upsilon4SSpectrumAnalysis_H 00004 // 00005 // This is the declaration of the Upsilon4SSpectrumAnalysis class. 00006 // 00007 00008 #include "ThePEG/Handlers/AnalysisHandler.h" 00009 #include "Herwig++/Utilities/Histogram.h" 00010 00011 namespace Herwig { 00012 using namespace ThePEG; 00013 00020 class Upsilon4SSpectrumAnalysis: public AnalysisHandler { 00021 00022 public: 00023 00043 virtual void analyze(tEventPtr event, long ieve, int loop, int state); 00045 00046 public: 00047 00054 static void Init(); 00055 00056 protected: 00057 00064 virtual IBPtr clone() const; 00065 00070 virtual IBPtr fullclone() const; 00072 00073 protected: 00074 00081 virtual void doinitrun(); 00082 00087 virtual void dofinish(); 00089 00090 private: 00091 00096 static NoPIOClassDescription<Upsilon4SSpectrumAnalysis> initUpsilon4SSpectrumAnalysis; 00097 00102 Upsilon4SSpectrumAnalysis & operator=(const Upsilon4SSpectrumAnalysis &); 00103 00104 private: 00105 00109 HistogramPtr _spectrumpipNo; 00110 00114 HistogramPtr _spectrumpipAll; 00115 00119 HistogramPtr _spectrumpi0; 00120 00124 HistogramPtr _spectrumKpA,_spectrumKpB; 00125 00129 HistogramPtr _spectrumprotonNo; 00130 00134 HistogramPtr _spectrumprotonAll; 00135 00139 HistogramPtr _spectrumK0; 00140 00141 }; 00142 00143 } 00144 00145 #include "ThePEG/Utilities/ClassTraits.h" 00146 00147 namespace ThePEG { 00148 00153 template <> 00154 struct BaseClassTrait<Herwig::Upsilon4SSpectrumAnalysis,1> { 00156 typedef AnalysisHandler NthBase; 00157 }; 00158 00161 template <> 00162 struct ClassTraits<Herwig::Upsilon4SSpectrumAnalysis> 00163 : public ClassTraitsBase<Herwig::Upsilon4SSpectrumAnalysis> { 00165 static string className() { return "Herwig::Upsilon4SSpectrumAnalysis"; } 00173 static string library() { return "HwDecayAnalysis.so"; } 00174 }; 00175 00178 } 00179 00180 #endif /* HERWIG_Upsilon4SSpectrumAnalysis_H */