New detector numbering scheme (common for DAQ/HLT/Offline). All the subdetectors...
authorcvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 28 Jun 2006 11:47:07 +0000 (11:47 +0000)
committercvetan <cvetan@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 28 Jun 2006 11:47:07 +0000 (11:47 +0000)
57 files changed:
EMCAL/AliEMCAL.cxx
EMCAL/AliEMCAL.h
EMCAL/AliEMCALRawStream.cxx
FMD/AliFMDAltroMapping.cxx
FMD/AliFMDParameters.h
FMD/AliFMDRawReader.cxx
FMD/AliFMDRawStream.cxx
FMD/AliFMDRawWriter.cxx
HLT/misc/AliL3DDLDataFileHandler.cxx
HLT/misc/AliL3DDLTPCRawStream.cxx
ITS/AliITSDDLRawData.cxx
ITS/AliITSRawStreamSDD.cxx
ITS/AliITSRawStreamSDD.h
ITS/AliITSRawStreamSPD.cxx
ITS/AliITSRawStreamSPD.h
ITS/AliITSRawStreamSSD.cxx
ITS/AliITSRawStreamSSD.h
ITS/AliITSRawStreamSSDv1.cxx
MUON/AliMUONRawStreamTracker.cxx
MUON/AliMUONRawStreamTrigger.cxx
MUON/AliMUONRawWriter.cxx
PHOS/AliPHOS.cxx
PHOS/AliPHOSRawStream.cxx
PMD/AliPMDClusterFinder.cxx
PMD/AliPMDDDLRawData.cxx
PMD/AliPMDRawStream.cxx
RAW/AliAltroRawStream.cxx
RAW/AliAltroRawStream.h
RAW/AliDAQ.cxx
RAW/AliDAQ.h
RAW/AliDAQConfig.h [deleted file]
RAW/AliRawReader.cxx
RAW/AliRawReader.h
RICH/AliRICHDigit.h
RICH/AliRICHReconstructor.cxx
RICH/AliRICHv1.cxx
START/AliSTARTRawData.cxx
START/AliSTARTRawReader.cxx
STEER/AliCTPRawData.cxx
STEER/AliCTPRawData.h
STEER/AliCTPRawStream.cxx
STEER/AliCTPRawStream.h
STEER/AliModule.cxx
STEER/AliSimulation.cxx
TOF/AliTOFClusterFinder.cxx
TOF/AliTOFDDLRawData.cxx
TOF/AliTOFRawDataRead.C
TOF/AliTOFRawStream.cxx
TPC/AliTPCDDLRawData.cxx
TPC/AliTPCRawStream.cxx
TPC/AliTPCclustererMI.cxx
TRD/AliTRDRawStream.cxx
TRD/AliTRDrawData.cxx
VZERO/AliVZERO.cxx
ZDC/AliZDC.cxx
ZDC/AliZDCRawStream.cxx
ZDC/AliZDCRawStream.h

index a942eb91b04c88cae09599f5f080a22a01e57943..44937312c5a69145a6a9bc392662fb14591001ee 100644 (file)
@@ -48,6 +48,7 @@ class TFile;
 #include "AliAltroBuffer.h"
 #include "AliRawReader.h"
 #include "AliEMCALRawStream.h"
+#include "AliDAQ.h"
 
 ClassImp(AliEMCAL)
 Double_t AliEMCAL::fgCapa        = 1.;        // 1pF 
@@ -56,7 +57,6 @@ Double_t AliEMCAL::fgTimeMax     = 2.56E-5 ;  // each sample is over 100 ns fTim
 Double_t AliEMCAL::fgTimePeak    = 4.1E-6 ;   // 4 micro seconds
 Double_t AliEMCAL::fgTimeTrigger = 100E-9 ;      // 100ns, just for a reference
 // some digitization constants
-Int_t    AliEMCAL::fgDDLOffset = 0x800;
 Int_t    AliEMCAL::fgThreshold = 1;
 // 24*48=1152 towers per SM; divided up on 3 DDLs, 
 // each DDL with 12FEC *32towers or 12*32*2 channels (high&low gain) 
@@ -278,9 +278,7 @@ void AliEMCAL::Digits2Raw()
       }
 
       // open new file and write dummy header
-      TString fileName("EMCAL_") ;
-      fileName += (iDDL + fgDDLOffset) ; 
-      fileName += ".ddl" ; 
+      TString fileName(AliDAQ::DdlFileName("EMCAL",iDDL));
       buffer = new AliAltroBuffer(fileName.Data());
       buffer->WriteDataHeader(kTRUE, kFALSE);  //Dummy;
 
@@ -350,8 +348,8 @@ void AliEMCAL::Raw2Digits(AliRawReader* reader)
   // Use AliAltroRawStream to read the ALTRO format.  No need to
   // reinvent the wheel :-) 
   AliEMCALRawStream in(reader);
-  // Select EMCAL DDL's; lowest 8 bits of DDL offser is used for something else.. 
-  reader->Select(fgDDLOffset >> 8);
+  // Select EMCAL DDL's;
+  reader->Select("EMCAL");
 
   // reading is from previously existing AliEMCALGetter.cxx
   // ReadRaw method
