ATLAS Offline Software
Loading...
Searching...
No Matches
SubtractedDiscSurface.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// SubtractedDiscSurface.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// constructor
20 const Trk::DiscSurface& ps,
21 std::shared_ptr<const AreaExcluder> vol,
22 bool shared)
23 : Trk::DiscSurface(ps), m_subtrVol(std::move(vol)), m_shared(shared) {}
24
25// copy constructor
27
28// copy constructor with shift
34
35//Assignment
38
39bool
41{
42 // first check the type not to compare apples with oranges
43 const Trk::SubtractedDiscSurface* sdsf = dynamic_cast<const Trk::SubtractedDiscSurface*>(&sf);
44 if (!sdsf)
45 return false;
46 bool surfaceEqual = Trk::DiscSurface::operator==(sf);
47 bool sharedEqual = (surfaceEqual) ? (shared() == sdsf->shared()) : false;
48 return sharedEqual;
49}
Class for a DiscSurface in the ATLAS detector.
Definition DiscSurface.h:54
DiscSurface()
Default Constructor.
virtual bool operator==(const Surface &sf) const override
Equality operator.
Class for a planar subtracted/shared surface in the ATLAS detector.
SubtractedDiscSurface & operator=(SubtractedDiscSurface &&)=default
SubtractedDiscSurface()=default
Defaults.
std::shared_ptr< const AreaExcluder > m_subtrVol
virtual bool operator==(const Surface &sf) const override
Equality operator.
bool shared() const
This method indicates the subtraction mode.
Abstract Base Class for tracking surfaces.
Eigen::Affine3d Transform3D
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.