AliFMDInput::NEvents() const
{
// Get number of events
- if (TESTBIT(fTreeMask, kRaw)) return fReader->GetNumberOfEvents();
+ if (TESTBIT(fTreeMask, kRaw) ||
+ TESTBIT(fTreeMask, kRawCalib)) return fReader->GetNumberOfEvents();
if (fChainE) return fChainE->GetEntriesFast();
if (fTreeE) return fTreeE->GetEntries();
return -1;
"\tRecPoints: %d\n"
"\tESD: %d\n"
"\tRaw: %d\n"
+ "\tRawCalib: %d\n"
"\tGeometry: %d\n"
"\tTracks: %d\n"
"\tTracksRefs: %d",
TESTBIT(fTreeMask, kRecPoints),
TESTBIT(fTreeMask, kESD),
TESTBIT(fTreeMask, kRaw),
+ TESTBIT(fTreeMask, kRawCalib),
TESTBIT(fTreeMask, kGeometry),
TESTBIT(fTreeMask, kTracks),
TESTBIT(fTreeMask, kTrackRefs));
}
- if (TESTBIT(fTreeMask, kRaw)) {
+ if (TESTBIT(fTreeMask, kRaw) ||
+ TESTBIT(fTreeMask, kRawCalib)) {
AliInfo("Getting FMD raw data digits");
fArrayA = new TClonesArray("AliFMDDigit");
#if 0
}
// Possibly load FMD Digit information
- if (TESTBIT(fTreeMask, kRaw)) {
+ if (TESTBIT(fTreeMask, kRaw) || TESTBIT(fTreeMask, kRawCalib)) {
// AliInfo("Getting FMD raw data digits");
+ std::cout << "Waiting for event ..." << std::endl;
if (!fReader->NextEvent()) return kFALSE;
// AliFMDRawReader r(fReader, 0);
fArrayA->Clear();
if (!ProcessDigits()) return kFALSE;
if (TESTBIT(fTreeMask, kRaw))
if (!ProcessRawDigits()) return kFALSE;
+ if (TESTBIT(fTreeMask, kRawCalib))
+ if (!ProcessRawCalibDigits()) return kFALSE;
if (TESTBIT(fTreeMask, kRecPoints))
if (!ProcessRecPoints()) return kFALSE;
if (TESTBIT(fTreeMask, kESD))
return kTRUE;
}
+//____________________________________________________________________
+Bool_t
+AliFMDInput::ProcessRawCalibDigits()
+{
+ // Read the digit tree, and pass each digit to the member function
+ // ProcessDigit.
+ if (!fArrayA) {
+ AliError("No raw digit array defined");
+ return kFALSE;
+ }
+
+ Int_t nDigit = fArrayA->GetEntries();
+ if (nDigit <= 0) return kTRUE;
+ for (Int_t j = 0; j < nDigit; j++) {
+ AliFMDDigit* digit = static_cast<AliFMDDigit*>(fArrayA->At(j));
+ if (!digit) continue;
+ if (AliLog::GetDebugLevel("FMD","") >= 40 && j < 30)
+ digit->Print();
+ if (!ProcessRawCalibDigit(digit)) return kFALSE;
+ }
+ return kTRUE;
+}
+
//____________________________________________________________________
Bool_t
AliFMDInput::ProcessRecPoints()