]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Updates to correctly read VME scaler data
authorcoppedis <coppedis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 23 Nov 2009 09:51:13 +0000 (09:51 +0000)
committercoppedis <coppedis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 23 Nov 2009 09:51:13 +0000 (09:51 +0000)
ZDC/AliZDCRawStream.cxx
ZDC/AliZDCRawStream.h
ZDC/AliZDCReconstructor.cxx

index 30bd880d071415bb47e73bc925456dea08ade881..6dfc8c67bb8c72a9253becb21817ab5526bb8c61 100644 (file)
@@ -71,6 +71,7 @@ AliZDCRawStream::AliZDCRawStream(AliRawReader* rawReader) :
   fIsScHeaderRead(kFALSE),
   fScStartCounter(0),
   fScEvCounter(0),
+  fIsScalerWord(kFALSE),
   fDetPattern(0),
   fTrigCountNWords(0),
   fIsTriggerScaler(kFALSE),
@@ -155,6 +156,7 @@ AliZDCRawStream::AliZDCRawStream(const AliZDCRawStream& stream) :
   fIsScHeaderRead(stream.fIsScHeaderRead),
   fScStartCounter(stream.fScStartCounter),
   fScEvCounter(stream.fScEvCounter),
+  fIsScalerWord(stream.fIsScalerWord),
   fDetPattern(stream.fDetPattern),
   fTrigCountNWords(stream.fTrigCountNWords),
   fIsTriggerScaler(stream.fIsTriggerScaler),
@@ -353,7 +355,7 @@ Bool_t AliZDCRawStream::Next()
   Int_t kFirstADCGeo=0, kLastADCGeo=3, kScalerGeo=8, kPUGeo=29, kTrigScales=30, kTrigHistory=31;
   fIsHeaderMapping = kFALSE; fIsChMapping = kFALSE; 
   fIsADCHeader = kFALSE; fIsADCDataWord = kFALSE; fIsADCEOB = kFALSE;
-  fIsUnderflow = kFALSE; fIsOverflow = kFALSE; 
+  fIsUnderflow = kFALSE; fIsOverflow = kFALSE; fIsScalerWord = kFALSE;
   fSector[0] = fSector[1] = -1;
 //  fTrigCountNWords = 9; fTrigHistNWords = 2;
   for(Int_t kl=0; kl<4; kl++) fCPTInput[kl] = 0;
@@ -782,7 +784,7 @@ Bool_t AliZDCRawStream::Next()
     // ********************************** VME SCALER DATA **********************************
     //  Reading VME scaler data 
     if(fIsScHeaderRead && fPosition>=fScStartCounter+1){ // *** Scaler word
-      fADCModule = kScalerGeo; fIsADCDataWord = kFALSE;        
+      fADCModule=kScalerGeo; fIsADCDataWord=kFALSE; fIsScalerWord=kTRUE;
       fScEvCounter = fBuffer;
       Int_t nWords = (Int_t) (fScNWords);
       if(fPosition == fScStartCounter+nWords) fIsScHeaderRead = kFALSE;
index 4dd2092b464541ca11be028edb279683818ae219..a14edb2e2e812503b89f6b0ed30e54048eef2bbd 100644 (file)
@@ -129,6 +129,7 @@ class AliZDCRawStream: public TObject {
     UInt_t GetTriggerCount()    const {return fScEvCounter;}
     Bool_t IsScHeaderRead()     const {return fIsScHeaderRead;}
     Bool_t IsScEventGood()      const {return fIsScEventGood;}
+    Bool_t IsScalerWord()       const {return fIsScalerWord;}
     
     UInt_t GetDetectorPattern() const {return fDetPattern;}
     
@@ -204,6 +205,7 @@ class AliZDCRawStream: public TObject {
     Bool_t fIsScHeaderRead;  // true if scaler header is read
     Int_t  fScStartCounter;  // position in the buffer where scaler data begins
     UInt_t fScEvCounter;     // event counter
+    Bool_t fIsScalerWord;    // is scaler word (not header)
     
     // Pattern Unit
     UInt_t fDetPattern;  // word from the pattern unit
@@ -249,7 +251,7 @@ class AliZDCRawStream: public TObject {
     Bool_t fIsL0BitSet;    // true if L0 bit in history words = 1 
     Bool_t fIsPileUpEvent; // true if pile up bits in history words = 0
     
-    ClassDef(AliZDCRawStream, 15)    // class for reading ZDC raw data
+    ClassDef(AliZDCRawStream, 16)    // class for reading ZDC raw data
 };
 
 #endif
index 1a9bebdb4fb2ee0ea232bd079f88c440f6ea7646..171510cec190fa61ebecff5c4d9c5cd0a9eaade7 100644 (file)
@@ -474,9 +474,12 @@ void AliZDCReconstructor::Reconstruct(AliRawReader* rawReader, TTree* clustersTr
    }// ADC DATA
    // ***************************** Reading Scaler
    else if(rawData.GetADCModule()==kScalerGeo){
-     if(rawData.IsScHeaderRead()==kTRUE && rawData.IsScEventGood()==kTRUE){
+     if(rawData.IsScalerWord()==kTRUE && rawData.IsScEventGood()==kTRUE){
        isScalerOn = kTRUE;
        scalerData[jsc] = rawData.GetTriggerCount();
+       // Ch. debug
+       //printf("   Reconstructed VME Scaler: %d %d  ",jsc,scalerData[jsc]);
+       //
        jsc++;
      }
    }// VME SCALER DATA