ATLAS Offline Software
Public Member Functions | List of all members
Trk::ITrackingVolumeCreator Class Referenceabstract

#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. More...
 
virtual ~ITrackingVolumeCreator ()
 Virtual destructor. More...
 
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 More...
 
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 More...
 
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 More...
 
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 More...
 
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. More...
 

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  ,
,
 
)

Creates the InterfaceID and interfaceID() method.


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