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

IConfigurer.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_ICONFIGURER_H
00002 #define FASTSHOWER_ICONFIGURER_H
00003 //
00005 //
00006 #ifndef FASTSHOWER_HALODEPOSITOR_H
00007 #include "FastShowerUtils/HaloDepositor.h"
00008 #endif
00009 
00010 //
00011 #ifndef STD_STRING_H
00012 #define STD_STRING_H
00013 #include <string>
00014 #endif
00015 
00016 #ifndef STD_VECTOR_H
00017 #define STD_VECTOR_H
00018 #include <vector>
00019 #endif
00020 
00021 #ifndef STD_MAP_H
00022 #define STD_MAP_H
00023 #include <map>
00024 #endif
00025 
00026 
00027 namespace FastShower{
00028 
00029   class IShowerer;
00030   class IFn;
00031   class IUpdatingGaussian;
00032   class IProcessedDist;
00033   class IInTail;
00034   class ISampler;
00035   class INormaliser;
00036   class IDepositor;
00037   class IFnOfParticleParameters;
00038   class IFnOfParticleParameters2;
00039   class EnergyLimiter;
00040 
00041   class IConfigurer{
00042   public:
00043     //
00044     virtual ~IConfigurer(){}
00045     virtual IShowerer* makeShowerer(const std::string&)              const = 0;
00047     virtual IFn* findFn(const std::string&)                          const = 0;
00048     virtual 
00049       IFnOfParticleParameters*  findFnPP(const std::string&)         const = 0;
00050     virtual 
00051       IFnOfParticleParameters2* findFnPP2(const std::string&)        const = 0;
00052     virtual 
00053       IUpdatingGaussian*        findIUG(const std::string&)          const = 0;
00054     virtual 
00055       ISampler*                 findSampler(const std::string&)      const = 0;
00056     virtual 
00057       INormaliser*              findNormaliser(const std::string&)   const = 0;
00058     //
00059     virtual 
00060       IUpdatingGaussian* makeGaussian(const std::string&)            const = 0;
00061     virtual 
00062       IUpdatingGaussian* makeUpdatingGaussian0LP(const std::string&) const = 0;
00063     virtual 
00064       IUpdatingGaussian* makeUpdatingGaussian01P(const std::string&) const = 0;
00065     virtual 
00066       IUpdatingGaussian* makeUpdatingGaussian02P(const std::string&) const = 0;
00067     virtual 
00068       IProcessedDist* makeProcessedNormal(const std::string&)        const = 0;
00069     virtual 
00070       IProcessedDist* makeProcessedFlat(const std::string&)          const = 0;
00071     //
00072     virtual 
00073       IInTail* makeIInTail(const std::string&)                       const = 0;
00074     //
00075     //virtual HaloDepositor::HaloArray* makeHaloOrder()                const = 0;
00076     //
00077     //virtual HaloDepositor::HaloFns* makeHaloFns()                    const = 0;
00078     //
00079     virtual void eDepositors(std::vector<IDepositor*>&)              const = 0;
00080     virtual void hDepositors(std::vector<IDepositor*>&)              const = 0;
00081     virtual EnergyLimiter* energyLimiter()                           const = 0;
00082 
00083  };
00084   
00085 }//namespace
00086 #endif
00087 
00088 
00089 
00090 
00091 

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