ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
Trk::VolumeExcluder Class Reference

#include <VolumeExcluder.h>

Inheritance diagram for Trk::VolumeExcluder:
Collaboration diagram for Trk::VolumeExcluder:

Public Member Functions

 VolumeExcluder ()
 Default constructor. More...
 
 VolumeExcluder (Volume *vol)
 Explicit constructor with volume. More...
 
 VolumeExcluder (const VolumeExcluder &ex)
 copy constructor More...
 
virtual ~VolumeExcluder ()
 Destructor. More...
 
VolumeExcluderoperator= (const VolumeExcluder &vol)
 Assignment operator. More...
 
VolumeExcluderclone () const
 Pseudo-constructor. More...
 
bool inside (const Amg::Vector3D &gp, double tol=0.) const
 First bin from global position. More...
 
const Volumevolume () const
 Acces the subtracted volume. More...
 
Volumevolume ()
 
MsgStream & dump (MsgStream &sl) const
 Output Method for MsgStream, to be overloaded by child classes. More...
 
std::ostream & dump (std::ostream &sl) const
 Output Method for std::ostream, to be overloaded by child classes. More...
 

Private Attributes

Volumem_vol
 

Detailed Description

removes explicit dependence of Subtracted*Surface on TrkVolumes

Author
sarka.nosp@m..tod.nosp@m.orova.nosp@m.@cer.nosp@m.n.ch

Definition at line 29 of file VolumeExcluder.h.

Constructor & Destructor Documentation

◆ VolumeExcluder() [1/3]

Trk::VolumeExcluder::VolumeExcluder ( )

Default constructor.

Definition at line 15 of file VolumeExcluder.cxx.

16  : m_vol(nullptr)
17 {}

◆ VolumeExcluder() [2/3]

Trk::VolumeExcluder::VolumeExcluder ( Trk::Volume vol)

Explicit constructor with volume.

Definition at line 20 of file VolumeExcluder.cxx.

21  : m_vol(vol)
22 {}

◆ VolumeExcluder() [3/3]

Trk::VolumeExcluder::VolumeExcluder ( const VolumeExcluder ex)

copy constructor

Definition at line 25 of file VolumeExcluder.cxx.

26  : Trk::AreaExcluder(ex)
27  , m_vol(new Volume(*(ex.m_vol)))
28 {}

◆ ~VolumeExcluder()

Trk::VolumeExcluder::~VolumeExcluder ( )
virtual

Destructor.

Definition at line 31 of file VolumeExcluder.cxx.

32 {
33  delete m_vol;
34 }

Member Function Documentation

◆ clone()

Trk::VolumeExcluder * Trk::VolumeExcluder::clone ( ) const
virtual

Pseudo-constructor.

Implements Trk::AreaExcluder.

Definition at line 49 of file VolumeExcluder.cxx.

50 {
51  return new Trk::VolumeExcluder(*this);
52 }

◆ dump() [1/2]

MsgStream& Trk::VolumeExcluder::dump ( MsgStream &  sl) const

Output Method for MsgStream, to be overloaded by child classes.

◆ dump() [2/2]

std::ostream& Trk::VolumeExcluder::dump ( std::ostream &  sl) const

Output Method for std::ostream, to be overloaded by child classes.

◆ inside()

bool Trk::VolumeExcluder::inside ( const Amg::Vector3D gp,
double  tol = 0. 
) const
inlinevirtual

First bin from global position.

Implements Trk::AreaExcluder.

Definition at line 67 of file VolumeExcluder.h.

68  { return( m_vol->inside(gp,tol) ); }

◆ operator=()

Trk::VolumeExcluder & Trk::VolumeExcluder::operator= ( const VolumeExcluder vol)

Assignment operator.

Definition at line 38 of file VolumeExcluder.cxx.

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 }

◆ volume() [1/2]

Volume * Trk::VolumeExcluder::volume ( )
inline

Definition at line 73 of file VolumeExcluder.h.

74  { return( m_vol ); }

◆ volume() [2/2]

const Volume * Trk::VolumeExcluder::volume ( ) const
inline

Acces the subtracted volume.

Definition at line 70 of file VolumeExcluder.h.

71  { return( m_vol ); }

Member Data Documentation

◆ m_vol

Volume* Trk::VolumeExcluder::m_vol
private

Definition at line 63 of file VolumeExcluder.h.


The documentation for this class was generated from the following files:
Trk::Volume::inside
bool inside(const Amg::Vector3D &gp, double tol=0.) const
Inside() method for checks.
Definition: Volume.cxx:90
Trk::AreaExcluder
Definition: AreaExcluder.h:26
Trk::VolumeExcluder::m_vol
Volume * m_vol
Definition: VolumeExcluder.h:63
Trk::VolumeExcluder
Definition: VolumeExcluder.h:29