ATLAS Offline Software
Tracking
TrkDetDescr
TrkGeometrySurfaces
src
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
10
#include "
TrkGeometrySurfaces/SubtractedCylinderSurface.h
"
11
// STD
12
#include <iomanip>
13
#include <iostream>
14
15
// constructor
16
Trk::SubtractedCylinderSurface::SubtractedCylinderSurface
(
const
Trk::CylinderSurface
&
ps
,
17
std::shared_ptr<const AreaExcluder> vol,
18
bool
shared)
19
:
Trk
::
CylinderSurface
(
ps
)
20
, m_subtrVol(std::move(vol))
21
, m_shared(shared)
22
{}
23
24
// copy constructor
25
Trk::SubtractedCylinderSurface::SubtractedCylinderSurface
(
const
SubtractedCylinderSurface
& psf) =
default
;
26
27
// copy constructor with shift
28
Trk::SubtractedCylinderSurface::SubtractedCylinderSurface
(
const
SubtractedCylinderSurface
& psf,
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
36
Trk::SubtractedCylinderSurface
&
37
Trk::SubtractedCylinderSurface::operator=
(
const
Trk::SubtractedCylinderSurface
& psf) =
default
;
38
39
bool
40
Trk::SubtractedCylinderSurface::operator==
(
const
Trk::Surface
&
sf
)
const
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
Generated on Thu Sep 4 2025 21:19:26 for ATLAS Offline Software by
1.8.18