FAQ:What is the archive event store and how do I access it?

From Daya Bay

Jump to: navigation, search

Archive event store keep data object for not only current event but also a serials of past events.

At the end of Gaudi execution cycle, there is a archive trimming algorithm which compare the time of each data object to time of current event, and remove them whose time interval larger than a trimming window.

You can use nuwa.py -A x(second) to specify the trimming window.

To access it, you should define and access archive data service:

 IDataProviderSvc* p_archiveSvc;
 StatusCode status = service("EventDataArchiveSvc", p_archiveSvc);

then get archive list(take ReadoutHeader as an example):

 SmartDataPtr<DybArchiveList>  archlist(p_archiveSvc,"/Event/Readout/ReadoutHeader");

loop in the archive list to get each data object in AES:

 DybArchiveList::const_iterator iter = archlist->begin();
   for(; iter!=archlist->end(); iter++) {
   ReadoutHeader* roh = dynamic_cast<ReadoutHeader*>(*iter);

Several examples are provided:




Personal tools