ATLAS Offline Software
MuonSegmentQuality.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // MuonSegmentQuality.h, (c) ATLAS Detector software
8 
9 #ifndef MUONSEGMENT_MUONSEGMENTQUALITY_H
10 #define MUONSEGMENT_MUONSEGMENTQUALITY_H
11 
12 #include "Identifier/Identifier.h"
14 #include <memory>
15 #include <vector>
16 
17 namespace Muon {
18 
35  public:
38 
40  MuonSegmentQuality( double chi2, int ndof, const std::vector<Identifier>& channelsWithoutHit, bool isStrict=false );
41  MuonSegmentQuality( double chi2, int ndof, std::vector<Identifier>&& channelsWithoutHit, bool isStrict=false );
42 
44  virtual ~MuonSegmentQuality() {}
45 
47  unsigned int numberOfHoles() const;
48 
50  const std::vector<Identifier>& channelsWithoutHit() const;
51 
53  virtual MuonSegmentQuality* clone() const override final;
54 
56  std::unique_ptr<MuonSegmentQuality> uniqueClone() const {
57  return std::unique_ptr<MuonSegmentQuality>(clone());
58  }
59 
60 
61  bool isStrict() const;
62  private:
63 
64  std::vector<Identifier> m_channelsWithoutHit{};
65  bool m_isStrict{};
66  };
67 
68 
69 
70  inline unsigned int MuonSegmentQuality::numberOfHoles() const {
71  return m_channelsWithoutHit.size();
72  }
73 
74  inline const std::vector<Identifier>& MuonSegmentQuality::channelsWithoutHit() const {
75  return m_channelsWithoutHit;
76  }
77 
79  return new MuonSegmentQuality(*this);
80  }
81 
82  inline bool MuonSegmentQuality::isStrict() const {
83  return m_isStrict;
84  }
85 
86 }
87 #endif // MUONSEGMENT_MUONSEGMENTQUALITY_H
88 
Muon::MuonSegmentQuality
Definition: MuonSegmentQuality.h:34
IDTPM::ndof
float ndof(const U &p)
Definition: TrackParametersHelper.h:142
Muon::MuonSegmentQuality::uniqueClone
std::unique_ptr< MuonSegmentQuality > uniqueClone() const
NVI clone to unique_ptr.
Definition: MuonSegmentQuality.h:56
Muon::MuonSegmentQuality::m_isStrict
bool m_isStrict
Definition: MuonSegmentQuality.h:65
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::MuonSegmentQuality::clone
virtual MuonSegmentQuality * clone() const override final
bare pointer clone
Definition: MuonSegmentQuality.h:78
Muon::MuonSegmentQuality::MuonSegmentQuality
MuonSegmentQuality()
Default Constructor needed for POOL.
Definition: MuonSegmentQuality.cxx:12
Muon::MuonSegmentQuality::m_channelsWithoutHit
std::vector< Identifier > m_channelsWithoutHit
Definition: MuonSegmentQuality.h:64
chi2
double chi2(TH1 *h0, TH1 *h1)
Definition: comparitor.cxx:522
Trk::FitQuality
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
Definition: FitQuality.h:97
Muon::MuonSegmentQuality::numberOfHoles
unsigned int numberOfHoles() const
number of holes
Definition: MuonSegmentQuality.h:70
Muon::MuonSegmentQuality::~MuonSegmentQuality
virtual ~MuonSegmentQuality()
Destructor.
Definition: MuonSegmentQuality.h:44
FitQuality.h
Muon::MuonSegmentQuality::isStrict
bool isStrict() const
Returns true if the segment was created using strict criteria.
Definition: MuonSegmentQuality.h:82
Muon::MuonSegmentQuality::channelsWithoutHit
const std::vector< Identifier > & channelsWithoutHit() const
vector of identifiers of channels crossed by the segment but without hit
Definition: MuonSegmentQuality.h:74