|
ACTS
Experiment-independent tracking
|
Factory class to convert GeoModel objects into Acts volumes and surfaces. More...
Classes | |
| struct | Cache |
| struct | Config |
| struct | ConvertedGeoVol |
| Tuple describing the shared ptr to a Volume which will be turned into a TrackingVolume, a Gen-2 volume and the pointer to the full physical volume. More... | |
| struct | Options |
Public Types | |
| using | ConvertedVolList_t = std::vector<ConvertedGeoVol> |
| using | FpvConstLink = GeoModelTree::FpvConstLink |
| abrivation of the smart pointer to a full physical volume | |
Public Member Functions | |
| GeoModelDetectorObjectFactory (const Config &cfg, std::unique_ptr< const Acts::Logger > mlogger=Acts::getDefaultLogger("GeoModelDetectorObjectFactory", Acts::Logging::WARNING)) | |
| void | construct (Cache &cache, const Acts::GeometryContext &gctx, const GeoModelTree &geoModelTree, const Options &options) |
| Run the translation from the GeoModelTree to the (sensitive) surfaces. | |
| void | convertFpv (const std::string &name, const FpvConstLink &fpv, Cache &cache, const Acts::GeometryContext &gctx) |
| Convert a full physical volume (and the appropriate children) into sensitive surfaces. | |
Factory class to convert GeoModel objects into Acts volumes and surfaces.
The surface conversion process constructs surfaces from GeoTrd, GeoBox, GeoTube, GeoSimplePolygonBrep volume shapes with transforms being in the center of each volume. Also, there's limited capability to transcript boolean volume (Subtraction/Union/Shift). The set of volumes to convert can be constrained using nameList of the Configuration object. Additionally, the factory can also convert the shapes associated with FullPhysicalVolumes convert into bounding volumes. All sufraces constructed from such a volume are then also put into the volume. For compatibility reasons, the conversion constructs Volumes -> processed into TrackingVolume by the Gen1/ Gen 3 TrackingGeometry builder and also detector volumes to convert them into Gen2 tracking geometry volumes
| using ActsPlugins::GeoModelDetectorObjectFactory::ConvertedVolList_t = std::vector<ConvertedGeoVol> |
abrivation of the smart pointer to a full physical volume
|
explicit |
| void ActsPlugins::GeoModelDetectorObjectFactory::construct | ( | Cache & | cache, |
| const Acts::GeometryContext & | gctx, | ||
| const GeoModelTree & | geoModelTree, | ||
| const Options & | options ) |
Run the translation from the GeoModelTree to the (sensitive) surfaces.
| cache | Cache object which will contain the surfaces & box volume bounds |
| gctx | Instance to an geometry context in order to build the envelope volumes |
| geoModelTree | Configured instance of the GeoModelTree to run the construction on |
| options | Options configuring which volumes / materials shall be converted to surfaces |
| void ActsPlugins::GeoModelDetectorObjectFactory::convertFpv | ( | const std::string & | name, |
| const FpvConstLink & | fpv, | ||
| Cache & | cache, | ||
| const Acts::GeometryContext & | gctx ) |
Convert a full physical volume (and the appropriate children) into sensitive surfaces.
| name | Published name of the full physical volume in the GeoModelTree |
| fpv | Pointer to the full physical volume to convert |
| cache | Output cache object in which the constructed surfaces are saved |
| gctx | Instance to an geometry context in order to build the envelope volumes |