// ESAF : Euso Simulation and Analysis Framework // $Id: TrackDetectorPlaneModule.hh,v 1.5 2004/09/14 12:39:03 naumov Exp $ // created May, 10 2004 #ifndef __TRACKDETECTORPLANEMODULE_HH_ #define __TRACKDETECTORPLANEMODULE_HH_ #include "euso.hh" #include "RecoModule.hh" #include #include class TDirectory; class RecoRootEvent; // container for plane fitting data struct TDPData: public TObject { void Clear(); vector fPos; vector fErr; vector fSpPos; vector fSpErr; vector fTime; vector fHits; TVector3 fCentroid; Int_t fNumPoints; Int_t fNumHits; ClassDef(TDPData,0) }; class TrackDetectorPlaneModule : public RecoModule { public: // ctor TrackDetectorPlaneModule(); // dtor virtual ~TrackDetectorPlaneModule(); Bool_t Init(); Bool_t PreProcess(); Bool_t Process(RecoEvent*); Bool_t PostProcess(); Bool_t Done(); // save root output virtual Bool_t SaveRootData( RecoRootEvent* ); void UserMemoryClean(); private: RecoEvent *fEv; RecoRootEvent *fRecoRootEvent; vector fPointsId; // plane that contains shower and Euso: track-detector plane (TPD) TDPData fPlaneData; // fill data void FillPlaneData(); void UseVelocities(); TVector3 fNorm; TVector3 fXAxis; TVector3 fYAxis; TVector3 fWAxis; TVector3 fUAxis; Int_t fNumPoints; Int_t fNumHits; TDirectory *fGeneralDir; Double_t fTestPlane; vector fPlaneErrors; vector fEASCenterX; vector fEASCenterY; TVector3 fTrueDir; ClassDef(TrackDetectorPlaneModule,0) }; #endif /* __TRACKDETECTORPLANEMODULE_HH_ */