ATLAS Offline Software
Loading...
Searching...
No Matches
SubtractedPlaneSurface.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
6// SubtractedPlaneSurface.cxx, (c) ATLAS Detector Software
8
9// Trk
11// Gaudi
12#include "GaudiKernel/MsgStream.h"
13// STD
14#include <iomanip>
15#include <iostream>
16
17
18// copy constructor
19Trk::SubtractedPlaneSurface::SubtractedPlaneSurface(const SubtractedPlaneSurface& psf) = default;
20
21// copy constructor with shift
27
28// constructor
30 std::shared_ptr<const AreaExcluder> vol,
31 bool shared)
32 : Trk::PlaneSurface(ps)
33 , m_subtrVol(std::move(vol))
35{}
36
37
40
41bool
43{
44 // first check the type not to compare apples with oranges
45 const Trk::SubtractedPlaneSurface* spsf = dynamic_cast<const Trk::SubtractedPlaneSurface*>(&sf);
46 if (!spsf)
47 return false;
48 bool surfaceEqual = Trk::PlaneSurface::operator==(sf);
49 bool sharedEqual = (surfaceEqual) ? (shared() == spsf->shared()) : false;
50 return sharedEqual;
51}
Class for a planaer rectangular or trapezoidal surface in the ATLAS detector.
PlaneSurface()
Default Constructor - needed for persistency.
virtual bool operator==(const Surface &sf) const override
Equality operator.
Class for a planar subtracted/shared surface in the ATLAS detector.
bool shared() const
This method indicates the subtraction mode.
SubtractedPlaneSurface()=default
Defaults.
std::shared_ptr< const AreaExcluder > m_subtrVol
virtual bool operator==(const Surface &sf) const override final
Equality operator.
SubtractedPlaneSurface & operator=(SubtractedPlaneSurface &&)=default
Abstract Base Class for tracking surfaces.
Eigen::Affine3d Transform3D
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.