increased number of channels used in the TOFFEElight data structure, from 157248...
authorrpreghen <rpreghen@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 16 Jun 2009 11:24:45 +0000 (11:24 +0000)
committerrpreghen <rpreghen@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 16 Jun 2009 11:24:45 +0000 (11:24 +0000)
TOF/AliTOFFEEReader.cxx
TOF/AliTOFFEEReader.h
TOF/AliTOFFEElightConfig.h
TOF/AliTOFcalibHisto.cxx
TOF/ShuttleInput/TOFFEElight.20090616.102605.8000 [moved from TOF/ShuttleInput/TOFFEElight.20090515.120201.99999 with 87% similarity]
TOF/data/AliTOFcalibHisto.root

index 4c0a09e..c19ff41 100644 (file)
@@ -31,6 +31,7 @@
 #include "AliTOFFEElightConfig.h"
 #include "AliTOFRawStream.h"
 #include "AliTOFGeometry.h"
+#include "AliTOFcalibHisto.h"
 #include "AliLog.h"
 #include <fstream>
 
@@ -243,14 +244,21 @@ AliTOFFEEReader::ParseFEElightConfig()
 
   AliInfo("parsing TOF FEElight config");
 
-  Int_t nEnabled = 0;
+  AliTOFcalibHisto calibHisto;
+  calibHisto.LoadCalibHisto();
+
+  Int_t nEnabled = 0, index;
   AliTOFFEEchannelConfig *channelConfig = NULL;
-  for (Int_t i = 0; i < GetNumberOfIndexes(); i++) {
+  for (Int_t i = 0; i < GetNumberOfIndexesEO(); i++) {
     channelConfig = fFEElightConfig->GetChannelConfig(i);
-    if (channelConfig->IsEnabled())
-      nEnabled++;
-    fChannelEnabled[i] = channelConfig->IsEnabled();
-    fMatchingWindow[i] = channelConfig->GetMatchingWindow();
+    if (!channelConfig->IsEnabled()) continue;
+    /* get index DO from index EO */
+    index = (Int_t)calibHisto.GetCalibMap(AliTOFcalibHisto::kIndex, i);
+    if (index == -1) continue;
+    nEnabled++;
+    fChannelEnabled[index] = channelConfig->IsEnabled();
+    fMatchingWindow[index] = channelConfig->GetMatchingWindow();
+    fLatencyWindow[index] = channelConfig->GetLatencyWindow();
   }
  
   return nEnabled;
index c17edbc..4cf6cbc 100644 (file)
@@ -38,6 +38,7 @@ public TObject
   static Int_t GetNumberOfTDCs() {return fgkNumberOfTDCs;}; // get number of TDCs
   static Int_t GetNumberOfChannels() {return fgkNumberOfChannels;}; // get number of channels
   static Int_t GetNumberOfIndexes() {return fgkNumberOfIndexes;}; // get number of indexes
+  static Int_t GetNumberOfIndexesEO() {return fgkNumberOfIndexesEO;}; // get number of indexes EO
   AliTOFFEEConfig *GetFEEConfig() const {return fFEEConfig;}; // get FEE config
   AliTOFFEElightConfig *GetFEElightConfig() const {return fFEElightConfig;}; // get FEElight config
   Bool_t GetChannelEnabled(Int_t iIndex) const {return iIndex < GetNumberOfIndexes() ? fChannelEnabled[iIndex] : kFALSE;}; // get channel enabled
@@ -74,6 +75,7 @@ public TObject
   static const Int_t fgkNumberOfTDCs = 15; // number of TDCs
   static const Int_t fgkNumberOfChannels = 8; // number of channels
   static const Int_t fgkNumberOfIndexes = 157248; // number of indexes
+  static const Int_t fgkNumberOfIndexesEO = 172800; // number of indexes EO
 
   AliTOFFEEConfig *fFEEConfig; // FEE config
   AliTOFFEElightConfig *fFEElightConfig; // FEElight config
index 4105d03..9ae1e3f 100644 (file)
@@ -50,7 +50,7 @@ class AliTOFFEElightConfig
 {
 
  private:
-  static const Int_t fgkNumberOfChannels = 157248; // number of channels
+  static const Int_t fgkNumberOfChannels = 172800; // number of channels
   Int_t fVersion; // version
   Int_t fRunNumber; // run number
   Int_t fRunType; // run type
index 2c94e55..06e8574 100644 (file)
@@ -340,6 +340,9 @@ AliTOFcalibHisto::WriteCalibHisto()
        for (Int_t tdc = 0; tdc < 15; tdc++)
          for (Int_t channel = 0; channel < 8; channel++) {
            
+           /* compute index EO */
+           indexEO = GetIndexEO(ddl, trm, chain, tdc, channel);
+
            /* convert EO indices into detector oriented (DO) indices
               (this call causes some warnings because the loop includes
               EO indices which are not connected to physical channels) */
@@ -353,11 +356,12 @@ AliTOFcalibHisto::WriteCalibHisto()
                det[1] < 0 || det[1] > 4 ||
                det[2] < 0 || det[2] > 18 ||
                det[3] < 0 || det[3] > 1 ||
-               det[4] < 0 || det[4] > 47)
+               det[4] < 0 || det[4] > 47) {
+             SetHisto(fCalibMap[kIndex], indexEO, -1);
              continue;
+           }
            
            /* setup information */
-           indexEO = GetIndexEO(ddl, trm, chain, tdc, channel);
            index = AliTOFGeometry::GetIndex(det);
            sector = det[0];
            plate = det[1];
similarity index 87%
rename from TOF/ShuttleInput/TOFFEElight.20090515.120201.99999
rename to TOF/ShuttleInput/TOFFEElight.20090616.102605.8000
index d2c9bbb..ea2c7e1 100644 (file)
Binary files a/TOF/ShuttleInput/TOFFEElight.20090515.120201.99999 and b/TOF/ShuttleInput/TOFFEElight.20090616.102605.8000 differ
index 11e0bbe..68d935c 100644 (file)
Binary files a/TOF/data/AliTOFcalibHisto.root and b/TOF/data/AliTOFcalibHisto.root differ