]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSCorrMapSDD.h
Use kinematic check to filter out particles from being added to the stack, unless...
[u/mrichter/AliRoot.git] / ITS / AliITSCorrMapSDD.h
index 6ab14343317c328af9e270ad9782f8f87a61cf26..c1c968a68f9a64610e7f7b1e55b7e942f2c741bd 100644 (file)
 //                                                               //
 ///////////////////////////////////////////////////////////////////
 
-#include "AliITSsegmentationSDD.h"
 #include<TNamed.h>
 #include "AliLog.h"
 class TH1F;
 class TH2F;
+class AliITSsegmentationSDD;
 
 class AliITSCorrMapSDD : public TNamed {
 
  public:
+  // maps produced from residuals stores Xtrue-Xmeasured in drift lenght.
+  // Since the map computes xtrue-xmeas in drift coordinate
+  // and the difference is added to measured local coordinate, we have
+  // Left:  Xmeas_loc_corr = Xmeas_loc + (Xtrue-Xmeas)_loc = Xmeas_loc - (Xtrue-Xmeas)_drift
+  // Right: Xmeas_loc_corr = Xmeas_loc + (Xtrue-Xmeas)_loc = Xmeas_loc + (Xtrue-Xmeas)_drift
+  // hence, for the left side the sign of the correction need to inverted
+  enum {kLeftInvBit = BIT(14)};   
   AliITSCorrMapSDD();
   AliITSCorrMapSDD(Char_t *mapname);
   virtual ~AliITSCorrMapSDD(){};
-
+  //
+  void   SetInversionBit(Bool_t v=kTRUE)           {SetBit(kLeftInvBit,v);}
+  Bool_t GetInversionBit()               const     {return TestBit(kLeftInvBit);}
+  //
   Int_t GetNBinsAnode() const {return fNAnodePts;}
   Int_t GetNBinsDrift() const {return fNDriftPts;}
   void SetNBinsAnode(Int_t nbins) {
@@ -91,3 +101,4 @@ class AliITSCorrMapSDD : public TNamed {
   ClassDef(AliITSCorrMapSDD,2);
 };
 #endif
+