ATLAS Offline Software
VolumeExcluder.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 // VolumeExcluder.cxx, (c) ATLAS Detector software
8 
9 // Trk
11 // Gaudi
12 #include "GaudiKernel/MsgStream.h"
13 
14 // Default constructor
16  : m_vol(nullptr)
17 {}
18 
19 // constructor with volume
21  : m_vol(vol)
22 {}
23 
24 // copy constructor
26  : Trk::AreaExcluder(ex)
27  , m_vol(new Volume(*(ex.m_vol)))
28 {}
29 
30 // destructor
32 {
33  delete m_vol;
34 }
35 
39 {
40  if (&vol != this) {
41  delete m_vol;
42  AreaExcluder::operator=(vol);
43  m_vol = new Volume(*(vol.m_vol));
44  }
45  return *this;
46 }
47 
50 {
51  return new Trk::VolumeExcluder(*this);
52 }
53 
Trk::VolumeExcluder::clone
VolumeExcluder * clone() const
Pseudo-constructor.
Definition: VolumeExcluder.cxx:49
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
Trk::VolumeExcluder::~VolumeExcluder
virtual ~VolumeExcluder()
Destructor.
Definition: VolumeExcluder.cxx:31
VolumeExcluder.h
Trk::VolumeExcluder::VolumeExcluder
VolumeExcluder()
Default constructor.
Definition: VolumeExcluder.cxx:15
Trk::VolumeExcluder::operator=
VolumeExcluder & operator=(const VolumeExcluder &vol)
Assignment operator.
Definition: VolumeExcluder.cxx:38
Trk::AreaExcluder
Definition: AreaExcluder.h:26
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::VolumeExcluder::m_vol
Volume * m_vol
Definition: VolumeExcluder.h:63
Trk::VolumeExcluder
Definition: VolumeExcluder.h:29
Trk::Volume
Definition: Volume.h:35