ATLAS Offline Software
TruthMetaDataWriter.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef DERIVATIONFRAMEWORK_TRUTHMETADATAWRITER_H
6 #define DERIVATIONFRAMEWORK_TRUTHMETADATAWRITER_H
7 
11 
12 // Handles to services
13 #include "GaudiKernel/ServiceHandle.h"
14 
15 // Service for the metadata (tag info)
17 
18 // EDM classes - typedefs, so have to #include them
20 
21 // Standard library includes
22 #include <string>
23 #include <unordered_set>
24 
25 // Forward declarations
26 class IHepMCWeightSvc;
27 
28 namespace DerivationFramework {
29 
31  // ^ meta-data handling in addBranches
32  public:
33  TruthMetaDataWriter(const std::string& t, const std::string& n, const IInterface* p);
35  virtual StatusCode initialize() override;
36  virtual StatusCode addBranches() const override;
37 
38  private:
44  xAOD::TruthMetaDataContainer* m_tmd = nullptr;
46  std::string m_metaName;
48  mutable std::unordered_set<uint32_t> m_existingMetaDataChan;
51  "TagInfoMgr", name()};
52 
53  };
54 }
55 
56 #endif
DerivationFramework::TruthMetaDataWriter::m_metaName
std::string m_metaName
SG key and name for meta data.
Definition: TruthMetaDataWriter.h:46
IHepMCWeightSvc
IService to read/write HepMC's WeightContainer key names from/to IOVMetaDataContainers author: will b...
Definition: IHepMCWeightSvc.h:18
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
IAugmentationTool.h
initialize
void initialize()
Definition: run_EoverP.cxx:894
ITagInfoMgr.h
DerivationFramework::TruthMetaDataWriter::m_weightSvc
ServiceHandle< IHepMCWeightSvc > m_weightSvc
Service for retrieving the weight names.
Definition: TruthMetaDataWriter.h:42
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
DerivationFramework::IAugmentationTool
Definition: IAugmentationTool.h:24
DerivationFramework::TruthMetaDataWriter::m_metaStore
ServiceHandle< StoreGateSvc > m_metaStore
Connection to the metadata store.
Definition: TruthMetaDataWriter.h:40
DerivationFramework::TruthMetaDataWriter
Definition: TruthMetaDataWriter.h:30
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
AthAlgTool
Definition: AthAlgTool.h:26
checker_macros.h
Define macros for attributes used to control the static checker.
TruthMetaDataContainer.h
DerivationFramework::TruthMetaDataWriter::m_existingMetaDataChan
std::unordered_set< uint32_t > m_existingMetaDataChan
Set for tracking the mc channels for which we already added meta data.
Definition: TruthMetaDataWriter.h:48
ServiceHandle< StoreGateSvc >