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

HadEcalHcalSharesBase.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_HADECALHCALSHARESBASE_H
00002 #define FASTSHOWER_HADECALHCALSHARESBASE_H
00003 
00004 #ifndef FASTSHOWER_IFNOFPARTICLEPARAMETERS2_H
00005 #include "FastShowerUtils/IFnOfParticleParameters2.h"
00006 #endif
00007 
00008 #ifndef FASTSHOWER_DEBUGBASE_H
00009 #include "FastShowerUtils/DebugBase.h"
00010 #endif
00011 
00012 #ifndef STD_PAIR_H
00013 #define STD_PAIR_H
00014 #include <pair.h>
00015 #endif
00016 
00017 #ifndef STD_MAP_H
00018 #define STD_MAP_H
00019 #include <map>
00020 #endif
00021 
00022 #ifndef STD_STRING_H
00023 #define STD_STRING_H
00024 #include <string>
00025 #endif
00026 
00027 namespace FastShower{
00035   //class IDoubleShowererSelectorConfig;
00036   class ITripleShowererSelectorConfig;
00037   class DistRandomiser2D;
00038 
00039   class HadEcalHcalSharesBase: 
00040     virtual public IFnOfParticleParameters2,
00041     private DebugBase{
00042   public:
00043     //HadEcalHcalSharesBase(const IDoubleShowererSelectorConfig*, const std::string&);
00044     HadEcalHcalSharesBase(const ITripleShowererSelectorConfig*, const std::string&);
00045     virtual ~HadEcalHcalSharesBase();
00046     //
00047     virtual std::pair<double, double> 
00048       value(const ParticleParameters&) const;
00049     //
00050     void nudge(const double, const double,
00051                std::pair<double,double>&) const;
00052     //
00053     virtual double mean(const double) const=0;
00054     virtual double sigma(const double) const=0;
00055     //
00056     virtual IFnOfParticleParameters2* clone() const=0;
00057     
00058     typedef std::map<double, std::string>::const_iterator MCItr_Type1;
00059     typedef std::map<double, DistRandomiser2D*>::const_iterator MCItr_Type2;
00060 
00061   private:
00062     std::map<double, std::string> m_histograms;
00063     std::map<double, DistRandomiser2D*>  m_energyDists;
00064   };
00065 }//namespace
00066 #endif
00067 
00068 

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