ATLAS Offline Software
Loading...
Searching...
No Matches
IPtEstimationTool.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 L0MuonMDTTools_IPTESTIMATIONTOOL_H
6#define L0MuonMDTTools_IPTESTIMATIONTOOL_H
7
8#include "GaudiKernel/IAlgTool.h"
10#include <optional>
11
12namespace L0MDT {
13
16struct PtEstimate {
17 unsigned int nStations{0};
18
19 float pt{0.f};
20 float deltaBeta{0.f};
21 float sagitta{0.f};
22 float leverArm{0.f};
23};
24
32class IPtEstimationTool : virtual public IAlgTool {
33public:
35 virtual ~IPtEstimationTool() = default;
36
42 virtual std::optional<PtEstimate> estimatePt(const Segment* biSeg,
43 const Segment* bmSeg,
44 const Segment* boSeg) const = 0;
45};
46
47} // namespace L0MDT
48
49#endif
Interface for pT estimation tools in the L0Muon MDT chain.
virtual std::optional< PtEstimate > estimatePt(const Segment *biSeg, const Segment *bmSeg, const Segment *boSeg) const =0
Estimate the transverse momentum from up to three MDT segment references.
virtual ~IPtEstimationTool()=default
DeclareInterfaceID(IPtEstimationTool, 1, 0)
Class describing a reconstructed MDT segment used by the L0Muon trigger.
Compact Segment Finder algorithm overview.
Output struct holding the result of a pT estimation.
float sagitta
Sagitta of the track (3-station mode).
unsigned int nStations
Number of stations used in the estimate.
float leverArm
Distance between inner and outer station (3-station mode).
float deltaBeta
Angular deflection between stations (2-station mode).
float pt
pT proxy value (not a calibrated momentum)