ATLAS Offline Software
NavigationLayer.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // NavigationLayer.cxx, (c) ATLAS Detector software
8 
10 
11 #include "TrkSurfaces/Surface.h"
12 
13 // constructor with arguments
16  Trk::BinUtility* binUtil)
17  : Trk::Layer(), m_surfaceRepresentation(surfaceRepresentation) {
20  Trk::Layer::m_binUtility = binUtil;
22 }
23 
24 // constructor with arguments
26  double thickness)
27  : Trk::Layer(), m_surfaceRepresentation(surfaceRepresentation) {
29 }
30 
31 // copy constructor
33  : Trk::Layer(lay),
34  m_surfaceRepresentation(lay.m_surfaceRepresentation->clone()) {
38 }
39 
40 // destructor - only deletes surface representation
41 Trk::NavigationLayer::~NavigationLayer() { delete m_surfaceRepresentation; }
42 
44  const Trk::NavigationLayer& lay) {
45  if (this != &lay) {
47  delete m_surfaceRepresentation;
48  m_surfaceRepresentation = lay.m_surfaceRepresentation->clone();
49  }
50  return (*this);
51 }
52 
54  const BoundaryCheck& bcheck) const {
55  return m_surfaceRepresentation->isOnSurface(gp, bcheck);
56 }
57 
Trk::NavigationLayer::~NavigationLayer
virtual ~NavigationLayer() override
Destructor.
Definition: NavigationLayer.cxx:41
NavigationLayer.h
Surface.h
Trk::Layer::m_previousLayer
const Layer * m_previousLayer
< the previous Layer according to BinGenUtils
Definition: Layer.h:297
Trk::NavigationLayer::NavigationLayer
NavigationLayer()
Default Constructor.
Definition: NavigationLayer.h:106
Trk::next
@ next
Definition: BinningData.h:33
Trk::NavigationLayer::operator=
NavigationLayer & operator=(const NavigationLayer &lay)
Assignment operator.
Definition: NavigationLayer.cxx:43
Trk::NavigationLayer
Definition: NavigationLayer.h:39
python.Utilities.clone
clone
Definition: Utilities.py:134
Trk::NavigationLayer::isOnLayer
virtual bool isOnLayer(const Amg::Vector3D &gp, const BoundaryCheck &bcheck=BoundaryCheck(true)) const override final
isOnLayer() method, using isOnSurface() with Layer specific tolerance
Definition: NavigationLayer.cxx:53
Trk::passive
@ passive
Definition: Layer.h:48
fillPileUpNoiseLumi.next
next
Definition: fillPileUpNoiseLumi.py:52
Trk::Layer::m_layerType
int m_layerType
active passive layer
Definition: Layer.h:308
Trk::Layer::operator=
Layer & operator=(const Layer &lay)
Assignment operator for Derived classes.
Definition: Layer.cxx:98
Trk::BinUtility
Definition: BinUtility.h:39
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::Layer::thickness
double thickness() const
Return the Thickness of the Layer.
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Trk::Layer::m_nextLayer
const Layer * m_nextLayer
BinUtility for next/previous decision.
Definition: Layer.h:299
Trk::Surface::clone
virtual Surface * clone() const =0
Implicit constructor - uses the copy constructor.
Trk::Layer::m_binUtility
const BinUtility * m_binUtility
Enclosing TrackingVolume.
Definition: Layer.h:301
Trk::NavigationLayer::m_surfaceRepresentation
Surface * m_surfaceRepresentation
for the navigation Volume the surface is a private member *‍/
Definition: NavigationLayer.h:101
Trk::BoundaryCheck
Definition: BoundaryCheck.h:51
Trk::Layer::m_layerThickness
double m_layerThickness
descriptor for overlap/next surface (owning ptr)
Definition: Layer.h:291
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
Trk::previous
@ previous
Definition: BinningData.h:32
Trk::Layer
Definition: Layer.h:73