ATLAS Offline Software
SubtractedCylinderSurface.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // SubtractedCylinderSurface.cxx, (c) ATLAS Detector Software
8 
9 // Trk
11 // STD
12 #include <iomanip>
13 #include <iostream>
14 
15 // constructor
17  std::shared_ptr<const AreaExcluder> vol,
18  bool shared)
20  , m_subtrVol(std::move(vol))
21  , m_shared(shared)
22 {}
23 
24 // copy constructor
26 
27 // copy constructor with shift
29  const Amg::Transform3D& transf)
30  : Trk::CylinderSurface(psf, transf)
31  , m_subtrVol{psf.m_subtrVol}
32  , m_shared(psf.m_shared)
33 {}
34 
35 //Assignement
38 
39 bool
41 {
42  // first check the type not to compare apples with oranges
43  const Trk::SubtractedCylinderSurface* scsf = dynamic_cast<const Trk::SubtractedCylinderSurface*>(&sf);
44  if (!scsf)
45  return false;
46  bool surfaceEqual = Trk::CylinderSurface::operator==(sf);
47  bool sharedEqual = (surfaceEqual) ? (shared() == scsf->shared()) : false;
48  return sharedEqual;
49 }
Trk::SubtractedCylinderSurface::shared
bool shared() const
This method indicates the subtraction mode.
Trk::CylinderSurface::operator==
virtual bool operator==(const Surface &sf) const override
Equality operator.
Definition: CylinderSurface.cxx:176
Trk::SubtractedCylinderSurface
Definition: SubtractedCylinderSurface.h:33
Trk::SubtractedCylinderSurface::SubtractedCylinderSurface
SubtractedCylinderSurface()=default
Defaults.
Trk::SubtractedCylinderSurface::m_subtrVol
std::shared_ptr< const AreaExcluder > m_subtrVol
Definition: SubtractedCylinderSurface.h:75
python.SystemOfUnits.ps
float ps
Definition: SystemOfUnits.py:150
Trk::CylinderSurface
Definition: CylinderSurface.h:55
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
SubtractedCylinderSurface.h
Trk::SubtractedCylinderSurface::operator==
virtual bool operator==(const Surface &sf) const override final
Equality operator.
Definition: SubtractedCylinderSurface.cxx:40
Trk::SubtractedCylinderSurface::operator=
SubtractedCylinderSurface & operator=(SubtractedCylinderSurface &&)=default
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:79