ATLAS Offline Software
Loading...
Searching...
No Matches
MuonSegContainerMergerAlg.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 MUONCOMBINEDALGS_MUONSEGMENETMERGERALG_H
6#define MUONCOMBINEDALGS_MUONSEGMENETMERGERALG_H
7
9#include "GaudiKernel/ToolHandle.h"
15
22
24public:
25 MuonSegContainerMergerAlg(const std::string& name, ISvcLocator* pSvcLocator);
26
28
29 virtual StatusCode initialize() override;
30 virtual StatusCode execute(const EventContext& ctx) const override;
31
32private:
34 SG::ReadHandleKeyArray<MuonCandidateCollection> m_muonCandidateKeys{this, "MuonCandidateMaps", {"MuonCandidates"}, "Muon candidates"};
37 this, "TagMaps", {"muidcoTagMap", "stacoTagMap", "muGirlTagMap", "caloTagMap", "segmentTagMap"}, "ID candidate to tag maps"};
38
42 this, "InputSegmentContainers", {"TrackMuonSegments"}, "Container names of muon segments not used in muon reconstruction"};
43
45 SG::WriteHandleKey<Trk::SegmentCollection> m_segTrkContainerName{this, "TrackSegmentContainerName", "TrkMuonSegments",
46 "Track segments"};
48
50 SG::WriteHandleKey<Trk::SegmentCollection> m_unassocTrkContainerName{this, "UnassociatedSegmentKey", "UnAssocMuonTrkSegments"};
51
52 ToolHandle<Trk::ITrackAmbiguityProcessorTool> m_ambiguityProcessor{this, "AmbiguityProcessor", ""};
53
54 Gaudi::Property<bool> m_saveUnassocSegs{this, "saveUnusedSegments", true,
55 "Dumps segments that were not fed into muon reconstruction into a second container"};
56 Gaudi::Property<bool> m_solveAmbi{this, "solveAmbiguities", true, "Solves the ambiguities between unassociated segments"};
57};
58
59#endif
An algorithm that can be simultaneously executed in multiple threads.
SG::ReadHandleKeyArray< Trk::SegmentCollection > m_inputSegContainerName
Optionally segments from containers that are not associated with any segment candidate are dumped int...
virtual StatusCode execute(const EventContext &ctx) const override
Gaudi::Property< bool > m_solveAmbi
SG::WriteHandleKey< MuonCombined::MuonTagToSegMap > m_assocMapKey
Gaudi::Property< bool > m_saveUnassocSegs
MuonSegContainerMergerAlg(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode initialize() override
SG::WriteHandleKey< Trk::SegmentCollection > m_segTrkContainerName
Name of the bulk segment output container.
~MuonSegContainerMergerAlg()=default
ToolHandle< Trk::ITrackAmbiguityProcessorTool > m_ambiguityProcessor
SG::ReadHandleKeyArray< MuonCombined::InDetCandidateToTagMap > m_tagMaps
List of all InDetCandidate tags MuidCo, MuGirl from all muon reconstruction streams.
SG::WriteHandleKey< Trk::SegmentCollection > m_unassocTrkContainerName
Name of the unassociated segment container name.
SG::ReadHandleKeyArray< MuonCandidateCollection > m_muonCandidateKeys
Name of all MuonCandidate tags (Main / LRT / EMEO)
Property holding a SG store/key/clid from which a WriteHandle is made.
HandleKeyArray< ReadHandle< T >, ReadHandleKey< T >, Gaudi::DataHandle::Reader > ReadHandleKeyArray