// ESAF : Euso Simulation and Analysis Framework // $Id: LinsleyAtmosphereData.hh,v 1.8 2004/10/21 09:11:17 berat Exp $ // Sylvain Moreggia created May, 17 2004 #ifndef __LINSLEYATMOSPHEREDATA_HH_ #define __LINSLEYATMOSPHEREDATA_HH_ #include "euso.hh" #include "AtmosphereData.hh" #include "EsafMsgSource.hh" /******************************************************************************* * * Atmosphere : class description * * Handles layers of the linsley parametrization * ******************************************************************************/ class LinsleyAtmosphereData : public AtmosphereData { public: // ctors LinsleyAtmosphereData(); LinsleyAtmosphereData(const Int_t&, const vector&, const Int_t&); // dtor virtual ~LinsleyAtmosphereData(); // GetDM methods inline Int_t GetNumber() const {return fNb;} inline string GetName() const {return fName;} inline Double_t Bottom(Int_t i) const {return fBottom[i];} inline Double_t A(Int_t i) const {return fA[i];} inline Double_t B(Int_t i) const {return fB[i];} inline Double_t C(Int_t i) const {return fC[i];} // Linsley parametrization Double_t DensityParametrization(Double_t) const; EsafConfigClass(Atmosphere,LinsleyAtmosphereData) private: // Set tables virtual void ParamTables(); virtual void SetTables(); string fName; // type of linsley atmosphere Int_t fNb; // total number of layers Double_t* fBottom; // bottom altitude of the layer Double_t* fA; // Double_t* fB; // Linsley parameters tables (ith element matches ith layer) Double_t* fC; ClassDef(LinsleyAtmosphereData,0) }; #endif /* __LINSLEYATMOSPHEREDATA_HH_ */