Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

S0HadEarlyEcalEc1.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_S0HADEARLYECALEC1_H
00002 #define FASTSHOWER_S0HADEARLYECALEC1_H
00003 
00004 #ifndef FASTSHOWER_ISAMPLER_H
00005 #include "FastShowerUtils/ISampler.h"
00006 #endif
00007 
00008 #ifndef FASTSHOWER_DEBUGBASE_H
00009 #include "FastShowerUtils/DebugBase.h"
00010 #endif
00011 
00012 #ifndef FASTSHOWER_IUPDATINGGAUSSIAN_H
00013 #include "FastShowerUtils/IUpdatingGaussian.h"
00014 #endif
00015 
00016 #ifndef FASTSHOWER_ISLICE0_H
00017 #include "FastShowerUtils/ISlice0.h"
00018 #endif
00019 
00020 #ifndef FASTSHOWER_SP_H
00021 #include "FastShowerUtils/SP.h"
00022 #endif
00023 
00024 #ifndef STD_VECTOR_H
00025 #define STD_VECTOR_H
00026 #include <vector>
00027 #endif
00028 
00029 #ifndef STD_STRING_H
00030 #define STD_STRING_H
00031 #include <string>
00032 #endif
00033 
00034 namespace FastShower{
00053   class IInTail;
00054   class CoreSamples;
00055   class IProcessedDist;
00056   class IConfigurer;
00057   class PolyArgs;
00058 
00059   class S0HadEarlyEcalEc1: 
00060     virtual public ISampler, 
00061     public ISlice0, private DebugBase{
00062     public:
00063     //
00064     S0HadEarlyEcalEc1(IUpdatingGaussian*, 
00065                       IProcessedDist*,
00066                       IInTail*);
00067 
00068     S0HadEarlyEcalEc1(const IConfigurer*, const std::string&);
00069 
00071     virtual ISampler* clone()                              const;
00072 
00073     virtual void sample(const PolyArgs&, CoreSamples&)     const;
00074     virtual double lastValue(const CoreSamples&)           const;
00075     virtual void components(IDebug::Cpts& )                const;
00076 
00077     private:
00078     //
00079     double evalTail(const PolyArgs&) const;
00080     double evalPeak(const PolyArgs&) const;
00081     //
00082     SP<IUpdatingGaussian>       m_peak;
00083     SP<IProcessedDist>          m_tail;
00084     SP<IInTail>                 m_inTail;
00085     static const double s_nSigma1;
00086     static const double s_nSigma2;
00087   };
00088 }//namespace
00089 #endif
00090 
00091 
00092 
00093 
00094 
00095 
00096 

Generated on Tue Mar 18 11:50:04 2003 for FastShowerUtils by doxygen1.3-rc1