00001 #ifndef FASTSHOWER_S0EMECALBAR1_H 00002 #define FASTSHOWER_S0EMECALBAR1_H 00003 00004 #ifndef FASTSHOWER_ISAMPLER_H 00005 #include "FastShowerUtils/ISampler.h" 00006 #endif 00007 00008 #ifndef FASTSHOWER_SP_H 00009 #include "FastShowerUtils/SP.h" 00010 #endif 00011 00012 #ifndef FASTSHOWER_GAUSSUPDATING_H 00013 #include "FastShowerUtils/GaussUpdating.h" 00014 #endif 00015 00016 #ifndef FASTSHOWER_PROCESSEDFLAT_H 00017 #include "FastShowerUtils/ProcessedFlat.h" 00018 #endif 00019 00020 namespace FastShower{ 00039 class CoreSamples; 00040 class ParticleParameters; 00041 00042 class S0EmEcalBar1: public ISampler{ 00043 public: 00044 S0EmEcalBar1(){} 00045 S0EmEcalBar1(const S0EmEcalBar1& c); 00046 ~S0EmEcalBar1(){} 00047 S0EmEcalBar1& operator=(const S0EmEcalBar1&); 00049 virtual ISampler* clone() const; 00050 virtual void sample(const ParticleParameters&, CoreSamples&) const; 00051 private: 00052 SP<GaussUpdating> m_peak; 00053 SP<ProcessedFlat> m_flat; 00054 00055 }; 00056 } 00057 00058 00059