00001 #ifndef FASTSHOWER_ISAMPLER_H 00002 #define FASTSHOWER_ISAMPLER_H 00003 00004 #ifndef FASTSHOWER_IDEBUG_H 00005 #include "FastShowerUtils/IDebug.h" 00006 #endif 00007 00008 namespace FastShower{ 00013 class CoreSamples; 00014 class PolyArgs; 00015 class ISampler:virtual public IDebug{ 00016 public: 00018 virtual ISampler* clone() const = 0; 00020 virtual void sample(const PolyArgs&, CoreSamples&) const = 0; 00022 virtual double lastValue(const CoreSamples&) const=0; 00023 virtual ~ISampler(); 00024 }; 00025 } 00026 #endif 00027