ATLAS Offline Software
ISecondaryEventSelector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
11 #ifndef ATHENAKERNEL_ISECONDARYEVENTSELECTOR_H
12 #define ATHENAKERNEL_ISECONDARYEVENTSELECTOR_H
13 
14 #include <GaudiKernel/IEvtSelector.h>
16 #include <AthenaKernel/SourceID.h>
17 
18 namespace coral
19 {
20  class AttributeList;
21 }
22 
27 class ISecondaryEventSelector : virtual public extend_interfaces<IEvtSelector, IEvtSelectorSeek>
28 {
29 public:
31 
33  virtual StatusCode nextHandleFileTransition(IEvtSelector::Context& ctxt) const = 0;
35  virtual StatusCode nextWithSkip(IEvtSelector::Context& ctxt) const = 0;
37  virtual StatusCode recordAttributeList() const = 0;
39  virtual StatusCode fillAttributeList(coral::AttributeList *attrList, const std::string &suffix, bool copySource) const = 0;
40  // Disconnect DB if all events from the source FID were processed and the Selector moved to another file
41  virtual bool disconnectIfFinished(const SG::SourceID &fid) const = 0;
42 };
43 
44 #endif // ATHENAKERNEL_ISECONDARYEVENTSELECTOR_H
hotSpotInTAG.suffix
string suffix
Definition: hotSpotInTAG.py:186
ISecondaryEventSelector::nextWithSkip
virtual StatusCode nextWithSkip(IEvtSelector::Context &ctxt) const =0
Go to next event and skip if necessary.
python.PyKernel.AttributeList
AttributeList
Definition: PyKernel.py:36
ISecondaryEventSelector::fillAttributeList
virtual StatusCode fillAttributeList(coral::AttributeList *attrList, const std::string &suffix, bool copySource) const =0
Fill AttributeList with specific items from the selector and a suffix.
coral
Definition: ISecondaryEventSelector.h:19
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ISecondaryEventSelector
Abstract interface for secondary event selectors.
Definition: ISecondaryEventSelector.h:28
SourceID.h
Type used to identify a metadata source.
ISecondaryEventSelector::disconnectIfFinished
virtual bool disconnectIfFinished(const SG::SourceID &fid) const =0
SG::SourceID
std::string SourceID
Definition: AthenaKernel/AthenaKernel/SourceID.h:23
ISecondaryEventSelector::DeclareInterfaceID
DeclareInterfaceID(ISecondaryEventSelector, 1, 0)
IEvtSelectorSeek.h
Extension to IEvtSelector to allow for seeking.
ISecondaryEventSelector::recordAttributeList
virtual StatusCode recordAttributeList() const =0
Record AttributeList in StoreGate.
ISecondaryEventSelector::nextHandleFileTransition
virtual StatusCode nextHandleFileTransition(IEvtSelector::Context &ctxt) const =0
Handle file transition at the next iteration.