Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
SiTrajectory_xk.icc
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "TrkSurfaces/PlaneSurface.h"
6 
7 /////////////////////////////////////////////////////////////////////////////////
8 // Inline methods
9 /////////////////////////////////////////////////////////////////////////////////
10 
11 inline InDet::SiTrajectory_xk::SiTrajectory_xk(){
12 }
13 
14 inline InDet::SiTrajectory_xk::SiTrajectory_xk(const InDet::SiTrajectory_xk& T)
15 {
16  *this = T;
17 }
18 
19 inline InDet::SiTrajectory_xk& InDet::SiTrajectory_xk::operator =
20  (const InDet::SiTrajectory_xk& T)
21 {
22  m_firstElement = T.m_firstElement ;
23  m_lastElement = T.m_lastElement ;
24  m_nclusters = T.m_nclusters ;
25  m_ndfcut = T.m_ndfcut ;
26  m_ndf = T.m_ndf ;
27  m_ntos = T.m_ntos ;
28  m_nclustersNoAdd = T.m_nclustersNoAdd ;
29  m_nHolesBefore = T.m_nHolesBefore ;
30  m_nHolesAfter = T.m_nHolesAfter ;
31  m_nholes = T.m_nholes ;
32  m_dholes = T.m_dholes ;
33  m_nActiveElements = T.m_nActiveElements ;
34  m_nElements = T.m_nElements ;
35  m_tools = T.m_tools ;
36  m_surfacedead.reset(T.m_surfacedead ? T.m_surfacedead->clone() : nullptr);
37 
38  for (int i=0; i!=m_nElements; ++i) {
39  int e = T.m_elementsMap[i];
40  m_elementsMap[i] = e ;
41  m_elements [e] = T.m_elements[e] ;
42  }
43  for (int i=0; i!=m_ntos; ++i) {
44  m_atos[i] = T.m_atos[i];
45  m_itos[i] = T.m_itos[i];
46  }
47  return(*this);
48 }
49 
50 inline bool InDet::SiTrajectory_xk::isLastPixel() const
51 {
52  if (m_elements[m_elementsMap[m_lastElement]].ndf()==2) return true;
53  return false;
54 }
55 
56 inline const Trk::PatternTrackParameters *InDet::SiTrajectory_xk::firstParameters() const
57 {
58  return m_elements[m_elementsMap[m_firstElement]].parameters();
59 }
60 
61 inline std::unique_ptr<Trk::TrackParameters> InDet::SiTrajectory_xk::firstTrackParameters()
62 {
63  return m_elements[m_elementsMap[m_firstElement]].trackParameters(false,1);
64 }