UInt_t status = header->GetStatus();
//printf("\t AliZDCRawStream::ReadCDHHeader -> status = %d\n",status);
- if(status & 0x000f == 0x0001){
+ if((status & 0x000f) == 0x0001){
AliWarning("CDH -> DARC trg0 overlap error\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
- if(status & 0x000f == 0x0002){
+ if((status & 0x000f) == 0x0002){
AliWarning("CDH -> DARC trg0 missing error\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
- if(status & 0x000f == 0x0004){
+ if((status & 0x000f) == 0x0004){
AliWarning("CDH -> DARC data parity error\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
- if(status & 0x000f == 0x0008){
+ if((status & 0x000f) == 0x0008){
AliWarning("CDH -> DARC ctrl parity error\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
//
- if(status & 0x00f0 == 0x0010){
+ if((status & 0x00f0) == 0x0010){
AliWarning("CDH -> DARC trg unavailable\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
- if(status & 0x00f0 == 0x0020){
+ if((status & 0x00f0) == 0x0020){
AliWarning("CDH -> DARC FEE error\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
//
- if(status & 0x0f00 == 0x0200){
+ if((status & 0x0f00) == 0x0200){
AliWarning("CDH -> DARC L1 time violation\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
- if(status & 0x0f00 == 0x0400){
+ if((status & 0x0f00) == 0x0400){
AliWarning("CDH -> DARC L2 time-out\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
- if(status & 0x0f00 == 0x0800){
+ if((status & 0x0f00) == 0x0800){
AliWarning("CDH -> DARC prepulse time violation\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
//
- if(status & 0xf000 == 0x1000){
+ if((status & 0xf000) == 0x1000){
AliWarning("CDH -> DARC other error\n");
fRawReader->AddMajorErrorLog(kDARCError);
}
void SetSODReading(Bool_t iset) {fSODReading = iset;}
+ // Error codes in raw data streaming
enum EZDCRawStreamError{
kCDHError = 1,
kDARCError = 2,
kZDCDataError = 3,
kInvalidADCModule = 4,
kInvalidSector = 5};
-
+
+ // Signal codes for ZDC
+ // Same codes used in DAQ configuration file
+ // To be changed ONLY IF this file is changed!!!
+ // **** DO NOT CHANGE THE FOLLOWING LINES!!! ****
enum ZDCSignal{kNotConnected=0, kVoid=1,
kZNAC=2, kZNA1=3, kZNA2=4, kZNA3=5, kZNA4=6,
kZPAC=7, kZPA1=8, kZPA2=9, kZPA3=10, kZPA4=11,
AliZDCRawStream& operator = (const AliZDCRawStream& stream);
AliRawReader* fRawReader; // object for reading the raw data
-
+
+ // Data for buffer decoding
UInt_t fBuffer; // DARC header + ADC buffer
UInt_t fEvType; // Event type
Int_t fPosition; // bit position in buffer data word
+ // Boolean variables indicating data type
Bool_t fIsCalib; // True when calibration run
Bool_t fIsDARCHeader; // True when DARC header
Bool_t fIsChMapping; // True when reading ch. mapping
Int_t fCabledSignal; // physics signal (from enum)
Int_t fMapADC[48][5]; // ADC map for the current run
- ClassDef(AliZDCRawStream, 7) // class for reading ZDC raw digits
+ ClassDef(AliZDCRawStream, 8) // class for reading ZDC raw digits
};
#endif