// in the current directory
fDirectory = OpenDirectory();
- OpenNextFile();
+ if (!fDirectory) fIsValid = kFALSE;
+ if (!OpenNextFile()) fIsValid = kFALSE;
fHeader = new AliRawDataHeader;
fId[0] = fId[1] = 0;
// create an object to read digits from the given directory
fDirectory = OpenDirectory();
- OpenNextFile();
+ if (!fDirectory) fIsValid = kFALSE;
+ if (fEventIndex >= 0 && (!OpenNextFile())) fIsValid = kFALSE;
fHeader = new AliRawDataHeader;
fId[0] = fId[1] = 0;
while (entry = gSystem->GetDirEntry(fDirectory)) {
const char* filename=entry.Data();
if (!filename || entry.IsNull()) break;
+ if (entry.BeginsWith("run")) {
+ entry.ReplaceAll("run","");
+ fRunNb = entry.Atoi();
+ continue;
+ }
if (!entry.EndsWith(".ddl")) continue;
result=kTRUE;
entry.Remove(0, entry.Last('_')+1);
entry.Remove(entry.Length()-4);
Int_t equipmentId = atoi(entry.Data());
+ Int_t ddlIndex = -1;
+ fDetectorPattern |= (1 << AliDAQ::DetectorIDFromDdlID(equipmentId,ddlIndex));
if (fDDLIndex->GetSize()<=equipmentId) {
fDDLIndex->Set(equipmentId+1);
}
if (fDDLIndex) delete fDDLIndex;
fDDLIndex=NULL;
+ fDetectorPattern = 0;
if (fEventIndex < -1) return kFALSE;
do {