fSourceList(NULL),
fNBlks(0),
fEventID(),
+ fEventId(-1),
fCurrentBlk(0),
fAsyncBlockList(NULL),
fBlockList(NULL),
// see header file for class documentation
HLTInfo("Adding blocks to the synchroneous block list");
+ ULong_t eventID = static_cast<ULong64_t>(fCurrentReader->GetEventID());
+ if ( fEventId == eventID ) {
+ HLTInfo(Form("Event 0x%016lX (%lu) already in buffer.", eventID, eventID));
+ return;
+ }
+
+ fEventId = eventID;
+
GetFirstBlk();
do {
virtual Int_t NextCycle() { return NextEvent(); }
/** Get event ID */
- ULong_t GetEventID() { return fEventID[fBufferTopIdx]; }
+ ULong_t GetEventID() { return fEventId; }
Int_t GetNAvailableEvents() { return fNEventsAvailable;}
TList* fSourceList; /** List to HOMER sources */
ULong_t fNBlks; /** Number of blockes in current event */
ULong64_t fEventID[BUFFERSIZE]; /** EventID of current event */
+ ULong64_t fEventId;
ULong_t fCurrentBlk; /** Current block in current event */
TList* fAsyncBlockList; /** List containing asychronous blocks */
TList* fBlockList; /** List containing asychronous blocks */