ATLAS Offline Software
Loading...
Searching...
No Matches
SimpleMMClusterBuilderTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef SimpleMMClusterBuilderTool_h
6#define SimpleMMClusterBuilderTool_h
7
14//
15// Simple clusterization tool for MicroMegas
16//
17namespace Muon {
18
20 public:
21 SimpleMMClusterBuilderTool(const std::string&, const std::string&, const IInterface*);
22 virtual ~SimpleMMClusterBuilderTool() = default;
23
24 StatusCode initialize() override;
25
26 StatusCode getClusters(const EventContext& ctx,
27 std::vector<Muon::MMPrepData>&& stripsVect,
28 std::vector<std::unique_ptr<Muon::MMPrepData>>& clustersVect) const override;
29
30
31
32 RIO_Author getCalibratedClusterPosition(const EventContext& ctx,
33 const std::vector<NSWCalib::CalibratedStrip>& calibratedStrips,
34 const Amg::Vector3D& directionEstimate,
35 Amg::Vector2D& clusterLocalPosition,
36 Amg::MatrixX& covMatrix) const override;
37
38 private:
39 StatusCode getClusterPosition(const EventContext& ctx,
40 const Identifier& clustId,
41 std::vector<Muon::MMPrepData>& stripsVect,
42 Amg::Vector2D& clusterLocalPosition,
43 Amg::MatrixX& covMatrix) const;
44
45
47 "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
48
49 SG::ReadCondHandleKey<NswErrorCalibData> m_uncertCalibKey{this, "ErrorCalibKey", "NswUncertData",
50 "Key of the parametrized NSW uncertainties"};
51
52
53 Gaudi::Property<bool> m_writeStripProperties{this, "writeStripProperties", true};
54 Gaudi::Property<uint> m_maxHoleSize{this, "maxHoleSize", 1};
55 Gaudi::Property<unsigned int> m_maxClusSize{this, "maxClusSize", 50};
56 };
57
58} // namespace Muon
59#endif
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
MMClusterOnTrack::Author RIO_Author
Refinement of the cluster position after the cluster calibration loop is ran with a complete external...
StatusCode getClusters(const EventContext &ctx, std::vector< Muon::MMPrepData > &&stripsVect, std::vector< std::unique_ptr< Muon::MMPrepData > > &clustersVect) const override
Standard Interface to produce Micromega clusters from raw Input hits without external contstaint.
StatusCode getClusterPosition(const EventContext &ctx, const Identifier &clustId, std::vector< Muon::MMPrepData > &stripsVect, Amg::Vector2D &clusterLocalPosition, Amg::MatrixX &covMatrix) const
get cluster local position and covariance matrix
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
SimpleMMClusterBuilderTool(const std::string &, const std::string &, const IInterface *)
SG::ReadCondHandleKey< NswErrorCalibData > m_uncertCalibKey
virtual ~SimpleMMClusterBuilderTool()=default
RIO_Author getCalibratedClusterPosition(const EventContext &ctx, const std::vector< NSWCalib::CalibratedStrip > &calibratedStrips, const Amg::Vector3D &directionEstimate, Amg::Vector2D &clusterLocalPosition, Amg::MatrixX &covMatrix) const override
Gaudi::Property< unsigned int > m_maxClusSize
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 2, 1 > Vector2D
Eigen::Matrix< double, 3, 1 > Vector3D
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.