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

CoreDepositor.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_COREDEPOSITOR_H
00002 #define FASTSHOWER_COREDEPOSITOR_H
00003 
00004 #ifndef FASTSHOWER_SP_H
00005 #include "FastShowerUtils/SP.h"
00006 #endif
00007 
00008 #ifndef FASTSHOWER_CORESAMPLES_H
00009 #include "FastShowerUtils/CoreSamples.h"
00010 #endif
00011 
00012 #ifndef FASTSHOWER_DEPOSITS_H
00013 #include "FastShowerUtils/Deposits.h"
00014 #endif
00015 
00016 #ifndef FASTSHOWER_IDEPOSITOR_H
00017 #include "FastShowerUtils/IDepositor.h"
00018 #endif
00019 
00020 
00021 #ifndef FASTSHOWER_SP_H
00022 #include "FastShowerUtils/SP.h"
00023 #endif
00024 
00025 #ifndef STD_PAIR_H
00026 #define STD_PAIR_H
00027 #include <pair.h>
00028 #endif
00029 
00030 #ifndef FASTSHOWER_IDEBUG_H
00031 #include "FastShowerUtils/IDebug.h"
00032 #endif
00033 
00034 #ifndef FASTSHOWER_DEBUG_BASE_H
00035 #include "FastShowerUtils/DebugBase.h"
00036 #endif
00037 
00038 
00039 namespace FastShower{
00048   class Pinger;
00049   class ISampler;
00050   class ParticleParameters;
00051   //class Normalisations;
00052   using std::pair;
00053   using boost::array;
00054 
00055   class CoreDepositor: virtual public IDepositor, private DebugBase{
00056   public:
00057 
00066     enum {sf, sc, sn, af, ac, an};
00068     CoreDepositor(ISampler*, ISampler*, ISampler*, ISampler*);
00069 
00073     virtual void deposit(const ParticleParameters&,
00074                          const Normalisations&, IDeposits&);
00075     //    void acceptNormalisations(const Normalisations&);
00077     virtual IDepositor* clone() const;
00078 
00083     virtual void components(IDebug::Cpts&)const;
00084     typedef  boost::array<double, 6> ProximityDeposits;
00085     typedef ProximityDeposits::iterator ProxDepIter;
00086   private:
00090     void fillProximityDeps();
00092 
00093     ProximityDeposits m_proximityDeps;
00095     boost::array<SP<ISampler>, 4> m_samplers;
00097     CoreSamples m_cs;
00102     array<array< pair<int, int>, 6>, 4> m_mappers;   
00103   };
00104 }
00105 #endif
00106  
00107 
00108 

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