ATLAS Offline Software
MakeEventStreamInfo.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 MAKEEVENTSTREAMINFO_H
6 #define MAKEEVENTSTREAMINFO_H
7 
14 
16 #include "GaudiKernel/ServiceHandle.h"
18 
19 #include <string>
20 
21 class StoreGateSvc;
22 namespace xAODMaker { class IEventInfoCnvTool; }
23 
27 class MakeEventStreamInfo : public extends<::AthAlgTool, IAthenaOutputTool> {
28 public:
30  MakeEventStreamInfo(const std::string& type, const std::string& name, const IInterface* parent);
32  virtual ~MakeEventStreamInfo();
35  virtual StatusCode initialize() override;
37  virtual StatusCode postInitialize() override;
39  virtual StatusCode preExecute() override;
41  virtual StatusCode preStream() override;
43  virtual StatusCode postExecute() override;
45  virtual StatusCode preFinalize() override;
47  virtual StatusCode finalize() override;
48 
49 private:
51  StringProperty m_dataHeaderKey{this, "DataHeaderKey", "", "name of the data header key"};
53  StringProperty m_key{this, "Key", "", "name of the EventStreamInfo object"};
54 
56  StringProperty m_eventInfoKey{this, "EventInfoKey", "EventInfo", "name of the xAOD::EventInfo"};
58  StringProperty m_oEventInfoKey{this, "OldEventInfoKey", "McEventInfo", "name of the legacy EventInfo"};
59 
61  ServiceHandle<IAthMetaDataSvc> m_metaDataSvc{this, "MetaDataSvc", "MetaDataSvc"};
62  ServiceHandle<StoreGateSvc> m_eventStore{this, "StoreGateSvc", "StoreGateSvc"};
63 
65  std::atomic<unsigned int> m_eventCounter{0};
66 
67 };
68 #endif
MakeEventStreamInfo::m_eventStore
ServiceHandle< StoreGateSvc > m_eventStore
Definition: MakeEventStreamInfo.h:62
IAthenaOutputTool.h
This file contains the class definition for the IAthenaOutputTool class.
IAthMetaDataSvc.h
This file contains the class definition for the IAthMetaDataSvc class.
MakeEventStreamInfo::m_metaDataSvc
ServiceHandle< IAthMetaDataSvc > m_metaDataSvc
Pointer to the data stores.
Definition: MakeEventStreamInfo.h:61
xAODMaker
Definition: StoreGateSvc.h:72
MakeEventStreamInfo::m_oEventInfoKey
StringProperty m_oEventInfoKey
Key, the StoreGate key for the old EventInfo object, ix there is no xAOD::EventInfo.
Definition: MakeEventStreamInfo.h:58
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:125
MakeEventStreamInfo::m_eventCounter
std::atomic< unsigned int > m_eventCounter
Counter of the events in the stream.
Definition: MakeEventStreamInfo.h:65
MakeEventStreamInfo::postInitialize
virtual StatusCode postInitialize() override
Called at the end of AthenaOutputStream::initialize().
Definition: MakeEventStreamInfo.cxx:57
MakeEventStreamInfo::m_dataHeaderKey
StringProperty m_dataHeaderKey
Name of DataHeader key.
Definition: MakeEventStreamInfo.h:51
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
MakeEventStreamInfo::MakeEventStreamInfo
MakeEventStreamInfo(const std::string &type, const std::string &name, const IInterface *parent)
Standard AlgTool Constructor.
Definition: MakeEventStreamInfo.cxx:23
MakeEventStreamInfo
This class provides an algorithm to make the EventStreamInfo object and update it.
Definition: MakeEventStreamInfo.h:27
MakeEventStreamInfo::finalize
virtual StatusCode finalize() override
Called at the end of AthenaOutputStream::finalize() (via release()).
Definition: MakeEventStreamInfo.cxx:158
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
MakeEventStreamInfo::postExecute
virtual StatusCode postExecute() override
Called at the end of AthenaOutputStream::execute().
Definition: MakeEventStreamInfo.cxx:75
MakeEventStreamInfo::preExecute
virtual StatusCode preExecute() override
Called at the beginning of AthenaOutputStream::execute().
Definition: MakeEventStreamInfo.cxx:67
MakeEventStreamInfo::~MakeEventStreamInfo
virtual ~MakeEventStreamInfo()
Destructor.
Definition: MakeEventStreamInfo.cxx:29
MakeEventStreamInfo::m_eventInfoKey
StringProperty m_eventInfoKey
Key, the StoreGate key for the xAOD::EventInfo object.
Definition: MakeEventStreamInfo.h:56
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
MakeEventStreamInfo::preFinalize
virtual StatusCode preFinalize() override
Called at the beginning of AthenaOutputStream::finalize().
Definition: MakeEventStreamInfo.cxx:129
MakeEventStreamInfo::preStream
virtual StatusCode preStream() override
Called before actually streaming objects.
Definition: MakeEventStreamInfo.cxx:71
MakeEventStreamInfo::initialize
virtual StatusCode initialize() override
Required of all IAthenaOutputTools: Called by AthenaOutputStream::initialize() (via ToolSvc retrieve(...
Definition: MakeEventStreamInfo.cxx:32
MakeEventStreamInfo::m_key
StringProperty m_key
Key, the StoreGate key for the EventStreamInfo object.
Definition: MakeEventStreamInfo.h:53
ServiceHandle< IAthMetaDataSvc >