DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
dd4hep::SurfaceInstaller Class Reference

Base class to implement surface installers for known detector patterns. More...

#include <SurfaceInstaller.h>

Public Member Functions

 SurfaceInstaller ()=delete
 No default constructor. More...
 
 SurfaceInstaller (const SurfaceInstaller &copy)=delete
 No copy constructor. More...
 
 SurfaceInstaller (Detector &description, int argc, char **argv)
 Initializing constructor. More...
 
virtual ~SurfaceInstaller ()=default
 Default destructor. More...
 
SurfaceInstalleroperator= (const SurfaceInstaller &copy)=delete
 No assignment. More...
 
void stopScanning ()
 Set flag to stop scanning volumes and detector elements. More...
 
void invalidInstaller (const std::string &msg) const
 Indicate error message and throw exception. More...
 
Volume parentVolume (DetElement component) const
 Shortcut to access the parent detectorelement's volume. More...
 
const double * placementTranslation (DetElement component) const
 Shortcut to access the translation vector of a given component. More...
 
void scan ()
 Scan through tree of detector elements. More...
 
virtual void install (DetElement e, PlacedVolume pv)
 Install volume information. Default implementation only prints! More...
 

Static Public Member Functions

template<typename T >
static long run (Detector &description, int argc, char **argv)
 Executor. More...
 

Protected Types

typedef detail::tools::ElementPath ElementPath
 
typedef detail::tools::PlacementPath PlacementPath
 
typedef rec::VolSurfaceBase SurfaceData
 
typedef rec::SurfaceType SurfaceType
 
typedef std::map< TGeoVolume *, SurfaceData * > Surfaces
 

Protected Member Functions

void scan (DetElement de)
 Scan through tree of detector elements. More...
 

Protected Attributes

Detectorm_detDesc
 Reference to the Detector instance. More...
 
DetElement m_det
 Reference to the detector element of the subdetector. More...
 
Surfaces m_surfaces
 Map of surface instances keyed by the logical volume. More...
 
bool m_stopScanning
 Flag to inhibit useless further scans. More...
 

Detailed Description

Base class to implement surface installers for known detector patterns.

Definition at line 55 of file SurfaceInstaller.h.

Member Typedef Documentation

◆ ElementPath

Definition at line 57 of file SurfaceInstaller.h.

◆ PlacementPath

Definition at line 58 of file SurfaceInstaller.h.

◆ SurfaceData

Definition at line 59 of file SurfaceInstaller.h.

◆ Surfaces

typedef std::map<TGeoVolume*, SurfaceData* > dd4hep::SurfaceInstaller::Surfaces
protected

Definition at line 61 of file SurfaceInstaller.h.

◆ SurfaceType

Definition at line 60 of file SurfaceInstaller.h.

Constructor & Destructor Documentation

◆ SurfaceInstaller() [1/3]

dd4hep::SurfaceInstaller::SurfaceInstaller ( )
delete

No default constructor.

◆ SurfaceInstaller() [2/3]

dd4hep::SurfaceInstaller::SurfaceInstaller ( const SurfaceInstaller copy)
delete

No copy constructor.

◆ SurfaceInstaller() [3/3]

SurfaceInstaller::SurfaceInstaller ( Detector description,
int  argc,
char **  argv 
)

Initializing constructor.

Definition at line 27 of file SurfaceInstaller.cpp.

◆ ~SurfaceInstaller()

virtual dd4hep::SurfaceInstaller::~SurfaceInstaller ( )
virtualdefault

Default destructor.

Member Function Documentation

◆ install()

void SurfaceInstaller::install ( DetElement  e,
PlacedVolume  pv 
)
virtual

Install volume information. Default implementation only prints!

Printout volume information.

Definition at line 74 of file SurfaceInstaller.cpp.

◆ invalidInstaller()

void SurfaceInstaller::invalidInstaller ( const std::string &  msg) const

Indicate error message and throw exception.

Definition at line 47 of file SurfaceInstaller.cpp.

◆ operator=()

SurfaceInstaller& dd4hep::SurfaceInstaller::operator= ( const SurfaceInstaller copy)
delete

No assignment.

◆ parentVolume()

Volume SurfaceInstaller::parentVolume ( DetElement  component) const

Shortcut to access the parent detectorelement's volume.

Definition at line 58 of file SurfaceInstaller.cpp.

◆ placementTranslation()

const double * SurfaceInstaller::placementTranslation ( DetElement  component) const

Shortcut to access the translation vector of a given component.

Definition at line 67 of file SurfaceInstaller.cpp.

◆ run()

template<typename T >
long dd4hep::SurfaceInstaller::run ( Detector description,
int  argc,
char **  argv 
)
inlinestatic

Executor.

Action routine to execute the test.

Definition at line 102 of file SurfaceInstaller.h.

◆ scan() [1/2]

void SurfaceInstaller::scan ( )

Scan through tree of detector elements.

Scan through tree of volume placements.

Definition at line 126 of file SurfaceInstaller.cpp.

◆ scan() [2/2]

void SurfaceInstaller::scan ( DetElement  de)
protected

Scan through tree of detector elements.

Scan through tree of volume placements.

Definition at line 118 of file SurfaceInstaller.cpp.

◆ stopScanning()

void dd4hep::SurfaceInstaller::stopScanning ( )
inline

Set flag to stop scanning volumes and detector elements.

Definition at line 86 of file SurfaceInstaller.h.

Member Data Documentation

◆ m_det

DetElement dd4hep::SurfaceInstaller::m_det
protected

Reference to the detector element of the subdetector.

Definition at line 66 of file SurfaceInstaller.h.

◆ m_detDesc

Detector& dd4hep::SurfaceInstaller::m_detDesc
protected

Reference to the Detector instance.

Definition at line 64 of file SurfaceInstaller.h.

◆ m_stopScanning

bool dd4hep::SurfaceInstaller::m_stopScanning
protected

Flag to inhibit useless further scans.

Definition at line 70 of file SurfaceInstaller.h.

◆ m_surfaces

Surfaces dd4hep::SurfaceInstaller::m_surfaces
protected

Map of surface instances keyed by the logical volume.

Definition at line 68 of file SurfaceInstaller.h.


The documentation for this class was generated from the following files: