#include "AliRawDataHeader.h"
#include "AliTOFDecoderV2.h"
+#include "AliTOFTDCHit.h"
+#include "AliTOFDecoderSummaryData.h"
+#include "AliTOFDRMSummaryData.h"
+#include "AliTOFLTMSummaryData.h"
+#include "AliTOFTRMSummaryData.h"
+#include "AliTOFChainSummaryData.h"
+#include "AliTOFTDCHitBuffer.h"
+#include "AliTOFTDCErrorBuffer.h"
ClassImp(AliTOFRawStream)
delete fDecoder;
delete fDecoderV2;
- fTOFrawData->Clear();
- delete fTOFrawData;
+ if (fTOFrawData) {
+ fTOFrawData->Clear("C");
+ delete fTOFrawData;
+ }
//delete fCableLengthMap;
}
fDDL = fRawReader->GetDDLID();
+ if (fDDL==-1) {
+ fRawReader->AddMajorErrorLog(kDDLdataReading);
+ AliWarning("Error when load DDL. Go to next DDL");
+ return kFALSE;
+ }
fWordType = GetField(data,WORD_TYPE_MASK,WORD_TYPE_POSITION);
//get equipment infos
currentEquipment = fRawReader->GetEquipmentId();
+
currentDDL = fRawReader->GetDDLID();
+ if (currentDDL==-1) {
+ fRawReader->AddMajorErrorLog(kDDLdataReading);
+ if (verbose)
+ AliWarning("Error when load DDL. Go to next DDL");
+ continue;
+ }
+
currentCDH = fRawReader->GetDataHeader();
const Int_t kDataSize = fRawReader->GetDataSize();
const Int_t kDataWords = kDataSize / 4;
Int_t currentEquipment;
Int_t currentDDL;
- const AliRawDataHeader *currentCDH;
+ //const AliRawDataHeader *currentCDH;
//pointers
UChar_t *data = 0x0;
//get equipment infos
currentEquipment = fRawReader->GetEquipmentId();
currentDDL = fRawReader->GetDDLID();
- currentCDH = fRawReader->GetDataHeader();
+ //currentCDH = fRawReader->GetDataHeader();
const Int_t kDataSize = fRawReader->GetDataSize();
const Int_t kDataWords = kDataSize / 4;
data = new UChar_t[kDataSize];
else ftxt << " " << digit[3] << endl;
}
*/
- AliDebug(2, Form(" Raw data reading %2d -> %2d %1d %2d %1d %2d (%d, %d, %d)",
+ AliDebug(2, Form(" Raw data reading %2d -> %2d %1d %2d %1d %2d (%d, %d)",
last,
detectorIndex[0], detectorIndex[1], detectorIndex[2], detectorIndex[4], detectorIndex[3],
- digit[0], digit[1], digit[3]));
+ digit[0], digit[1]));
tofRawDatum = 0;
} // while loop
}
void AliTOFRawStream::VolumeID2LTM(Int_t detind[],
- Int_t iDDL,
- Int_t iTRM,
- Int_t iChain,
- Int_t iTDC,
- Int_t iChannel) const {
+ Int_t &iDDL,
+ Int_t &iTRM,
+ Int_t &iChain,
+ Int_t &iTDC,
+ Int_t &iChannel) const {
//
// To convert the TOF trigger macropad ID (i.e. detind)
// into TOF OR signals equipment ID (i.e. iDDL, iTRM, iChain, iTDC, iChannel)