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

IProcessedDistPtr.h

Go to the documentation of this file.
00001 #ifndef FASTSHOWER_IPROCESSEDDISTPTR_H
00002 #define FASTSHOWER_IPROCESSEDDISTPTR_H
00003 
00004 #ifndef FASTSHOWER_DEBUGBASE_H
00005 #include "FastShowerUtils/DebugBase.h"
00006 #endif
00007 
00008 #ifndef FASTSHOWER_IPROCESSEDDIST_H
00009 #include "FastShowerUtils/IProcessedDist.h"
00010 #endif
00011 
00012 
00013 #ifndef FASTSHOWER_PARTICLEPARAMETERS_H
00014 #include "FastShowerUtils/ParticleParameters.h"
00015 #endif
00016 
00017 #ifndef FASTSHOWER_SP_H
00018 #include "FastShowerUtils/SP.h"
00019 #endif
00020 
00021 #ifndef STD_STRING_H
00022 #define STD_STRING_H
00023 #include <string>
00024 #endif
00025 
00026 #include <algorithm>
00027 
00028 namespace FastShower{
00033   class IPinger;
00034   class IDistProcessor;
00035   //
00036   class IProcessedDistPtr: 
00037     public IProcessedDist, private DebugBase{
00038   public:
00039   //
00040     IProcessedDistPtr(IProcessedDist*, std::string s="");
00041     IProcessedDistPtr(const IProcessedDistPtr &);
00042     IProcessedDistPtr& operator=(const IProcessedDistPtr& s);
00043     ~IProcessedDistPtr(){};
00044 
00048     virtual double sample() const;
00049     //process the underlying dist
00050     virtual double sample(const IDistProcessor*) const;
00052     virtual double sample(double lowLim, 
00053                           double upLim, 
00054                           const IDistProcessor*)  const;
00055     virtual IProcessedDist* clone() const;
00059     virtual void ping(IPinger&) const;
00060     virtual std::string name() const;
00061     virtual void components(IDebug::Cpts& ) const;
00062     private:
00063     SP<IProcessedDist> m_pointee;
00064   };
00065 }
00066 #endif
00067 
00068   
00069 
00070 
00071 
00072 
00073 
00074 
00075 
00076 
00077 
00078 
00079 

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