LCOV - code coverage report
Current view: top level - TPC/TPCcalib - AliTPCcalibCosmic.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 11 9.1 %
Date: 2016-06-14 17:26:59 Functions: 1 15 6.7 %

          Line data    Source code
       1             : #ifndef ALITPCCALIBCOSMIC_H
       2             : #define ALITPCCALIBCOSMIC_H
       3             : 
       4             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       5             :  * See cxx source for full Copyright notice                               */
       6             : 
       7             : #include "AliTPCcalibBase.h"
       8             : class TH2F;
       9             : class TH1F;
      10             : class TList;
      11             : class AliESDEvent;
      12             : class AliESDtrack;
      13             : class THnSparse;
      14             : 
      15             : class AliTPCcalibCosmic:public AliTPCcalibBase {
      16             : public:
      17             :   AliTPCcalibCosmic(); 
      18             :   AliTPCcalibCosmic(const Text_t *name, const Text_t *title);
      19             :   virtual ~AliTPCcalibCosmic();
      20             :   
      21             :   virtual void      Process(AliESDEvent *event);
      22             :   virtual Long64_t  Merge(TCollection *const li);
      23             :   void              Add(const AliTPCcalibCosmic* cosmic);
      24             :   //
      25             :   //
      26             :   void              Init();
      27             :   void              FindPairs(const AliESDEvent *event);
      28             :   void              FindCosmicPairs(const AliESDEvent * event);
      29             : 
      30             :   Bool_t            IsPair(AliExternalTrackParam *tr0, AliExternalTrackParam *tr1) const;
      31             :   static void       CalculateBetheParams(TH2F *hist, Double_t * initialParam);
      32             :   static Double_t   CalculateMIPvalue(TH1F * hist);
      33             :   static AliExternalTrackParam *MakeTrack(const AliExternalTrackParam *track0, const AliExternalTrackParam *track1);
      34             :   static AliExternalTrackParam *MakeCombinedTrack(const AliExternalTrackParam *track0, const AliExternalTrackParam *track1);
      35             : 
      36             :   static void UpdateTrack(AliExternalTrackParam &track0, const AliExternalTrackParam &track1);
      37             :   //
      38             :   void FillHistoPerformance(const AliExternalTrackParam *par0, const AliExternalTrackParam *par1, const AliExternalTrackParam *inner0, const AliExternalTrackParam *inner1, AliTPCseed *seed0,  AliTPCseed *seed1, const AliExternalTrackParam *param0Combined, Int_t cross);
      39             :   static void MakeFitTree(TTree * treeInput, TTreeSRedirector *pcstream, const TObjArray * corrArray, Int_t step, Int_t run);
      40           0 :   TTree * GetCosmicTree() const {return fCosmicTree;}
      41             :   //
      42           0 :   TH1F   *          GetHistNTracks() const {return fHistNTracks;};
      43           0 :   TH1F   *          GetHistClusters() const {return fClusters;};
      44           0 :   TH2F   *          GetHistAcorde()const {return fModules;};
      45           0 :   TH1F   *          GetHistPt() const {return fHistPt;};
      46           0 :   TH2F   *          GetHistDeDx() const {return fDeDx;};
      47           0 :   TH1F   *          GetHistMIP() const {return fDeDxMIP;};
      48             :   //
      49           0 :   Double_t          GetMIPvalue()const {return fMIPvalue;};
      50             :   //
      51             :   static void       BinLogX(TH1 *const h);   // method for correct histogram binning
      52             :   static void       BinLogX(THnSparse *const h, Int_t axisDim);   // method for correct histogram binning
      53             : 
      54           0 :   void     Process(AliESDtrack *const track, Int_t runNo=-1) {AliTPCcalibBase::Process(track,runNo);};
      55           0 :   void     Process(AliTPCseed *const track)  {return AliTPCcalibBase::Process(track);}
      56             :   virtual void  Terminate();
      57             :   static Double_t GetDeltaTime(Double_t rmin0, Double_t rmax0, Double_t rmin1, Double_t rmax1, Double_t tmin0, Double_t tmax0, Double_t tmin1, Double_t tmax1, Double_t dcaR, TVectorD& vectorDT);
      58             : public:  
      59             :   //
      60             :   // Performance histograms
      61             :   //
      62             :   THnSparse   *fHistoDelta[6];  // histograms of tracking performance delta
      63             :   THnSparse   *fHistoPull[6];   // histograms of tracking performance pull
      64             :   THnSparse   *fHistodEdxMax[4];   // histograms of dEdx perfomance - max charge
      65             :   THnSparse   *fHistodEdxTot[4];   // histograms of dEdx perfomance - tot charge
      66             :   static void AddTree(TTree* treeOutput, TTree * treeInput);
      67             : private:
      68             :   
      69             :   void              FillAcordeHist(AliESDtrack *upperTrack);
      70             : 
      71             :   
      72             : 
      73             :   TH1F  *fHistNTracks;            //  histogram showing number of ESD tracks per event
      74             :   TH1F  *fClusters;               //  histogram showing the number of clusters per track
      75             :   TH2F  *fModules;                //  2d histogram of tracks which are propagated to the ACORDE scintillator array
      76             :   TH1F  *fHistPt;                 //  Pt histogram of reconstructed tracks
      77             :   TH2F  *fDeDx;                   //  dEdx spectrum showing the different particle types
      78             :   TH1F  *fDeDxMIP;                //  TPC signal close to the MIP region of muons 0.4 < p < 0.45 GeV
      79             : 
      80             :   Double_t fMIPvalue;             //  MIP value calculated via a fit to fDeDxMIP
      81             :   //
      82             :   // cuts
      83             :   //
      84             :   Float_t fCutMaxD;     // maximal distance in rfi ditection
      85             :   Float_t fCutMaxDz;     // maximal distance in z ditection
      86             :   Float_t fCutTheta;    // maximal distance in theta ditection
      87             :   Float_t fCutMinDir;   // direction vector products
      88             : 
      89             :   TTree  *fCosmicTree;  // tree with the cosmic tracks
      90             :   AliTPCcalibCosmic(const AliTPCcalibCosmic&); 
      91             :   AliTPCcalibCosmic& operator=(const AliTPCcalibCosmic&); 
      92             : 
      93           6 :   ClassDef(AliTPCcalibCosmic, 3); 
      94             : };
      95             : 
      96             : #endif
      97             : 

Generated by: LCOV version 1.11