index 0f4faff5a51db3f5777c7fcb885f0f99e6df746b..2dba2f172c0cb72515d2eb94b83ab0c059cc81f5 100644 (file)
@@ -75,7 +75,6 @@ class AliEMCAL : public AliDetector {
   Double_t GetRawFormatTimeMax() const { return fgTimeMax ; }   
   Double_t GetRawFormatTimePeak() const { return fgTimePeak ; }    
   Double_t GetRawFormatTimeTrigger() const { return fgTimeTrigger ; }
-  Int_t GetRawFormatDDLOffset() const { return fgDDLOffset ; }       
   Int_t GetRawFormatThreshold() const { return fgThreshold ; }       
   Int_t GetRawFormatChannelsPerDDL() const { return fgChannelsPerDDL ; }       
   static Double_t RawResponseFunctionMax(Double_t charge, Double_t gain) ;
@@ -105,7 +104,6 @@ protected:
   static Double_t fgTimeMax ;           // maximum sampled time of the raw RO signal                             
   static Double_t fgTimePeak ;          // peaking time of the raw RO signal                                    
   static Double_t fgTimeTrigger ;       // time of the trigger for the RO signal 
-  static Int_t fgDDLOffset;             // DDL offset
   static Int_t fgThreshold;             // threshold
   static Int_t fgChannelsPerDDL;        // number of channels per DDL
 
index de3f4349429d7a15974bbfe784c5539ef38e279d..12fdfd7597f014afcafdaf512bc528554cb0cef4 100644 (file)
@@ -46,7 +46,7 @@ AliEMCALRawStream::AliEMCALRawStream(AliRawReader* rawReader) :
 {
 // create an object to read EMCAL raw digits
 
-  SelectRawData(8);
+  SelectRawData("EMCAL");
 
   fNoAltroMapping = kTRUE;
 }
index 72683cb467568f5dc66620a57a4487276fa28522..883ec08559338ef6d25f163b7a9998d781d3542f 100644 (file)
@@ -75,7 +75,7 @@ AliFMDAltroMapping::Hardware2Detector(UInt_t    ddl, UInt_t    addr,
   // Translate a hardware address to detector coordinates. 
   // The detector is simply 
   // 
-  //    ddl - kBaseDDL + 1
+  //    ddl + 1
   // 
   // The ring number, sector, and strip number is given by the addr
   // argument.  The address argument, has the following format 
@@ -141,7 +141,7 @@ AliFMDAltroMapping::Hardware2Detector(UInt_t    ddl, UInt_t    addr,
   // us detector coordinates, unique at least up a 128 strips.  We
   // return the first strip in the given range. 
   //
-  det          =  (ddl - AliFMDParameters::kBaseDDL) + 1;
+  det          =  ddl + 1;
   UInt_t board =  (addr >> 7) & 0x1F;
   UInt_t altro =  (addr >> 4) & 0x7;
   UInt_t chan  =  (addr & 0xf);
@@ -175,7 +175,7 @@ AliFMDAltroMapping::Detector2Hardware(UShort_t  det, Char_t    ring,
   // Translate detector coordinates to a hardware address.
   // The ddl is simply 
   // 
-  //    kBaseDDL + (det - 1)
+  //    (det - 1)
   // 
   // The ring number, sector, and strip number must be encoded into a
   // hardware address.  The address argument, will have the following
@@ -252,7 +252,7 @@ AliFMDAltroMapping::Detector2Hardware(UShort_t  det, Char_t    ring,
   // With this information, we can decode the detector coordinates to
   // give us a unique hardware address 
   //
-  ddl          =  AliFMDParameters::kBaseDDL + (det - 1);
+  ddl          =  (det - 1);
   UInt_t nsen  =  (ring == 'I' ? 10 : 20);
   UInt_t nsa   =  (ring == 'I' ? 2 : 4);   // Sensors per ALTRO
   UInt_t ncs   =  (ring == 'I' ? 8 : 4);   // Channels per sensor 
@@ -310,7 +310,7 @@ AliFMDAltroMapping::GetPadRow(Int_t hwaddr) const
   Char_t   ring;
   UShort_t sec;
   UShort_t str;
-  Int_t    ddl = AliFMDParameters::kBaseDDL;
+  Int_t    ddl = 0;
   if (!Hardware2Detector(ddl, hwaddr, det, ring, sec, str)) return -1;
   return Int_t(sec);
 }
@@ -332,7 +332,7 @@ AliFMDAltroMapping::GetPad(Int_t hwaddr) const
   Char_t   ring;
   UShort_t sec;
   UShort_t str;
-  Int_t    ddl = AliFMDParameters::kBaseDDL;
+  Int_t    ddl = 0;
   if (!Hardware2Detector(ddl, hwaddr, det, ring, sec, str)) return -1;
   return Int_t(str);
 }
@@ -354,7 +354,7 @@ AliFMDAltroMapping::GetSector(Int_t hwaddr) const
   Char_t   ring;
   UShort_t sec;
   UShort_t str;
-  Int_t    ddl = AliFMDParameters::kBaseDDL;
+  Int_t    ddl = 0;
   if (!Hardware2Detector(ddl, hwaddr, det, ring, sec, str)) return -1;
   return Int_t(ring);
 }
index 66b6c1bbd7e6c8918ca74acf09e0f52ddc0a3b77..0de6b7610444d2d47bb21b2d3ad2047ed382b06a 100644 (file)
@@ -259,9 +259,6 @@ public:
   AliFMDAltroMapping* GetAltroMap() const;
   /** @} */
 
-  enum { 
-    kBaseDDL = 0x1000 // DDL offset for the FMD
-  };
   static const char* PulseGainPath()       { return fgkPulseGain; }
   static const char* PedestalPath()        { return fgkPedestal; }
   static const char* DeadPath()            { return fgkDead; }
index c58bb7c18fd8af5d07480c1fb4938a6f9f884f27..3c35cd0799778a265dd542433f2314b8e32dfcea 100644 (file)
@@ -174,7 +174,7 @@ AliFMDRawReader::ReadAdcs(TClonesArray* array)
   AliFMDParameters* pars = AliFMDParameters::Instance();
 
   // Select FMD DDL's 
-  fReader->Select(AliFMDParameters::kBaseDDL>>8);
+  fReader->Select("FMD");
 
   UShort_t stripMin = 0;
   UShort_t stripMax = 127;
@@ -184,7 +184,7 @@ AliFMDRawReader::ReadAdcs(TClonesArray* array)
     UChar_t* cdata;
     if (!fReader->ReadNextData(cdata)) break;
     size_t   nchar = fReader->GetDataSize();
-    UShort_t ddl   = AliFMDParameters::kBaseDDL + fReader->GetDDLID();
+    UShort_t ddl   = fReader->GetDDLID();
     UShort_t rate  = 0;
     AliDebug(1, Form("Reading %d bytes (%d 10bit words) from %d", 
                     nchar, nchar * 8 / 10, ddl));
@@ -253,13 +253,13 @@ AliFMDRawReader::Exec(Option_t*)
 
   // Get sample rate 
   AliFMDParameters* pars = AliFMDParameters::Instance();
-  fSampleRate = pars->GetSampleRate(AliFMDParameters::kBaseDDL);
+  fSampleRate = pars->GetSampleRate(0);
 
   // Use AliAltroRawStream to read the ALTRO format.  No need to
   // reinvent the wheel :-) 
   AliFMDRawStream input(fReader, fSampleRate);
   // Select FMD DDL's 
-  fReader->Select(AliFMDParameters::kBaseDDL);
+  fReader->Select("FMD");
   
   Int_t    oldDDL      = -1;
   Int_t    count       = 0;
@@ -319,9 +319,9 @@ AliFMDRawReader::Exec(Option_t*)
        oldDDL      = ddl;
        // Check that we're processing a FMD detector 
        Int_t detId = fReader->GetDetectorID();
-       if (detId != (AliFMDParameters::kBaseDDL >> 8)) {
+       if (detId != (AliDAQ::DetectorID("FMD"))) {
          AliError(Form("Detector ID %d != %d",
-                       detId, (AliFMDParameters::kBaseDDL >> 8)));
+                       detId, (AliDAQ::DetectorID("FMD"))));
          break;
        }
        // Figure out what detector we're deling with 
index 8fc23a9f0048921022141f0aa5811d47ef3ab05c..4f5dc864b3586a16a4574ae5c88af39196db4b5a 100644 (file)
@@ -45,7 +45,7 @@ AliFMDRawStream::AliFMDRawStream(AliRawReader* reader)
   // CTOR 
   fNoAltroMapping = kFALSE;
   // Select FMD DDL's 
-  SelectRawData(AliFMDParameters::kBaseDDL>>8);
+  SelectRawData("FMD");
 }
 
 //_____________________________________________________________________________
@@ -69,7 +69,7 @@ AliFMDRawStream::ReadChannel(UInt_t& ddl, UInt_t& addr,
        AliDebug(15, Form("New hardware address, was 0x%x, now 0x%x", 
                          GetPrevHWAddress(), GetHWAddress()));
        addr = GetPrevHWAddress();
-       ddl  = AliFMDParameters::kBaseDDL + GetPrevDDLNumber();
+       ddl  = GetPrevDDLNumber();
        len  = l+1; // Need to add one - l points to last valid index
        last = signal;
        break;
index 603a44abbc8125505903704d02a02a3e4a381491..8556493ed35f35620efb196d8ffe807b9d8c63a1 100644 (file)
@@ -48,6 +48,7 @@
 #include <TArrayI.h>           // ROOT_TArrayI
 #include <TClonesArray.h>      // ROOT_TClonesArray
 // #include <fstream>
+#include "AliDAQ.h"
 
 //____________________________________________________________________
 ClassImp(AliFMDRawWriter)
@@ -229,7 +230,7 @@ AliFMDRawWriter::WriteDigits(TClonesArray* digits)
       }
       prevddl = ddl;
       // Need to open a new DDL! 
-      TString filename(Form("%s_%d.ddl", fFMD->GetName(),  ddl));
+      TString filename(AliDAQ::DdlFileName(fFMD->GetName(),  ddl));
       AliDebug(15, Form("New altro buffer with DDL file %s", filename.Data()));
       // Create a new altro buffer - a `1' as the second argument
       // means `write mode' 
