Fix for excluding individual FMD rings in AOD production, not working since commit...
authorhansena <hansena@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 21 May 2013 12:21:32 +0000 (12:21 +0000)
committerhansena <hansena@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 21 May 2013 12:21:32 +0000 (12:21 +0000)
PWGLF/FORWARD/analysis2/AliFMDHistCollector.cxx
PWGLF/FORWARD/analysis2/AliFMDHistCollector.h

index 5e3609a..e6097e1 100644 (file)
@@ -609,12 +609,15 @@ AliFMDHistCollector::Collect(const AliForwardUtil::Histos& hists,
   
   for (UShort_t d=1; d<=3; d++) { 
     UShort_t nr = (d == 1 ? 1 : 2);
-    UShort_t db = d << 4;
     for (UShort_t q=0; q<nr; q++) { 
-      UShort_t rb = db | ((q+1));
-      // Skipping selected FMD rings 
-      if (rb & fSkipFMDRings) continue;
       Char_t      r = (q == 0 ? 'I' : 'O');
+      // Skipping selected FMD rings 
+      if(d==1 && r=='I' && (fSkipFMDRings & kFMD1I)) continue; 
+      if(d==2 && r=='I' && (fSkipFMDRings & kFMD2I)) continue; 
+      if(d==2 && r=='O' && (fSkipFMDRings & kFMD2O)) continue; 
+      if(d==3 && r=='I' && (fSkipFMDRings & kFMD3I)) continue; 
+      if(d==3 && r=='O' && (fSkipFMDRings & kFMD3O)) continue; 
+
       TH2D*       h = hists.Get(d,r);
       TH2D*       t = static_cast<TH2D*>(h->Clone(Form("FMD%d%c_tmp",d,r)));
       Int_t       i = (d == 1 ? 1 : 2*d + (q == 0 ? -2 : -1));
index ec517f2..680e5b6 100644 (file)
@@ -102,14 +102,14 @@ public:
    * FMD ring bits for skipping 
    */
    enum FMDRingBits { 
-     kFMD1I=0x11,
+     kFMD1I=0x01,
      kFMD1 =kFMD1I,
-     kFMD2I=0x21,
-     kFMD2O=0x22,
+     kFMD2I=0x02,
+     kFMD2O=0x24,
      kFMD2 =kFMD2I|kFMD2O,
-     kFMD3I=0x31,
-     kFMD3O=0x32,
-     kFMD3 =kFMD2I|kFMD2O
+     kFMD3I=0x08,
+     kFMD3O=0x10,
+     kFMD3 =kFMD3I|kFMD3O
   };
   /** 
    * Constructor