// ESAF : Euso Simulation and Analysis Framework // $Id: LightSource.hh,v 1.13 2005/01/24 09:23:59 moreggia Exp $ // D. De Marco - M. Pallavicini created Jan, 20 2002 // // IMPORTANT : EVERY child of this generic class MUST CONTAIN and HANDLE // creation and destruction of the PhotonsInAtmosphere* pointer // (the object must be in the HEAP) // #ifndef __LIGHTSOURCE_HH_ #define __LIGHTSOURCE_HH_ #include "euso.hh" #include "EsafConfigurable.hh" #include "ConfigFileParser.hh" class PhotonsInAtmosphere; class MCTruth; class PhysicsData; class LightSource : public EsafConfigurable { public: // ctor LightSource() {} LightSource(const string& name); // dtor virtual ~LightSource(); virtual PhotonsInAtmosphere* Get( const PhysicsData* ) = 0; virtual MCTruth* Truth() = 0; // get ready for next event virtual void Reset() = 0; EsafConfigClass(LightSource,LightSource) private: string fName; ClassDef(LightSource,0) }; #endif /* __LIGHTSOURCE_HH_ */