]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSDDLRawData.h
VertexerPPZ replaced by vertexerZ
[u/mrichter/AliRoot.git] / ITS / AliITSDDLRawData.h
index baeabb65d80cdbaf4ef910191fe78a0f06c59143..f4f766a47fca3de83b2592158c207d25c64051f5 100644 (file)
@@ -1,14 +1,13 @@
 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
-/////////////////////////////////////////////////////////////////////////////////////////
-// Class used for generating the files containung data, required by the Data Challenge //
-/////////////////////////////////////////////////////////////////////////////////////////
+///////////////////////////////////////////////////////////////////////////////////////////
+// Class used for generating the files containing raw data, required for  Data Challenge //
+///////////////////////////////////////////////////////////////////////////////////////////
 
 #ifndef AliITSDDLRAWDATA_H
 #define AliITSDDLRAWDATA_H
 
-class AliITS;
 class TTree;
 
 class AliITSDDLRawData:public TObject{
@@ -17,38 +16,32 @@ class AliITSDDLRawData:public TObject{
   virtual ~AliITSDDLRawData(){;}//destructor
   AliITSDDLRawData(const AliITSDDLRawData &source); // copy constructor
   AliITSDDLRawData& operator=(const AliITSDDLRawData &source); // ass. op.
+  Int_t RawDataSPD(TBranch* branch);
   // This method generates the files with the Silicon pixel detector data
-  Int_t RawDataSPD(AliITS *ITS,TTree *TD ,Int_t LDCsNumber=2);
+  Int_t RawDataSDD(TBranch* branch); 
   // This method generates the files with the Silicon drift detector data
-  Int_t RawDataSDD(AliITS *ITS,TTree *TD ,Int_t LDCsNumber=4);
+  Int_t RawDataSSD(TBranch* branch);
   // This method generates the files with the Silicon pixel detector data
-  Int_t RawDataSSD(AliITS *ITS,TTree *TD ,Int_t LDCsNumber=2);
-  //A debugging method used to test the files generated for the SPD.
-  void  TestFormat();
+  void SetVerbose(Int_t Verbose){fVerbose=Verbose;}
+  // To set the verbose level
  private: 
+  void  GetDigitsSPD(TClonesArray *ITSdigits, Int_t mod,Int_t ddl,UInt_t *buf);
   //This method formats and stores in buf all the digits of a SPD module
-  void  GetDigitsSPD(TClonesArray *ITSdigits, Int_t mod, ULong_t *buf);
+  void  GetDigitsSDD(TClonesArray *ITSdigits, Int_t mod,Int_t modR,Int_t ddl,UInt_t *buf);
   //This method formats and stores in buf all the digits of a SDD module
-  void  GetDigitsSDD(TClonesArray *ITSdigits, Int_t mod, ULong_t *buf);
+  void  GetDigitsSSD(TClonesArray *ITSdigits, Int_t mod,Int_t modR,Int_t ddl,UInt_t *buf);
   //This method formats and stores in buf all the digits of a SSD module
-  void  GetDigitsSSD(TClonesArray *ITSdigits, Int_t mod, ULong_t *buf);
-  //This method stores the value of the variable Word of StopBit-StartBit+1 bits 
-  //in BaseWord, starting from the bit StartBit
-  void  PackWord(ULong_t &BaseWord, ULong_t Word, Int_t StartBit, Int_t StopBit);
-  //This method extracts a group of adiacents bits, specified by StartBit and StopBit, 
-  //from the word PackedWord. The resulting word is saved in the Word variable
-  void  UnpackWord(ULong_t PackedWord, Int_t StartBit, Int_t StopBit, ULong_t &Word);
-  //The following three methods are used to store the data according to the 
+  void  WriteChipHeader(Int_t ChipAddr,Int_t EventCnt,UInt_t &BaseWord);
+  void  WriteChipTrailer(UInt_t *buf,Int_t ChipHitCount,UInt_t &BaseWord);
+  void  WriteHit(UInt_t *buf,Int_t RowAddr,Int_t HitAddr,UInt_t &BaseWord);
+  //The three previous  methods are used to store the data according to the 
   //Silicon pixel detector data format
-  void  WriteChipHeader(Int_t ChipAddr,Int_t EventCnt,ULong_t &BaseWord);
-  void  WriteChipTrailer(ULong_t *buf,Int_t ChipHitCount,ULong_t &BaseWord);
-  void  WriteHit(ULong_t *buf,Int_t RowAddr,Int_t HitAddr,ULong_t &BaseWord);
+  void  ReadChipHeader(Int_t &ChipAddr,Int_t &EventCnt,UInt_t BaseWord);
+  void  ReadChipTrailer(Int_t &ChipHitCount,UInt_t BaseWord);
   //Methods used for reading and dubugging SPD data files
-  void  ReadChipHeader(Int_t &ChipAddr,Int_t &EventCnt,ULong_t BaseWord);
-  void  ReadChipTrailer(Int_t &ChipHitCount,ULong_t BaseWord);
-  void  DecodeWord(ULong_t Code,ULong_t BaseWord,Int_t FirstHalf,ULong_t &Decoded1,ULong_t &Decoded2);
-  Int_t fIndex;
-  Int_t fHalfStaveModule;
+  Int_t fVerbose;            //Verbose level (0:no msg, 1:msg, 2:digits in txt files)
+  Int_t fIndex;             //number of 32 words to be stored into the output file
+  Int_t fHalfStaveModule;     //first or second half of an Half Stave module
   ClassDef(AliITSDDLRawData,1)
 };