fIsScHeaderRead(kFALSE),
fScStartCounter(0),
fScEvCounter(0),
+ fIsScalerWord(kFALSE),
fDetPattern(0),
fTrigCountNWords(0),
fIsTriggerScaler(kFALSE),
fIsScHeaderRead(stream.fIsScHeaderRead),
fScStartCounter(stream.fScStartCounter),
fScEvCounter(stream.fScEvCounter),
+ fIsScalerWord(stream.fIsScalerWord),
fDetPattern(stream.fDetPattern),
fTrigCountNWords(stream.fTrigCountNWords),
fIsTriggerScaler(stream.fIsTriggerScaler),
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;
// ********************************** 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;
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;}
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
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
}// 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