ATLAS Offline Software
RpcClusterPreparator.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 TRIGL2MUONSA_RPCCLUSTERPREPARATOR_H
6 #define TRIGL2MUONSA_RPCCLUSTERPREPARATOR_H
7 
8 
10 #include "GaudiKernel/ServiceHandle.h"
11 #include "GaudiKernel/ToolHandle.h"
12 
16 
21 
22 #include "ClusterPatFinder.h"
23 
24 
25 // --------------------------------------------------------------------------------
26 // --------------------------------------------------------------------------------
27 
28 namespace TrigL2MuonSA {
29 
31 {
32  public:
33 
34  RpcClusterPreparator(const std::string& type,
35  const std::string& name,
36  const IInterface* parent);
37 
38  virtual StatusCode initialize() override;
39 
40  StatusCode clusteringRPCs(const bool doMultiMuon,
41  const std::vector<const Muon::RpcPrepDataCollection*>& rpcCols,
42  const TrigRoiDescriptor* p_roids,
43  const ToolHandle<ClusterPatFinder>* clusterPatFinder,
44  TrigL2MuonSA::RpcLayerClusters& rpcLayerClusters) const;
45 
46  typedef std::map<int, const Muon::RpcPrepData*, std::less<int> > pattern;
47  int buildPatterns(const bool doMultiMuon,
48  const TrigRoiDescriptor* p_roids,
49  const Muon::RpcPrepDataCollection* rpcCollection,
50  std::map<Identifier, pattern>& digits) const;
51 
52  void buildClusters(const ToolHandle<ClusterPatFinder>* clusterPatFinder,
53  std::map<Identifier, pattern>& digits,
54  TrigL2MuonSA::RpcLayerClusters& rpcLayerClusters) const;
55  private:
56 
57  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
58  ToolHandle<LVL1::ITrigT1MuonRecRoiTool> m_recRPCRoiTool{ this, "TrigT1RPCRecRoiTool", "LVL1::TrigT1RPCRecRoiTool/TrigT1RPCRecRoiTool"};
59 
60 };
61 
62 } // namespace TrigL2MuonSA
63 
64 #endif // TRIGL2MUONSA_RPCCLUSTERPREPARATOR_H
TrigL2MuonSA::RpcClusterPreparator::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: RpcClusterPreparator.h:57
RecMuonRoI.h
TrigRoiDescriptor
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
Definition: TrigRoiDescriptor.h:56
RpcPrepDataContainer.h
MuonPrepDataContainer.h
TrigL2MuonSA::RpcClusterPreparator::buildClusters
void buildClusters(const ToolHandle< ClusterPatFinder > *clusterPatFinder, std::map< Identifier, pattern > &digits, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
Definition: RpcClusterPreparator.cxx:141
TrigL2MuonSA::RpcClusterPreparator::pattern
std::map< int, const Muon::RpcPrepData *, std::less< int > > pattern
Definition: RpcClusterPreparator.h:46
RpcPrepDataCollection.h
TrigL2MuonSA::RpcClusterPreparator::clusteringRPCs
StatusCode clusteringRPCs(const bool doMultiMuon, const std::vector< const Muon::RpcPrepDataCollection * > &rpcCols, const TrigRoiDescriptor *p_roids, const ToolHandle< ClusterPatFinder > *clusterPatFinder, TrigL2MuonSA::RpcLayerClusters &rpcLayerClusters) const
Definition: RpcClusterPreparator.cxx:35
TrigL2MuonSA::RpcClusterPreparator
Definition: RpcClusterPreparator.h:31
TrigL2MuonSA::RpcClusterPreparator::initialize
virtual StatusCode initialize() override
Definition: RpcClusterPreparator.cxx:23
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
TrigL2MuonSA::RpcLayerClusters
Definition: ClusterPatFinder.h:58
ClusterPatFinder.h
ITrigT1MuonRecRoiTool.h
TrigL2MuonSA::RpcClusterPreparator::RpcClusterPreparator
RpcClusterPreparator(const std::string &type, const std::string &name, const IInterface *parent)
Definition: RpcClusterPreparator.cxx:13
TrigL2MuonSA::RpcClusterPreparator::buildPatterns
int buildPatterns(const bool doMultiMuon, const TrigRoiDescriptor *p_roids, const Muon::RpcPrepDataCollection *rpcCollection, std::map< Identifier, pattern > &digits) const
Definition: RpcClusterPreparator.cxx:63
Muon::MuonPrepDataCollection
Template to hold collections of MuonPrepRawData objects.
Definition: MuonPrepDataCollection.h:46
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
TrigRoiDescriptor.h
AthAlgTool
Definition: AthAlgTool.h:26
IMuonIdHelperSvc.h
TrigL2MuonSA::RpcClusterPreparator::m_recRPCRoiTool
ToolHandle< LVL1::ITrigT1MuonRecRoiTool > m_recRPCRoiTool
Definition: RpcClusterPreparator.h:58
TrigL2MuonSA
Definition: AlignmentBarrelLUT.h:13
ServiceHandle< Muon::IMuonIdHelperSvc >