]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/qaRec/AliTRDtrackingResolution.h
Updates of the resolution task
[u/mrichter/AliRoot.git] / TRD / qaRec / AliTRDtrackingResolution.h
index 123902f33a072693aa2c704c30d859b68bf2c8a3..00e486d1aef5480339a2ee240a3e053c0986f08a 100644 (file)
 #include "AliTRDrecoTask.h"
 #endif
 
+class TH1;
+class TF1;
+class TObjArray;
 class AliTRDReconstructor;
+class AliTRDgeometry;
 class AliTRDrecoParam;
 class AliTRDseedV1;
 class AliTRDtrackInfo;
@@ -24,19 +28,23 @@ class AliTRDtrackingResolution : public AliTRDrecoTask
 public:
   enum{
     kClusterYResidual         = 0
-    ,kTrackletRiemanYResidual = 1 // Riemann track model
-    ,kTrackletRiemanAngleResidual = 2
-    ,kTrackletKalmanYResidual = 3 // Kalman track model
-    ,kTrackletKalmanAngleResidual = 4
-    ,kTrackletYResolution     = 5
-    ,kTrackletAngleResolution = 6
-    ,kTrackRYResolution       = 7 // Riemann track model
-    ,kTrackRZResolution       = 8
-    ,kTrackRAngleResolution   = 9
-    ,kTrackKYResolution       = 10 // Kalman track model
-    ,kTrackKZResolution       = 11
-    ,kTrackKAngleResolution   = 12
-    ,kGraphStart              = 13 // First graph
+//     ,kTrackletRiemanYResidual = 1 // Riemann track model
+//     ,kTrackletRiemanAngleResidual = 2
+//     ,kTrackletKalmanYResidual = 3 // Kalman track model
+//     ,kTrackletKalmanAngleResidual = 4
+    ,kClusterYResolution      = 1/*5*/
+    ,kTrackletYResolution     = 2/*6*/
+    ,kTrackletAngleResolution = 3/*7*/
+//     ,kTrackRYResolution       = 8 // Riemann track model
+//     ,kTrackRZResolution       = 9
+//     ,kTrackRAngleResolution   = 10
+//     ,kTrackKYResolution       = 11 // Kalman track model
+//     ,kTrackKZResolution       = 12
+//     ,kTrackKAngleResolution   = 13
+  };
+  enum{
+    kVerbose  = 0
+    ,kVisual  = 1
   };
 
   AliTRDtrackingResolution();
@@ -44,24 +52,30 @@ public:
   
   void    CreateOutputObjects();
   void    Exec(Option_t *);
-  void    GetRefFigure(Int_t ifig, Int_t &first, Int_t &last, Option_t *opt);  
-  void    SetRecoParam(AliTRDrecoParam *r);
+  void    GetRefFigure(Int_t ifig);
+  Bool_t  IsVerbose() const {return TESTBIT(fStatus, kVerbose);}
+  Bool_t  IsVisual() const {return TESTBIT(fStatus, kVisual);}
   Bool_t  PostProcess();
+
+  void    SetRecoParam(AliTRDrecoParam *r);
+  void    SetVerbose(Bool_t v = kTRUE) {v ? SETBIT(fStatus ,kVerbose): CLRBIT(fStatus ,kVerbose);}
+  void    SetVisual(Bool_t v = kTRUE) {v ? SETBIT(fStatus, kVisual) : CLRBIT(fStatus, kVisual);}
+
   void    Terminate(Option_t *);
   
 private:
   AliTRDtrackingResolution(const AliTRDtrackingResolution&);
   AliTRDtrackingResolution& operator=(const AliTRDtrackingResolution&);
+  void        AdjustF1(TH1 *h, TF1 *f);
   TObjArray*  Histos(); 
   Bool_t      Resolution(AliTRDseedV1 *tracklet, AliTRDtrackInfo *info, Double_t &p, Double_t &y, Double_t &z, Double_t &phi, Double_t &theta);
 
 private:
-  enum{
-    kNLayers = 6
-  };
-  
+  UChar_t               fStatus;          // steer parameter of the task
   AliTRDReconstructor   *fReconstructor;  //! local reconstructor
-  
+  AliTRDgeometry        *fGeo;            //! TRD geometry
+  TObjArray             *fGraphS;         //! result holder - sigma values
+  TObjArray             *fGraphM;         //! result holder - mean values
   ClassDef(AliTRDtrackingResolution, 1) // tracking resolution task
 };
 #endif