![]() |
ATLAS Offline Software
|
The concrete implementation for cylindrical TrackingVolume objects of the ITrackingVolumeCreator interface. More...
#include <CylinderVolumeCreator.h>
Public Member Functions | |
| CylinderVolumeCreator (const std::string &, const std::string &, const IInterface *) | |
| Constructor. | |
| ~CylinderVolumeCreator () | |
| Destructor. | |
| virtual StatusCode | initialize () override |
| AlgTool initialize 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 override final |
| ; | |
| 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 override final |
| ; | |
| virtual TrackingVolume * | createGapTrackingVolume (Material &matprop, double rMin, double rMax, double zMin, double zMax, unsigned int materialLayers, bool cylinder=true, const std::string &volumeName="UndefinedVolume") const override final |
| virtual TrackingVolume * | createGapTrackingVolume (Material &matprop, double rMin, double rMax, double zMin, double zMax, const std::vector< double > &layerPositions, bool cylinder=true, const std::string &volumeName="UndefinedVolume", BinningType btype=arbitrary) const override final |
| virtual TrackingVolume * | createContainerTrackingVolume (const std::vector< TrackingVolume * > &volumes, const Material &matprop, const std::string &volumeName="UndefinedVolume", bool buildBoundaryLayers=false, bool replaceBoundaryFace=false) const override final |
| ; | |
| ServiceHandle< StoreGateSvc > & | evtStore () |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. | |
| const ServiceHandle< StoreGateSvc > & | detStore () const |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. | |
| virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. | |
| virtual StatusCode | sysStart () override |
| Handle START transition. | |
| virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. | |
| virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T, V, H > &t) |
| void | updateVHKA (Gaudi::Details::PropertyBase &) |
| MsgStream & | msg () const |
| bool | msgLvl (const MSG::Level lvl) const |
| DeclareInterfaceID (ITrackingVolumeCreator, 1, 0) | |
| Creates the InterfaceID and interfaceID() method. | |
Protected Member Functions | |
| void | renounceArray (SG::VarHandleKeyArray &handlesArray) |
| remove all handles from I/O resolution | |
| std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > | renounce (T &h) |
| void | extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps) |
| Add StoreName to extra input/output deps as needed. | |
Private Types | |
| typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
Private Member Functions | |
| StatusCode | estimateAndCheckDimension (const std::vector< Layer * > &layers, Trk::CylinderVolumeBounds *&cylBounds, Amg::Transform3D *&translation, std::vector< CylinderLayer * > &cylLayers, std::vector< DiscLayer * > &discLayers, double &rMinClean, double &rMaxClean, double &zMinClean, double &zMaxClean, BinningType bType=arbitrary) const |
| Private method - it estimates the CylinderBounds and Translation of layers, if given, these are checked against the layer positions/dimensions. | |
| StatusCode | interGlueTrackingVolume (TrackingVolume &tVolume, bool rBinned, bool buildBoundaryLayers, bool replaceBoundaryFace=false) const |
| Private method - interglue all volumes contained by a TrackingVolume and set the outside glue volumes in the descriptor. | |
| void | addFaceVolumes (TrackingVolume &tvol, Trk::BoundarySurfaceFace bsf, std::vector< Trk::TrackingVolume * > &vols) const |
| Private method - helper method not to duplicate code. | |
| void | glueTrackingVolumes (TrackingVolume &volumeOne, BoundarySurfaceFace faceOne, TrackingVolume &volumeTwo, BoundarySurfaceFace faceTwo, bool buildBoundaryLayers, bool replaceBoundaryFace=false) const |
| Private method - glue volume to the other – use trackingVolume helper. | |
| CylinderLayer * | createCylinderLayer (double z, double r, double halflength, double thickness, int binsPhi, int binsZ) const |
| Private method - helper method to save some code. | |
| DiscLayer * | createDiscLayer (double z, double rMin, double rMax, double thickness, int binsPhi, int binsR) const |
| Private method - helper method to save some code. | |
| Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> | |
Private Attributes | |
| ToolHandle< ILayerArrayCreator > | m_layerArrayCreator |
| < A Tool for coherent LayerArray creation | |
| ToolHandle< ITrackingVolumeArrayCreator > | m_trackingVolumeArrayCreator |
| TrackingVolume helper. | |
| ToolHandle< ITrackingVolumeHelper > | m_trackingVolumeHelper |
| double | m_passiveLayerThickness |
| thickness of passive layers | |
| int | m_passiveLayerPhiBins |
| bins in phi for the passive layer | |
| int | m_passiveLayerRzBins |
| bins in r/z for the passive layer | |
| StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) | |
| StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) | |
| std::vector< SG::VarHandleKeyArray * > | m_vhka |
| bool | m_varHandleArraysDeclared |
The concrete implementation for cylindrical TrackingVolume objects of the ITrackingVolumeCreator interface.
Definition at line 47 of file CylinderVolumeCreator.h.
|
privateinherited |
Definition at line 388 of file AthCommonDataStore.h.
| Trk::CylinderVolumeCreator::CylinderVolumeCreator | ( | const std::string & | t, |
| const std::string & | n, | ||
| const IInterface * | p ) |
Constructor.
Definition at line 32 of file CylinderVolumeCreator.cxx.
|
default |
Destructor.
|
private |
Private method - helper method not to duplicate code.
Definition at line 710 of file CylinderVolumeCreator.cxx.
|
finaloverridevirtual |
;
;
Implements Trk::ITrackingVolumeCreator.
Definition at line 343 of file CylinderVolumeCreator.cxx.
|
private |
Private method - helper method to save some code.
Definition at line 808 of file CylinderVolumeCreator.cxx.
|
private |
Private method - helper method to save some code.
Definition at line 856 of file CylinderVolumeCreator.cxx.
|
finaloverridevirtual |
ITrackingVolumeCreator::createGaoTrackingVolume(Material&,,std::vector<double>&,int,bool,const std::string&) const;
Implements Trk::ITrackingVolumeCreator.
Definition at line 286 of file CylinderVolumeCreator.cxx.
|
finaloverridevirtual |
ITrackingVolumeCreator::createGapTrackingVolume(Material&,,double,double,double,double,int,bool,const std::string&) const;
Implements Trk::ITrackingVolumeCreator.
Definition at line 243 of file CylinderVolumeCreator.cxx.
|
finaloverridevirtual |
;
;
Implements Trk::ITrackingVolumeCreator.
Definition at line 195 of file CylinderVolumeCreator.cxx.
|
finaloverridevirtual |
;
;
Implements Trk::ITrackingVolumeCreator.
Definition at line 93 of file CylinderVolumeCreator.cxx.
|
inlineprivateinherited |
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
|
inherited |
Creates the InterfaceID and interfaceID() method.
|
inlineinherited |
Definition at line 145 of file AthCommonDataStore.h.
|
inlineinherited |
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 95 of file AthCommonDataStore.h.
|
private |
Private method - it estimates the CylinderBounds and Translation of layers, if given, these are checked against the layer positions/dimensions.
private helper method to estimate and check the dimensions of a tracking volume
Definition at line 468 of file CylinderVolumeCreator.cxx.
|
inlineinherited |
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition at line 85 of file AthCommonDataStore.h.
|
protectedinherited |
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
|
private |
Private method - glue volume to the other – use trackingVolume helper.
private helper method to fill the glue volumes (or the volume itself in)
Definition at line 738 of file CylinderVolumeCreator.cxx.
|
overridevirtual |
AlgTool initialize method.
Definition at line 58 of file CylinderVolumeCreator.cxx.
|
overridevirtualinherited |
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
private |
Private method - interglue all volumes contained by a TrackingVolume and set the outside glue volumes in the descriptor.
Definition at line 630 of file CylinderVolumeCreator.cxx.
|
inlineinherited |
Definition at line 24 of file AthCommonMsg.h.
|
inlineinherited |
Definition at line 30 of file AthCommonMsg.h.
|
overridevirtualinherited |
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
|
inlineprotectedinherited |
Definition at line 380 of file AthCommonDataStore.h.
|
inlineprotectedinherited |
remove all handles from I/O resolution
Definition at line 364 of file AthCommonDataStore.h.
|
overridevirtualinherited |
Perform system initialization for an algorithm.
We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.
Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.
|
overridevirtualinherited |
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
|
inlineinherited |
Definition at line 308 of file AthCommonDataStore.h.
|
privateinherited |
Pointer to StoreGate (detector store by default)
Definition at line 393 of file AthCommonDataStore.h.
|
privateinherited |
Pointer to StoreGate (event store by default)
Definition at line 390 of file AthCommonDataStore.h.
|
private |
< A Tool for coherent LayerArray creation
Helper Tool to create TrackingVolume Arrays
Definition at line 186 of file CylinderVolumeCreator.h.
|
private |
bins in phi for the passive layer
Definition at line 193 of file CylinderVolumeCreator.h.
|
private |
bins in r/z for the passive layer
Definition at line 194 of file CylinderVolumeCreator.h.
|
private |
thickness of passive layers
Definition at line 192 of file CylinderVolumeCreator.h.
|
private |
TrackingVolume helper.
Definition at line 188 of file CylinderVolumeCreator.h.
|
private |
Definition at line 190 of file CylinderVolumeCreator.h.
|
privateinherited |
Definition at line 399 of file AthCommonDataStore.h.
|
privateinherited |
Definition at line 398 of file AthCommonDataStore.h.