|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKDETDESCRINTERFACES_ITRACKINGVOLUMECREATOR_H
10 #define TRKDETDESCRINTERFACES_ITRACKINGVOLUMECREATOR_H
13 #include "GaudiKernel/IAlgTool.h"
29 class MagneticFieldProperties;
65 const std::vector<Layer*>&
layers,
69 const std::string& volumeName =
"UndefinedVolume",
84 const std::vector<Layer*>&
layers,
90 const std::string& volumeName =
"UndefinedVolume",
110 unsigned int materialLayers,
111 bool cylinder =
true,
112 const std::string& volumeName =
"UndefinedVolume")
const = 0;
130 const std::vector<double>& layerPositions,
131 bool cylinder =
true,
132 const std::string& volumeName =
"UndefinedVolume",
143 const std::vector<TrackingVolume*>& volumes,
145 const std::string& volumeName =
"UndefinedVolume",
146 bool buildBoundaryLayers =
false,
147 bool replaceBoundaryFace =
false)
const = 0;
152 #endif // TRKDETDESCRINTERFACES_ITRACKINGVOLUMECREATOR_H
virtual TrackingVolume * 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 =0
create a gap volume from dimensions and
virtual ~ITrackingVolumeCreator()
Virtual destructor.
DeclareInterfaceID(ITrackingVolumeCreator, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual TrackingVolume * createTrackingVolume(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 TrackingVolume * createContainerTrackingVolume(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.
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
Ensure that the ATLAS eigen extensions are properly loaded.
virtual TrackingVolume * 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 =0
create a TrackingVolume* from a set of layers and (optional) parameters
virtual TrackingVolume * createGapTrackingVolume(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
Define macros for attributes used to control the static checker.