]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TRD/Cal/AliTRDCalTrkAttach.h
re-activate contrib code
[u/mrichter/AliRoot.git] / TRD / Cal / AliTRDCalTrkAttach.h
1 #ifndef ALITRDCALTRKATTACH_H
2 #define ALITRDCALTRKATTACH_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 //////////////////////////////////////////////////////////////////
7 //
8 // Container for calibration parameters for AliTRDseedV1::AttachClusters()
9 // For calibration procedure check AliTRDtrackleOflHelper::CalibrateAttach()
10 //
11 // Author Alex Bercuci <A.Bercuci@gsi.de>
12 //
13 //////////////////////////////////////////////////////////////////
14
15 #ifndef ROOT_TNamed
16 #include <TNamed.h>
17 #endif
18 class TObjArray;
19 class AliTRDCalTrkAttach : public TNamed
20 {
21 public:
22   enum ETRDCalTrkAttachCalib {
23     kResPos = 0    // relative position residual location
24    ,kResAng        // angular residual location
25    ,kSigma         // relative error location
26    ,kNclMean       // mean no. of clusters/tracklet location
27    ,kNcalib        // no. of calib objects
28   };
29   enum ETRDCalTrkAttachParam {
30     kNcharge = 2
31   };
32
33   AliTRDCalTrkAttach();
34   virtual ~AliTRDCalTrkAttach();
35
36   Double_t  CookLikelihood(Bool_t chg, Int_t ly, Float_t pt, Float_t phi, Int_t ncl, Double_t dy, Double_t dphi, Double_t sr) const;
37   void      Draw(Option_t* option = "0y");
38   void      GetNsgmDy(Int_t &n0, Int_t &n1) const {n0 = fNsgmDy[0]; n1 = fNsgmDy[1];}
39   void      GetLikeMinRelDecrease(Float_t &p0, Float_t &p1) const {p0 = fLikeMinRelDecrease[0]; p1 = fLikeMinRelDecrease[1];}
40   Float_t   GetRClikeLimit() const { return fRClikeLimit;}
41   Float_t   GetScaleCov() const { return fScaleCov;}
42   Bool_t    LoadReferences(const Char_t *file);
43   void      SetNsgmDy(Int_t ns0, Int_t ns1) {fNsgmDy[0] = ns0; fNsgmDy[0] = ns1;}
44   void      SetLikeMinRelDecrease(Float_t p0, Float_t p1) {fLikeMinRelDecrease[0]=p0;fLikeMinRelDecrease[1]=p1;}
45   void      SetRClikeLimit(Float_t rc) { fRClikeLimit = rc;}
46   void      SetScaleCov(Float_t sc) { fScaleCov = sc;}
47
48 private:
49   void      Help();
50
51   Int_t     fNsgmDy[2];             //
52   Float_t   fLikeMinRelDecrease[2]; //
53   Float_t   fRClikeLimit;           //
54   Float_t   fScaleCov;              //
55   TObjArray *fLike;                 // array with likelihoods
56     
57   AliTRDCalTrkAttach(const AliTRDCalTrkAttach& ref);
58   AliTRDCalTrkAttach    &operator=(const AliTRDCalTrkAttach &rhs);
59
60   ClassDef(AliTRDCalTrkAttach, 1)    //  Storage for AttachClusters() calibration
61 };
62
63 #endif
64
65