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

S0EmEcalEc1.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_S0EMECALEC1_H
00002 #define FASTSHOWER_S0EMECALEC1_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 namespace FastShower{
00048   class IInTail;
00049   class CoreSamples;
00050   class IProcessedDist;
00051   class IConfigurer;
00052   class PolyArgs;
00053   class IFn;
00054 
00055   class S0EmEcalEc1: 
00056     virtual public ISampler, 
00057     public ISlice0, private DebugBase{
00058     public:
00059 
00060     S0EmEcalEc1(IUpdatingGaussian*, IProcessedDist*, IInTail*, IFn*);
00061     S0EmEcalEc1(const IConfigurer*, const std::string&);
00063     virtual ISampler* clone()                           const;
00064 
00065     virtual void sample(const PolyArgs&, CoreSamples&)  const;
00066     virtual double lastValue(const CoreSamples&)        const;
00067     virtual void components(IDebug::Cpts& )             const;
00068     private:
00069     //
00070     double evalTail(const PolyArgs&) const;
00071     double evalPeak(const PolyArgs&) const;
00072     //
00073     SP<IUpdatingGaussian>       m_peak;
00074     SP<IProcessedDist>          m_tail;
00075     SP<IInTail>                 m_inTail;
00076     SP<IFn>                     m_tailLowerBound;
00077     static const double s_nSigma;
00078     static const double s_tailFluctScale;
00079     
00080   };
00081 }//namespace
00082 #endif
00083 
00084 
00085 
00086 
00087 
00088 
00089 

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