ATLAS Offline Software
Loading...
Searching...
No Matches
VectorExploderAlg.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef FLAVORTAGJETDECORATORS_VECTOR_EXPLODER_ALG_H
6#define FLAVORTAGJETDECORATORS_VECTOR_EXPLODER_ALG_H
7
12
14
15#include <map>
16#include <string>
17#include <vector>
18#include <utility>
19
20namespace FlavorTagJetDecorators {
21
33
35 public:
36 VectorExploderAlg(const std::string& name, ISvcLocator* pSvcLocator);
37
38 virtual StatusCode initialize() override;
39 virtual StatusCode execute(const EventContext& ctx) const override;
40
41 private:
44 this, "Collection", "AntiKt4EMPFlowJets",
45 "Input jet collection to read decorations from"};
46
49 this, "InputVectorName", m_collectionKey, "",
50 "Name of the input vector decoration to explode"};
51
53 Gaudi::Property<std::map<int, std::string>> m_outputNamesMap{
54 this, "OutputNamesMap", {},
55 "Mapping between indices and names for the output scalar decorations"};
56
59 std::vector<std::pair<int, SG::WriteDecorHandleKey<xAOD::JetContainer>>> m_outputKeys;
60
62 int m_maxIndex{-1};
63 };
64
65} // namespace FlavorTagJetDecorators
66
67#endif // FLAVORTAGJETDECORATORS_VECTOR_EXPLODER_ALG_H
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
VectorExploderAlg(const std::string &name, ISvcLocator *pSvcLocator)
Gaudi::Property< std::map< int, std::string > > m_outputNamesMap
Mapping from vector index to output scalar decoration name.
SG::ReadHandleKey< xAOD::JetContainer > m_collectionKey
Input jet collection.
SG::ReadDecorHandleKey< xAOD::JetContainer > m_inputVectorKey
Name of the input vector<float> decoration to explode.
int m_maxIndex
Maximum index used in OutputNamesMap (for bounds check).
std::vector< std::pair< int, SG::WriteDecorHandleKey< xAOD::JetContainer > > > m_outputKeys
Initialized output keys (index, WriteDecorHandleKey) pairs.
virtual StatusCode execute(const EventContext &ctx) const override
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid from which a ReadHandle is made.