X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRDonlineTrackMatching.h;h=e7d9fc9c560e1e026b7eb6dacab1cc7e4274c5a9;hb=9527c389712c4a9ffdbe8e9cc7929db08aca7076;hp=980541da6ce134e224fd8baed9a4edb20015fdab;hpb=30bd9a5ab68a159faaf1d640936189ea79de276f;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRDonlineTrackMatching.h b/TRD/AliTRDonlineTrackMatching.h index 980541da6ce..e7d9fc9c560 100644 --- a/TRD/AliTRDonlineTrackMatching.h +++ b/TRD/AliTRDonlineTrackMatching.h @@ -10,11 +10,12 @@ class TH1; class AliESDEvent; class AliExternalTrackParam; class AliTRDgeometry; +class AliESDtrack; class AliESDTrdTrack; //#define TRD_TM_DEBUG -class AliTRDonlineTrackMatching { +class AliTRDonlineTrackMatching : public TObject { public: AliTRDonlineTrackMatching(); ~AliTRDonlineTrackMatching(); @@ -27,41 +28,41 @@ class AliTRDonlineTrackMatching { inline static Short_t TrdSecSiLsi(Short_t sec, Short_t si) { return 5*sec + si; } // convert sector (0-17) and local stack index (0-4) to linear stack index 0-89 static Short_t EstimateSector(const Double_t globalCoords[3]); - static Short_t EstimateLayer(const Double_t radius); + static Short_t EstimateLayer(Double_t radius); static Short_t EstimateLocalStack(const Double_t globalCoords[3]); static Short_t EstimateStack(const Double_t globalCoords[3]); - static Bool_t StackToTrack(const AliExternalTrackParam* track, Short_t &stack, UShort_t &layersWithTracklet, const Double_t magFieldinKiloGauss); - static Bool_t StackToTrack(const AliESDtrack* track, Short_t &stack, UShort_t &layersWithTracklet, const Double_t magFieldinKiloGauss); + static Bool_t StackToTrack(const AliExternalTrackParam* track, Short_t &stack, UShort_t &layersWithTracklet, Double_t magFieldinKiloGauss); + static Bool_t StackToTrack(const AliESDtrack* track, Short_t &stack, UShort_t &layersWithTracklet, Double_t magFieldinKiloGauss); static Bool_t TrackPlaneIntersect(AliExternalTrackParam *trk, Double_t pnt[3], Double_t norm[3], Double_t mag); Int_t EstimateTrackDistance(AliESDtrack *esd_track, AliESDTrdTrack* gtu_track, Double_t mag, Double_t *ydist, Double_t *zdist); - static Double_t RateTrackMatch(const Double_t distY, const Double_t distZ, const Double_t rpt, const Double_t gpt); - - static void SetEsdTrackCutMinTPCrows(const Double_t setting) { fEsdTrackCutMinTPCrows = setting; }; - static void SetEsdTrackCutMinRatioRowsFindableClusters(const Double_t setting) { fEsdTrackCutMinRatioRowsFindableClusters = setting; }; - static void SetEsdTrackCutMaxChi2TPCclusters(const Float_t setting) { fEsdTrackCutMaxChi2TPCclusters = setting; }; - static void SetEsdTrackCutMaxChi2ITSclusters(const Float_t setting) { fEsdTrackCutMaxChi2ITSclusters = setting; }; - static void SetEsdTrackCutMaxDCAtoVertexXY(const Float_t setting) { fEsdTrackCutMaxDCAtoVertexXY = setting; }; - static void SetEsdTrackCutMaxDCAtoVertexZ(const Float_t setting) { fEsdTrackCutMaxDCAtoVertexZ = setting; }; - static void SetEsdTrackCutITSlayerMask(const UShort_t setting) { fEsdTrackCutsITSlayerMask = setting; }; - static void SetEsdTrackCutsChi2TPCconstrainedVsGlobal(const Float_t setting) { fEsdTrackVCutsChi2TPCconstrainedVsGlobal = setting; }; - static void SetEsdTrackCutMinimal(const Bool_t setting) { fEsdTrackCutMinimal = setting; }; - static void SetEsdTrackCutRequireITSrefit(const Bool_t setting) { fEsdTrackCutRequireITSrefit = setting; }; - static void SetEsdTrackCutRequireTPCrefit(const Bool_t setting) { fEsdTrackCutRequireTPCrefit = setting; }; - static void SetEsdTrackCutPrim(const Bool_t setting) { fEsdTrackCutPrim = setting; }; + static Double_t RateTrackMatch(Double_t distY, Double_t distZ, Double_t rpt, Double_t gpt); + + static void SetEsdTrackCutMinTPCrows(Double_t setting) { fEsdTrackCutMinTPCrows = setting; }; + static void SetEsdTrackCutMinRatioRowsFindableClusters(Double_t setting) { fEsdTrackCutMinRatioRowsFindableClusters = setting; }; + static void SetEsdTrackCutMaxChi2TPCclusters(Float_t setting) { fEsdTrackCutMaxChi2TPCclusters = setting; }; + static void SetEsdTrackCutMaxChi2ITSclusters(Float_t setting) { fEsdTrackCutMaxChi2ITSclusters = setting; }; + static void SetEsdTrackCutMaxDCAtoVertexXY(Float_t setting) { fEsdTrackCutMaxDCAtoVertexXY = setting; }; + static void SetEsdTrackCutMaxDCAtoVertexZ( Float_t setting) { fEsdTrackCutMaxDCAtoVertexZ = setting; }; + static void SetEsdTrackCutITSlayerMask(UShort_t setting) { fEsdTrackCutsITSlayerMask = setting; }; + static void SetEsdTrackCutsChi2TPCconstrainedVsGlobal(Float_t setting) { fEsdTrackVCutsChi2TPCconstrainedVsGlobal = setting; }; + static void SetEsdTrackCutMinimal(Bool_t setting) { fEsdTrackCutMinimal = setting; }; + static void SetEsdTrackCutRequireITSrefit(Bool_t setting) { fEsdTrackCutRequireITSrefit = setting; }; + static void SetEsdTrackCutRequireTPCrefit(Bool_t setting) { fEsdTrackCutRequireTPCrefit = setting; }; + static void SetEsdTrackCutPrim(Bool_t setting) { fEsdTrackCutPrim = setting; }; static void SetEsdTrackDefaultCuts(const char* cutIdent = "minimal"); - void SetMinMatchRating(const Float_t setting) { fMinMatchRating = setting; }; + void SetMinMatchRating(Float_t setting) { fMinMatchRating = setting; }; void SetHistMatchRating(TH1* hist) { fHistMatchRating = hist; }; static Bool_t AcceptTrack(const AliESDtrack* esdTrack, const AliESDEvent* esdEvent); - Bool_t ProcessEvent(AliESDEvent *esdEvent); + Bool_t ProcessEvent(AliESDEvent *esdEvent, Bool_t updateRef = kTRUE, Int_t label = -1); protected: - inline static Double_t PtDiffRel(const Double_t refPt, const Double_t gtuPt); + inline static Double_t PtDiffRel(Double_t refPt, Double_t gtuPt); static const unsigned int fgkMaxEsdTracksPerStack = 20000; // max no. of tracks per stack static const unsigned int fgkTrdStacks = 90; // no. of TRD stacks (0-89) @@ -89,6 +90,8 @@ class AliTRDonlineTrackMatching { AliTRDonlineTrackMatching(const AliTRDonlineTrackMatching &c); AliTRDonlineTrackMatching& operator=(const AliTRDonlineTrackMatching& rhs); + + ClassDef(AliTRDonlineTrackMatching, 0); }; #endif