The geometry of one entire detector, as served by art. More...
#include <AuxDetGeometry.h>
Public Member Functions | |
AuxDetGeometry (fhicl::ParameterSet const &pset, art::ActivityRegistry ®) | |
void | preBeginRun (art::Run const &run) |
Updates the geometry if needed at the beginning of each new run. More... | |
AuxDetGeometryCore const & | GetProvider () const |
Returns a constant reference to the service provider. More... | |
AuxDetGeometryCore const * | GetProviderPtr () const |
Returns a constant pointer to the service provider. More... | |
Private Member Functions | |
void | LoadNewGeometry (std::string gdmlfile, std::string rootfile) |
Expands the provided paths and loads the geometry description(s) More... | |
void | InitializeChannelMap () |
AuxDetGeometryCore & | GetProvider () |
Returns a reference to the service provider. More... | |
AuxDetGeometryCore * | GetProviderPtr () |
Returns a pointer to the service provider. More... | |
Private Attributes | |
AuxDetGeometryCore | fProvider |
the actual service provider More... | |
std::string | fRelPath |
bool | fForceUseFCLOnly |
fhicl::ParameterSet | fSortingParameters |
Parameter set to define the channel map sorting. More... | |
The geometry of one entire detector, as served by art.
This class extends the interface of the geometry service provider, GeometryCore, to the one of an art service. It handles the correct initialization of the provider using information
It relies on geo::ExptGeoHelperInterface service to obtain the channel mapping algorithm proper for the selected geometry.
The geometry initialization happens immediately on construction. Optionally, the geometry is automatically reinitialized on each run based on the information contained in the art::Run object.
In addition to the parameters documented in geo::GeometryCore, the following parameters are supported:
RelativePath
path and the base name specified in GDML
parameter; this path is searched for in the directories configured in the FW_SEARCH_PATH
environment variable;GDML
parameter, whose value is used instead; this path is assembled in the same way as the one for GDML
parameter, except that no alternative (wireless) geometry is used even if DisableWiresInG4
is specified (see below); this file is used to load the geometry used in the internal simulation and reconstruction, basically everywhere except for the Geant4 simulationForceUseFCLOnly
is set to true
, this mechanism is disabled and the geometry is just loaded at the beginning of the job from the information in the job configuration, once and for all.GDML
parameter is also served to ROOT for the internal geometry representation. Definition at line 96 of file AuxDetGeometry.h.
gar::geo::AuxDetGeometry::AuxDetGeometry | ( | fhicl::ParameterSet const & | pset, |
art::ActivityRegistry & | reg | ||
) |
Definition at line 30 of file AuxDetGeometry_service.cc.
|
inline |
Returns a constant reference to the service provider.
Definition at line 106 of file AuxDetGeometry.h.
|
inlineprivate |
Returns a reference to the service provider.
Definition at line 119 of file AuxDetGeometry.h.
|
inline |
Returns a constant pointer to the service provider.
Definition at line 109 of file AuxDetGeometry.h.
|
inlineprivate |
Returns a pointer to the service provider.
Definition at line 122 of file AuxDetGeometry.h.
|
private |
Definition at line 85 of file AuxDetGeometry_service.cc.
|
private |
Expands the provided paths and loads the geometry description(s)
Definition at line 98 of file AuxDetGeometry_service.cc.
void gar::geo::AuxDetGeometry::preBeginRun | ( | art::Run const & | run | ) |
Updates the geometry if needed at the beginning of each new run.
Definition at line 58 of file AuxDetGeometry_service.cc.
|
private |
Force Geometry to only use the geometry files specified in the fcl file
Definition at line 129 of file AuxDetGeometry.h.
|
private |
the actual service provider
Definition at line 125 of file AuxDetGeometry.h.
|
private |
Relative path added to FW_SEARCH_PATH to search for geometry file
Definition at line 127 of file AuxDetGeometry.h.
|
private |
Parameter set to define the channel map sorting.
Definition at line 131 of file AuxDetGeometry.h.