TpcLheTrackFitter.h 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #ifndef LHE_TRACK_FITTER_H
  2. #define LHE_TRACK_FITTER_H
  3. // *************************************************************************
  4. // Author: Oleg Rogachevsky e-mail: rogach@sunhe.jinr.ru
  5. //
  6. // track fitter
  7. //
  8. // Created: 1-07-07
  9. // Modified:
  10. //
  11. // *************************************************************************
  12. #include "FairTask.h"
  13. #include "FairField.h"
  14. //#include "FairTrackParH.h"
  15. #include "TpcLheTrack.h"
  16. #include "TpcLheTrackCuts.h"
  17. #include "TpcLheCMTrack.h"
  18. #include "TpcLheCMPoint.h"
  19. class TH2F;
  20. class TGeoTrack;
  21. class TpcLheTrackFitter : public FairTask {
  22. protected:
  23. FairField* fMagField; //
  24. TClonesArray* fTpcTracks; //
  25. TClonesArray* fTpcHits; //!
  26. TClonesArray* fTpcTrCand;
  27. TClonesArray* fTpcTrFit;
  28. TH2F *fXYG, *fXYF,*fYZG, *fYZF,*fXZG, *fXZF,*fPXG,
  29. *fPXF,*fPYG, *fPYF,*fPZG, *fPZF;
  30. TClonesArray* fTpcPoints; //!
  31. TGeoTrack *fTrCan, *fTrFit;
  32. TList *fHistList;
  33. TString fOption; // options to choose branches
  34. TpcLheTrackCuts *fTrackCuts; // RO cuts for tracks
  35. static TpcLheTrackFitter* ftInstance;
  36. public:
  37. virtual void Exec(Option_t * option);
  38. virtual InitStatus Init(); //
  39. virtual void Finish();
  40. TpcLheTrackFitter(const char *name, const char *title="Fair Task");
  41. TpcLheTrackFitter();
  42. virtual ~TpcLheTrackFitter();
  43. Int_t DeepFit(TpcLheTrack * tr);
  44. Int_t CircleFit(TpcLheTrack * tr);
  45. Int_t HelixFit(TpcLheTrack * tr);
  46. // void Yvone(TpcLheTrack *track, Double_t psib);
  47. void Info4Fit(TpcLheTrack *track);
  48. void SetOption(Option_t *option=" ") {fOption = option; fOption.ToLower();}
  49. //void SaveHistograms();
  50. static TpcLheTrackFitter* Instance();
  51. ClassDef(TpcLheTrackFitter,1) // TpcLheTrackFitter
  52. };
  53. #endif