ATLAS Offline Software
TrigEventSelectorByteStream.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGEVENTSELECTORBYTESTREAM_H
6 #define TRIGEVENTSELECTORBYTESTREAM_H
7 
8 #include "GaudiKernel/IEvtSelector.h"
10 
11 // Forward declarations
13 class StoreGateSvc;
14 
20 class TrigEventSelectorByteStream : public extends<AthService, IEvtSelector> {
21 public:
26  class Context : public IEvtSelector::Context {
27  public:
29  Context(const IEvtSelector* selector);
33  virtual ~Context();
35  virtual void* identifier() const override;
36  private:
38  const IEvtSelector* m_evtSelector;
39  };
40 
42  TrigEventSelectorByteStream(const std::string& name, ISvcLocator* svcLoc);
45 
46  // ------------------------- Service methods --------------------------------
47  virtual StatusCode initialize() override;
48  virtual StatusCode finalize() override;
49 
50  // ------------------------- IEvtSelector methods ---------------------------
51  virtual StatusCode createContext(IEvtSelector::Context*& c) const override;
52  virtual StatusCode next(IEvtSelector::Context& c) const override;
53  virtual StatusCode next(IEvtSelector::Context& c, int jump) const override;
54  virtual StatusCode previous(IEvtSelector::Context& c) const override;
55  virtual StatusCode previous(IEvtSelector::Context& c, int jump) const override;
56  virtual StatusCode last(IEvtSelector::Context& refContext) const override;
57  virtual StatusCode rewind(IEvtSelector::Context& c) const override;
58  virtual StatusCode createAddress(const IEvtSelector::Context& c, IOpaqueAddress*& iop) const override;
59  virtual StatusCode releaseContext(IEvtSelector::Context*& c) const override;
60  virtual StatusCode resetCriteria(const std::string& cr, IEvtSelector::Context& c) const override;
61 
62 private:
63  // @property Reference to the event source (ByteStreamInputSvc)
65  // Reference to the StoreGateScv
67 };
68 
69 #endif // TRIGEVENTSELECTORBYTESTREAM_H
IByteStreamInputSvc
This class provides the interface to services to read bytestream data. The concrete class can provide...
Definition: IByteStreamInputSvc.h:21
TrigEventSelectorByteStream::m_eventSource
ServiceHandle< IByteStreamInputSvc > m_eventSource
Definition: TrigEventSelectorByteStream.h:64
TrigEventSelectorByteStream::rewind
virtual StatusCode rewind(IEvtSelector::Context &c) const override
Definition: TrigEventSelectorByteStream.cxx:190
TrigEventSelectorByteStream::Context::m_evtSelector
const IEvtSelector * m_evtSelector
pointer to the event selector
Definition: TrigEventSelectorByteStream.h:38
TrigEventSelectorByteStream::last
virtual StatusCode last(IEvtSelector::Context &refContext) const override
Definition: TrigEventSelectorByteStream.cxx:185
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:125
TrigEventSelectorByteStream::releaseContext
virtual StatusCode releaseContext(IEvtSelector::Context *&c) const override
Definition: TrigEventSelectorByteStream.cxx:127
TrigEventSelectorByteStream::Context::Context
Context(const IEvtSelector *selector)
Constructor from a selector.
Definition: TrigEventSelectorByteStream.cxx:203
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigEventSelectorByteStream::createContext
virtual StatusCode createContext(IEvtSelector::Context *&c) const override
Definition: TrigEventSelectorByteStream.cxx:118
TrigEventSelectorByteStream::m_evtStore
ServiceHandle< StoreGateSvc > m_evtStore
Definition: TrigEventSelectorByteStream.h:66
TrigEventSelectorByteStream
online implementation of IEvtSelector for ByteStream
Definition: TrigEventSelectorByteStream.h:20
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
TrigEventSelectorByteStream::TrigEventSelectorByteStream
TrigEventSelectorByteStream(const std::string &name, ISvcLocator *svcLoc)
Standard constructor.
Definition: TrigEventSelectorByteStream.cxx:22
TrigEventSelectorByteStream::~TrigEventSelectorByteStream
virtual ~TrigEventSelectorByteStream()
Standard destructor.
Definition: TrigEventSelectorByteStream.cxx:32
TrigEventSelectorByteStream::next
virtual StatusCode next(IEvtSelector::Context &c) const override
Definition: TrigEventSelectorByteStream.cxx:65
TrigEventSelectorByteStream::Context::~Context
virtual ~Context()
Default destructor.
Definition: TrigEventSelectorByteStream.cxx:209
TrigEventSelectorByteStream::initialize
virtual StatusCode initialize() override
Definition: TrigEventSelectorByteStream.cxx:37
TrigEventSelectorByteStream::Context::identifier
virtual void * identifier() const override
Implementation of IEvtSelector::Context::identifier.
Definition: TrigEventSelectorByteStream.cxx:211
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
python.selector.AtlRunQuerySelectorLhcOlc.selector
selector
Definition: AtlRunQuerySelectorLhcOlc.py:611
TrigEventSelectorByteStream::resetCriteria
virtual StatusCode resetCriteria(const std::string &cr, IEvtSelector::Context &c) const override
Definition: TrigEventSelectorByteStream.cxx:195
AthService.h
TrigEventSelectorByteStream::Context
Event Selector context for TrigEventSelectorByteStream.
Definition: TrigEventSelectorByteStream.h:26
TrigEventSelectorByteStream::previous
virtual StatusCode previous(IEvtSelector::Context &c) const override
Definition: TrigEventSelectorByteStream.cxx:175
TrigEventSelectorByteStream::finalize
virtual StatusCode finalize() override
Definition: TrigEventSelectorByteStream.cxx:51
TrigEventSelectorByteStream::createAddress
virtual StatusCode createAddress(const IEvtSelector::Context &c, IOpaqueAddress *&iop) const override
Definition: TrigEventSelectorByteStream.cxx:136
python.compressB64.c
def c
Definition: compressB64.py:93
ServiceHandle< IByteStreamInputSvc >