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

UpdatingGaussian.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_UPDATINGGAUSSIAN_H
00002 #define FASTSHOWER_UPDATINGGAUSSIAN_H
00003 
00004 #ifndef FASTSHOWER_IUPDATINGGAUSSIAN_H
00005 #include "FastShowerUtils/IUpdatingGaussian.h"
00006 #endif
00007 
00008 #ifndef FASTSHOWER_DEBUGBASE_H
00009 #include "FastShowerUtils/DebugBase.h"
00010 #endif
00011 
00012 #ifndef FASTSHOWER_SP_H
00013 #include "FastShowerUtils/SP.h"
00014 #endif
00015 
00016 #ifndef FASTSHOWER_LINEARPROCESSOR_H
00017 #include "FastShowerUtils/LinearProcessor.h"
00018 #endif
00019 
00020 #ifndef FASTSHOWER_IPROCESSEDDIST_H
00021 #include "FastShowerUtils/IProcessedDist.h"
00022 #endif
00023 
00024 #ifndef FASTSHOWER_IFN_H
00025 #include "FastShowerUtils/IFn.h"
00026 #endif
00027 
00028 #ifndef STD_VECTOR_H
00029 #define STD_VECTOR_H
00030 #include <vector>
00031 #endif
00032 
00033 #ifndef STD_PAIR_H
00034 #define STD_PAIR_H
00035 #include <pair.h>
00036 #endif
00037 
00038 namespace FastShower{
00046   class IConfigurer;
00047 
00048   class UpdatingGaussian: 
00049     virtual public IUpdatingGaussian, private DebugBase{
00050   public:
00051     UpdatingGaussian(IFn* meanFunction, IFn* sigmaFunction,
00052                      IProcessedDist* norm);
00053     UpdatingGaussian(const std::string& samplerName, const IConfigurer&);
00054     ~UpdatingGaussian(){};
00055     virtual IUpdatingGaussian* clone() const;
00056 
00057 
00060     virtual double sample(double phyiscalLow,
00061                           double nSigmaLow,
00062                           double physicalUp,
00063                           double nSigmaUp,
00064                           const PolyArgs&)                 const;
00065     
00068     virtual std::pair<double, double> 
00069       parameters( const PolyArgs& )                        const;
00070     virtual void components(std::vector<const IDebug*>&)   const;    
00071     private:
00073     SP<IFn> m_mean;
00074     SP<IFn> m_sigma;
00075     SP<IProcessedDist> m_normal;
00076   };
00077 }//namespace
00078 #endif
00079 
00080 
00081 
00082 
00083 

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