if (dataSize <= 0) return kFALSE;
if (indexDDL != iddl)
{
- AliError("Mismatch in the DDL index");
+ AliWarning("Mismatch in the DDL index");
+ fRawReader->AddFatalErrorLog(kDDLIndexMismatch);
return kFALSE;
}
ifstream infile;
infile.open(fileName.Data(), ios::in); // ascii file
- if(!infile)
+ if(!infile) {
AliError(Form("Could not read the mapping file for DDL No = %d",iddl));
+ fRawReader->AddFatalErrorLog(kNoMappingFile,Form("ddl=%d",iddl));
+ }
Int_t modulePerDDL = 0;
if (iddl < 4)
Int_t startRowBus[kNPatchBus], endRowBus[kNPatchBus];
Int_t startColBus[kNPatchBus], endColBus[kNPatchBus];
-
for (Int_t ibus = 0; ibus < kNPatchBus; ibus++)
{
mcmperBus[ibus] = -1;
endColBus[ibus] = -1;
}
-
for (Int_t im = 0; im < modulePerDDL; im++)
{
infile >> modno;
}
}
-
-
infile.close();
-
AliPMDBlockHeader blockHeader;
AliPMDDspHeader dspHeader;
AliPMDPatchBusHeader pbusHeader;
Int_t dspHeaderWord[10];
Int_t pbusHeaderWord[4];
- Int_t ilowLimit = 0;
- Int_t iuppLimit = 0;
-
+ Int_t ilowLimit = 0;
+ Int_t iuppLimit = 0;
Int_t blRawDataLength = 0;
- Int_t iwordcount = 0;
+ Int_t iwordcount = 0;
for (Int_t iblock = 0; iblock < 2; iblock++)
ilowLimit = iuppLimit;
iuppLimit = ilowLimit + kblHLen;
-
for (Int_t i = ilowLimit; i < iuppLimit; i++)
{
blHeaderWord[i-ilowLimit] = (Int_t) buffer[i];
for (Int_t ibus = 0; ibus < 5; ibus++)
{
-
ilowLimit = iuppLimit;
iuppLimit = ilowLimit + kpbusHLen;
if (ibit != parity)
{
AliWarning("ComputeParity:: Parity Error");
+ fRawReader->AddMajorErrorLog(kParityError);
}
GetRowCol(iddl, pbusid, imcm, ich,
startRowBus, endRowBus,
if (iwordcount == blRawDataLength) break;
} // end of BLOCK
-
delete [] buffer;
{
if (pbusid < 18)
{
- if(mcmno > 11)
- {
- row = startRowBus[pbusid] + irownew;
- col = startColBus[pbusid] + (mcmno-12)*4 + icolnew;
- }
- else
+ if (mcmno <= 11)
{
// Add 16 to skip the 1st 15 rows
row = startRowBus[pbusid] + irownew + 16;
col = startColBus[pbusid] + (mcmno)*4 + icolnew;
}
+ else if(mcmno > 11)
+ {
+ row = startRowBus[pbusid] + irownew;
+ col = startColBus[pbusid] + (mcmno-12)*4 + icolnew;
+ }
}
else if(pbusid > 17)
{
- if(mcmno > 11)
- {
- row = endRowBus[pbusid] - (15 - irownew) ;
- col = endColBus[pbusid] - (mcmno - 12)*4 - (3 - icolnew);
- }
- else
+ if (mcmno <= 11)
{
+ col = endColBus[pbusid] - mcmno*4 - (3 - icolnew);
+
if(endRowBus[pbusid] - startRowBus[pbusid] > 16)
row = endRowBus[pbusid] - (15 - irownew) - 16 ;
else
row = endRowBus[pbusid] - (15 - irownew) ;
- col = endColBus[pbusid] - mcmno*4 - (3 - icolnew);
+
+
+ }
+ else if(mcmno > 11)
+ {
+ row = endRowBus[pbusid] - (15 - irownew) ;
+ col = endColBus[pbusid] - (mcmno - 12)*4 - (3 - icolnew);
}
}
}
-
else if (ddlno == 5)
{
if (pbusid <= 17)