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

Showerer.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_SHOWERER_H
00002 #define FASTSHOWER_SHOWERER_H
00003 
00004 #ifndef ATLAS_ISHOWERER_H
00005 #include "FastShowerUtils/IShowerer.h"
00006 #endif
00007 
00008 #ifndef ATLAS_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 STD_VECTOR_H
00017 #define STD_VECTOR_H
00018 #include <vector>
00019 #endif
00020 
00021 #ifndef STD_STRING_H
00022 #define STD_STRING_H
00023 #include <string>
00024 #endif
00025 
00026 namespace FastShower{
00031   using std::vector;
00032 
00033   class Gridlet;
00034   class IDepositor;
00035   class INormaliser;
00036   class IConfigurer;
00037   class Normalisations;
00038   class ParticleParameters;
00039   class IFnOfParticleParameters;
00040   class EnergyLimiter;
00041 
00042   class Showerer: virtual public IShowerer, private DebugBase{
00043   public:
00044     Showerer(IConfigurer*);
00045  
00046     Showerer(vector<IDepositor*>, 
00047              vector<IDepositor*>,
00048              INormaliser*, 
00049              INormaliser*);
00050 
00051     Showerer(const IConfigurer*, const std::string&);
00052     Showerer(const Showerer&);
00053     Showerer& operator=(const Showerer&);
00054     ~Showerer();
00055     virtual void shower(ParticleParameters&, Gridlet*, 
00056                         Normalisations&, Normalisations&) const;
00057     virtual void normalise(const ParticleParameters&, 
00058                            Normalisations&, Normalisations&) const;
00060     virtual void components(IDebug::Cpts&)                   const;
00061   private:
00064     std::vector<IDepositor*> m_eDepositors;
00066     std::vector<IDepositor*> m_hDepositors;
00068     SP<INormaliser>   m_eNormaliser;
00069     SP<INormaliser>   m_hNormaliser;
00071     SP<EnergyLimiter> m_eLimiter;
00072   };
00073   
00074 }//namespace
00075 #endif
00076 
00077 
00078 
00079 
00080 
00081 

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