#ifndef CBMLITROBUSTFITTERANALYSIS_H_ #define CBMLITROBUSTFITTERANALYSIS_H_ #include "base/CbmLitDetectorLayout.h" #include "base/CbmLitTypes.h" #include "base/CbmLitPtrTypes.h" #include "FairTask.h" #include "CbmDetectorList.h" class CbmLitTrack; class CbmTrackMatch; //class CbmTrdTrackMatch; class TList; class TH1D; class TH2D; class CbmLitRobustFitterAnalysis : public FairTask { public: CbmLitRobustFitterAnalysis( DetectorId detId); virtual ~CbmLitRobustFitterAnalysis(); virtual InitStatus Init(); virtual void Exec( Option_t* opt); virtual void FinishTask(); virtual void SetParContainers(); protected: void CreateHistograms(); void ReadDataBranches(); void CreateTrackArrays(); void DeleteTrackArrays(); void InitTrackParamFromStsTrackParam( Int_t trackIndex, CbmLitTrack* track); void FillHistograms( Int_t id); void TestFitter( Int_t id); void MatchMuchTracks( TrackPtrVector& tracks, std::vector& matches); void MatchTrdTracks( TrackPtrVector& tracks, std::vector& matches); private: CbmLitDetectorLayout fLayout; DetectorId fDetId; Int_t fNofVars; std::vector fLitTracks; std::vector > fLitMuchTrackMatches; std::vector > fLitTrdTrackMatches; Int_t fNofPlanes; TList* fHistoList; TrackFitterPtr fFitter; // TClonesArray* fMCTracks; TClonesArray* fPoints; TClonesArray* fHits; TClonesArray* fTracks; TClonesArray* fTrackMatches; TClonesArray* fDigiMatches; TClonesArray* fStsTracks; // TClonesArray* fStsTrackMatches; // Int_t fNof1DParams; // Int_t fNof2DParams; //Histograms // std::vector > fh1DHistos; // std::vector > fh2DHistos; Int_t fNofParams; std::vector fhPlaneNofHits; std::vector fhLastPlaneIdNofHits; std::vector fhNofHitsInPlane; std::vector fhTrueHitsRatioInTrack; std::vector fhNofHitsInTrack; std::vector fhNofTrueHitsInTrack; std::vector fhNofFalseHitsInTrack; std::vector fhNofHitsInTrueTrack; std::vector fhNofHitsInGhostTrack; std::vector fhTrackLastPlaneId; std::vector fhTrueTrackLastPlaneId; std::vector fhGhostTrackLastPlaneId; std::vector fhTrackChiSq; std::vector fhTrueTrackChiSq; std::vector fhGhostTrackChiSq; Int_t fEvents; Int_t fVerbose; ClassDef(CbmLitRobustFitterAnalysis, 1); }; #endif /*CBMLITROBUSTFITTERANALYSIS_H_*/