@@ -316,10 +317,10 @@ AliFMDRawWriter::WriteDigits(TClonesArray* digits)
     // If we haven't got a writer (either because none were made so
     // far, or because we've switch DDL), make one. 
     if (!writer) {
-      AliDebug(1, Form("Opening new ALTRO writer w/file FMD_%d.ddl", ddl));
-      file   = new std::ofstream(Form("FMD_%d.ddl", ddl));
+      AliDebug(1, Form("Opening new ALTRO writer w/file %s", AliDAQ::DdlFileName("FMD",ddl)));
+      file   = new std::ofstream(AliDAQ::DdlFileName("FMD",ddl));
       if (!file || !*file) {
-       AliFatal(Form("Failed to open file FMD_%d.ddl", ddl));
+       AliFatal(Form("Failed to open file %s", AliDAQ::DdlFileName("FMD",ddl)));
        return;
       }
       writer  = new AliFMDAltroWriter(*file);
index a736ced232c2781def89ab13cf650910464c1734..d3bb3bb66a3f3cf0d282db33002d719cddcd07e7 100644 (file)
@@ -223,7 +223,7 @@ AliL3DigitRowData * AliL3DDLDataFileHandler::DDLData2Memory(UInt_t &nrow,Int_t e
   }
 #ifdef use_newio
     fReader->Reset();
-    fReader->Select(0,ddls[0],ddls[ddlsToSearch-1]);
+    fReader->Select("TPC",ddls[0],ddls[ddlsToSearch-1]);
     fTPCStream->Reset();
 #else
     fTPCStream->SetDDLID(ddls[i]); //ddl to read out
@@ -391,7 +391,7 @@ AliL3DigitRowData * AliL3DDLDataFileHandler::DDLData2Memory(UInt_t &nrow,Int_t e
 
 #ifdef use_newio
   fReader->Reset();
-  fReader->Select(0,ddls[0],ddls[ddlsToSearch-1]);
+  fReader->Select("TPC",ddls[0],ddls[ddlsToSearch-1]);
   fTPCStream->Reset();
 #else
   fTPCStream->SetDDLID(ddls[i]); //ddl to read out
index 7f22bba1a82a2b3b3f75746e292bf4d728880f7b..949ee0216efd8c6036a76986c5589015af33b0aa 100644 (file)
@@ -49,7 +49,7 @@ AliL3DDLTPCRawStream::AliL3DDLTPCRawStream(AliL3DDLRawReader* rawReader)
   // create an object to read TPC raw digits
 
   fRawReader = rawReader;
-  fRawReader->Select(0);
+  fRawReader->Select(3);
   fData = new UShort_t[fgkDataMax];
   fDataSize = fPosition = 0;
   fCount = fBunchLength = 0;
@@ -81,7 +81,7 @@ Bool_t AliL3DDLTPCRawStream::SetDDLID(Int_t d)
   fSector = fPrevSector = fRow = fPrevRow = fPad = fPrevPad = fTime = fSignal = -1;
 
   fRawReader->Reset();
-  fRawReader->Select(0,d,d+1);
+  fRawReader->Select(3,d,d+1);
        
   return kTRUE;
 }
index 6107ca467f793a10913320815123376a3cda82be..7e9bf7fc9e9056a80eacddcba78395fff68c8515 100644 (file)
@@ -32,6 +32,7 @@
 #include "AliITSRawStreamSDD.h"
 #include "AliITSRawStreamSSD.h"
 #include "AliBitPacking.h"
+#include "AliDAQ.h"
 
 ClassImp(AliITSDDLRawData)
 
@@ -287,8 +288,8 @@ Int_t AliITSDDLRawData::RawDataSPD(TBranch* branch){
   AliRawDataHeader header;
 
   //loop over DDLs
-  for(Int_t i=0;i<AliITSRawStreamSPD::kDDLsNumber;i++){
-    sprintf(fileName,"ITSSPD_%d.ddl",i+AliITSRawStreamSPD::kDDLOffset); //The name of the output file.
+  for(Int_t i=0;i<AliDAQ::NumberOfDdls("ITSSPD");i++){
+    strcpy(fileName,AliDAQ::DdlFileName("ITSSPD",i)); //The name of the output file.
 #ifndef __DECCXX
     outfile.open(fileName,ios::binary);
 #else
@@ -337,8 +338,8 @@ Int_t AliITSDDLRawData::RawDataSSD(TBranch* branch){
   AliRawDataHeader header;
 
   //loop over DDLs  
-  for(Int_t i=0;i<AliITSRawStreamSSD::kDDLsNumber;i++){
-    sprintf(fileName,"ITSSSD_%d.ddl",i+AliITSRawStreamSSD::kDDLOffset); //The name of the output file
+  for(Int_t i=0;i<AliDAQ::NumberOfDdls("ITSSSD");i++){
+    strcpy(fileName,AliDAQ::DdlFileName("ITSSSD",i)); //The name of the output file.
 #ifndef __DECCXX
     outfile.open(fileName,ios::binary);
 #else
@@ -388,8 +389,8 @@ Int_t AliITSDDLRawData::RawDataSDD(TBranch* branch){
   AliRawDataHeader header;
 
   //loop over DDLs  
-  for(Int_t i=0;i<AliITSRawStreamSDD::kDDLsNumber;i++){
-    sprintf(fileName,"ITSSDD_%d.ddl",i+AliITSRawStreamSDD::kDDLOffset); //The name of the output file
+  for(Int_t i=0;i<AliDAQ::NumberOfDdls("ITSSDD");i++){
+    strcpy(fileName,AliDAQ::DdlFileName("ITSSDD",i)); //The name of the output file.
 #ifndef __DECCXX
     outfile.open(fileName,ios::binary);
 #else
index addebe1d46d8a1d96dd4c67041ea04e8d6040fa0..3c893d07df3f404295ff2636dd6a71720102f883 100644 (file)
@@ -63,7 +63,7 @@ AliITSRawStreamSDD::AliITSRawStreamSDD(AliRawReader* rawReader) :
     fAnode[i]=0;
     fLowThreshold[i]=0;
   }
-  fRawReader->Select(2);
+  fRawReader->Select("ITSSDD");
 
 }
 
index b966a529e208b4ea588b34b479dd1e80660f276a..341b2db619c6853a47eac6c577df6286345af552 100644 (file)
@@ -34,7 +34,6 @@ class AliITSRawStreamSDD: public AliITSRawStream {
     static  Int_t    GetModuleNumber(UInt_t iDDL, UInt_t iModule)
                      {return fgkDDLModuleMap[iDDL][iModule];}
 
-    enum {kDDLOffset = 0x200};    // offset for DDL numbers
     enum {kDDLsNumber = 12};      // number of DDLs in SDD
     enum {kModulesPerDDL = 22};   // number of modules in each DDL 
 
index a0eb73d89f934bc49f019274ab8d9657f3bfbb6a..1d4daf9ed4e22dcd7e7db9e4f27edcc568fedaa9 100644 (file)
@@ -62,7 +62,7 @@ AliITSRawStreamSPD::AliITSRawStreamSPD(AliRawReader* rawReader) :
 {
 // create an object to read ITS SPD raw digits
 
-  fRawReader->Select(1);
+  fRawReader->Select("ITSSPD");
 }
 
 
index ee85836b46486a334745f2aea0a7044a6ead724e..b8da11583faaf0d716f6854c7ccd7e7767af1e9e 100644 (file)
@@ -24,7 +24,6 @@ class AliITSRawStreamSPD: public AliITSRawStream {
     Int_t            GetRow() const {return fCoord2;};
     Int_t            GetColumn() const {return fCoord1;};
 
-    enum {kDDLOffset = 0x100};    // offset for DDL numbers
     enum {kDDLsNumber = 20};      // number of DDLs in SPD
     enum {kModulesPerDDL = 12};   // number of modules in each DDL
 
index bb2b64acd6602cfbf98fad56573cd240b1f153b5..132b4c8dc11b3b470910860ff1bc30fa5b27bc73 100644 (file)
@@ -212,7 +212,7 @@ AliITSRawStreamSSD::AliITSRawStreamSSD(AliRawReader* rawReader) :
 {
 // create an object to read ITS SSD raw digits
 
-  fRawReader->Select(3);
+  fRawReader->Select("ITSSSD");
 }
 
 
index b4c7aff22e30a505f6460f36434bdf22ac672b20..2856f5f0924025218dd5a924b5f874ead4eb753a 100644 (file)
@@ -26,7 +26,6 @@ class AliITSRawStreamSSD: public AliITSRawStream {
     Int_t            GetSideFlag() const {return fCoord1;};
     Int_t            GetStrip() const {return fCoord2;};
 
-    enum {kDDLOffset = 0x300};    // offset for DDL numbers
     enum {kDDLsNumber = 16};      // number of DDLs in SSD
     enum {kModulesPerDDL = 109};  // number of modules in each DDL
 
index 2b969849bd61927daece304012222c4f480c33e7..39bb2cad45b8ccaf4a9f8eb7d78599dc22b0811a 100644 (file)
@@ -34,7 +34,6 @@ AliITSRawStreamSSDv1::AliITSRawStreamSSDv1(AliRawReader* rawReader) :
 
   fADC =0;
   fADModule=0;
-  fRawReader->Select(3);
   fRawReader->SelectEquipment(17,102,102);
 }
 
index bb230a1f5215d25bbcf337ea44b0eb6833f6c3c9..e33b921c027be37e4f1b36f4b7ad4566cdff042a 100644 (file)
@@ -194,8 +194,7 @@ Bool_t AliMUONRawStreamTracker::NextDDL()
   AliDebug(3, Form("DDL Number %d\n", fDDL ));
 
   fRawReader->Reset();
-  //  fRawReader->Select(AliDAQ::DetectorID("MUONTRK"), fDDL, fDDL);  //Select the DDL file to be read  
-  fRawReader->Select(0X9, fDDL, fDDL);  //Select the DDL file to be read  
+  fRawReader->Select("MUONTRK", fDDL, fDDL);  //Select the DDL file to be read  
 
   fRawReader->ReadHeader();
 
index f7b203a434326eac49af02ff005eaaea96047664..657da67924fc6843dc45f3ff98eaf5e25febc6f3 100644 (file)
@@ -148,8 +148,7 @@ Bool_t AliMUONRawStreamTrigger::NextDDL()
   }
 
   fRawReader->Reset();
-  //  fRawReader->Select(AliDAQ::DetectorID("MUONTRG"),fDDL,fDDL);  //Select the DDL file to be read  
-  fRawReader->Select(0XA, fDDL, fDDL);  //Select the DDL file to be read  
+  fRawReader->Select("MUONTRG", fDDL, fDDL);  //Select the DDL file to be read  
 
   fRawReader->ReadHeader();
 
index 85fd0000ffe6a936288c96237d959c2cdde804a6..cfcfd478b2aa42af37db773d1a11d4a3e77702df 100644 (file)
@@ -223,13 +223,13 @@ Int_t AliMUONRawWriter::Digits2Raw()
   {
     // open files
     //   idDDL = ich * 2  + AliDAQ::DdlIDOffset("MUONTRK"); // waiting update in STEER
-    idDDL = ich * 2  + 0x900; // official number for MUON
-    sprintf(name, "MUON_%d.ddl",idDDL);
+    idDDL = ich * 2;
+    strcpy(name,AliDAQ::DdlFileName("MUONTRK",idDDL));
     fFile[0] = fopen(name,"w");
 
     //    idDDL = (ich * 2) + 1 + AliDAQ::DdlIDOffset("MUONTRK");
-    idDDL = (ich * 2) + 1 + 0x900;
-    sprintf(name, "MUON_%d.ddl",idDDL);
+    idDDL = (ich * 2) + 1;
+    strcpy(name,AliDAQ::DdlFileName("MUONTRK",idDDL));
     fFile[1] = fopen(name,"w");
     
     WriteTrackerDDL(ich);
@@ -242,14 +242,12 @@ Int_t AliMUONRawWriter::Digits2Raw()
   // trigger chambers
  
   // open files
-  //  idDDL = AliDAQ::DdlIDOffset("MUONTRG");
-  idDDL = 0xA00;// official number for MUTR
-  sprintf(name, "MUTR_%d.ddl",idDDL);
+  idDDL = 0;// MUTR
+  strcpy(name,AliDAQ::DdlFileName("MUONTRG",idDDL));
   fFile[0] = fopen(name,"w");
 
-  //  idDDL = AliDAQ::DdlIDOffset("MUONTRG") + 1;
-  idDDL = 0xA00 + 1;// official number for MUTR
-  sprintf(name, "MUTR_%d.ddl",idDDL);
+  idDDL = 1;// MUTR
+  strcpy(name,AliDAQ::DdlFileName("MUONTRG",idDDL));
   fFile[1] = fopen(name,"w");
 
   WriteTriggerDDL();
index c73bf3d6e357cd744654b225a9e7514b5938b7fb..2cddd4ff8395e23b7db3dfdf90f460fdcb886c0a 100644 (file)
@@ -16,6 +16,9 @@
 /* History of cvs commits:
  *
  * $Log$
+ * Revision 1.98  2006/05/11 11:30:48  cvetan
+ * Major changes in AliAltroBuffer. Now it can be used only for writing of raw data. All the corresponding read method are removed. It is based now on AliFstream in order to avoid endianess problems. The altro raw data is written always with little endian
+ *
  * Revision 1.97  2006/04/22 10:30:17  hristov
  * Add fEnergy to AliPHOSDigit and operate with EMC amplitude in energy units (Yu.Kharlov)
  *
@@ -81,6 +84,7 @@ class TFile;
 #include "AliCDBEntry.h"
 #include "AliCDBStorage.h"
 #include "AliPHOSCalibData.h"
+#include "AliDAQ.h"
 
 ClassImp(AliPHOS)
 
@@ -438,7 +442,6 @@ void AliPHOS::Digits2Raw()
   }
 
   // some digitization constants
-  const Int_t    kDDLOffset = 0x600; // assigned to PHOS
 //   const Int_t    kThreshold = 1; // skip digits below this threshold // YVK
   const Float_t    kThreshold = 0.001; // skip digits below 1 MeV
   const Int_t      kAdcThreshold = 1;  // Lower ADC threshold to write to raw data
@@ -475,9 +478,7 @@ void AliPHOS::Digits2Raw()
       }
 
       // open new file and write dummy header
-      TString fileName("PHOS_") ;
-      fileName += (iDDL + kDDLOffset) ; 
-      fileName += ".ddl" ; 
+      TString fileName = AliDAQ::DdlFileName("PHOS",iDDL);
       buffer = new AliAltroBuffer(fileName.Data());
       buffer->WriteDataHeader(kTRUE, kFALSE);  //Dummy;
 
index f4ab53a5048f549d14f8bd1b205ffb569df63e3b..0a0f409391126bbf18394c1ffa9a14541b27ff56 100644 (file)
@@ -47,7 +47,7 @@ AliPHOSRawStream::AliPHOSRawStream(AliRawReader* rawReader) :
 {
 // create an object to read PHOS raw digits
 
-  SelectRawData(6);
+  SelectRawData("PHOS");
 
   fNoAltroMapping = kTRUE;
 }
index 532938857e60973181b828f24dd26a6d15690dc5..5661d877bf9351d7288ab6c6cbd2dd51ac09f6d7 100644 (file)
@@ -289,7 +289,7 @@ void AliPMDClusterFinder::Digits2RecPoints(AliRawReader *rawReader,
       ResetCellADC();
       rawReader->Reset();
       AliPMDRawStream pmdinput(rawReader);
-      rawReader->Select(12, indexDDL, indexDDL);
+      rawReader->Select("PMD", indexDDL, indexDDL);
       while(pmdinput.Next())
        {
          Int_t det = pmdinput.GetDetector();
@@ -513,7 +513,7 @@ void AliPMDClusterFinder::Digits2RecPoints(Int_t ievt, AliRawReader *rawReader)
       ResetCellADC();
       rawReader->Reset();
       AliPMDRawStream pmdinput(rawReader);
-      rawReader->Select(12, indexDDL, indexDDL);
+      rawReader->Select("PMD", indexDDL, indexDDL);
       while(pmdinput.Next())
        {
          Int_t det = pmdinput.GetDetector();
index 847347b6a2be159c9c4754576a663de43af53ae8..9ff94e667980128b3a57d2ad63a73b63518cde15 100644 (file)
@@ -25,7 +25,7 @@
 #include "AliPMDdigit.h"
 #include "AliPMDRawStream.h"
 #include "AliPMDDDLRawData.h"
-
+#include "AliDAQ.h"
 
 ClassImp(AliPMDDDLRawData)
 
@@ -64,7 +64,7 @@ void AliPMDDDLRawData::WritePMDRawData(TTree *treeD)
   AliDebug(1,Form("Number of modules inside treeD = %d",nmodules));
 
   const Int_t kSize         = 4608;
-  const Int_t kDDL          = 6;
+  const Int_t kDDL          = AliDAQ::NumberOfDdls("PMD");
   Int_t modulePerDDL        = 0;
 
 
@@ -79,7 +79,7 @@ void AliPMDDDLRawData::WritePMDRawData(TTree *treeD)
   Int_t mmodule = 0;
   for(Int_t iddl = 0; iddl < kDDL; iddl++)
     {
-      sprintf(filename,"PMD_%d.ddl",AliPMDRawStream::kDDLOffset+iddl);
+      strcpy(filename,AliDAQ::DdlFileName("PMD",iddl));
 #ifndef __DECCXX
       outfile.open(filename,ios::binary);
 #else
index 0f165290c539f8c329acd2fc2bc6a2812d6162b1..7814f7dd7e4a60de3df67027bc7e291e88e2264d 100644 (file)
@@ -48,7 +48,7 @@ AliPMDRawStream::AliPMDRawStream(AliRawReader* rawReader) :
 {
 // create an object to read PMD raw digits
 
-  fRawReader->Select(12);
+  fRawReader->Select("PMD");
 }
 
 //_____________________________________________________________________________
index 9cbeb00a3768660d1bbd24742b22291984069ad4..523be28e33ada828e30adfa5a4c706ee9ed0db2c 100644 (file)
@@ -164,6 +164,15 @@ void AliAltroRawStream::SelectRawData(Int_t detId)
   fRawReader->Select(detId);
 }
 
+//_____________________________________________________________________________
+void AliAltroRawStream::SelectRawData(const char *detName)
+{
+  // Select the raw data for specific
+  // detector name
+  AliDebug(1,Form("Selecting raw data for detector %s",detName));
+  fRawReader->Select(detName);
+}
+
 //_____________________________________________________________________________
 UShort_t AliAltroRawStream::GetNextWord()
 {
index 08b03c2ec54faf142eb804ce6aa2a3a72de96050..2dc9a3f5a9441d40c4a438d95d09ab096418cd0a 100644 (file)
@@ -46,6 +46,7 @@ class AliAltroRawStream: public TObject {
     Int_t   GetRCUTrailerSize() const { return fRCUTrailerSize; } // Provide size of RCU trailer
 
     void SelectRawData(Int_t detId);                           // Select raw data for specific detector id
+    void SelectRawData(const char *detName);                   // Select raw data for specific detector name
 
     void  SetNoAltroMapping(Bool_t flag) { fNoAltroMapping = flag; }  // Specify whenever to use or not the altro mapping
     void  SetOldRCUFormat(Bool_t flag)   { fIsOldRCUFormat = flag; }  // Specify whenever to use or not the old RCU trailer format
index b9d45aa838268e31e8e9e1896fcce9912a321482..3107f1d27760559dae0793660d3f2a3229474e54 100644 (file)
@@ -179,30 +179,34 @@ Int_t AliDAQ::DdlIDOffset(Int_t detectorID)
   return (detectorID << 8);
 }
 
-const char *AliDAQ::DetectorNameFromDdlID(Int_t ddlID)
+const char *AliDAQ::DetectorNameFromDdlID(Int_t ddlID,Int_t &ddlIndex)
 {
   // Returns the detector name for
   // a given DDL ID
-  Int_t detectorID = DetectorIDFromDdlID(ddlID);
+  ddlIndex = -1;
+  Int_t detectorID = DetectorIDFromDdlID(ddlID,ddlIndex);
   if (detectorID < 0)
     return "";
 
   return DetectorName(detectorID);
 }
 
-Int_t AliDAQ::DetectorIDFromDdlID(Int_t ddlID)
+Int_t AliDAQ::DetectorIDFromDdlID(Int_t ddlID,Int_t &ddlIndex)
 {
-  // Returns the detector ID for
-  // a given DDL ID
+  // Returns the detector ID and
+  // the ddl index within the
+  // detector range for
+  // a given input DDL ID
   Int_t detectorID = ddlID >> 8;
   if (detectorID < 0 || detectorID >= kNDetectors) {
     AliErrorClass(Form("Invalid detector index: %d (%d -> %d) !",detectorID,0,kNDetectors-1));
     return -1;
   }
-  Int_t ddlIndex = ddlID & 0xFF;
+  ddlIndex = ddlID & 0xFF;
   if (ddlIndex >= fgkNumberOfDdls[detectorID]) {
     AliErrorClass(Form("Invalid DDL index %d (%d -> %d) for detector %d",
                       ddlIndex,0,fgkNumberOfDdls[detectorID],detectorID));
+    ddlIndex = -1;
     return -1;
   }
   return detectorID;
index b8c24662cbfa0ac73da3d4382d651d4f3894dbc4..23b168f0a6549722efbeed934a6dcde0f2ad51e9 100644 (file)
@@ -42,8 +42,8 @@ class AliDAQ: public TObject {
   static Int_t       DdlIDOffset(const char *detectorName);
   static Int_t       DdlIDOffset(Int_t detectorID);
 
-  static const char *DetectorNameFromDdlID(Int_t ddlID);
-  static Int_t       DetectorIDFromDdlID(Int_t ddlID);
+  static const char *DetectorNameFromDdlID(Int_t ddlID, Int_t &ddlIndex);
+  static Int_t       DetectorIDFromDdlID(Int_t ddlID, Int_t &ddlIndex);
 
   static Int_t       DdlID(const char *detectorName, Int_t ddlIndex);
   static Int_t       DdlID(Int_t detectorID, Int_t ddlIndex);
diff --git a/RAW/AliDAQConfig.h b/RAW/AliDAQConfig.h
deleted file mode 100644 (file)
index babda4b..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#ifndef ALIDAQCONFIG_H
-#define ALIDAQCONFIG_H
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice                               */
-
-//////////////////////////////////////////////////////////////////////////////
-//                                                                          //
-// The header file contains all the information about the DAQ configuration.//
-// This includes the number of DDLs and LDC per sub-detector readout system.//
-// This header file is to be included inside DATE.                          //
-//                                                                          //
-//////////////////////////////////////////////////////////////////////////////
-
-static const int kNDetectors = 18;
-
-static const char* kDetectors[kNDetectors] = {"TPC", "ITSSPD", "ITSSDD", "ITSSSD", 
-                                             "TRD", "TOF", "PHOS", "RICH", 
-                                             "EMCAL", "MUON", "MUTR", "ZDC", 
-                                             "PMD", "START", "VZERO", "CRT",
-                                             "FMD","TRIG"};
-static const int kDetectorDDLs[kNDetectors]   = {216, 20, 12, 16, 
-                                                18, 72, 20, 20, 
-                                                22, 20, 2, 1, 
-                                                6, 1, 1, 1,
-                                                3,1};
-static const float kDetectorLDCs[kNDetectors] = {46, 2, 2, 1, 
-                                                4, 2, 1, 2, 
-                                                1, 2, 1, 1,
-                                                1, 0.5, 0.5, 1,
-                                                1,1};
-
-
-#endif
index 21668b535a61950eccf6535547007b3c2c0fe354..95570b08b46da1f343aa8ec3c7b8a03d0b3bf287 100644 (file)
@@ -38,7 +38,7 @@
 
 #include <Riostream.h>
 #include "AliRawReader.h"
-
+#include "AliDAQ.h"
 
 ClassImp(AliRawReader)
 
@@ -157,15 +157,17 @@ Int_t AliRawReader::GetDetectorID() const
 {
   // Get the detector ID
   // The list of detector IDs
-  // can be found in AliDAQConfig.h
+  // can be found in AliDAQ.h
   Int_t equipmentId;
   if (fEquipmentIdsIn && fEquipmentIdsIn)
     equipmentId = GetMappedEquipmentId();
   else
     equipmentId = GetEquipmentId();
 
-  if (equipmentId >= 0)
-    return (equipmentId >> 8);
+  if (equipmentId >= 0) {
+    Int_t ddlIndex;
+    return AliDAQ::DetectorIDFromDdlID(equipmentId,ddlIndex);
+  }
   else
     return -1;
 }
@@ -174,19 +176,32 @@ Int_t AliRawReader::GetDDLID() const
 {
   // Get the DDL ID (within one sub-detector)
   // The list of detector IDs
-  // can be found in AliDAQConfig.h
+  // can be found in AliDAQ.h
   Int_t equipmentId;
   if (fEquipmentIdsIn && fEquipmentIdsIn)
     equipmentId = GetMappedEquipmentId();
   else
     equipmentId = GetEquipmentId();
 
-  if (equipmentId >= 0)
-    return (equipmentId & 0xFF);
+  if (equipmentId >= 0) {
+    Int_t ddlIndex;
+    AliDAQ::DetectorIDFromDdlID(equipmentId,ddlIndex);
+    return ddlIndex;
+  }
   else
     return -1;
 }
 
+void AliRawReader::Select(const char *detectorName, Int_t minDDLID, Int_t maxDDLID)
+{
+// read only data of the detector with the given name and in the given
+// range of DDLs (minDDLID <= DDLID <= maxDDLID).
+// no selection is applied if a value < 0 is used.
+  Int_t detectorID = AliDAQ::DetectorID(detectorName);
+  if(detectorID >= 0)
+    Select(detectorID,minDDLID,maxDDLID);
+}
+
 void AliRawReader::Select(Int_t detectorID, Int_t minDDLID, Int_t maxDDLID)
 {
 // read only data of the detector with the given ID and in the given
@@ -194,10 +209,16 @@ void AliRawReader::Select(Int_t detectorID, Int_t minDDLID, Int_t maxDDLID)
 // no selection is applied if a value < 0 is used.
 
   fSelectEquipmentType = -1;
-  if (minDDLID < 0) minDDLID = 0;
-  fSelectMinEquipmentId = (detectorID << 8) + minDDLID;
-  if (maxDDLID < 0) maxDDLID = 0xFF;
-  fSelectMaxEquipmentId = (detectorID << 8) + maxDDLID;
+
+  if (minDDLID < 0)
+    fSelectMinEquipmentId = AliDAQ::DdlIDOffset(detectorID);
+  else
+    fSelectMinEquipmentId = AliDAQ::DdlID(detectorID,minDDLID);
+
+  if (maxDDLID < 0)
+    fSelectMaxEquipmentId = AliDAQ::DdlID(detectorID,AliDAQ::NumberOfDdls(detectorID)-1);
+  else
+    fSelectMaxEquipmentId = AliDAQ::DdlID(detectorID,maxDDLID);
 }
 
 void AliRawReader::SelectEquipment(Int_t equipmentType, 
index 45d9c37d2cc36f44167d2454bc1bb92cd38d574f..586d05b92035395035f6184c7dc8b77804b414dd 100644 (file)
@@ -25,6 +25,8 @@ class AliRawReader: public TObject {
 
     void             Select(Int_t detectorID, 
                            Int_t minDDLID = -1, Int_t maxDDLID = -1);
+    void             Select(const char *detectorName, 
+                           Int_t minDDLID = -1, Int_t maxDDLID = -1);
     void             SelectEquipment(Int_t equipmentType, 
                                     Int_t minEquipmentId = -1, 
                                     Int_t maxEquipmentId = -1);
index df37f55325d90426cf09ca089765b8eb098f94e8..6b510efbeb4089378e8f1b6a91f9da9f6e876f0e 100644 (file)
@@ -53,7 +53,7 @@ public:
   enum EAbsPad {kChamAbs=10000000,kSecAbs=1000000,kPadAbsX=1000,kPadAbsY=1};                //absolute pad number structure
   enum ERawData{kDiloX=8,kDiloY=6,kNdilo=10};                                               //DILOGIC structure, see description above 
   enum EPadData{kFirstPad=1,kPadsSecX=80,kPadsSecY=48,kPadsChamX=160,kPadsChamY=144,kSecX=2,kSecY=3};   //Segmentation structure 
-  enum EDdlData{kNddls=14,kDdlOffset=0x700,kRichRawId=7};                                   //Common DDL structure, see description above
+  enum EDdlData{kNddls=14}; //Common DDL structure, see description above
 //ctor&dtor    
   AliRICHDigit()                                                :AliDigit(),fCFM(-1) ,fChamber(-1  )     ,fPadX(-1)      ,fPadY(-1)      ,fQdc(-1)  {}
   AliRICHDigit(Int_t pad,Double_t qdc,Int_t cfm=-1,Int_t tid=-1):AliDigit(),fCFM(cfm),fChamber(P2C(pad)) ,fPadX(P2X(pad)),fPadY(P2Y(pad)),fQdc(qdc) {fTracks[0]=tid;}
index f2c0906d371614f319d74e76afde0e91b148fe09..6d69a55a43b24918321410c5c54f8edf263b7035 100644 (file)
@@ -192,7 +192,7 @@ void AliRICHReconstructor::Reconstruct(AliRunLoader *pAL,AliRawReader* pRR)const
     pRL->MakeTree("R");  pRich->MakeBranch("R");
     
     for(Int_t iChN=1;iChN<=7;iChN++){//chambers loop
-      pRR->Select(AliRICHDigit::kRichRawId,2*iChN-2,2*iChN-1);//select only DDL files for the current chamber      
+      pRR->Select("RICH",2*iChN-2,2*iChN-1);//select only DDL files for the current chamber      
       UInt_t w32=0;
       while(pRR->ReadNextInt(w32)){//raw records loop (in selected DDL files)
         UInt_t ddl=pRR->GetDDLID(); //returns 0,1,2 ... 13
index f6ad894c8449771621563b742d47f70d75742c44..d10a8d1bef35862dc8a2925538ab1472cd808176 100644 (file)
@@ -27,6 +27,7 @@
 #include <AliPDG.h>
 #include <AliMC.h>            //StepManager()      
 #include <AliRawDataHeader.h> //Digits2Raw()
+#include <AliDAQ.h>           //Digits2Raw()
 #include <AliRun.h>           //CreateMaterials()    
 #include <AliMagF.h>          //CreateMaterials()
 #include <TGeoManager.h>      //CreateGeometry()
@@ -481,7 +482,7 @@ void AliRICHv1::Digits2Raw()
   UInt_t w32=0;            //32 bits data word 
   
   for(Int_t i=0;i<AliRICHDigit::kNddls;i++){//open all 14 DDL in parallel
-    file[i].open(Form("RICH_%4i.ddl",AliRICHDigit::kDdlOffset+i));  //first is 0x700
+    file[i].open(AliDAQ::DdlFileName("RICH",i));
     file[i].write((char*)&header,sizeof(header));                //write dummy header as place holder, actual will be written later when total size of DDL is known
     cnt[i]=0; //reset counters
   }
index ec61e34c15b9461a86289f8fc80c5f791509eaa3..efa508d060bba26ce8c1b8ff6a3534f1a3586451 100644 (file)
@@ -30,6 +30,7 @@
 #include "AliBitPacking.h"
 #include "AliRawDataHeader.h"
 #include "AliBitPacking.h"
+#include "AliDAQ.h"
 
 ClassImp(AliSTARTRawData)
 
@@ -408,8 +409,7 @@ Int_t AliSTARTRawData::RawDataSTART(AliSTARTdigit *fDigits)
   ofstream outfile;         // logical name of the output file 
   AliRawDataHeader header;
   //loop over TOF DDL files
-  sprintf(fileName,"START_%d.ddl", 0xd00);
-  //   sprintf(fileName,"START_0xd00.ddl"); //The name of the output file
+  strcpy(fileName,AliDAQ::DdlFileName("START",0)); //The name of the output file
 #ifndef __DECCXX
     outfile.open(fileName,ios::binary);
 #else
index df39e178e85c53d2ae9a4d53aaaca13b646ae9a4..29734f46ed23af7c8e750df15ac15790c6a5b431 100644 (file)
@@ -25,7 +25,7 @@ ClassImp(AliSTARTRawReader)
   fTree->Branch("START","AliSTARTdigit",&fDigits,405,1);
  
   fRawReader->Reset();
-  fRawReader->Select(13,0,1);
+  fRawReader->Select("START");
  
  
 }
index be857e241071bf2313bf1fc8d976b75c40cda724..b02f55d98bdbe5de5ffb39d84bdb82247d662ae1 100644 (file)
@@ -25,9 +25,9 @@
 #include "AliCTPRawData.h"
 #include "AliRunLoader.h"
 #include "AliCentralTrigger.h"
-#include "AliDAQConfig.h"
 #include "AliRawDataHeader.h"
 #include "AliLog.h"
+#include "AliDAQ.h"
 
 ClassImp(AliCTPRawData)
 ////////////////////////////////////////////////////////////////////////////////////////
@@ -84,7 +84,7 @@ void AliCTPRawData::RawData()
   AliDebug(1,Form("CTP detector cluster = 0x%x",l2cluster));
 
   char  fileName[15];
-  sprintf(fileName,"%s_%d.ddl",kDetectors[kCTPIndex],kCTPIndex*0x100);
+  strcpy(fileName,AliDAQ::DdlFileName("TRG",0));
   AliInfo(Form("Storing CTP raw data in %s",fileName));
   ofstream outfile;         // logical name of the output file 
  #ifndef __DECCXX
index ccbd22e4a04a59ad939991d421b2eccfdebafaa0..8006519d3fdd936628b919104e7b2b4f55ac21cf 100644 (file)
@@ -16,8 +16,6 @@ class AliCTPRawData:public TObject{
   AliCTPRawData(const AliCTPRawData &source);            // copy constructor
   AliCTPRawData& operator=(const AliCTPRawData &source); // assignment operator
   void  RawData();  //This method is used to create the slides (sequence of files)
- private:
-  enum {kCTPIndex = 17};       //CTP detector index (AliDAQConfig.h)
 
   ClassDef(AliCTPRawData,1)
 };
index 0f13c9182abc8a6160e89e4e1ee23a4c5517e9be..f6ed66cf1a36eda27794fae2edfe99bc6207008f 100644 (file)
@@ -27,6 +27,7 @@
 #include "AliCTPRawStream.h"
 #include "AliRawReader.h"
 #include "AliLog.h"
+#include "AliDAQ.h"
 
 ClassImp(AliCTPRawStream)
 
@@ -41,8 +42,8 @@ AliCTPRawStream::AliCTPRawStream(AliRawReader* rawReader) :
   // select the raw data corresponding to
   // the CTP detector id
   fRawReader->Reset();
-  AliDebug(1,Form("Selecting raw data for detector %d",kCTPIndex));
-  fRawReader->Select(kCTPIndex);
+  AliDebug(1,Form("Selecting raw data for detector %d",AliDAQ::DetectorID("TRG")));
+  fRawReader->Select("TRG");
 }
 
 //_____________________________________________________________________________
index d8e2ce9f6a5857d74d87f79ac302cbc6e8c29de6..ac0325a3c51ee7d038870f1f69b22e7507c68053 100644 (file)
@@ -36,8 +36,6 @@ class AliCTPRawStream: public TObject {
 
     AliRawReader*    fRawReader;   // object for reading the raw data
 
-    enum {kCTPIndex = 17};         //CTP detector index (AliDAQConfig.h)
-
     ClassDef(AliCTPRawStream, 0)   // class for reading CTP DDL raw data
 };
 
index 46e97fb7fe733fc96c20beae09d40fa309169064..bde9763d65b4df2cbdb1629760b5a669655a81c6 100644 (file)
@@ -53,7 +53,7 @@
 #include "AliMC.h"
 #include "AliRawDataHeader.h"
 
-#include "AliDAQConfig.h"
+#include "AliDAQ.h"
 
 ClassImp(AliModule)
  
@@ -868,14 +868,7 @@ void AliModule::Digits2Raw()
 
   AliWarning(Form("Dummy version called for %s", GetName()));
 
-  Int_t nDDLs = 1;
-  Int_t ddlOffset = 0;
-  for (Int_t i = 0; i < kNDetectors; i++) {
-    if (strcmp(GetName(), kDetectors[i]) == 0) {
-      nDDLs = kDetectorDDLs[i];
-      ddlOffset = 0x100 * i;
-    }
-  }
+  Int_t nDDLs = AliDAQ::NumberOfDdls(GetName());
 
   if (!GetLoader()) return;
   fstream digitsFile(GetLoader()->GetDigitsFileName(), ios::in);
@@ -888,7 +881,7 @@ void AliModule::Digits2Raw()
 
   for (Int_t iDDL = 0; iDDL < nDDLs; iDDL++) {
     char fileName[20];
-    sprintf(fileName, "%s_%d.ddl", GetName(), iDDL + ddlOffset);
+    strcpy(fileName,AliDAQ::DdlFileName(GetName(),iDDL));
     fstream rawFile(fileName, ios::out);
     if (!rawFile) return;
 
index bd3638fc448a374b9fb7ea16f9b0c9731d90b39c..5b35373c8674e945b6bdf3e991780957a85ab34e 100644 (file)
 #include "AliCDBManager.h"
 #include "AliAlignObj.h"
 #include "AliCentralTrigger.h"
-#include "AliDAQConfig.h"
+#include "AliDAQ.h"
 #include "AliDigitizer.h"
 #include "AliGenerator.h"
 #include "AliLog.h"
@@ -1128,16 +1128,16 @@ Bool_t AliSimulation::ConvertRawFilesToDate(const char* dateFileName)
     Int_t prevLDC = -1;
 
     // loop over detectors and DDLs
-    for (Int_t iDet = 0; iDet < kNDetectors; iDet++) {
-      for (Int_t iDDL = 0; iDDL < kDetectorDDLs[iDet]; iDDL++) {
+    for (Int_t iDet = 0; iDet < AliDAQ::kNDetectors; iDet++) {
+      for (Int_t iDDL = 0; iDDL < AliDAQ::NumberOfDdls(iDet); iDDL++) {
 
-        Int_t ddlID = 0x100*iDet + iDDL;
+        Int_t ddlID = AliDAQ::DdlID(iDet,iDDL);
         Int_t ldcID = Int_t(ldc + 0.0001);
-        ldc += kDetectorLDCs[iDet] / kDetectorDDLs[iDet];
+        ldc += AliDAQ::NumberOfLdcs(iDet) / AliDAQ::NumberOfDdls(iDet);
 
         char rawFileName[256];
-        sprintf(rawFileName, "raw%d/%s_%d.ddl", 
-                iEvent, kDetectors[iDet], ddlID);
+        sprintf(rawFileName, "raw%d/%s", 
+                iEvent, AliDAQ::DdlFileName(iDet,iDDL));
 
        // check existence and size of raw data file
         FILE* file = fopen(rawFileName, "rb");
index aeb2d3ba4ba7196190b1e580f0d0b73c7c25fbcc..b84766baab20b173e5cc0e20dd067337c55ecb82 100644 (file)
@@ -270,7 +270,7 @@ void AliTOFClusterFinder::Digits2RecPoints(AliRawReader *rawReader,
 
     rawReader->Reset();
     AliTOFRawStream tofInput(rawReader);
-    rawReader->Select(5, indexDDL, indexDDL);
+    rawReader->Select("TOF", indexDDL, indexDDL);
 
     while(tofInput.Next()) {
 
@@ -347,7 +347,7 @@ void AliTOFClusterFinder::Digits2RecPoints(Int_t iEvent, AliRawReader *rawReader
 
     rawReader->Reset();
     AliTOFRawStream tofInput(rawReader);
-    rawReader->Select(5, indexDDL, indexDDL);
+    rawReader->Select("TOF", indexDDL, indexDDL);
 
     while(tofInput.Next()) {
 
@@ -439,7 +439,7 @@ void AliTOFClusterFinder::Raw2Digits(Int_t iEvent, AliRawReader *rawReader)
 
     rawReader->Reset();
     AliTOFRawStream tofInput(rawReader);
-    rawReader->Select(5, indexDDL, indexDDL);
+    rawReader->Select("TOF", indexDDL, indexDDL);
 
     while(tofInput.Next()) {
 
index ee7535d7a3847e5b68296c493d4560ee9dd85276..3705fc7993498589731e52481296b9520f1bfecb 100644 (file)
@@ -47,6 +47,7 @@ Revision 0.01  2004/6/11 A.De Caro, S.B.Sellitto, R.Silvestri
 #include "AliTOFdigit.h"
 #include "AliTOFGeometry.h"
 #include "AliTOFRawStream.h"
+#include "AliDAQ.h"
 
 ClassImp(AliTOFDDLRawData)
 
@@ -232,7 +233,7 @@ Int_t AliTOFDDLRawData::RawDataTOF(TBranch* branch){
   //loop over TOF DDL files
   for(Int_t i = 0; i<AliTOFGeometry::NDDL()*AliTOFGeometry::NSectors(); i++){
 
-    sprintf(fileName,"TOF_%d.ddl",i+AliTOFRawStream::kDDLOffset); //The name of the output file
+    strcpy(fileName,AliDAQ::DdlFileName("TOF",i)); //The name of the output file
 #ifndef __DECCXX
     outfile.open(fileName,ios::binary);
 #else
index 912f886351d25fb56c1c2f57c08365d5d06fbdb2..de24f1e74677f7cf3c88ecc9c0a92ee7c764037c 100644 (file)
@@ -12,7 +12,7 @@ void AliTOFRawDataRead(Int_t iEvent=0)
 
     reader.Reset();
     AliTOFRawStream stream(&reader);
-    reader.Select(5, indexDDL, indexDDL);
+    reader.Select("TOF", indexDDL, indexDDL);
 
     //FILE *fpw = fopen("TOFrawDataRead.txt","w");
 
index a2595e53acd7c288c496b1364c49ad5ce1be8b0a..176734dd9da91895fb800d3ce5b70fc2d6f4169e 100644 (file)
@@ -65,7 +65,7 @@ AliTOFRawStream::AliTOFRawStream(AliRawReader* rawReader)
 
   fTOFGeometry = new AliTOFGeometryV5();
 
-  fRawReader->Select(5);
+  fRawReader->Select("TOF");
 
 }
 
index 7ab31e45236f567212defddf4c9dd2f59ec4e479..5bb95a42ee32232a81e45faa5ce232abd90c22ba 100644 (file)
@@ -31,6 +31,7 @@
 #include "AliTPCAltroMapping.h"
 #include "AliTPCDDLRawData.h"
 #include "AliRawDataHeader.h"
+#include "AliDAQ.h"
 
 ClassImp(AliTPCDDLRawData)
 ////////////////////////////////////////////////////////////////////////////////////////
@@ -110,7 +111,7 @@ void AliTPCDDLRawData::RawData(const char* inputFileName){
        ddlNumber=data.Sec*2+data.SubSec;
       else
        ddlNumber=72+(data.Sec-36)*4+data.SubSec;
-      sprintf(filename,"TPC_%d.ddl",ddlNumber+kDDLOffset); 
+      strcpy(filename,AliDAQ::DdlFileName("TPC",ddlNumber));
       Int_t patchIndex = data.SubSec;
       if(data.Sec>=36) patchIndex += 2;
       buffer=new AliAltroBuffer(filename,mapping[patchIndex]);
@@ -148,7 +149,7 @@ void AliTPCDDLRawData::RawData(const char* inputFileName){
              ddlNumber=data.Sec*2+data.SubSec;
            else
              ddlNumber=72+(data.Sec-36)*4+data.SubSec;
-           sprintf(filename,"TPC_%d.ddl",ddlNumber+kDDLOffset); 
+           strcpy(filename,AliDAQ::DdlFileName("TPC",ddlNumber));
            Int_t patchIndex = data.SubSec;
            if(data.Sec>=36) patchIndex += 2;
            buffer=new AliAltroBuffer(filename,mapping[patchIndex]);
index bf53594f81faafceffe07c6a51e71bbc1c7775cb..e15ad95d2644863b4df29ef3c7e58a55a3d3a21d 100644 (file)
@@ -47,7 +47,7 @@ AliTPCRawStream::AliTPCRawStream(AliRawReader* rawReader) :
 {
   // create an object to read TPC raw digits
 
-  SelectRawData(0);
+  SelectRawData("TPC");
 
   TString path = gSystem->Getenv("ALICE_ROOT");
   path += "/TPC/mapping/Patch";
index 129c7c2b639de16e3117d9e1c8dd80142496aa08..a5160daeadcc2a83459528ab69df59bed350bbf3 100644 (file)
@@ -630,7 +630,7 @@ void AliTPCclustererMI::Digits2Clusters(AliRawReader* rawReader)
     rawReader->Reset();
     AliTPCRawStream input(rawReader);
     input.SetOldRCUFormat(fIsOldRCUFormat);
-    rawReader->Select(0,indexDDL,indexDDL+nDDLs-1);
+    rawReader->Select("TPC",indexDDL,indexDDL+nDDLs-1);
     
     // Begin loop over altro data
     while (input.Next()) {
index ebd03c7c307e41c7867b582c44a2ac581c35141d..31cb1eb9607e37300887f52c83f49bf93e6dae57 100644 (file)
@@ -48,7 +48,7 @@ AliTRDRawStream::AliTRDRawStream(AliRawReader* rawReader) :
 {
 // create an object to read TRD raw digits
 
-  fRawReader->Select(4);
+  fRawReader->Select("TRD");
 }
 
 AliTRDRawStream::AliTRDRawStream(const AliTRDRawStream& stream) :
index 377c12705073791b301029ee5ecd1170e1f76bd3..b510e973f550a39a195f7a381b34d63db70c9675 100644 (file)
@@ -32,6 +32,7 @@
 #include "AliRawReader.h"
 #include "AliTRDCommonParam.h"
 #include "AliTRDcalibDB.h"
+#include "AliDAQ.h"
 
 ClassImp(AliTRDrawData)
 
@@ -110,7 +111,7 @@ Bool_t AliTRDrawData::Digits2Raw(TTree *digitsTree)
   //          Data bank
   //
 
-  const Int_t kNumberOfDDLs         = 18;
+  const Int_t kNumberOfDDLs         = AliDAQ::NumberOfDdls("TRD");
   const Int_t kSubeventHeaderLength = 8;
   const Int_t kSubeventDummyFlag    = 0xBB;
   Int_t       headerSubevent[3];
@@ -157,7 +158,7 @@ Bool_t AliTRDrawData::Digits2Raw(TTree *digitsTree)
   // Open the output files
   for (Int_t iDDL = 0; iDDL < kNumberOfDDLs; iDDL++) {
     char name[20];
-    sprintf(name, "TRD_%d.ddl", iDDL + AliTRDRawStream::kDDLOffset);
+    strcpy(name,AliDAQ::DdlFileName("TRD",iDDL));
 #ifndef __DECCXX
     outputFile[iDDL] = new ofstream(name, ios::binary);
 #else
index 27b6a8e90923a87836d13c49e73d410fba97a6ac..a07bcf72057eddfed9365f4f8aecc3ab7347a6b9 100755 (executable)
@@ -52,6 +52,7 @@
 #include "AliVZEROBuffer.h"
 #include "AliRunDigitizer.h"
 #include "AliVZEROdigit.h"
+#include "AliDAQ.h"
 
 ClassImp(AliVZERO)
  
@@ -252,7 +253,7 @@ void AliVZERO::Digits2Raw()
   fVZERO->SetTreeAddress();            
   digits->GetBranch("VZERODigit")->SetAddress(&VZEROdigits); 
   
-  const char *fileName    = "VZERO_3584.ddl";
+  const char *fileName    = AliDAQ::DdlFileName("VZERO",0);
   AliVZEROBuffer* buffer  = new AliVZEROBuffer(fileName);
   
   //  Verbose level
index 5947f2c7f204c33c2954348fc3199cfb8fb10e75..fcc243848a4c25c2fcb3858e2a55b64fce4b53f0 100644 (file)
@@ -47,7 +47,7 @@
 #include "AliRun.h"
 #include "AliMC.h"
 #include "AliLog.h"
-
+#include "AliDAQ.h"
  
 ClassImp(AliZDC)
 
@@ -455,7 +455,7 @@ void AliZDC::Digits2Raw()
 
   // open the output file
   char fileName[30];
-  sprintf(fileName, "ZDC_%d.ddl", AliZDCRawStream::kDDLOffset);
+  strcpy(fileName,AliDAQ::DdlFileName("ZDC",0));
 #ifndef __DECCXX
   ofstream file(fileName, ios::binary);
 #else
index c16d845146be7b115da5c235f952eb09d3b8edfc..52099f55241c97528ba547b8fcf853a301886ffa 100644 (file)
@@ -41,7 +41,7 @@ AliZDCRawStream::AliZDCRawStream(AliRawReader* rawReader) :
 
   fSector[0] = 1;
   fSector[1] = -1;
-  fRawReader->Select(kDDLOffset / 0x100);
+  fRawReader->Select("ZDC");
 }
 
 //_____________________________________________________________________________
index 034bb44e9ad0bc6578e838abc8234b8a1bf06715..d7d6f17042afb32a4b5c84f068376244b1e8bb92 100644 (file)
@@ -28,7 +28,6 @@ class AliZDCRawStream: public TObject {
     UInt_t           GetADCRaw() const {return fRawADC;};
     Int_t            GetADCGain() const {return fADCGain;};
     Bool_t           IsADCDataWord() const {return fIsADCDataWord;};
-    enum {kDDLOffset = 0xB00};      // offset for DDL numbers
 
   private :
     AliZDCRawStream(const AliZDCRawStream& stream);