-
- if (iBusPatch > fMaxBus) break; // if ever
-
- //copy buffer into header structure
- memcpy(fBusStruct->GetHeader(), &buffer[index], kBusPatchHeaderSize*4);
-
- totalBusPatchSize = fBusStruct->GetTotalLength();
- indexBusPatch = index;
-
- //Check Buspatch header, not empty events
- if(totalBusPatchSize > kBusPatchHeaderSize) {
-
- index += kBusPatchHeaderSize;
- dataSize = fBusStruct->GetLength();
- bufSize = fBusStruct->GetBufSize();
-
- if(dataSize > 0) { // check data present
- if (dataSize > bufSize) // check buffer size
- fBusStruct->SetAlloc(dataSize);
-
- //copy buffer into data structure
- memcpy(fBusStruct->GetData(), &buffer[index], dataSize*4);
- fBusStruct->SetBlockId(iBlock); // could be usefull in future applications ?
- fBusStruct->SetDspId(iDsp);
-
- // check parity
- if(!CheckDataParity())
- AddParityErrBus(fBusStruct->GetBusPatchId());
-
- // copy in TClonesArray
- fDDLTracker->AddBusPatch(*fBusStruct, iBlock, iDsp);
-
- } // dataSize test
-
- } // testing buspatch
-
- index = indexBusPatch + totalBusPatchSize;
- if (index >= totalDDLSize) {// check the end of DDL
- index = totalDDLSize - 1; // point to the last element of buffer
- break;
- }
- iBusPatch++;
+
+ if (iBusPatch > fMaxBus) break; // if ever
+
+ //copy buffer into header structure
+ memcpy(fBusStruct->GetHeader(), &buffer[index], kBusPatchHeaderSize*4);
+
+ totalBusPatchSize = fBusStruct->GetTotalLength();
+ indexBusPatch = index;
+
+ //Check Buspatch header, not empty events
+ if(totalBusPatchSize > kBusPatchHeaderSize) {
+
+ index += kBusPatchHeaderSize;
+ dataSize = fBusStruct->GetLength();
+ bufSize = fBusStruct->GetBufSize();
+
+ if(dataSize > 0) { // check data present
+ if (dataSize > bufSize) // check buffer size
+ fBusStruct->SetAlloc(dataSize);
+
+ //copy buffer into data structure
+ memcpy(fBusStruct->GetData(), &buffer[index], dataSize*4);
+ fBusStruct->SetBlockId(iBlock); // could be usefull in future applications ?
+ fBusStruct->SetDspId(iDsp);
+
+ // check parity
+ if(!CheckDataParity()) {
+ fParityErrors++;
+ return kFALSE;
+ }
+
+ // copy in TClonesArray
+ fDDLTracker->AddBusPatch(*fBusStruct, iBlock, iDsp);
+
+ } // dataSize test
+
+ } // testing buspatch
+
+ index = indexBusPatch + totalBusPatchSize;
+ if (index >= totalDDLSize) {// check the end of DDL
+ index = totalDDLSize - 1; // point to the last element of buffer
+ break;
+ }
+ iBusPatch++;