ATLAS Offline Software
Loading...
Searching...
No Matches
EventSelectorMuonCalibStream.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef MUONCALIBSTREAMCNVSVC_EVENTSELECTORMUONCALIBSTREAM_H
5#define MUONCALIBSTREAMCNVSVC_EVENTSELECTORMUONCALIBSTREAM_H
6// EventSelectorMuonCalibStream
7
8// Include files.
9#include <map>
10
13
15#include "GaudiKernel/IEvtSelector.h"
16#include "GaudiKernel/IProperty.h"
17#include "GaudiKernel/ServiceHandle.h"
18#include "MuCalDecode/CalibEvent.h"
19
20// Forward declarations.
21class ISvcLocator;
23
24// Class EventSelectorMuonCalibStream.
25class EventSelectorMuonCalibStream : public extends<AthService, IEvtSelector> {
26public:
27 // Standard Constructor.
28 EventSelectorMuonCalibStream(const std::string &name, ISvcLocator *svcloc);
29
30 // Standard Destructor.
32
33 // Implementation of Service base class methods.
34 virtual StatusCode initialize();
35
36 // Implementation of the IEvtSelector interface methods.
37 virtual StatusCode createContext(Context *&it) const;
38 virtual StatusCode next(Context &it) const;
39 virtual StatusCode next(Context &it, int jump) const;
40 virtual StatusCode previous(Context &it) const;
41 virtual StatusCode previous(Context &it, int jump) const;
42
43 virtual StatusCode last(Context &it) const;
44 virtual StatusCode rewind(Context &it) const;
45
46 virtual StatusCode createAddress(const Context &it, IOpaqueAddress *&iop) const;
47 virtual StatusCode releaseContext(Context *&it) const;
48 virtual StatusCode resetCriteria(const std::string &criteria, Context &context) const;
49
50private:
51 // property
52 Gaudi::Property<int> m_SkipEvents{this, "SkipEvents", 0, "Number of events to skip at the beginning"};
53 ServiceHandle<MuonCalibStreamInputSvc> m_eventSource{ this, "MuonCalibStreamInputSvc", "MuonCalibStreamFileInputSvc"};
54 ServiceHandle<IMuonCalibStreamDataProviderSvc> m_dataProvider{this, "DataProvider", "MuonCalibStreamDataProviderSvc"};
55
58
59 mutable std::atomic<long> m_NumEvents{0}; // Number of Events read so far.
60};
61
62#endif
This class provides the Context for EventSelectorMuonCalibStream.
virtual StatusCode previous(Context &it) const
virtual StatusCode next(Context &it, int jump) const
virtual StatusCode rewind(Context &it) const
virtual StatusCode previous(Context &it, int jump) const
ServiceHandle< IMuonCalibStreamDataProviderSvc > m_dataProvider
virtual StatusCode next(Context &it) const
EventContextMuonCalibStream * m_endIter
virtual StatusCode last(Context &it) const
virtual StatusCode resetCriteria(const std::string &criteria, Context &context) const
EventContextMuonCalibStream * m_beginIter
virtual StatusCode createAddress(const Context &it, IOpaqueAddress *&iop) const
virtual StatusCode releaseContext(Context *&it) const
virtual StatusCode createContext(Context *&it) const
ServiceHandle< MuonCalibStreamInputSvc > m_eventSource
EventSelectorMuonCalibStream(const std::string &name, ISvcLocator *svcloc)