// ESAF : Euso Simulation and Analysis Framework // $Id: TestGround.hh,v 1.12 2005/04/14 12:44:43 moreggia Exp $ // S. Moreggia created 27 October 2003 // A test class for ground description // Not yet completely implemented (will be used for Cerenkov) #ifndef __TESTGROUND_HH__ #define __TESTGROUND_HH__ #include "Ground.hh" class TestGround : public Ground { public: // ctor TestGround(); //dtor virtual ~TestGround(); // Get an impact form starting position and direction in atmosphere virtual EarthVector GetImpact(const EarthVector&,const EarthVector&) const; // Bidirectionnal reflectance distribution function // Returns the value for light going from pos1 to pos2 virtual Double_t Brdf(const EarthVector& pos1, const EarthVector& pos2) const; // Get albedo for a given position virtual Double_t Albedo(const EarthVector&) const {return fAlbedo;} // Get ground altitude at the vertical of the given point inline virtual Double_t Altitude(const EarthVector&) const {return fAltitude;} // Configure data members virtual void Configure(); // get ready for next event void Reset() {} EsafConfigClass(RadiativeTransfer,TestGround) private: string fType; // lambertian or isotropic Double_t fAltitude; // from sea level Double_t fAlbedo; // between 0..1 ClassDef(TestGround,0) }; #endif /* __TESTGROUND_HH__ */