// ESAF : Euso Simulation and Analysis Framework // $Id: OADBPhotons.hh,v 1.4 2004/06/16 13:35:16 thea Exp $ // A.Thea, J.Watts created Mar, 16 2004 #include "TObject.h" #ifndef __OADBPHOTONS_HH_ #define __OADBPHOTONS_HH_ class Photon; class OADBPhotons: public TObject { public: // ctor OADBPhotons(); // dtor virtual ~OADBPhotons(); inline const Float_t* GetThroughput() const { return fThroughput;} inline const Float_t* GetXOut() const { return fXOut;} inline const Float_t* GetYOut() const { return fYOut;} inline const Float_t* GetThetaOut() const { return fThetaOut;} inline const Float_t* GetPhiOut() const { return fPhiOut;} inline Int_t GetSize() const { return fNumPhotons; } inline Float_t GetAngle() const { return fThetaFoV; } inline Int_t GetAngleId() const { return fAngleId; } inline Float_t GetWavelength() const { return fLambda; } inline Int_t GetWavelengthId() const { return fWlId; } void Clean(); Bool_t SetSize(Int_t); void SetAngle( Float_t th, Int_t id=-1 ){ fThetaFoV = th; fAngleId = id; } void SetWavelength( Float_t wl, Int_t id=-1 ){ fLambda = wl; fWlId = id; } Bool_t SavePhoton(Int_t, Photon *, Float_t); Bool_t SaveGhost(Int_t); private: Float_t fLambda; // wavelength Float_t fThetaFoV; // angle Int_t fAngleId; // angle id, used in the binary file building (-1 if none) Int_t fWlId; // wavelength id, used in the binary file building (-1 if none) Int_t fNumPhotons; // size of the photons' array Float_t *fThroughput; //[fNumPhotons] Float_t *fXOut; //[fNumPhotons] Float_t *fYOut; //[fNumPhotons] Float_t *fThetaOut; //[fNumPhotons] Float_t *fPhiOut; //[fNumPhotons] ClassDef(OADBPhotons,1) }; #endif /* __OADBPHOTONS_HH_ */