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

C0EmEcalEc1.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_C0EMECALEC1_H
00002 #define FASTSHOWER_C0EMECALEC1_H
00003 
00004 #ifndef FASTSHOWER_ISAMPLER_H
00005 #include "FastShowerUtils/ISampler.h"
00006 #endif
00007 
00008 #ifndef FASTSHOWER_IUPDATINGGAUSSIAN_H
00009 #include "FastShowerUtils/IUpdatingGaussian.h"
00010 #endif
00011 
00012 #ifndef FASTSHOWER_ICELL0_H
00013 #include "FastShowerUtils/ICell0.h"
00014 #endif
00015 
00016 #ifndef FASTSHOWER_DEBUGBASE_H
00017 #include "FastShowerUtils/DebugBase.h"
00018 #endif
00019 
00020 #ifndef FASTSHOWER_SP_H
00021 #include "FastShowerUtils/SP.h"
00022 #endif
00023 
00024 namespace FastShower{
00043   class IInTail;
00044   class CoreSamples;
00045   class IProcessedDist;
00046   class IConfigurer;
00047   class PolyArgs;
00048   class IFn;
00049 
00050   class C0EmEcalEc1: 
00051     virtual public ISampler, 
00052     public ICell0, private DebugBase{
00053     public:
00054     //  
00055     C0EmEcalEc1(IUpdatingGaussian*, IProcessedDist*, IInTail*, IFn*);
00056     C0EmEcalEc1(const IConfigurer*, const std::string&);
00058     virtual ISampler* clone()                           const;
00059 
00060     virtual void sample(const PolyArgs&, CoreSamples&)  const;
00061     virtual double lastValue(const CoreSamples&)        const;
00062     virtual void components(IDebug::Cpts& )             const;
00063 
00064     private:
00065     //
00066     double evalTail(const PolyArgs&) const;
00067     double evalPeak(const PolyArgs&) const;
00068     //
00069     SP<IUpdatingGaussian>              m_peak;
00070     SP<IProcessedDist>                 m_tail;
00071     SP<IInTail>                        m_inTail;
00072     SP<IFn>                            m_tailLowerBound;
00073     static const double s_nSigma1;
00074     static const double s_nSigma2;
00075     static const double s_tailFluctScale;
00076     
00077   };
00078 }//namespace
00079 #endif
00080 
00081 
00082 
00083 
00084 
00085 
00086 

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