![]() |
LArSoft
v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
|
Description of physical geometry of one set of auxiliary detectors. More...
#include "AuxDetGeometryCore.h"
Public Member Functions | |
AuxDetGeometryCore (fhicl::ParameterSet const &pset, std::unique_ptr< AuxDetGeoObjectSorter > sorter=nullptr, std::unique_ptr< AuxDetInitializer > initializer=nullptr) | |
Initialize geometry from a given configuration. More... | |
AuxDetGeometryCore (AuxDetGeometryCore const &)=delete | |
AuxDetGeometryCore (AuxDetGeometryCore &&)=delete | |
AuxDetGeometryCore & | operator= (AuxDetGeometryCore const &)=delete |
AuxDetGeometryCore & | operator= (AuxDetGeometryCore &&)=delete |
std::string const & | GDMLFile () const |
Returns the full directory path to the GDML file source. More... | |
std::string const & | DetectorName () const |
Returns a string with the name of the detector, as configured. More... | |
std::size_t | NAuxDets () const |
Returns the number of auxiliary detectors. More... | |
std::size_t | NAuxDetSensitive (size_t ad) const |
Returns the number of sensitive components of auxiliary detector. More... | |
std::vector< AuxDetGeo > const & | AuxDetGeoVec () const |
Returns the full list of pointer to the auxiliary detectors. More... | |
AuxDetGeo const & | AuxDet (std::size_t const ad=0) const |
Returns the specified auxiliary detector. More... | |
Point_t | AuxDetChannelToPosition (std::string const &auxDetName, uint32_t channel) const |
AuxDetSensitiveGeo const & | ChannelToAuxDetSensitive (std::string const &auxDetName, uint32_t channel) const |
std::size_t | FindAuxDetAtPosition (Point_t const &point, double tolerance=0) const |
Returns the index of the auxiliary detector at specified location. More... | |
AuxDetGeo const & | PositionToAuxDet (Point_t const &point, double tolerance=0.) const |
Returns the auxiliary detector at specified location. More... | |
void | FindAuxDetSensitiveAtPosition (Point_t const &point, std::size_t &adg, std::size_t &sv, double tolerance=0) const |
Fills the indices of the sensitive auxiliary detector at location. More... | |
Geometry initialization | |
bool | hasAuxDetChannelMap () const |
Returns whether we have a channel map. More... | |
Private Member Functions | |
void | LoadGeometryFile () |
void | ApplyChannelMap () |
Private Attributes | |
std::vector< AuxDetGeo > | fAuxDets |
std::unique_ptr< AuxDetGeoObjectSorter > | fSorter |
std::unique_ptr< AuxDetInitializer > | fInitializer |
std::string | fGDMLfile |
path to geometry file used for Geant4 simulation More... | |
std::string | fDetectorName |
fhicl::ParameterSet | fBuilderParameters |
Configuration of geometry builder. More... | |
std::unique_ptr< AuxDetReadoutGeom const > | fReadoutGeom |
Object containing the channel to wire mapping. More... | |
bool | fThrowIfAbsent |
Description of physical geometry of one set of auxiliary detectors.
The constructor of the AuxDetGeometryCore performs two steps:
FW_SEARCH_PATH
environment variable.Definition at line 69 of file AuxDetGeometryCore.h.
geo::AuxDetGeometryCore::AuxDetGeometryCore | ( | fhicl::ParameterSet const & | pset, |
std::unique_ptr< AuxDetGeoObjectSorter > | sorter = nullptr , |
||
std::unique_ptr< AuxDetInitializer > | initializer = nullptr |
||
) |
Initialize geometry from a given configuration.
pset | configuration parameters |
sorter | sorter used for sorting AuxDet elements |
initializer | initializer used to construct AuxDetReadoutGeom object |
Definition at line 39 of file AuxDetGeometryCore.cxx.
References fBuilderParameters, fDetectorName, fGDMLfile, fInitializer, fThrowIfAbsent, LoadGeometryFile(), geo::details::maybe_default_detector_name(), and lar::searchPathPlusRelative().
|
delete |
|
delete |
|
private |
Definition at line 58 of file AuxDetGeometryCore.cxx.
References fAuxDets, fInitializer, and fReadoutGeom.
Referenced by hasAuxDetChannelMap(), and LoadGeometryFile().
AuxDetGeo const & geo::AuxDetGeometryCore::AuxDet | ( | std::size_t const | ad = 0 | ) | const |
Returns the specified auxiliary detector.
ad | the auxiliary detector index |
cet::exception | (category "AuxDetGeometryCore") if ad is out of range |
what happens if it does not exist?
remove the default parameter?
Definition at line 109 of file AuxDetGeometryCore.cxx.
References fAuxDets, and NAuxDets().
Referenced by AuxDetGeoVec(), ChannelToAuxDetSensitive(), geo::WireReadoutDumper::dumpAuxiliaryDetectors(), and PositionToAuxDet().
Point_t geo::AuxDetGeometryCore::AuxDetChannelToPosition | ( | std::string const & | auxDetName, |
uint32_t | channel | ||
) | const |
Definition at line 151 of file AuxDetGeometryCore.cxx.
References fAuxDets, and fReadoutGeom.
Referenced by AuxDetGeoVec().
|
inline |
Returns the full list of pointer to the auxiliary detectors.
Definition at line 131 of file AuxDetGeometryCore.h.
References AuxDet(), AuxDetChannelToPosition(), ChannelToAuxDetSensitive(), fAuxDets, FindAuxDetAtPosition(), FindAuxDetSensitiveAtPosition(), and PositionToAuxDet().
AuxDetSensitiveGeo const & geo::AuxDetGeometryCore::ChannelToAuxDetSensitive | ( | std::string const & | auxDetName, |
uint32_t | channel | ||
) | const |
Definition at line 158 of file AuxDetGeometryCore.cxx.
References AuxDet(), fReadoutGeom, and geo::AuxDetGeo::SensitiveVolume().
Referenced by AuxDetGeoVec().
|
inline |
Returns a string with the name of the detector, as configured.
Definition at line 98 of file AuxDetGeometryCore.h.
References fDetectorName.
std::size_t geo::AuxDetGeometryCore::FindAuxDetAtPosition | ( | Point_t const & | point, |
double | tolerance = 0 |
||
) | const |
Returns the index of the auxiliary detector at specified location.
point | location to be tested |
tolerance | tolerance (cm) for matches. Default 0 |
std::numeric_limits<unsigned int>::max()
if no detector is thereDefinition at line 128 of file AuxDetGeometryCore.cxx.
References fAuxDets, fReadoutGeom, and fThrowIfAbsent.
Referenced by AuxDetGeoVec(), larg4::AuxDetReadoutGeometry::FindAndMakeAuxDet(), FindAuxDetSensitiveAtPosition(), and PositionToAuxDet().
void geo::AuxDetGeometryCore::FindAuxDetSensitiveAtPosition | ( | Point_t const & | point, |
std::size_t & | adg, | ||
std::size_t & | sv, | ||
double | tolerance = 0 |
||
) | const |
Fills the indices of the sensitive auxiliary detector at location.
point | location to be tested |
adg | _(output)_ auxiliary detector index |
sv | _(output)_ sensitive volume index |
tolerance | tolerance (cm) for matches. Default 0. |
Definition at line 141 of file AuxDetGeometryCore.cxx.
References fAuxDets, FindAuxDetAtPosition(), fReadoutGeom, and fThrowIfAbsent.
Referenced by AuxDetGeoVec(), larg4::AuxDetReadoutGeometry::FindAndMakeAuxDetSensitive(), and sim::GenericCRTUtility::GetAuxDetSimChannelByNumber().
|
inline |
Returns the full directory path to the GDML file source.
This is the full path of the source of the detector geometry handed to the detector simulation (GEANT).
Definition at line 95 of file AuxDetGeometryCore.h.
References fGDMLfile.
|
inline |
Returns whether we have a channel map.
Definition at line 186 of file AuxDetGeometryCore.h.
References ApplyChannelMap(), fReadoutGeom, and LoadGeometryFile().
|
private |
Definition at line 65 of file AuxDetGeometryCore.cxx.
References ApplyChannelMap(), geo::GeometryBuilder::extractAuxiliaryDetectors(), fAuxDets, fBuilderParameters, fGDMLfile, and fSorter.
Referenced by AuxDetGeometryCore(), and hasAuxDetChannelMap().
|
inline |
Returns the number of auxiliary detectors.
This method returns the total number of scintillator paddles (Auxiliary Detectors aka AuxDet) outside of the cryostat
Definition at line 116 of file AuxDetGeometryCore.h.
References fAuxDets, and NAuxDetSensitive().
Referenced by AuxDet(), geo::WireReadoutDumper::dumpAuxiliaryDetectors(), geo::WireReadoutDumper::dumpDetectorInfo(), and NAuxDetSensitive().
std::size_t geo::AuxDetGeometryCore::NAuxDetSensitive | ( | size_t | ad | ) | const |
Returns the number of sensitive components of auxiliary detector.
ad | ID of the auxiliary detector |
cet::exception | (category "AuxDetGeometryCore") if ad is out of range |
Definition at line 118 of file AuxDetGeometryCore.cxx.
References fAuxDets, and NAuxDets().
Referenced by NAuxDets().
|
delete |
|
delete |
AuxDetGeo const & geo::AuxDetGeometryCore::PositionToAuxDet | ( | Point_t const & | point, |
double | tolerance = 0. |
||
) | const |
Returns the auxiliary detector at specified location.
point | location to be tested |
tolerance | tolerance (cm) for matches. Default 0. |
Definition at line 134 of file AuxDetGeometryCore.cxx.
References AuxDet(), and FindAuxDetAtPosition().
Referenced by AuxDetGeoVec().
|
private |
Definition at line 194 of file AuxDetGeometryCore.h.
Referenced by ApplyChannelMap(), AuxDet(), AuxDetChannelToPosition(), AuxDetGeoVec(), FindAuxDetAtPosition(), FindAuxDetSensitiveAtPosition(), LoadGeometryFile(), NAuxDets(), and NAuxDetSensitive().
|
private |
Configuration of geometry builder.
Definition at line 200 of file AuxDetGeometryCore.h.
Referenced by AuxDetGeometryCore(), and LoadGeometryFile().
|
private |
Definition at line 199 of file AuxDetGeometryCore.h.
Referenced by AuxDetGeometryCore(), and DetectorName().
|
private |
path to geometry file used for Geant4 simulation
Definition at line 198 of file AuxDetGeometryCore.h.
Referenced by AuxDetGeometryCore(), GDMLFile(), and LoadGeometryFile().
|
private |
Definition at line 197 of file AuxDetGeometryCore.h.
Referenced by ApplyChannelMap(), and AuxDetGeometryCore().
|
private |
Object containing the channel to wire mapping.
Definition at line 202 of file AuxDetGeometryCore.h.
Referenced by ApplyChannelMap(), AuxDetChannelToPosition(), ChannelToAuxDetSensitive(), FindAuxDetAtPosition(), FindAuxDetSensitiveAtPosition(), and hasAuxDetChannelMap().
|
private |
Definition at line 196 of file AuxDetGeometryCore.h.
Referenced by LoadGeometryFile().
|
private |
Definition at line 203 of file AuxDetGeometryCore.h.
Referenced by AuxDetGeometryCore(), FindAuxDetAtPosition(), and FindAuxDetSensitiveAtPosition().