ATLAS Offline Software
Loading...
Searching...
No Matches
Trk::ITrackingVolumeCreator Class Referenceabstract

Interface class ITrackingVolumeCreators It inherits from IAlgTool. More...

#include <ITrackingVolumeCreator.h>

Inheritance diagram for Trk::ITrackingVolumeCreator:
Collaboration diagram for Trk::ITrackingVolumeCreator:

Public Member Functions

 DeclareInterfaceID (ITrackingVolumeCreator, 1, 0)
 Creates the InterfaceID and interfaceID() method.
virtual ~ITrackingVolumeCreator ()
 Virtual destructor.
virtual TrackingVolumecreateTrackingVolume (const std::vector< Layer * > &layers, Material &matprop, VolumeBounds *volBounds=0, Amg::Transform3D *transform=0, const std::string &volumeName="UndefinedVolume", BinningType btype=arbitrary) const =0
 create a TrackingVolume* from a set of layers and (optional) parameters
virtual TrackingVolumecreateTrackingVolume (const std::vector< Layer * > &layers, Material &matprop, double loc1Min, double loc1Max, double loc2Min, double loc2Max, const std::string &volumeName="UndefinedVolume", BinningType btype=arbitrary) const =0
 create a TrackingVolume* from a set of layers and (optional) parameters
virtual TrackingVolumecreateGapTrackingVolume (Material &matprop, double loc1Min, double loc1Max, double loc2Min, double loc2Max, unsigned int materialLayers, bool cylinder=true, const std::string &volumeName="UndefinedVolume") const =0
 create a gap volume from dimensions and
virtual TrackingVolumecreateGapTrackingVolume (Material &matprop, double loc1Min, double loc1Max, double loc2Min, double loc2Max, const std::vector< double > &layerPositions, bool cylinder=true, const std::string &volumeName="UndefinedVolume", BinningType btype=arbitrary) const =0
 create a gap volume from dimensions and
virtual TrackingVolumecreateContainerTrackingVolume (const std::vector< TrackingVolume * > &volumes, const Material &matprop, const std::string &volumeName="UndefinedVolume", bool buildBoundaryLayers=false, bool replaceBoundaryFace=false) const =0
 Create a one level higher TrackingVolue.

Detailed Description

Interface class ITrackingVolumeCreators It inherits from IAlgTool.

Gives an interface to Helper Tool implemntations

Author
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch

Definition at line 40 of file ITrackingVolumeCreator.h.

Constructor & Destructor Documentation

◆ ~ITrackingVolumeCreator()

virtual Trk::ITrackingVolumeCreator::~ITrackingVolumeCreator ( )
inlinevirtual

Virtual destructor.

Definition at line 48 of file ITrackingVolumeCreator.h.

48{}

Member Function Documentation

◆ createContainerTrackingVolume()

virtual TrackingVolume * Trk::ITrackingVolumeCreator::createContainerTrackingVolume ( const std::vector< TrackingVolume * > & volumes,
const Material & matprop,
const std::string & volumeName = "UndefinedVolume",
bool buildBoundaryLayers = false,
bool replaceBoundaryFace = false ) const
pure virtual

Create a one level higher TrackingVolue.

Parameters
volumes: the volumes to be comnbined
matprop: dense material properties for this TrackingVolume
volumeName: volume name to be given

Implemented in Trk::CylinderVolumeCreator.

◆ createGapTrackingVolume() [1/2]

virtual TrackingVolume * Trk::ITrackingVolumeCreator::createGapTrackingVolume ( Material & matprop,
double loc1Min,
double loc1Max,
double loc2Min,
double loc2Max,
const std::vector< double > & layerPositions,
bool cylinder = true,
const std::string & volumeName = "UndefinedVolume",
BinningType btype = arbitrary ) const
pure virtual

create a gap volume from dimensions and

Parameters
matprop: dense material properties for this TrackingVolume
layerPositions: custom layer positions
materialLayers: number of material layers (aequidistant binning)
cylinder: type of layers
volumeName: volume name to be given

Implemented in Trk::CylinderVolumeCreator.

◆ createGapTrackingVolume() [2/2]

virtual TrackingVolume * Trk::ITrackingVolumeCreator::createGapTrackingVolume ( Material & matprop,
double loc1Min,
double loc1Max,
double loc2Min,
double loc2Max,
unsigned int materialLayers,
bool cylinder = true,
const std::string & volumeName = "UndefinedVolume" ) const
pure virtual

create a gap volume from dimensions and

Parameters
matprop: dense material properties for this TrackingVolume
loc1Min,loc1Max,loc2Min,loc2Max: local position in space, this TrackingVolume is restricted to Translation only
materialLayers: number of material layers (aequidistant binning)
cylinder: type of layers
volumeName: volume name to be given

Implemented in Trk::CylinderVolumeCreator.

◆ createTrackingVolume() [1/2]

virtual TrackingVolume * Trk::ITrackingVolumeCreator::createTrackingVolume ( const std::vector< Layer * > & layers,
Material & matprop,
double loc1Min,
double loc1Max,
double loc2Min,
double loc2Max,
const std::string & volumeName = "UndefinedVolume",
BinningType btype = arbitrary ) const
pure virtual

create a TrackingVolume* from a set of layers and (optional) parameters

Parameters
layers: vector of static layers confined by the TrackingVolume if no bounds or HepTransform is given, they define the size together with the volume enevlope parameters
matprop: dense material properties for this TrackingVolume
loc1Min,loc1Max,loc2Min,loc2Max: local position in space, this TrackingVolume is restricted to Translation only
volumeName: volume name to be given

Implemented in Trk::CylinderVolumeCreator.

◆ createTrackingVolume() [2/2]

virtual TrackingVolume * Trk::ITrackingVolumeCreator::createTrackingVolume ( const std::vector< Layer * > & layers,
Material & matprop,
VolumeBounds * volBounds = 0,
Amg::Transform3D * transform = 0,
const std::string & volumeName = "UndefinedVolume",
BinningType btype = arbitrary ) const
pure virtual

create a TrackingVolume* from a set of layers and (optional) parameters

Parameters
layers: vector of static layers confined by the TrackingVolume if no bounds or HepTransform is given, they define the size together with the volume enevlope parameters
matprop: dense material properties for this TrackingVolume
volBounds: (optional) bounds of this TrackingVolume - ownership given
transform: (optional) placement of this TrackingVolume - ownership given
entryLayers: switch to build entry layers
volumeName: volume name to be given

Implemented in Trk::CylinderVolumeCreator.

◆ DeclareInterfaceID()

Trk::ITrackingVolumeCreator::DeclareInterfaceID ( ITrackingVolumeCreator ,
1 ,
0  )

Creates the InterfaceID and interfaceID() method.


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