Description of geometry of one entire detector. More...
#include <GeometryCore.h>
Classes | |
struct | Segment |
Simple class with two points (a pair with aliases). More... | |
Public Types | |
using | instead = geo::Length_t |
using | Segment_t = Segment< DefaultPoint_t > |
using | CryostatList_t = GeometryData_t::CryostatList_t |
Type of list of cryostats. More... | |
using | AuxDetList_t = GeometryData_t::AuxDetList_t |
Type of list of auxiliary detectors. More... | |
using | cryostat_id_iterator = geo::cryostat_id_iterator |
Forward-iterator browsing all cryostat IDs in the detector. More... | |
using | cryostat_iterator = geo::cryostat_iterator |
Forward-iterator browsing all cryostats in the detector. More... | |
using | TPC_id_iterator = geo::TPC_id_iterator |
Forward-iterator browsing all TPC IDs in the detector. More... | |
using | TPC_iterator = geo::TPC_iterator |
Forward-iterator browsing all TPCs in the detector. More... | |
using | plane_id_iterator = geo::plane_id_iterator |
Forward-iterator browsing all plane IDs in the detector. More... | |
using | plane_iterator = geo::plane_iterator |
Forward-iterator browsing all planes in the detector. More... | |
using | wire_id_iterator = geo::wire_id_iterator |
Forward-iterator browsing all wire IDs in the detector. More... | |
using | wire_iterator = geo::wire_iterator |
Forward-iterator browsing all wires in the detector. More... | |
Public Member Functions | |
GeometryCore (fhicl::ParameterSet const &pset) | |
Initialize geometry from a given configuration. More... | |
~GeometryCore () | |
Destructor. More... | |
GeometryCore (GeometryCore const &)=delete | |
GeometryCore (GeometryCore &&)=delete | |
GeometryCore & | operator= (GeometryCore const &)=delete |
GeometryCore & | operator= (GeometryCore &&)=delete |
double | DefaultWiggle () const |
Returns the tolerance used in looking for positions. More... | |
std::string | ROOTFile () const |
Returns the full directory path to the geometry file source. More... | |
std::string | GDMLFile () const |
Returns the full directory path to the GDML file source. More... | |
std::vector< TGeoNode const * > | FindAllVolumes (std::set< std::string > const &vol_names) const |
Returns all the nodes with volumes with any of the specified names. More... | |
std::vector< std::vector< TGeoNode const * > > | FindAllVolumePaths (std::set< std::string > const &vol_names) const |
Returns paths of all nodes with volumes with the specified names. More... | |
TGeoMaterial const * | Material (geo::Point_t const &point) const |
Returns the material at the specified position. More... | |
template<typename Stream > | |
void | Print (Stream &&out, std::string indent=" ") const |
Prints geometry information with maximum verbosity. More... | |
std::string | Info (std::string indent=" ") const |
Returns a string with complete geometry information. More... | |
template<typename GeoID > | |
GeoID | GetBeginID () const |
Returns the ID of the first element of the detector. More... | |
template<typename GeoID > | |
GeoID | GetNextID (GeoID const &id) const |
Returns the ID next to the specified one. More... | |
template<typename GeoID > | |
GeoID | GetEndID () const |
Returns the (possibly invalid) ID after the last subelement of the detector. More... | |
template<typename GeoID , typename ContextID > | |
GeoID | GetBeginID (ContextID const &id) const |
Returns the ID of the first subelement of the specified element. More... | |
template<typename GeoID , typename ContextID > | |
GeoID | GetEndID (ContextID const &id) const |
Returns the (possibly invalid) ID after the last subelement of the specified element. More... | |
geo::CryostatGeo const * | PositionToCryostatPtr (geo::Point_t const &point) const |
Returns the cryostat at specified location. More... | |
geo::CryostatID | PositionToCryostatID (geo::Point_t const &point) const |
Returns the ID of the cryostat at specified location. More... | |
CryostatGeo const & | PositionToCryostat (double const worldLoc[3], geo::CryostatID &cid) const |
Returns the cryostat at specified location. More... | |
CryostatGeo const & | PositionToCryostat (double const worldLoc[3], unsigned int &cstat) const |
Returns the cryostat at specified location. More... | |
void | GetBeginID (geo::CryostatID &id) const |
Initializes the specified ID with the ID of the first cryostat. More... | |
void | GetEndID (geo::CryostatID &id) const |
Initializes the specified ID with the invalid ID after the last cryostat. More... | |
bool | IncrementID (geo::CryostatID &id) const |
cryostat_id_iterator | begin_cryostat_id () const |
Returns an iterator pointing to the first cryostat ID. More... | |
cryostat_id_iterator | end_cryostat_id () const |
Returns an iterator pointing after the last cryostat ID. More... | |
cryostat_iterator | begin_cryostat () const |
Returns an iterator pointing to the first cryostat. More... | |
cryostat_iterator | end_cryostat () const |
Returns an iterator pointing after the last cryostat. More... | |
IteratorBox< cryostat_id_iterator,&GeometryCore::begin_cryostat_id,&GeometryCore::end_cryostat_id > | IterateCryostatIDs () const |
Enables ranged-for loops on all cryostat IDs of the detector. More... | |
IteratorBox< cryostat_iterator,&GeometryCore::begin_cryostat,&GeometryCore::end_cryostat > | IterateCryostats () const |
Enables ranged-for loops on all cryostats of the detector. More... | |
void | CryostatBoundaries (double *boundaries, geo::CryostatID const &cid) const |
Returns the boundaries of the specified cryostat. More... | |
void | CryostatBoundaries (double *boundaries, unsigned int cstat=0) const |
Returns the boundaries of the specified cryostat. More... | |
bool | HasTPC (geo::TPCID const &tpcid) const |
Returns whether we have the specified TPC. More... | |
bool | HasElement (geo::TPCID const &tpcid) const |
Returns whether we have the specified TPC. More... | |
geo::TPCID | FindTPCAtPosition (double const worldLoc[3]) const |
Returns the ID of the TPC at specified location. More... | |
geo::TPCGeo const * | PositionToTPCptr (geo::Point_t const &point) const |
Returns the TPC at specified location. More... | |
TPCGeo const & | PositionToTPC (double const worldLoc[3], unsigned int &tpc, unsigned int &cstat) const |
Returns the TPC at specified location. More... | |
TPCGeo const & | PositionToTPC (double const worldLoc[3], TPCID &tpcid) const |
Returns the TPC at specified location. More... | |
geo::TPCID | PositionToTPCID (geo::Point_t const &point) const |
Returns the ID of the TPC at specified location. More... | |
void | GetBeginID (geo::TPCID &id) const |
Initializes the specified ID with the ID of the first TPC. More... | |
void | GetEndID (geo::TPCID &id) const |
Initializes the specified ID with the invalid ID after the last TPC. More... | |
bool | IncrementID (geo::TPCID &id) const |
geo::TPCID | GetBeginTPCID (geo::CryostatID const &id) const |
Returns the ID of the first TPC in the specified cryostat. More... | |
geo::TPCID | GetEndTPCID (geo::CryostatID const &id) const |
TPC_id_iterator | begin_TPC_id () const |
Returns an iterator pointing to the first TPC ID in the detector. More... | |
TPC_id_iterator | end_TPC_id () const |
Returns an iterator pointing after the last TPC ID in the detector. More... | |
TPC_id_iterator | begin_TPC_id (geo::CryostatID const &cid) const |
TPC_id_iterator | end_TPC_id (geo::CryostatID const &cid) const |
TPC_iterator | begin_TPC () const |
Returns an iterator pointing to the first TPC in the detector. More... | |
TPC_iterator | end_TPC () const |
Returns an iterator pointing after the last TPC in the detector. More... | |
TPC_iterator | begin_TPC (geo::CryostatID const &cid) const |
Returns an iterator pointing to the first TPC in the detector. More... | |
TPC_iterator | end_TPC (geo::CryostatID const &cid) const |
Returns an iterator pointing after the last TPC in the detector. More... | |
IteratorBox< TPC_id_iterator,&GeometryCore::begin_TPC_id,&GeometryCore::end_TPC_id > | IterateTPCIDs () const |
Enables ranged-for loops on all TPC IDs of the detector. More... | |
LocalIteratorBox< TPC_id_iterator, geo::CryostatID,&GeometryCore::begin_TPC_id,&GeometryCore::end_TPC_id > | IterateTPCIDs (geo::CryostatID const &cid) const |
Enables ranged-for loops on all TPC IDs of the specified cryostat. More... | |
void | IterateTPCIDs (geo::TPCID const &pid) const =delete |
IterateTPCIDs() is not supported on TPC IDs. More... | |
void | IterateTPCIDs (geo::PlaneID const &pid) const =delete |
IterateTPCIDs() is not supported on plane IDs. More... | |
void | IterateTPCIDs (geo::WireID const &pid) const =delete |
IterateTPCIDs() is not supported on wire IDs. More... | |
void | IterateTPCIDs (readout::TPCsetID const &) const =delete |
IterateTPCIDs() is not supported on readout IDs. More... | |
void | IterateTPCIDs (readout::ROPID const &) const =delete |
IterateTPCIDs() is not supported on readout IDs. More... | |
IteratorBox< TPC_iterator,&GeometryCore::begin_TPC,&GeometryCore::end_TPC > | IterateTPCs () const |
Enables ranged-for loops on all TPCs of the detector. More... | |
LocalIteratorBox< TPC_iterator, geo::CryostatID,&GeometryCore::begin_TPC,&GeometryCore::end_TPC > | IterateTPCs (geo::CryostatID const &cid) const |
Enables ranged-for loops on all TPCs of the specified cryostat. More... | |
void | IterateTPCs (geo::TPCID const &pid) const =delete |
IterateTPCs() is not supported on TPC IDs. More... | |
void | IterateTPCs (geo::PlaneID const &pid) const =delete |
IterateTPCs() is not supported on plane IDs. More... | |
void | IterateTPCs (geo::WireID const &pid) const =delete |
IterateTPCs() is not supported on wire IDs. More... | |
void | IterateTPCs (readout::TPCsetID const &) const =delete |
IterateTPCs() is not supported on readout IDs. More... | |
void | IterateTPCs (readout::ROPID const &) const =delete |
IterateTPCs() is not supported on readout IDs. More... | |
unsigned int | Nviews () const |
Returns the number of views (different wire orientations) More... | |
std::set< PlaneID > const & | PlaneIDs () const |
Returns a list of possible PlaneIDs in the detector. More... | |
void | GetBeginID (geo::PlaneID &id) const |
Initializes the specified ID with the ID of the first plane. More... | |
void | GetEndID (geo::PlaneID &id) const |
Initializes the specified ID with the invalid ID after the last plane. More... | |
bool | IncrementID (geo::PlaneID &id) const |
geo::PlaneID | GetBeginPlaneID (geo::CryostatID const &id) const |
Returns the ID of the first plane of the specified cryostat. More... | |
geo::PlaneID | GetEndPlaneID (geo::CryostatID const &id) const |
geo::PlaneID | GetBeginPlaneID (geo::TPCID const &id) const |
Returns the ID of the first plane of the specified TPC. More... | |
geo::PlaneID | GetEndPlaneID (geo::TPCID const &id) const |
plane_id_iterator | begin_plane_id () const |
Returns an iterator pointing to the first plane ID in the detector. More... | |
plane_id_iterator | end_plane_id () const |
Returns an iterator pointing after the last plane ID in the detector. More... | |
plane_id_iterator | begin_plane_id (geo::CryostatID const &ID) const |
plane_id_iterator | end_plane_id (geo::CryostatID const &ID) const |
plane_id_iterator | begin_plane_id (geo::TPCID const &ID) const |
plane_id_iterator | end_plane_id (geo::TPCID const &ID) const |
plane_iterator | begin_plane () const |
Returns an iterator pointing to the first plane in the detector. More... | |
plane_iterator | end_plane () const |
Returns an iterator pointing after the last plane in the detector. More... | |
plane_iterator | begin_plane (geo::CryostatID const &ID) const |
plane_iterator | end_plane (geo::CryostatID const &ID) const |
plane_iterator | begin_plane (geo::TPCID const &ID) const |
Returns an iterator pointing to the first plane in the specified TPC. More... | |
plane_iterator | end_plane (geo::TPCID const &ID) const |
Returns an iterator pointing after the last plane in the specified TPC. More... | |
IteratorBox< plane_id_iterator,&GeometryCore::begin_plane_id,&GeometryCore::end_plane_id > | IteratePlaneIDs () const |
Enables ranged-for loops on all plane IDs of the detector. More... | |
LocalIteratorBox< plane_id_iterator, geo::CryostatID,&GeometryCore::begin_plane_id,&GeometryCore::end_plane_id > | IteratePlaneIDs (geo::CryostatID const &cid) const |
Enables ranged-for loops on all plane IDs of the specified cryostat. More... | |
LocalIteratorBox< plane_id_iterator, geo::TPCID,&GeometryCore::begin_plane_id,&GeometryCore::end_plane_id > | IteratePlaneIDs (geo::TPCID const &tid) const |
Enables ranged-for loops on all plane IDs of the specified TPC. More... | |
void | IteratePlaneIDs (geo::PlaneID const &pid) const =delete |
IteratePlaneIDs() is not supported on plane IDs. More... | |
void | IteratePlaneIDs (geo::WireID const &pid) const =delete |
IteratePlaneIDs() is not supported on wire IDs. More... | |
void | IteratePlaneIDs (readout::TPCsetID const &) const =delete |
IteratePlaneIDs() is not supported on readout IDs. More... | |
void | IteratePlaneIDs (readout::ROPID const &) const =delete |
IteratePlaneIDs() is not supported on readout IDs. More... | |
IteratorBox< plane_iterator,&GeometryCore::begin_plane,&GeometryCore::end_plane > | IteratePlanes () const |
Enables ranged-for loops on all planes of the detector. More... | |
LocalIteratorBox< plane_iterator, geo::CryostatID,&GeometryCore::begin_plane,&GeometryCore::end_plane > | IteratePlanes (geo::CryostatID const &cid) const |
Enables ranged-for loops on all planes of the specified cryostat. More... | |
LocalIteratorBox< plane_iterator, geo::TPCID,&GeometryCore::begin_plane,&GeometryCore::end_plane > | IteratePlanes (geo::TPCID const &tid) const |
Enables ranged-for loops on all planes of the specified TPC. More... | |
void | IteratePlanes (geo::PlaneID const &pid) const =delete |
IteratePlanes() is not supported on plane IDs. More... | |
void | IteratePlanes (geo::WireID const &pid) const =delete |
IteratePlanes() is not supported on wire IDs. More... | |
void | IteratePlanes (readout::TPCsetID const &) const =delete |
IteratePlanes() is not supported on readout IDs. More... | |
void | IteratePlanes (readout::ROPID const &) const =delete |
IteratePlanes() is not supported on readout IDs. More... | |
View_t | View (geo::PlaneID const &pid) const |
Returns the view (wire orientation) on the channels of specified TPC plane. More... | |
SigType_t | SignalType (geo::PlaneID const &pid) const |
Returns the type of signal on the channels of specified TPC plane. More... | |
void | GetBeginID (geo::WireID &id) const |
Initializes the specified ID with the ID of the first wire. More... | |
void | GetEndID (geo::WireID &id) const |
Initializes the specified ID with the invalid ID after the last wire. More... | |
bool | IncrementID (geo::WireID &id) const |
geo::WireID | GetBeginWireID (geo::CryostatID const &id) const |
Returns the ID of the first wire in the specified cryostat. More... | |
geo::WireID | GetEndWireID (geo::CryostatID const &id) const |
geo::WireID | GetBeginWireID (geo::TPCID const &id) const |
Returns the ID of the first wire of the specified TPC. More... | |
geo::WireID | GetEndWireID (geo::TPCID const &id) const |
geo::WireID | GetBeginWireID (geo::PlaneID const &id) const |
Returns the ID of the first wire of the specified wire plane. More... | |
geo::WireID | GetEndWireID (geo::PlaneID const &id) const |
wire_id_iterator | begin_wire_id () const |
Returns an iterator pointing to the first wire ID in the detector. More... | |
wire_id_iterator | end_wire_id () const |
Returns an iterator pointing after the last wire ID in the detector. More... | |
wire_id_iterator | begin_wire_id (geo::CryostatID const &id) const |
Returns an iterator pointing to the first wire ID in specified cryostat. More... | |
wire_id_iterator | end_wire_id (geo::CryostatID const &id) const |
wire_id_iterator | begin_wire_id (geo::TPCID const &id) const |
Returns an iterator pointing to the first wire ID in specified TPC. More... | |
wire_id_iterator | end_wire_id (geo::TPCID const &id) const |
Returns an iterator pointing after the last wire ID in specified TPC. More... | |
wire_id_iterator | begin_wire_id (geo::PlaneID const &id) const |
Returns an iterator pointing to the first wire ID in specified plane. More... | |
wire_id_iterator | end_wire_id (geo::PlaneID const &id) const |
Returns an iterator pointing after the last wire ID in specified plane. More... | |
wire_iterator | begin_wire () const |
Returns an iterator pointing to the first wire in the detector. More... | |
wire_iterator | end_wire () const |
Returns an iterator pointing after the last wire in the detector. More... | |
wire_iterator | begin_wire (geo::CryostatID const &id) const |
Returns an iterator pointing to the first wire in specified cryostat. More... | |
wire_iterator | end_wire (geo::CryostatID const &id) const |
Returns an iterator pointing after the last wire in specified cryostat. More... | |
wire_iterator | begin_wire (geo::TPCID const &id) const |
Returns an iterator pointing to the first wire in specified TPC. More... | |
wire_iterator | end_wire (geo::TPCID const &id) const |
Returns an iterator pointing after the last wire in specified TPC. More... | |
wire_iterator | begin_wire (geo::PlaneID const &id) const |
Returns an iterator pointing to the first wire in specified plane. More... | |
wire_iterator | end_wire (geo::PlaneID const &id) const |
Returns an iterator pointing after the last wire in specified plane. More... | |
IteratorBox< wire_id_iterator,&GeometryCore::begin_wire_id,&GeometryCore::end_wire_id > | IterateWireIDs () const |
Enables ranged-for loops on all wire IDs of the detector. More... | |
LocalIteratorBox< wire_id_iterator, geo::CryostatID,&GeometryCore::begin_wire_id,&GeometryCore::end_wire_id > | IterateWireIDs (geo::CryostatID const &cid) const |
Enables ranged-for loops on all wire IDs of specified cryostat. More... | |
LocalIteratorBox< wire_id_iterator, geo::TPCID,&GeometryCore::begin_wire_id,&GeometryCore::end_wire_id > | IterateWireIDs (geo::TPCID const &tid) const |
Enables ranged-for loops on all wire IDs of specified TPC. More... | |
LocalIteratorBox< wire_id_iterator, geo::PlaneID,&GeometryCore::begin_wire_id,&GeometryCore::end_wire_id > | IterateWireIDs (geo::PlaneID const &pid) const |
Enables ranged-for loops on all wire IDs of specified wire plane. More... | |
void | IterateWireIDs (geo::WireID const &pid) const =delete |
IterateWireIDs() is not supported on wire IDs. More... | |
void | IterateWireIDs (readout::TPCsetID const &) const =delete |
IterateWireIDs() is not supported on readout IDs. More... | |
void | IterateWireIDs (readout::ROPID const &) const =delete |
IterateWireIDs() is not supported on readout IDs. More... | |
IteratorBox< wire_iterator,&GeometryCore::begin_wire,&GeometryCore::end_wire > | IterateWires () const |
Enables ranged-for loops on all wires of the detector. More... | |
LocalIteratorBox< wire_iterator, geo::CryostatID,&GeometryCore::begin_wire,&GeometryCore::end_wire > | IterateWires (geo::CryostatID const &cid) const |
Enables ranged-for loops on all wires of specified cryostat. More... | |
LocalIteratorBox< wire_iterator, geo::TPCID,&GeometryCore::begin_wire,&GeometryCore::end_wire > | IterateWires (geo::TPCID const &tid) const |
Enables ranged-for loops on all wires of specified TPC. More... | |
LocalIteratorBox< wire_iterator, geo::PlaneID,&GeometryCore::begin_wire,&GeometryCore::end_wire > | IterateWires (geo::PlaneID const &tid) const |
Enables ranged-for loops on all wires of specified wire plane. More... | |
void | IterateWires (geo::WireID const &pid) const =delete |
IterateWires() is not supported on wire IDs. More... | |
void | IterateWires (readout::TPCsetID const &) const =delete |
IterateWires() is not supported on readout IDs. More... | |
void | IterateWires (readout::ROPID const &) const =delete |
IterateWires() is not supported on readout IDs. More... | |
geo::Length_t | WirePitch (geo::View_t view) const |
Returns the distance between two wires in the specified view. More... | |
geo::WireID | NearestWireID (geo::Point_t const &point, geo::PlaneID const &planeid) const |
Returns the ID of wire closest to position in the specified TPC. More... | |
geo::WireID::WireID_t | NearestWire (geo::Point_t const &point, geo::PlaneID const &planeid) const |
Returns the index of wire closest to position in the specified TPC. More... | |
geo::Length_t | WireCoordinate (double YPos, double ZPos, geo::PlaneID const &planeid) const |
Returns the index of the nearest wire to the specified position. More... | |
geo::Length_t | WireCoordinate (double YPos, double ZPos, unsigned int PlaneNo, unsigned int TPCNo, unsigned int cstat) const |
Returns the index of the nearest wire to the specified position. More... | |
bool | IntersectLines (double A_start_x, double A_start_y, double A_end_x, double A_end_y, double B_start_x, double B_start_y, double B_end_x, double B_end_y, double &x, double &y) const |
Computes the intersection between two lines on a plane. More... | |
bool | IntersectSegments (double A_start_x, double A_start_y, double A_end_x, double A_end_y, double B_start_x, double B_start_y, double B_end_x, double B_end_y, double &x, double &y) const |
Computes the intersection between two segments on a plane. More... | |
bool | IntersectionPoint (geo::WireID const &wid1, geo::WireID const &wid2, double &y, double &z) const |
Returns the intersection point of two wires. More... | |
bool | IntersectionPoint (unsigned int wire1, unsigned int wire2, unsigned int plane1, unsigned int plane2, unsigned int cstat, unsigned int tpc, double &y, double &z) const |
Returns the intersection point of two wires. More... | |
geo::PlaneID | ThirdPlane (geo::PlaneID const &pid1, geo::PlaneID const &pid2) const |
Returns the plane that is not in the specified arguments. More... | |
double | ThirdPlaneSlope (geo::PlaneID const &pid1, double slope1, geo::PlaneID const &pid2, double slope2, geo::PlaneID const &output_plane) const |
Returns the slope on the third plane, given it in the other two. More... | |
double | ThirdPlaneSlope (geo::PlaneID const &pid1, double slope1, geo::PlaneID const &pid2, double slope2) const |
Returns the slope on the third plane, given it in the other two. More... | |
double | ThirdPlane_dTdW (geo::PlaneID const &pid1, double slope1, geo::PlaneID const &pid2, double slope2, geo::PlaneID const &output_plane) const |
Returns dT/dW on the third plane, given it in the other two. More... | |
double | ThirdPlane_dTdW (geo::PlaneID const &pid1, double slope1, geo::PlaneID const &pid2, double slope2) const |
Returns dT/dW on the third plane, given it in the other two. More... | |
std::string | OpDetGeoName (unsigned int c=0) const |
Returns gdml string which gives sensitive opdet name. More... | |
SigType_t | SignalType (raw::ChannelID_t const channel) const |
Returns the type of signal on the specified TPC channel. More... | |
View_t | View (raw::ChannelID_t const channel) const |
Returns the view (wire orientation) on the specified TPC channel. More... | |
std::vector< geo::WireID > | ChannelToWire (raw::ChannelID_t const channel) const |
Returns a list of wires connected to the specified TPC channel. More... | |
readout::ROPID | ChannelToROP (raw::ChannelID_t channel) const |
raw::ChannelID_t | NearestChannel (geo::Point_t const &worldLoc, geo::PlaneID const &planeid) const |
Returns the ID of the channel nearest to the specified position. More... | |
bool | ChannelsIntersect (raw::ChannelID_t c1, raw::ChannelID_t c2, double &y, double &z) const |
Returns an intersection point of two channels. More... | |
unsigned int | MaxTPCsets () const |
Returns the largest number of TPC sets any cryostat in the detector has. More... | |
template<typename T > | |
readout::TPCsetDataContainer< T > | makeTPCsetData () const |
Returns a container with one entry per TPC set. More... | |
template<typename T > | |
readout::TPCsetDataContainer< T > | makeTPCsetData (T const &defValue) const |
Returns a container with one entry per TPC set. More... | |
bool | HasTPCset (readout::TPCsetID const &tpcsetid) const |
bool | HasElement (readout::TPCsetID const &tpcsetid) const |
Returns whether we have the specified TPC set. More... | |
readout::TPCsetID | FindTPCsetAtPosition (double const worldLoc[3]) const |
Returns the ID of the TPC set at specified location. More... | |
readout::TPCsetID | TPCtoTPCset (geo::TPCID const &tpcid) const |
Returns the ID of the TPC set tpcid belongs to. More... | |
std::vector< geo::TPCID > | TPCsetToTPCs (readout::TPCsetID const &tpcsetid) const |
Returns a list of ID of TPCs belonging to the specified TPC set. More... | |
void | GetBeginID (readout::TPCsetID &id) const |
Initializes the specified ID with the ID of the first TPC set. More... | |
void | GetEndID (readout::TPCsetID &id) const |
Initializes the specified ID with the invalid ID after the last TPC set. More... | |
bool | IncrementID (readout::TPCsetID &id) const |
readout::TPCsetID | GetBeginTPCsetID (geo::CryostatID const &id) const |
Returns the ID of the first TPC set in the specified cryostat. More... | |
readout::TPCsetID | GetEndTPCsetID (geo::CryostatID const &id) const |
TPCset_id_iterator | begin_TPCset_id () const |
Returns an iterator pointing to the first TPC set ID in the detector. More... | |
TPCset_id_iterator | end_TPCset_id () const |
Returns an iterator pointing after the last TPC set ID in the detector. More... | |
TPCset_id_iterator | begin_TPCset_id (geo::CryostatID const &cid) const |
TPCset_id_iterator | end_TPCset_id (geo::CryostatID const &cid) const |
IteratorBox< TPCset_id_iterator,&GeometryCore::begin_TPCset_id,&GeometryCore::end_TPCset_id > | IterateTPCsetIDs () const |
Enables ranged-for loops on all TPC set IDs of the detector. More... | |
LocalIteratorBox< TPCset_id_iterator, geo::CryostatID,&GeometryCore::begin_TPCset_id,&GeometryCore::end_TPCset_id > | IterateTPCsetIDs (geo::CryostatID const &cid) const |
Enables ranged-for loops on all TPC set IDs of the specified cryostat. More... | |
unsigned int | MaxROPs () const |
Returns the largest number of ROPs a TPC set in the detector has. More... | |
template<typename T > | |
readout::ROPDataContainer< T > | makeROPdata () const |
Returns a container with one entry per readout plane. More... | |
template<typename T > | |
readout::ROPDataContainer< T > | makeROPdata (T const &defValue) const |
Returns a container with one entry per readout plane. More... | |
bool | HasROP (readout::ROPID const &ropid) const |
bool | HasElement (readout::ROPID const &ropid) const |
readout::ROPID | WirePlaneToROP (geo::PlaneID const &planeid) const |
Returns the ID of the ROP planeid belongs to. More... | |
std::vector< geo::PlaneID > | ROPtoWirePlanes (readout::ROPID const &ropid) const |
Returns a list of ID of planes belonging to the specified ROP. More... | |
std::vector< geo::TPCID > | ROPtoTPCs (readout::ROPID const &ropid) const |
Returns a list of ID of TPCs the specified ROP spans. More... | |
raw::ChannelID_t | FirstChannelInROP (readout::ROPID const &ropid) const |
Returns the ID of the first channel in the specified readout plane. More... | |
void | GetBeginID (readout::ROPID &id) const |
Initializes the specified ID with the ID of the first readout plane. More... | |
void | GetEndID (readout::ROPID &id) const |
Initializes the specified ID with the invalid ID after the last ROP. More... | |
bool | IncrementID (readout::ROPID &id) const |
readout::ROPID | GetBeginROPID (geo::CryostatID const &id) const |
Returns the ID of the first readout plane of the specified cryostat. More... | |
readout::ROPID | GetEndROPID (geo::CryostatID const &id) const |
readout::ROPID | GetBeginROPID (readout::TPCsetID const &id) const |
Returns the ID of the first readout plane of the specified TPC set. More... | |
readout::ROPID | GetEndROPID (readout::TPCsetID const &id) const |
ROP_id_iterator | begin_ROP_id () const |
Returns an iterator pointing to the first ROP ID in the detector. More... | |
ROP_id_iterator | end_ROP_id () const |
Returns an iterator pointing after the last ROP ID in the detector. More... | |
ROP_id_iterator | begin_ROP_id (geo::CryostatID const &ID) const |
ROP_id_iterator | end_ROP_id (geo::CryostatID const &ID) const |
ROP_id_iterator | begin_ROP_id (readout::TPCsetID const &ID) const |
ROP_id_iterator | end_ROP_id (readout::TPCsetID const &ID) const |
IteratorBox< ROP_id_iterator,&GeometryCore::begin_ROP_id,&GeometryCore::end_ROP_id > | IterateROPIDs () const |
Enables ranged-for loops on all readout plane IDs of the detector. More... | |
LocalIteratorBox< ROP_id_iterator, geo::CryostatID,&GeometryCore::begin_ROP_id,&GeometryCore::end_ROP_id > | IterateROPIDs (geo::CryostatID const &cid) const |
Enables ranged-for loops on all readout plane IDs of the specified cryostat. More... | |
LocalIteratorBox< ROP_id_iterator, readout::TPCsetID,&GeometryCore::begin_ROP_id,&GeometryCore::end_ROP_id > | IterateROPIDs (readout::TPCsetID const &sid) const |
Enables ranged-for loops on all readout plane IDs of the specified TPC set. More... | |
geo::View_t | View (readout::ROPID const &ropid) const |
Returns the view of the channels in the specified readout plane. More... | |
geo::SigType_t | SignalType (readout::ROPID const &ropid) const |
Returns the type of signal of channels in specified readout plane. More... | |
bool | ValueInRange (double value, double min, double max) const |
Returns whether a value is within the specified range. More... | |
template<typename Point > | |
geo::GeometryCore::Segment< Point > | WireEndPoints (geo::WireID const &wireid) const |
Detector information | |
std::string | DetectorName () const |
Returns a string with the name of the detector, as configured. More... | |
TGeoVolume const * | WorldVolume () const |
Returns a pointer to the world volume. More... | |
void | WorldBox (double *xlo, double *xhi, double *ylo, double *yhi, double *zlo, double *zhi) const |
Fills the arguments with the boundaries of the world. More... | |
geo::BoxBoundedGeo | WorldBox () const |
geo::Length_t | SurfaceY () const |
The position of the detector respect to earth surface. More... | |
TGeoManager * | ROOTGeoManager () const |
Access to the ROOT geometry description manager. More... | |
const std::string | GetWorldVolumeName () const |
Return the name of the world volume (needed by Geant4 simulation) More... | |
geo::BoxBoundedGeo | DetectorEnclosureBox (std::string const &name="volDetEnclosure") const |
std::string | VolumeName (geo::Point_t const &point) const |
Returns the name of the deepest volume containing specified point. More... | |
std::string | VolumeName (TVector3 const &point) const |
std::string | MaterialName (TVector3 const &point) const |
Name of the deepest material containing the point xyz. More... | |
std::string | MaterialName (geo::Point_t const &point) const |
double | TotalMass () const |
Returns the total mass [kg] of the specified volume (default: world). More... | |
double | TotalMass (std::string vol) const |
double | MassBetweenPoints (geo::Point_t const &p1, geo::Point_t const &p2) const |
Returns the column density between two points. More... | |
double | MassBetweenPoints (double *p1, double *p2) const |
Cryostat access and information | |
unsigned int | Ncryostats () const |
Returns the number of cryostats in the detector. More... | |
unsigned int | NElements () const |
unsigned int | NSiblingElements (geo::CryostatID const &) const |
bool | HasCryostat (geo::CryostatID const &cryoid) const |
Returns whether we have the specified cryostat. More... | |
bool | HasElement (geo::CryostatID const &cryoid) const |
CryostatGeo const & | Cryostat (geo::CryostatID const &cryoid) const |
Returns the specified cryostat. More... | |
CryostatGeo const & | Cryostat (unsigned int const cstat=0) const |
CryostatGeo const & | GetElement (geo::CryostatID const &cryoid) const |
CryostatGeo const * | CryostatPtr (geo::CryostatID const &cryoid) const |
Returns the specified cryostat. More... | |
CryostatGeo const * | GetElementPtr (geo::CryostatID const &cryoid) const |
geo::CryostatID::CryostatID_t | FindCryostatAtPosition (geo::Point_t const &worldLoc) const |
Returns the index of the cryostat at specified location. More... | |
geo::CryostatID::CryostatID_t | FindCryostatAtPosition (double const worldLoc[3]) const |
CryostatGeo const & | PositionToCryostat (geo::Point_t const &point) const |
Returns the cryostat at specified location. More... | |
CryostatGeo const & | PositionToCryostat (double const point[3]) const |
geo::Length_t | CryostatHalfWidth (geo::CryostatID const &cid) const |
Returns the half width of the cryostat (x direction) More... | |
geo::Length_t | CryostatHalfWidth (unsigned int cstat=0) const |
geo::Length_t | CryostatHalfHeight (geo::CryostatID const &cid) const |
Returns the height of the cryostat (y direction) More... | |
geo::Length_t | CryostatHalfHeight (unsigned int cstat=0) const |
geo::Length_t | CryostatLength (geo::CryostatID const &cid) const |
Returns the length of the cryostat (z direction) More... | |
geo::Length_t | CryostatLength (unsigned int cstat=0) const |
std::string | GetCryostatVolumeName (geo::CryostatID const &cid) const |
Return the name of LAr TPC volume. More... | |
std::string | GetCryostatVolumeName (unsigned int const cstat=0) const |
TPC access and information | |
unsigned int | NTPC (unsigned int cstat=0) const |
Returns the total number of TPCs in the specified cryostat. More... | |
unsigned int | MaxTPCs () const |
Returns the largest number of TPCs a cryostat in the detector has. More... | |
unsigned int | TotalNTPC () const |
Returns the total number of TPCs in the detector. More... | |
template<typename T > | |
geo::TPCDataContainer< T > | makeTPCData () const |
Returns a container with one entry per TPC. More... | |
template<typename T > | |
geo::TPCDataContainer< T > | makeTPCData (T const &defValue) const |
Returns a container with one entry per TPC. More... | |
unsigned int | NTPC (geo::CryostatID const &cryoid) const |
Returns the total number of TPCs in the specified cryostat. More... | |
unsigned int | NElements (geo::CryostatID const &cryoid) const |
unsigned int | NSiblingElements (geo::TPCID const &tpcid) const |
TPCGeo const & | TPC (unsigned int const tpc=0, unsigned int const cstat=0) const |
Returns the specified TPC. More... | |
TPCGeo const & | TPC (geo::TPCID const &tpcid) const |
TPCGeo const & | GetElement (geo::TPCID const &tpcid) const |
TPCGeo const * | TPCPtr (geo::TPCID const &tpcid) const |
Returns the specified TPC. More... | |
TPCGeo const * | GetElementPtr (geo::TPCID const &tpcid) const |
geo::TPCID | FindTPCAtPosition (geo::Point_t const &point) const |
Returns the ID of the TPC at specified location. More... | |
geo::TPCID | FindTPCAtPosition (TVector3 const &point) const |
geo::TPCGeo const & | PositionToTPC (geo::Point_t const &point) const |
Returns the TPC at specified location. More... | |
TPCGeo const & | PositionToTPC (double const point[3]) const |
geo::Length_t | DetHalfWidth (geo::TPCID const &tpcid) const |
Returns the half width of the active volume of the specified TPC. More... | |
geo::Length_t | DetHalfWidth (unsigned int tpc=0, unsigned int cstat=0) const |
geo::Length_t | DetHalfHeight (geo::TPCID const &tpcid) const |
Returns the half height of the active volume of the specified TPC. More... | |
geo::Length_t | DetHalfHeight (unsigned int tpc=0, unsigned int cstat=0) const |
geo::Length_t | DetLength (geo::TPCID const &tpcid) const |
Returns the length of the active volume of the specified TPC. More... | |
geo::Length_t | DetLength (unsigned int tpc=0, unsigned int cstat=0) const |
template<typename Point > | |
Point | GetTPCFrontFaceCenter (geo::TPCID const &tpcid) const |
Returns the center of side of the detector facing the beam. More... | |
DefaultPoint_t | GetTPCFrontFaceCenter (geo::TPCID const &tpcid) const |
template<typename Point > | |
Point | GetTPCFrontFaceCenter (unsigned int tpc=0, unsigned int cstat=0) const |
Returns the center of side of the detector facing the beam. More... | |
DefaultPoint_t | GetTPCFrontFaceCenter (unsigned int tpc=0, unsigned int cstat=0) const |
std::string | GetLArTPCVolumeName (geo::TPCID const &tpcid) const |
Return the name of specified LAr TPC volume. More... | |
std::string | GetLArTPCVolumeName (unsigned int const tpc=0, unsigned int const cstat=0) const |
Plane access and information | |
unsigned int | Nplanes (unsigned int tpc=0, unsigned int cstat=0) const |
Returns the total number of wire planes in the specified TPC. More... | |
unsigned int | MaxPlanes () const |
Returns the largest number of planes among all TPCs in this detector. More... | |
template<typename T > | |
geo::PlaneDataContainer< T > | makePlaneData () const |
Returns a container with one entry per wire plane. More... | |
template<typename T > | |
geo::PlaneDataContainer< T > | makePlaneData (T const &defValue) const |
Returns a container with one entry per wire plane. More... | |
unsigned int | Nplanes (geo::TPCID const &tpcid) const |
Returns the total number of planes in the specified TPC. More... | |
unsigned int | NElements (geo::TPCID const &tpcid) const |
unsigned int | NSiblingElements (geo::PlaneID const &planeid) const |
bool | HasPlane (geo::PlaneID const &planeid) const |
Returns whether we have the specified plane. More... | |
bool | HasElement (geo::PlaneID const &planeid) const |
PlaneGeo const & | Plane (unsigned int const p, unsigned int const tpc=0, unsigned int const cstat=0) const |
Returns the specified wire. More... | |
PlaneGeo const & | Plane (geo::PlaneID const &planeid) const |
PlaneGeo const & | GetElement (geo::PlaneID const &planeid) const |
PlaneGeo const * | PlanePtr (geo::PlaneID const &planeid) const |
Returns the specified plane. More... | |
PlaneGeo const * | GetElementPtr (geo::PlaneID const &planeid) const |
geo::Length_t | PlanePitch (geo::TPCID const &tpcid, geo::PlaneID::PlaneID_t p1=0, geo::PlaneID::PlaneID_t p2=1) const |
Returns the distance between two planes. More... | |
geo::Length_t | PlanePitch (geo::PlaneID const &pid1, geo::PlaneID const &pid2) const |
geo::Length_t | PlanePitch (unsigned int p1=0, unsigned int p2=1, unsigned int tpc=0, unsigned int cstat=0) const |
Wire access and information | |
unsigned int | Nwires (unsigned int p, unsigned int tpc=0, unsigned int cstat=0) const |
Returns the total number of wires in the specified plane. More... | |
unsigned int | Nwires (geo::PlaneID const &planeid) const |
Returns the total number of wires in the specified plane. More... | |
unsigned int | NElements (geo::PlaneID const &planeid) const |
unsigned int | NSiblingElements (geo::WireID const &wireid) const |
unsigned int | MaxWires () const |
Returns the largest number of wires among all planes in this detector. More... | |
bool | HasWire (geo::WireID const &wireid) const |
Returns whether we have the specified wire. More... | |
bool | HasElement (geo::WireID const &wireid) const |
WireGeo const * | WirePtr (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
WireGeo const * | GetElementPtr (geo::WireID const &wireid) const |
WireGeo const & | Wire (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
WireGeo const & | WireIDToWireGeo (geo::WireID const &wireid) const |
WireGeo const & | GetElement (geo::WireID const &wireid) const |
geo::Length_t | WirePitch (geo::PlaneID const &planeid) const |
Returns the distance between two consecutive wires. More... | |
geo::Length_t | WirePitch (unsigned int plane=0, unsigned int tpc=0, unsigned int cstat=0) const |
double | WireAngleToVertical (geo::View_t view, geo::TPCID const &tpcid) const |
Returns the angle of the wires in the specified view from vertical. More... | |
double | WireAngleToVertical (geo::View_t view, int TPC=0, int Cryo=0) const |
Wire geometry queries | |
Please note the differences between functions: ChannelsIntersect(), WireIDsIntersect() and IntersectionPoint() all calculate wires intersection using the same equation. ChannelsIntersect() and WireIdsIntersect() will return true if the two wires cross, return false if they don't. IntersectionPoint() does not check if the two wires cross. | |
void | WireEndPoints (geo::WireID const &wireid, double *xyzStart, double *xyzEnd) const |
Fills two arrays with the coordinates of the wire end points. More... | |
void | WireEndPoints (unsigned int cstat, unsigned int tpc, unsigned int plane, unsigned int wire, double *xyzStart, double *xyzEnd) const |
Fills two arrays with the coordinates of the wire end points. More... | |
template<typename Point > | |
Segment< Point > | WireEndPoints (geo::WireID const &wireID) const |
Returns a segment whose ends are the wire end points. More... | |
Segment< DefaultPoint_t > | WireEndPoints (geo::WireID const &wireID) const |
geo::WireID | NearestWireID (const double point[3], geo::PlaneID const &planeid) const |
Returns the ID of wire closest to position in the specified TPC. More... | |
geo::WireID | NearestWireID (std::vector< double > const &point, geo::PlaneID const &planeid) const |
geo::WireID | NearestWireID (const TVector3 &point, geo::PlaneID const &planeid) const |
geo::WireID | NearestWireID (const double point[3], unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
geo::WireID | NearestWireID (std::vector< double > const &point, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
geo::WireID | NearestWireID (const TVector3 &point, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
geo::WireID | NearestWireID (geo::Point_t const &point, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
unsigned int | NearestWire (const double worldLoc[3], geo::PlaneID const &planeid) const |
Returns the index of wire closest to position in the specified TPC. More... | |
unsigned int | NearestWire (std::vector< double > const &worldLoc, geo::PlaneID const &planeid) const |
unsigned int | NearestWire (const TVector3 &worldLoc, geo::PlaneID const &planeid) const |
unsigned int | NearestWire (const double worldLoc[3], unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
unsigned int | NearestWire (std::vector< double > const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
unsigned int | NearestWire (const TVector3 &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
unsigned int | NearestWire (geo::Point_t const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
geo::Length_t | WireCoordinate (geo::Point_t const &pos, geo::PlaneID const &planeid) const |
Returns the index of the nearest wire to the specified position. More... | |
geo::Length_t | WireCoordinate (TVector3 const &pos, geo::PlaneID const &planeid) const |
bool | WireIDsIntersect (WireID const &wid1, WireID const &wid2, geo::Point_t &intersection) const |
Computes the intersection between two wires. More... | |
bool | WireIDsIntersect (WireID const &wid1, WireID const &wid2, TVector3 &intersection) const |
bool | WireIDsIntersect (WireID const &wid1, WireID const &wid2, WireIDIntersection &widIntersect) const |
Computes the intersection between two wires. More... | |
double | ThirdPlaneSlope (geo::PlaneID::PlaneID_t plane1, double slope1, geo::PlaneID::PlaneID_t plane2, double slope2, geo::TPCID const &tpcid) const |
Returns the slope on the third plane, given it in the other two. More... | |
double | ThirdPlaneSlope (unsigned int plane1, double slope1, unsigned int plane2, double slope2, unsigned int tpc, unsigned int cstat) const |
Optical detector geometry access and information | |
There are a number of ways to identify an optical detector or channel:
And they all should be better documented! | |
unsigned int | NOpDets () const |
Number of OpDets in the whole detector. More... | |
OpDetGeo const & | OpDetGeoFromOpChannel (unsigned int OpChannel) const |
Returns the geo::OpDetGeo object for the given channel number. More... | |
OpDetGeo const & | OpDetGeoFromOpDet (unsigned int OpDet) const |
Returns the geo::OpDetGeo object for the given detector number. More... | |
unsigned int | GetClosestOpDet (geo::Point_t const &point) const |
Find the nearest OpChannel to some point. More... | |
unsigned int | GetClosestOpDet (double const *point) const |
Auxiliary detectors access and information | |
unsigned int | NAuxDets () const |
Returns the number of auxiliary detectors. More... | |
unsigned int | NAuxDetSensitive (size_t const &aid) const |
Returns the number of sensitive components of auxiliary detector. More... | |
AuxDetGeo const & | AuxDet (unsigned int const ad=0) const |
Returns the specified auxiliary detector. More... | |
unsigned int | FindAuxDetAtPosition (double const worldLoc[3], double tolerance=0) const |
Returns the index of the auxiliary detector at specified location. More... | |
unsigned int | FindAuxDetAtPosition (geo::Point_t const &point, double tolerance=0) const |
Returns the index of the auxiliary detector at specified location. More... | |
void | FindAuxDetSensitiveAtPosition (geo::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... | |
void | FindAuxDetSensitiveAtPosition (double const worldLoc[3], size_t &adg, size_t &sv, double tolerance=0) const |
Fills the indices of the sensitive auxiliary detector at location. More... | |
AuxDetGeo const & | PositionToAuxDet (geo::Point_t const &point, unsigned int &ad, double tolerance=0) const |
Returns the auxiliary detector at specified location. More... | |
AuxDetGeo const & | PositionToAuxDet (double const worldLoc[3], unsigned int &ad, double tolerance=0) const |
Returns the auxiliary detector at specified location. More... | |
const AuxDetSensitiveGeo & | PositionToAuxDetSensitive (geo::Point_t const &point, size_t &ad, size_t &sv, double tolerance=0) const |
Returns the auxiliary detector at specified location. More... | |
const AuxDetSensitiveGeo & | PositionToAuxDetSensitive (double const worldLoc[3], size_t &ad, size_t &sv, double tolerance=0) const |
Returns the auxiliary detector at specified location. More... | |
const AuxDetGeo & | ChannelToAuxDet (std::string const &auxDetName, uint32_t const &channel) const |
const AuxDetSensitiveGeo & | ChannelToAuxDetSensitive (std::string const &auxDetName, uint32_t const &channel) const |
TPC readout channels and views | |
unsigned int | Nchannels () const |
Returns the number of TPC readout channels in the detector. More... | |
unsigned int | Nchannels (readout::ROPID const &ropid) const |
Returns the number of channels in the specified ROP. More... | |
std::vector< raw::ChannelID_t > | ChannelsInTPCs () const |
Returns an std::vector<ChannelID_t> in all TPCs in a TPCSet. More... | |
std::set< geo::View_t > const & | Views () const |
Returns a list of possible views in the detector. More... | |
bool | HasChannel (raw::ChannelID_t channel) const |
Returns whether the specified channel exists and is valid. More... | |
raw::ChannelID_t | PlaneWireToChannel (WireID const &wireid) const |
Returns the ID of the TPC channel connected to the specified wire. More... | |
raw::ChannelID_t | PlaneWireToChannel (unsigned int const plane, unsigned int const wire, unsigned int const tpc=0, unsigned int const cstat=0) const |
raw::ChannelID_t | NearestChannel (const double worldLoc[3], geo::PlaneID const &planeid) const |
Returns the ID of the channel nearest to the specified position. More... | |
raw::ChannelID_t | NearestChannel (std::vector< double > const &worldLoc, geo::PlaneID const &planeid) const |
raw::ChannelID_t | NearestChannel (const TVector3 &worldLoc, geo::PlaneID const &planeid) const |
raw::ChannelID_t | NearestChannel (const double worldLoc[3], unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
raw::ChannelID_t | NearestChannel (std::vector< double > const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
raw::ChannelID_t | NearestChannel (const TVector3 &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
raw::ChannelID_t | NearestChannel (geo::Point_t const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
TPC set information | |
unsigned int | NTPCsets (readout::CryostatID const &cryoid) const |
Returns the total number of TPC sets in the specified cryostat. More... | |
unsigned int | NSiblingElements (readout::TPCsetID const &tpcsetid) const |
Readout plane information | |
unsigned int | NROPs (readout::TPCsetID const &tpcsetid) const |
Returns the total number of ROP in the specified TPC set. More... | |
unsigned int | NSiblingElements (readout::ROPID const &ropid) const |
Optical readout channels | |
unsigned int | NOpChannels () const |
Number of electronics channels for all the optical detectors. More... | |
unsigned int | MaxOpChannel () const |
Largest optical channel number. More... | |
unsigned int | NOpHardwareChannels (int opDet) const |
bool | IsValidOpChannel (int opChannel) const |
Is this a valid OpChannel number? More... | |
unsigned int | OpChannel (int detNum, int hardwareChannel) const |
Convert detector number and hardware channel to unique channel. More... | |
unsigned int | OpDetFromOpChannel (int opChannel) const |
Convert unique channel to detector number. More... | |
unsigned int | HardwareChannelFromOpChannel (int opChannel) const |
Convert unique channel to hardware channel. More... | |
unsigned int | OpDetFromCryo (unsigned int o, unsigned int c) const |
Get unique opdet number from cryo and internal count. More... | |
Geometry initialization | |
void | LoadGeometryFile (std::string gdmlfile, std::string rootfile, geo::GeometryBuilder &builder, bool bForceReload=false) |
Loads the geometry information from the specified files. More... | |
void | LoadGeometryFile (std::string gdmlfile, std::string rootfile, bool bForceReload=false) |
Loads the geometry information from the specified files. More... | |
void | ApplyChannelMap (std::unique_ptr< geo::ChannelMapAlg > pChannelMap) |
Initializes the geometry to work with this channel map. More... | |
Static Public Member Functions | |
static double | ComputeThirdPlaneSlope (double angle1, double slope1, double angle2, double slope2, double angle_target) |
Returns the slope on the third plane, given it in the other two. More... | |
static double | ComputeThirdPlane_dTdW (double angle1, double pitch1, double dTdW1, double angle2, double pitch2, double dTdW2, double angle_target, double pitch_target) |
Returns the slope on the third plane, given it in the other two. More... | |
Static Public Attributes | |
static constexpr std::size_t | MaxWireDepthInGDML = 20U |
static lar::util::RealComparisons< geo::Length_t > | coordIs { 1e-8 } |
Value of tolerance for equality comparisons. More... | |
Protected Member Functions | |
void | SetDetectorName (std::string const &new_name) |
Sets the detector name. More... | |
geo::ChannelMapAlg const * | ChannelMap () const |
Returns the object handling the channel map. More... | |
CryostatList_t & | Cryostats () |
Return the internal cryostat list. More... | |
CryostatList_t const & | Cryostats () const |
AuxDetList_t & | AuxDets () |
Return the interfal auxiliary detectors list. More... | |
AuxDetList_t const & | AuxDets () const |
Private Types | |
using | DefaultVector_t = TVector3 |
Default template argument. More... | |
using | DefaultPoint_t = TVector3 |
Default template argument. More... | |
Private Member Functions | |
std::vector< TGeoNode const * > | FindDetectorEnclosure (std::string const &name="volDetEnclosure") const |
bool | FindFirstVolume (std::string const &name, std::vector< const TGeoNode * > &path) const |
void | BuildGeometry (geo::GeometryBuilder &builder) |
bool | WireIDIntersectionCheck (const geo::WireID &wid1, const geo::WireID &wid2) const |
Wire ID check for WireIDsIntersect methods. More... | |
void | SortGeometry (geo::GeoObjectSorter const &sorter) |
Runs the sorting of geometry with the sorter provided by channel mapping. More... | |
void | UpdateAfterSorting () |
Performs all the updates needed after sorting. More... | |
void | ClearGeometry () |
Deletes the detector geometry structures. More... | |
Static Private Member Functions | |
static bool | PointWithinSegments (double A_start_x, double A_start_y, double A_end_x, double A_end_y, double B_start_x, double B_start_y, double B_end_x, double B_end_y, double x, double y) |
Returns whether x and y are within both specified ranges (A and B). More... | |
static void | CheckIndependentPlanesOnSameTPC (geo::PlaneID const &pid1, geo::PlaneID const &pid2, const char *caller) |
Private Attributes | |
GeometryData_t | fGeoData |
The detector description data. More... | |
double | fSurfaceY |
The point where air meets earth for this detector. More... | |
std::string | fDetectorName |
Name of the detector. More... | |
std::string | fGDMLfile |
path to geometry file used for Geant4 simulation More... | |
std::string | fROOTfile |
path to geometry file for geometry in GeometryCore More... | |
double | fMinWireZDist |
double | fPositionWiggle |
accounting for rounding errors when testing positions More... | |
fhicl::ParameterSet | fBuilderParameters |
std::unique_ptr< const geo::ChannelMapAlg > | fChannelMapAlg |
Object containing the channel to wire mapping. More... | |
std::set< geo::View_t > | allViews |
All views in the detector. More... | |
Description of geometry of one entire detector.
Instantiation is a multi-step procedure:
Step 3 (creation of the channel mapping algorithm object) can be performed at any time before step 4, provided that no GeometryCore instance is needed for it.
Definition at line 1468 of file GeometryCore.h.
Type of list of auxiliary detectors.
Definition at line 1505 of file GeometryCore.h.
Forward-iterator browsing all cryostat IDs in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IterateCryostatIDs()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_cryostat_id()
on every check.
Definition at line 1536 of file GeometryCore.h.
Forward-iterator browsing all cryostats in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IterateCryostats()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_cryostat()
on every check.
Definition at line 1557 of file GeometryCore.h.
Type of list of cryostats.
Definition at line 1503 of file GeometryCore.h.
|
private |
Default template argument.
Definition at line 1471 of file GeometryCore.h.
|
private |
Default template argument.
Definition at line 1470 of file GeometryCore.h.
Definition at line 1477 of file GeometryCore.h.
Forward-iterator browsing all plane IDs in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IteratePlaneIDs()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_plane_id()
on every check.
Definition at line 1627 of file GeometryCore.h.
Forward-iterator browsing all planes in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IteratePlanes()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_plane()
on every check.
Definition at line 1649 of file GeometryCore.h.
Definition at line 1500 of file GeometryCore.h.
Forward-iterator browsing all TPC IDs in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IterateTPCIDs()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_TPC_id()
on every check.
Definition at line 1581 of file GeometryCore.h.
Forward-iterator browsing all TPCs in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IterateTPCs()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_TPC()
on every check.
Definition at line 1603 of file GeometryCore.h.
Forward-iterator browsing all wire IDs in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IterateWireIDs()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_wire_id()
on every check.
Definition at line 1673 of file GeometryCore.h.
Forward-iterator browsing all wires in the detector.
Usage example with a while loop:
The recommended way to iterate is actually to use GeometryCore::IterateWires()
in a range-for loop. It is recommended to save the end iterator rather than calling GeometryCore::end_wire()
on every check.
Definition at line 1695 of file GeometryCore.h.
geo::GeometryCore::GeometryCore | ( | fhicl::ParameterSet const & | pset | ) |
Initialize geometry from a given configuration.
pset | configuration parameters |
This constructor does not load any geometry description. The next step is to do exactly that, by GeometryCore::LoadGeometryFile().
Definition at line 59 of file GeometryCore.cxx.
geo::GeometryCore::~GeometryCore | ( | ) |
Destructor.
Definition at line 75 of file GeometryCore.cxx.
|
delete |
|
delete |
void geo::GeometryCore::ApplyChannelMap | ( | std::unique_ptr< geo::ChannelMapAlg > | pChannelMap | ) |
Initializes the geometry to work with this channel map.
pChannelMap | a pointer to the channel mapping algorithm to be used |
The specified channel mapping is used with this geometry. These modifications typically involve some resorting of the objects.
This method needs to be called after LoadGeometryFile() to complete the geometry initialization.
Definition at line 82 of file GeometryCore.cxx.
const AuxDetGeo & geo::GeometryCore::AuxDet | ( | unsigned int const | ad = 0 | ) | const |
Returns the specified auxiliary detector.
ad | the auxiliary detector index |
what happens if it does not exist?
remove the default parameter?
Definition at line 340 of file GeometryCore.cxx.
|
inlineprotected |
Return the interfal auxiliary detectors list.
Definition at line 5503 of file GeometryCore.h.
|
inlineprotected |
Definition at line 5504 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first cryostat.
Definition at line 2154 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first cryostat ID.
Definition at line 2146 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane in the detector.
Definition at line 3084 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane in the specified cryostat.
Definition at line 3093 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane in the specified TPC.
Definition at line 3102 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane ID in the detector.
Definition at line 3056 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane ID in the specified cryostat.
Definition at line 3065 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane ID in the specified TPC.
Definition at line 3075 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first ROP ID in the detector.
Definition at line 5232 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first readout plane ID in the specified cryostat.
Definition at line 5241 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first readout plane ID in the specified TPC set.
Definition at line 5251 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC in the detector.
Definition at line 2564 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC in the detector.
Definition at line 2572 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC ID in the detector.
Definition at line 2546 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC ID in the specified cryostat.
Definition at line 2555 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC set ID in the detector.
Definition at line 4997 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC set ID in the specified cryostat.
Definition at line 5006 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in the detector.
Definition at line 3504 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in specified cryostat.
Definition at line 3512 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in specified TPC.
Definition at line 3520 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in specified plane.
Definition at line 3528 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in the detector.
Definition at line 3471 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in specified cryostat.
Definition at line 3479 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in specified TPC.
Definition at line 3488 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in specified plane.
Definition at line 3496 of file GeometryCore.h.
|
private |
Parses ROOT geometry nodes and builds LArSoft geometry representation.
builder | the algorithm to be used |
Definition at line 1030 of file GeometryCore.cxx.
|
inlineprotected |
Returns the object handling the channel map.
Definition at line 5492 of file GeometryCore.h.
bool geo::GeometryCore::ChannelsIntersect | ( | raw::ChannelID_t | c1, |
raw::ChannelID_t | c2, | ||
double & | y, | ||
double & | z | ||
) | const |
Returns an intersection point of two channels.
c1 | one channel ID |
c2 | the other channel ID |
y | (output) y coordinate of the intersection |
z | (output) z coordinate of the intersection |
what happens for channels from different TPCs?
what happens for channels with multiple intersection points?
Definition at line 1271 of file GeometryCore.cxx.
std::vector< raw::ChannelID_t > geo::GeometryCore::ChannelsInTPCs | ( | ) | const |
Returns an std::vector<ChannelID_t> in all TPCs in a TPCSet.
Definition at line 221 of file GeometryCore.cxx.
const AuxDetGeo & geo::GeometryCore::ChannelToAuxDet | ( | std::string const & | auxDetName, |
uint32_t const & | channel | ||
) | const |
Definition at line 555 of file GeometryCore.cxx.
const AuxDetSensitiveGeo & geo::GeometryCore::ChannelToAuxDetSensitive | ( | std::string const & | auxDetName, |
uint32_t const & | channel | ||
) | const |
Definition at line 563 of file GeometryCore.cxx.
readout::ROPID geo::GeometryCore::ChannelToROP | ( | raw::ChannelID_t | channel | ) | const |
Returns the ID of the ROP the channel belongs to
cet::exception | (category: "Geometry") if non-existent channel |
Definition at line 1113 of file GeometryCore.cxx.
std::vector< geo::WireID > geo::GeometryCore::ChannelToWire | ( | raw::ChannelID_t const | channel | ) | const |
Returns a list of wires connected to the specified TPC channel.
channel | TPC channel ID |
cet::exception | (category: "Geometry") if non-existent channel |
Definition at line 1107 of file GeometryCore.cxx.
|
staticprivate |
Throws an exception ("GeometryCore" category) unless pid1 and pid2 are on different planes of the same TPC (ID validity is not checked)
Definition at line 1514 of file GeometryCore.cxx.
|
private |
Deletes the detector geometry structures.
Definition at line 160 of file GeometryCore.cxx.
|
static |
Returns the slope on the third plane, given it in the other two.
angle1 | angle or the wires on the first plane |
pitch1 | wire pitch on the first plane |
dTdW1 | slope in dt/dw units as observed on the first plane |
angle2 | angle or the wires on the second plane |
pitch2 | wire pitch on the second plane |
dTdW2 | slope in dt/dw units as observed on the second plane |
angle_target | angle or the wires on the target plane |
pitch_target | wire pitch on the target plane |
The input slope must be specified in dt/dw non-homogeneous coordinates.
This function will return a small slope if both input slopes are small.
Definition at line 1632 of file GeometryCore.cxx.
|
static |
Returns the slope on the third plane, given it in the other two.
angle1 | angle or the wires on the first plane |
slope1 | slope as observed on the first plane |
angle2 | angle or the wires on the second plane |
slope2 | slope as observed on the second plane |
angle_target | angle or the wires on the target plane |
This function will return a small slope if both input slopes are small.
Definition at line 1607 of file GeometryCore.cxx.
CryostatGeo const & geo::GeometryCore::Cryostat | ( | geo::CryostatID const & | cryoid | ) | const |
Returns the specified cryostat.
cstat | number of cryostat |
cryoid | cryostat ID |
cet::exception | (GeometryCore category) if cryostat not present |
The GetElement() method is overloaded and its return depends on the type of ID.
Definition at line 321 of file GeometryCore.cxx.
|
inline |
Definition at line 2031 of file GeometryCore.h.
void geo::GeometryCore::CryostatBoundaries | ( | double * | boundaries, |
geo::CryostatID const & | cid | ||
) | const |
Returns the boundaries of the specified cryostat.
boundaries | (output) pointer to an area of 6 doubles for boundaries |
cid | cryostat ID |
cet::exception | ("GeometryCore" category) if cryostat not present |
The boundaries array is filled with: [0] lower x coordinate [1] upper x coordinate [2] lower y coordinate [3] upper y coordinate [4] lower z coordinate [5] upper z coordinate
CryostatGeo::Boundaries()
(from Cryostat(cid)
). Definition at line 791 of file GeometryCore.cxx.
|
inline |
Returns the boundaries of the specified cryostat.
boundaries | (output) pointer to an area of 6 doubles for boundaries |
cstat | number of cryostat |
cet::exception | ("GeometryCore" category) if cryostat not present |
The boundaries array is filled with: [0] lower x coordinate [1] upper x coordinate [2] lower y coordinate [3] upper y coordinate [4] lower z coordinate [5] upper z coordinate
CryostatBoundaries(double*, geo::CryostatID const&)
or (recommended) CryostatGeo::Boundaries()
from Cryostat(cid)
instead Definition at line 2260 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::CryostatHalfHeight | ( | geo::CryostatID const & | cid | ) | const |
Returns the height of the cryostat (y direction)
Definition at line 778 of file GeometryCore.cxx.
|
inline |
Definition at line 2214 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::CryostatHalfWidth | ( | geo::CryostatID const & | cid | ) | const |
Returns the half width of the cryostat (x direction)
Definition at line 771 of file GeometryCore.cxx.
|
inline |
Definition at line 2207 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::CryostatLength | ( | geo::CryostatID const & | cid | ) | const |
Returns the length of the cryostat (z direction)
Definition at line 784 of file GeometryCore.cxx.
|
inline |
Definition at line 2221 of file GeometryCore.h.
|
inline |
Returns the specified cryostat.
cryoid | cryostat ID |
The GetElementPtr() method is overloaded and its return depends on the type of ID.
Definition at line 2046 of file GeometryCore.h.
|
inlineprotected |
Return the internal cryostat list.
Definition at line 5497 of file GeometryCore.h.
|
inlineprotected |
Definition at line 5498 of file GeometryCore.h.
|
inline |
Returns the tolerance used in looking for positions.
This parameter is used as tolerance ("wiggle") for methods that require it (e.g. geo::CryostatGeo::FindTPCAtPosition()
). Typically, it's a additional fraction of tolerance: 0 means no tolerance, 0.1 means 10% tolerance.
Definition at line 1731 of file GeometryCore.h.
geo::BoxBoundedGeo geo::GeometryCore::DetectorEnclosureBox | ( | std::string const & | name = "volDetEnclosure" | ) | const |
Returns the absolute coordinates of the detector enclosure volume [cm].
name | name of the volume to be sought (default: volDetEnclosure ) |
cet::exception | if the specified volume is not found |
Definition at line 629 of file GeometryCore.cxx.
|
inline |
Returns a string with the name of the detector, as configured.
Definition at line 1761 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::DetHalfHeight | ( | geo::TPCID const & | tpcid | ) | const |
Returns the half height of the active volume of the specified TPC.
tpcid | ID of the TPC |
tpc | TPC number within the cryostat |
cstat | number of cryostat |
cet::exception | (GeometryCore category) if cryostat not present |
cet::exception | (TPCOutOfRange category) if no such TPC |
See geo::TPCGeo::ActiveHalfHeight()
for more details.
deprecate this function
rename the function
Definition at line 758 of file GeometryCore.cxx.
|
inline |
Definition at line 2738 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::DetHalfWidth | ( | geo::TPCID const & | tpcid | ) | const |
Returns the half width of the active volume of the specified TPC.
tpcid | ID of the TPC |
tpc | TPC number within the cryostat |
cstat | number of cryostat |
cet::exception | (GeometryCore category) if cryostat not present |
cet::exception | (TPCOutOfRange category) if no such TPC |
deprecate this function
rename the function
Definition at line 752 of file GeometryCore.cxx.
|
inline |
Definition at line 2716 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::DetLength | ( | geo::TPCID const & | tpcid | ) | const |
Returns the length of the active volume of the specified TPC.
tpcid | ID of the TPC |
tpc | TPC number within the cryostat |
cstat | number of cryostat |
cet::exception | (GeometryCore category) if cryostat not present |
cet::exception | (TPCOutOfRange category) if no such TPC |
See geo::TPCGeo::ActiveLength()
for more details.
deprecate this function
rename the function
Definition at line 764 of file GeometryCore.cxx.
|
inline |
Definition at line 2759 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last cryostat.
Definition at line 2158 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last cryostat ID.
Definition at line 2150 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane in the detector.
Definition at line 3088 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane in the specified cryostat.
Definition at line 3098 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane in the specified TPC.
Definition at line 3106 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane ID in the detector.
Definition at line 3060 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane ID in the specified cryostat.
Definition at line 3070 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane ID in the specified TPC.
Definition at line 3080 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last ROP ID in the detector.
Definition at line 5236 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last readout plane ID in the specified cryostat.
Definition at line 5246 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last readout plane ID in the specified TPC set.
Definition at line 5256 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC in the detector.
Definition at line 2568 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC in the detector.
Definition at line 2576 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC ID in the detector.
Definition at line 2550 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC ID in the specified cryostat.
Definition at line 2560 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC set ID in the detector.
Definition at line 5001 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC set ID in the specified cryostat.
Definition at line 5011 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire in the detector.
Definition at line 3508 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire in specified cryostat.
Definition at line 3516 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire in specified TPC.
Definition at line 3524 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire in specified plane.
Definition at line 3532 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire ID in the detector.
Definition at line 3475 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire ID in specified cryostat.
Definition at line 3484 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire ID in specified TPC.
Definition at line 3492 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire ID in specified plane.
Definition at line 3500 of file GeometryCore.h.
std::vector< std::vector< TGeoNode const * > > geo::GeometryCore::FindAllVolumePaths | ( | std::set< std::string > const & | vol_names | ) | const |
Returns paths of all nodes with volumes with the specified names.
vol_names | list of names of volumes |
All the nodes in the geometry are checked, and the path of all the ones that contain a volume with a name among the ones specified in vol_names is saved in the collection and returned. A node path is a ordered list of all nodes leading to the final one, starting from thetop level (root) down. The node at the back()
of the path is the one with name in vol_names. No empty paths are returned.
Definition at line 723 of file GeometryCore.cxx.
std::vector< TGeoNode const * > geo::GeometryCore::FindAllVolumes | ( | std::set< std::string > const & | vol_names | ) | const |
Returns all the nodes with volumes with any of the specified names.
vol_names | list of names of volumes |
All the nodes in the geometry are checked, and all the ones that contain a volume with a name among the ones specified in vol_names are saved in the collection and returned.
Definition at line 706 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::FindAuxDetAtPosition | ( | double const | worldLoc[3], |
double | tolerance = 0 |
||
) | const |
Returns the index of the auxiliary detector at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
tolerance | tolerance (cm) for matches. Default 0 |
std::numeric_limits<unsigned int>max()
if no detector is theregeo::Point_t
. Definition at line 505 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::FindAuxDetAtPosition | ( | geo::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 496 of file GeometryCore.cxx.
void geo::GeometryCore::FindAuxDetSensitiveAtPosition | ( | geo::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 525 of file GeometryCore.cxx.
void geo::GeometryCore::FindAuxDetSensitiveAtPosition | ( | double const | worldLoc[3], |
size_t & | adg, | ||
size_t & | sv, | ||
double | tolerance = 0 |
||
) | const |
Fills the indices of the sensitive auxiliary detector at location.
worldLoc | 3D coordinates of the point (world reference frame) |
adg | (output) auxiliary detector index |
sv | (output) sensitive volume index |
tolerance | tolerance (cm) for matches. Default 0. |
geo::Point_t
. Definition at line 536 of file GeometryCore.cxx.
geo::CryostatID::CryostatID_t geo::GeometryCore::FindCryostatAtPosition | ( | geo::Point_t const & | worldLoc | ) | const |
Returns the index of the cryostat at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
PositionToCryostatID()
instead Definition at line 393 of file GeometryCore.cxx.
geo::CryostatID::CryostatID_t geo::GeometryCore::FindCryostatAtPosition | ( | double const | worldLoc[3] | ) | const |
Definition at line 402 of file GeometryCore.cxx.
|
private |
Definition at line 998 of file GeometryCore.cxx.
|
private |
Definition at line 1007 of file GeometryCore.cxx.
|
inline |
Returns the ID of the TPC at specified location.
worldLoc | 3D coordinates of the point (world reference frame) [cm] |
Definition at line 2454 of file GeometryCore.h.
geo::TPCID geo::GeometryCore::FindTPCAtPosition | ( | geo::Point_t const & | point | ) | const |
Returns the ID of the TPC at specified location.
worldLoc | 3D point (world reference frame, centimeters) |
Definition at line 352 of file GeometryCore.cxx.
|
inline |
Definition at line 2464 of file GeometryCore.h.
readout::TPCsetID geo::GeometryCore::FindTPCsetAtPosition | ( | double const | worldLoc[3] | ) | const |
Returns the ID of the TPC set at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
Definition at line 1691 of file GeometryCore.cxx.
raw::ChannelID_t geo::GeometryCore::FirstChannelInROP | ( | readout::ROPID const & | ropid | ) | const |
Returns the ID of the first channel in the specified readout plane.
ropid | ID of the readout plane |
Note that this check is performed on the validity of the readout plane ID, that does not necessarily imply that the readout plane specified by the ID actually exists. Check if the ROP exists with HasROP(). The behaviour for non-existing readout planes is undefined.
Definition at line 1758 of file GeometryCore.cxx.
|
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 1749 of file GeometryCore.h.
|
inline |
Returns the ID of the first element of the detector.
GeoID | type of the ID to be returned |
Definition at line 1933 of file GeometryCore.h.
GeoID geo::GeometryCore::GetBeginID | ( | ContextID const & | id | ) | const |
Returns the ID of the first subelement of the specified element.
GeoID | type of the ID to be returned |
ContextID | type of the ID of the containing element |
id | ID of the containing element |
|
inline |
Initializes the specified ID with the ID of the first cryostat.
Definition at line 2134 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first TPC.
iterators
Definition at line 2524 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first plane.
Definition at line 3026 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first wire.
Definition at line 3432 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first TPC set.
iterators
Definition at line 4975 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first readout plane.
iterators
Definition at line 5202 of file GeometryCore.h.
|
inline |
Returns the ID of the first plane of the specified cryostat.
Definition at line 3038 of file GeometryCore.h.
|
inline |
Returns the ID of the first plane of the specified TPC.
Definition at line 3047 of file GeometryCore.h.
|
inline |
Returns the ID of the first readout plane of the specified cryostat.
Definition at line 5214 of file GeometryCore.h.
|
inline |
Returns the ID of the first readout plane of the specified TPC set.
Definition at line 5223 of file GeometryCore.h.
|
inline |
Returns the ID of the first TPC in the specified cryostat.
Definition at line 2536 of file GeometryCore.h.
|
inline |
Returns the ID of the first TPC set in the specified cryostat.
Definition at line 4987 of file GeometryCore.h.
|
inline |
Returns the ID of the first wire in the specified cryostat.
Definition at line 3444 of file GeometryCore.h.
|
inline |
Returns the ID of the first wire of the specified TPC.
Definition at line 3453 of file GeometryCore.h.
|
inline |
Returns the ID of the first wire of the specified wire plane.
Definition at line 3462 of file GeometryCore.h.
unsigned int geo::GeometryCore::GetClosestOpDet | ( | geo::Point_t const & | point | ) | const |
Find the nearest OpChannel to some point.
xyz | point to be queried, in world coordinates |
std::numeric_limits<unsigned int>max()
if invalid pointgeo::CryostatGeo::GetClosestOpDet()
instead (find the cryostat with PositionToCryostatPtr()
).Definition at line 1867 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::GetClosestOpDet | ( | double const * | point | ) | const |
Definition at line 1878 of file GeometryCore.cxx.
std::string geo::GeometryCore::GetCryostatVolumeName | ( | geo::CryostatID const & | cid | ) | const |
Return the name of LAr TPC volume.
cstat | index of the cryostat |
This information is used in the event display.
Use a cryostat ID instead
What if it does not exist?
Definition at line 746 of file GeometryCore.cxx.
|
inline |
Definition at line 2280 of file GeometryCore.h.
|
inline |
Definition at line 2033 of file GeometryCore.h.
|
inline |
Definition at line 2427 of file GeometryCore.h.
|
inline |
Definition at line 2999 of file GeometryCore.h.
|
inline |
Definition at line 3423 of file GeometryCore.h.
|
inline |
Definition at line 2048 of file GeometryCore.h.
|
inline |
Definition at line 2445 of file GeometryCore.h.
|
inline |
Definition at line 3017 of file GeometryCore.h.
|
inline |
Definition at line 3405 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last subelement of the detector.
GeoID | type of the ID to be returned |
Definition at line 1952 of file GeometryCore.h.
GeoID geo::GeometryCore::GetEndID | ( | ContextID const & | id | ) | const |
Returns the (possibly invalid) ID after the last subelement of the specified element.
GeoID | type of the ID to be returned |
ContextID | type of the ID of the containing element |
id | ID of the containing element |
|
inline |
Initializes the specified ID with the invalid ID after the last cryostat.
Definition at line 2138 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last TPC.
Definition at line 2528 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last plane.
Definition at line 3030 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last wire.
Definition at line 3436 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last TPC set.
Definition at line 4979 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last ROP.
Definition at line 5206 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last plane of the specified cryostat.
Definition at line 3043 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last plane of the specified TPC.
Definition at line 3052 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last readout plane of the specified cryostat.
Definition at line 5219 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last readout plane of the specified TPC set.
Definition at line 5228 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last TPC of the specified cryostat.
Definition at line 2541 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last TPC set of the specified cryostat.
Definition at line 4992 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last wire in the specified cryostat.
Definition at line 3449 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last wire of the specified TPC.
Definition at line 3458 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last wire of the specified wire plane.
Definition at line 3467 of file GeometryCore.h.
std::string geo::GeometryCore::GetLArTPCVolumeName | ( | geo::TPCID const & | tpcid | ) | const |
Return the name of specified LAr TPC volume.
tpcid | ID of the TPC |
tpc | index of TPC in the cryostat |
cstat | index of the cryostat |
This information is used by Geant4 simulation
Definition at line 740 of file GeometryCore.cxx.
|
inline |
Definition at line 2824 of file GeometryCore.h.
|
inline |
Returns the ID next to the specified one.
GeoID | type of the ID to be returned |
id | the element ID to be incremented |
id
Definition at line 1942 of file GeometryCore.h.
|
inline |
Returns the center of side of the detector facing the beam.
Point | _(default: DefaultPoint_t )_ return this point type |
tpcid | ID of the TPC |
Effectively, this is the center of the side of TPC active volume which faces the negative z direction, the first that a beam following the positive z direction crosses.
Definition at line 2777 of file GeometryCore.h.
|
inline |
Definition at line 2779 of file GeometryCore.h.
|
inline |
Returns the center of side of the detector facing the beam.
Point | _(default: DefaultPoint_t )_ return this point type |
tpc | _(default: 0 )_ TPC number within the cryostat cstat |
cstat | _(default: 0 )_ number of cryostat |
GetTPCFrontFaceCenter(geo::TPCID const&)
GetTPCFrontFaceCenter(geo::TPCID const&)
instead. Definition at line 2797 of file GeometryCore.h.
|
inline |
Definition at line 2800 of file GeometryCore.h.
const std::string geo::GeometryCore::GetWorldVolumeName | ( | ) | const |
Return the name of the world volume (needed by Geant4 simulation)
Definition at line 619 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::HardwareChannelFromOpChannel | ( | int | opChannel | ) | const |
Convert unique channel to hardware channel.
Definition at line 283 of file GeometryCore.cxx.
bool geo::GeometryCore::HasChannel | ( | raw::ChannelID_t | channel | ) | const |
Returns whether the specified channel exists and is valid.
channel | the ID of the channel |
A channel is defined as existing and valid if its ID is not invalid and if the channel is physical.
Definition at line 607 of file GeometryCore.cxx.
|
inline |
Returns whether we have the specified cryostat.
The HasElement() method is overloaded and its meaning depends on the type of ID.
Definition at line 2011 of file GeometryCore.h.
|
inline |
Definition at line 2013 of file GeometryCore.h.
|
inline |
Returns whether we have the specified TPC.
Definition at line 2404 of file GeometryCore.h.
|
inline |
Definition at line 2972 of file GeometryCore.h.
|
inline |
Definition at line 3388 of file GeometryCore.h.
|
inline |
Returns whether we have the specified TPC set.
Definition at line 4939 of file GeometryCore.h.
|
inline |
Returns whether we have the specified readout plane
Definition at line 5141 of file GeometryCore.h.
|
inline |
Returns whether we have the specified plane.
The HasElement() method is overloaded and its meaning depends on the type of ID.
Definition at line 2967 of file GeometryCore.h.
bool geo::GeometryCore::HasROP | ( | readout::ROPID const & | ropid | ) | const |
Returns whether we have the specified readout plane
Definition at line 1728 of file GeometryCore.cxx.
|
inline |
Returns whether we have the specified TPC.
Definition at line 2397 of file GeometryCore.h.
bool geo::GeometryCore::HasTPCset | ( | readout::TPCsetID const & | tpcsetid | ) | const |
Returns whether we have the specified TPC set
Definition at line 1684 of file GeometryCore.cxx.
|
inline |
Returns whether we have the specified wire.
The HasElement() method is overloaded and its meaning depends on the type of ID.
Definition at line 3383 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5633 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5639 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5647 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5657 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5667 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5676 of file GeometryCore.h.
std::string geo::GeometryCore::Info | ( | std::string | indent = " " | ) | const |
Returns a string with complete geometry information.
Print()
Definition at line 1098 of file GeometryCore.cxx.
bool geo::GeometryCore::IntersectionPoint | ( | geo::WireID const & | wid1, |
geo::WireID const & | wid2, | ||
double & | y, | ||
double & | z | ||
) | const |
Returns the intersection point of two wires.
wid1 | ID of the first wire |
wid2 | ID of the other wire |
y | (output) y coordinate of the intersection point |
z | (output) z coordinate of the intersection point |
The behaviour of this method reflects the one of WireIDsIntersect()
, which supersedes this one.
To test if the result is infinity, use e.g. std::isfinite(y)
.
WireIDsIntersect()
returning a vector, instead. Definition at line 1657 of file GeometryCore.cxx.
|
inline |
Returns the intersection point of two wires.
wire1 | wire index of the first wire |
wire2 | wire index of the other wire |
plane1 | plane index of the first wire |
plane2 | plane index of the other wire |
cstat | cryostat number |
tpc | tpc number within the cryostat where the planes belong |
y | (output) y coordinate of the intersection point |
z | (output) z coordinate of the intersection point |
No check is performed, not any information provided, about the validity of the result.
WireIDsIntersect()
returning a vector, instead. Definition at line 4259 of file GeometryCore.h.
bool geo::GeometryCore::IntersectLines | ( | double | A_start_x, |
double | A_start_y, | ||
double | A_end_x, | ||
double | A_end_y, | ||
double | B_start_x, | ||
double | B_start_y, | ||
double | B_end_x, | ||
double | B_end_y, | ||
double & | x, | ||
double & | y | ||
) | const |
Computes the intersection between two lines on a plane.
A_start_x | x coordinate of one point of the first segment |
A_start_y | y coordinate of one point of the first segment |
A_end_x | x coordinate of another point of the first segment |
A_end_y | y coordinate of another point of the first segment |
B_start_x | x coordinate of one point of the second segment |
B_start_y | y coordinate of one point of the second segment |
B_end_x | x coordinate of another point of the second segment |
B_end_y | y coordinate of another point of the second segment |
x | _(output)_ variable to store the x coordinate of intersection |
y | _(output)_ variable to store the y coordinate of intersection |
The order of the ends is not relevant. The return value is false
if the two segments are parallel. In that case, x
and y
variables are not changed. Otherwise, they hold the intersection coordinate, even if the intersection point is beyond one or both the segments.
Definition at line 1320 of file GeometryCore.cxx.
bool geo::GeometryCore::IntersectSegments | ( | double | A_start_x, |
double | A_start_y, | ||
double | A_end_x, | ||
double | A_end_y, | ||
double | B_start_x, | ||
double | B_start_y, | ||
double | B_end_x, | ||
double | B_end_y, | ||
double & | x, | ||
double & | y | ||
) | const |
Computes the intersection between two segments on a plane.
A_start_x | x coordinate of the start of the first segment |
A_start_y | y coordinate of the start of the first segment |
A_end_x | x coordinate of the end of the first segment |
A_end_y | y coordinate of the end of the first segment |
B_start_x | x coordinate of the start of the second segment |
B_start_y | y coordinate of the start of the second segment |
B_end_x | x coordinate of the end of the second segment |
B_end_y | y coordinate of the end of the second segment |
x | _(output)_ variable to store the x coordinate of intersection |
y | _(output)_ variable to store the y coordinate of intersection |
The order of the ends is not relevant. The return value is false
if the two segments are parallel, or if their intersection point is not on both the segments. If the segments are parallel, x and y variables are not changed. Otherwise, they hold the intersection coordinate, even if the intersection point is beyond one or both the segments.
Definition at line 1347 of file GeometryCore.cxx.
bool geo::GeometryCore::IsValidOpChannel | ( | int | opChannel | ) | const |
Is this a valid OpChannel number?
Definition at line 290 of file GeometryCore.cxx.
|
inline |
Enables ranged-for loops on all cryostat IDs of the detector.
Example of usage:
for (geo::CryostatID const& cID: geom->IterateCryostatIDs()) { geo::CryostatGeo const& Cryo = geom->Cryostat(cID); // useful code here } // for all cryostats
Definition at line 2179 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all cryostats of the detector.
Example of usage:
for (geo::CryostatGeo const& Cryo: geom->IterateCryostats()) { // useful code here } // for all cryostats
Definition at line 2198 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all plane IDs of the detector.
Example of usage:
Definition at line 3127 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all plane IDs of the specified cryostat.
cid | the ID of the cryostat to loop the plane IDs of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3152 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all plane IDs of the specified TPC.
tid | the ID of the TPC to loop the plane IDs of |
If the TPC ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3176 of file GeometryCore.h.
|
delete |
IteratePlaneIDs()
is not supported on plane IDs.
|
delete |
IteratePlaneIDs()
is not supported on wire IDs.
|
delete |
IteratePlaneIDs()
is not supported on readout IDs.
|
delete |
IteratePlaneIDs()
is not supported on readout IDs.
|
inline |
Enables ranged-for loops on all planes of the detector.
Example of usage:
Definition at line 3209 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all planes of the specified cryostat.
cid | the ID of the cryostat to loop the planes of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3232 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all planes of the specified TPC.
tid | the ID of the TPC to loop the planes of |
If the TPC ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3255 of file GeometryCore.h.
|
delete |
IteratePlanes()
is not supported on plane IDs.
|
delete |
IteratePlanes()
is not supported on wire IDs.
|
delete |
IteratePlanes()
is not supported on readout IDs.
|
delete |
IteratePlanes()
is not supported on readout IDs.
|
inline |
Enables ranged-for loops on all readout plane IDs of the detector.
Example of usage:
Definition at line 5277 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all readout plane IDs of the specified cryostat.
cid | the ID of the cryostat to loop the readout plane IDs of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 5301 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all readout plane IDs of the specified TPC set.
sid | the ID of the TPC set to loop the readout plane IDs of |
If the TPC set ID is invalid, the effect is undefined.
Example of usage:
Definition at line 5325 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all TPC IDs of the detector.
Example of usage:
Definition at line 2597 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all TPC IDs of the specified cryostat.
cid | the ID of the cryostat to loop the TPC IDs of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 2621 of file GeometryCore.h.
|
delete |
IterateTPCIDs()
is not supported on TPC IDs.
|
delete |
IterateTPCIDs()
is not supported on plane IDs.
|
delete |
IterateTPCIDs()
is not supported on wire IDs.
|
delete |
IterateTPCIDs()
is not supported on readout IDs.
|
delete |
IterateTPCIDs()
is not supported on readout IDs.
|
inline |
Enables ranged-for loops on all TPCs of the detector.
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 2655 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all TPCs of the specified cryostat.
cid | the ID of the cryostat to loop the TPCs of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 2678 of file GeometryCore.h.
|
delete |
IterateTPCs()
is not supported on TPC IDs.
|
delete |
IterateTPCs()
is not supported on plane IDs.
|
delete |
IterateTPCs()
is not supported on wire IDs.
|
delete |
IterateTPCs()
is not supported on readout IDs.
|
delete |
IterateTPCs()
is not supported on readout IDs.
|
inline |
Enables ranged-for loops on all TPC set IDs of the detector.
Example of usage:
Definition at line 5032 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all TPC set IDs of the specified cryostat.
cid | the ID of the cryostat to loop the TPC set IDs of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 5056 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wire IDs of the detector.
Example of usage:
Definition at line 3554 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wire IDs of specified cryostat.
cid | the ID of the cryostat to loop the wires of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3579 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wire IDs of specified TPC.
tid | the ID of the TPC to loop the wires of |
If the TPC ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3604 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wire IDs of specified wire plane.
pid | the ID of the wire plane to loop the wires of |
If the wire plane ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3629 of file GeometryCore.h.
|
delete |
IterateWireIDs()
is not supported on wire IDs.
|
delete |
IterateWireIDs()
is not supported on readout IDs.
|
delete |
IterateWireIDs()
is not supported on readout IDs.
|
inline |
Enables ranged-for loops on all wires of the detector.
Example of usage:
Definition at line 3658 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wires of specified cryostat.
cid | the ID of the cryostat to loop the wires of |
If the cryostat ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3682 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wires of specified TPC.
tid | the ID of the TPC to loop the wires of |
If the TPC ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3706 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wires of specified wire plane.
pid | the ID of the wire plane to loop the wires of |
If the wire plane ID is invalid, the effect is undefined.
Example of usage:
Definition at line 3730 of file GeometryCore.h.
|
delete |
IterateWires()
is not supported on wire IDs.
|
delete |
IterateWires()
is not supported on readout IDs.
|
delete |
IterateWires()
is not supported on readout IDs.
void geo::GeometryCore::LoadGeometryFile | ( | std::string | gdmlfile, |
std::string | rootfile, | ||
geo::GeometryBuilder & | builder, | ||
bool | bForceReload = false |
||
) |
Loads the geometry information from the specified files.
gdmlfile | path to file to be used for Geant4 simulation |
rootfile | path to file for internal geometry representation |
builder | algorithm to be used for the interpretation of geometry |
bForceReload | reload even if there is already a valid geometry |
Both paths must directly resolve to an available file, as no search is performed for them.
The gdmlfile parameter does not have to necessarily be in GDML format, as long as it's something supported by Geant4. This file is not used by the geometry, but its path is provided on request by the simulation modules (see LArSoft LArG4
module). The rootfile also does not need to be a ROOT file, but just anything that TGeoManager::Import() supports. This file is parsed immediately and the internal geometry representation is built out of it.
Definition at line 91 of file GeometryCore.cxx.
void geo::GeometryCore::LoadGeometryFile | ( | std::string | gdmlfile, |
std::string | rootfile, | ||
bool | bForceReload = false |
||
) |
Loads the geometry information from the specified files.
gdmlfile | path to file to be used for Geant4 simulation |
rootfile | path to file for internal geometry representation |
bForceReload | reload even if there is already a valid geometry |
This legacy version of LoadGeometryFile()
uses a standard geo::GeometryBuilder
implementation. Do not rely on it if you can avoid it.
Definition at line 146 of file GeometryCore.cxx.
|
inline |
Returns a container with one entry per wire plane.
T | type of data in the container |
T
per plane geo::PlaneDataContainer
The working assumption is that all cryostats have the same number of TPCs, and all TPCs have the same number of planes. It is always guaranteed that all existing planes have an entry in the container, although if the previous working assumption is not satisfied there will be entries in the containers which are not associated to a valid plane.
The interface of the container is detailed in the documentation of the container itself, geo::PlaneDataContainer
. Example of usage:
where the container will be filled with pointers to all hits on the given wire plane (wire IDs are implicitly converted into plane IDs in the index operator[]
call).
Definition at line 2882 of file GeometryCore.h.
|
inline |
Returns a container with one entry per wire plane.
T | type of data in the container |
defValue | the initial value of all elements in the container |
T
per plane geo::PlaneDataContainer
This function operates as makePlaneData() const
, except that copies the specified value into all the entries of the container. Example:
Definition at line 2904 of file GeometryCore.h.
|
inline |
Returns a container with one entry per readout plane.
T | type of data in the container |
T
per readout plane readout::ROPDataContainer
The working assumption is that all cryostats have the same number of TPC sets, and all TPC sets have the same number of readout planes. It is always guaranteed that all existing readout planes have an entry in the container, although if the previous working assumption is not satisfied there will be entries in the container which are not associated to a valid readout plane.
The interface of the container is detailed in the documentation of the container itself, readout::ROPDataContainer
. Example of usage:
Definition at line 5110 of file GeometryCore.h.
|
inline |
Returns a container with one entry per readout plane.
T | type of data in the container |
defValue | the initial value of all elements in the container |
T
per readout plane readout::ROPDataContainer
This function operates as makeROPdata() const
, except that copies the specified value into all the entries of the container. Example:
Definition at line 5128 of file GeometryCore.h.
|
inline |
Returns a container with one entry per TPC.
T | type of data in the container |
T
per TPC geo::TPCDataContainer
The working assumption is that all cryostats have the same number of TPCs. It is always guaranteed that all existing TPCs have an entry in the container, although if the previous working assumption is not satisfied there will be entries in the containers which are not associated to a valid TPC.
The interface of the container is detailed in the documentation of the container itself, geo::TPCDataContainer
. Example of usage:
where the container will be filled with pointers to all tracks starting from a given TPC (tracks reconstructed as starting outside the TPCs will be not saved in the container).
Definition at line 2342 of file GeometryCore.h.
|
inline |
Returns a container with one entry per TPC.
T | type of data in the container |
defValue | the initial value of all elements in the container |
defValue
per each TPC geo::TPCDataContainer
This function operates as makeTPCData() const
, except that copies the specified value into all the entries of the container. Example:
Definition at line 2365 of file GeometryCore.h.
|
inline |
Returns a container with one entry per TPC set.
T | type of data in the container |
T
per TPC set readout::TPCsetDataContainer
The working assumption is that all cryostats have the same number of TPC sets. It is always guaranteed that all existing TPC sets have an entry in the container, although if the previous working assumption is not satisfied there will be entries in the containers which are not associated to a valid TPC set.
The interface of the container is detailed in the documentation of the container itself, readout::TPCsetDataContainer
. Example of usage:
Definition at line 4909 of file GeometryCore.h.
|
inline |
Returns a container with one entry per TPC set.
T | type of data in the container |
defValue | the initial value of all elements in the container |
defValue
per each TPC set readout::TPCsetDataContainer
This function operates as makeTPCsetData() const
, except that it copies the specified value into all the entries of the container. Example:
Definition at line 4927 of file GeometryCore.h.
double geo::GeometryCore::MassBetweenPoints | ( | geo::Point_t const & | p1, |
geo::Point_t const & | p2 | ||
) | const |
Returns the column density between two points.
p1 | the first point |
p2 | the second point |
The column density is defined as where is the density at point , which the integral leads from p1
to p2
in a straight line.
Both points are specified in world coordinates.
Definition at line 1056 of file GeometryCore.cxx.
double geo::GeometryCore::MassBetweenPoints | ( | double * | p1, |
double * | p2 | ||
) | const |
TGeoMaterial const * geo::GeometryCore::Material | ( | geo::Point_t const & | point | ) | const |
Returns the material at the specified position.
Definition at line 966 of file GeometryCore.cxx.
|
inline |
Name of the deepest material containing the point xyz.
Definition at line 1883 of file GeometryCore.h.
std::string geo::GeometryCore::MaterialName | ( | geo::Point_t const & | point | ) | const |
Definition at line 974 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::MaxOpChannel | ( | ) | const |
Largest optical channel number.
Definition at line 259 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::MaxPlanes | ( | ) | const |
Returns the largest number of planes among all TPCs in this detector.
Definition at line 878 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::MaxROPs | ( | ) | const |
Returns the largest number of ROPs a TPC set in the detector has.
Definition at line 1722 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::MaxTPCs | ( | ) | const |
Returns the largest number of TPCs a cryostat in the detector has.
Definition at line 858 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::MaxTPCsets | ( | ) | const |
Returns the largest number of TPC sets any cryostat in the detector has.
Definition at line 1678 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::MaxWires | ( | ) | const |
Returns the largest number of wires among all planes in this detector.
Definition at line 888 of file GeometryCore.cxx.
|
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 4549 of file GeometryCore.h.
unsigned int geo::GeometryCore::NAuxDetSensitive | ( | size_t const & | aid | ) | const |
Returns the number of sensitive components of auxiliary detector.
aid | ID of the auxiliary detector |
Definition at line 296 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::Nchannels | ( | ) | const |
Returns the number of TPC readout channels in the detector.
Definition at line 208 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::Nchannels | ( | readout::ROPID const & | ropid | ) | const |
Returns the number of channels in the specified ROP.
Definition at line 214 of file GeometryCore.cxx.
|
inline |
Returns the number of cryostats in the detector.
The NElements() and NSiblingElements() methods are overloaded and their return depends on the type of ID.
Definition at line 1994 of file GeometryCore.h.
raw::ChannelID_t geo::GeometryCore::NearestChannel | ( | geo::Point_t const & | worldLoc, |
geo::PlaneID const & | planeid | ||
) | const |
Returns the ID of the channel nearest to the specified position.
worldLoc | 3D coordinates of the point (world reference frame) |
planeid | ID of the wire plane the channel must belong to |
raw::InvalidChannelID
if invalid wire geo::InvalidWireError
exception is thrownDefinition at line 1207 of file GeometryCore.cxx.
raw::ChannelID_t geo::GeometryCore::NearestChannel | ( | const double | worldLoc[3], |
geo::PlaneID const & | planeid | ||
) | const |
Returns the ID of the channel nearest to the specified position.
worldLoc | 3D coordinates of the point (world reference frame) |
PlaneNo | the number of plane |
TPCNo | the number of TPC |
cstat | the number of cryostat |
geo::InvalidWireError
exception is thrownThe different versions allow different way to provide the position.
Definition at line 1190 of file GeometryCore.cxx.
raw::ChannelID_t geo::GeometryCore::NearestChannel | ( | std::vector< double > const & | worldLoc, |
geo::PlaneID const & | planeid | ||
) | const |
Definition at line 1197 of file GeometryCore.cxx.
|
inline |
Definition at line 4819 of file GeometryCore.h.
|
inline |
Definition at line 4821 of file GeometryCore.h.
|
inline |
Definition at line 4826 of file GeometryCore.h.
|
inline |
Definition at line 4831 of file GeometryCore.h.
|
inline |
Definition at line 4836 of file GeometryCore.h.
unsigned int geo::GeometryCore::NearestWire | ( | geo::Point_t const & | point, |
geo::PlaneID const & | planeid | ||
) | const |
Returns the index of wire closest to position in the specified TPC.
point | the point to be tested [cm] |
planeid | ID of the plane |
geo::WireID::InvalidID
on failure geo::InvalidWireError
is thrownDefinition at line 1141 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::NearestWire | ( | const double | worldLoc[3], |
geo::PlaneID const & | planeid | ||
) | const |
Returns the index of wire closest to position in the specified TPC.
worldLoc | 3D coordinates of the point (world reference frame) |
planeid | ID of the plane |
PlaneNo | plane number within the TPC |
TPCNo | tpc number within the cryostat |
cstat | cryostat number |
The different versions allow different way to provide the position.
remove the integers version
what happens when no wire is found?
Definition at line 1149 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::NearestWire | ( | std::vector< double > const & | worldLoc, |
geo::PlaneID const & | planeid | ||
) | const |
Definition at line 1156 of file GeometryCore.cxx.
|
inline |
Definition at line 4005 of file GeometryCore.h.
|
inline |
Definition at line 4007 of file GeometryCore.h.
|
inline |
Definition at line 4012 of file GeometryCore.h.
|
inline |
Definition at line 4017 of file GeometryCore.h.
|
inline |
Definition at line 4022 of file GeometryCore.h.
geo::WireID geo::GeometryCore::NearestWireID | ( | geo::Point_t const & | point, |
geo::PlaneID const & | planeid | ||
) | const |
Returns the ID of wire closest to position in the specified TPC.
point | the point to be tested [cm] |
planeid | ID of the plane |
geo::PlaneGeo::ClosestWireID()
If the nearest wire is not closer than half a wire pitch, the result is marked invalid. The returned (invalid) ID will contain the non-existing wire that would be the nearest, if it existed.
If the wire ID is invalid and the existing closest wire is desired, a possible solution is (when the BUG will be solved):
Note however that this will execute plane lookup twice, and a more efficient approach would be to ask the plane everything directly:
Until the BUG is fixed, the actual working code is:
Definition at line 1166 of file GeometryCore.cxx.
geo::WireID geo::GeometryCore::NearestWireID | ( | const double | point[3], |
geo::PlaneID const & | planeid | ||
) | const |
Returns the ID of wire closest to position in the specified TPC.
point | the point to be tested [cm] |
planeid | ID of the plane |
PlaneNo | plane number within the TPC |
TPCNo | tpc number within the cryostat |
cstat | cryostat number |
The different versions allow different way to provide the position.
geo::Point_t
and PlaneID
arguments Definition at line 1183 of file GeometryCore.cxx.
geo::WireID geo::GeometryCore::NearestWireID | ( | std::vector< double > const & | point, |
geo::PlaneID const & | planeid | ||
) | const |
Definition at line 1173 of file GeometryCore.cxx.
|
inline |
Definition at line 3948 of file GeometryCore.h.
|
inline |
Definition at line 3950 of file GeometryCore.h.
|
inline |
Definition at line 3955 of file GeometryCore.h.
|
inline |
Definition at line 3960 of file GeometryCore.h.
|
inline |
Definition at line 3965 of file GeometryCore.h.
|
inline |
Definition at line 1995 of file GeometryCore.h.
|
inline |
Definition at line 2386 of file GeometryCore.h.
|
inline |
Definition at line 2924 of file GeometryCore.h.
|
inline |
Definition at line 3361 of file GeometryCore.h.
unsigned int geo::GeometryCore::NOpChannels | ( | ) | const |
Number of electronics channels for all the optical detectors.
Definition at line 253 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::NOpDets | ( | ) | const |
Number of OpDets in the whole detector.
Definition at line 244 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::NOpHardwareChannels | ( | int | opDet | ) | const |
Definition at line 265 of file GeometryCore.cxx.
|
inline |
Returns the total number of wire planes in the specified TPC.
tpc | tpc number within the cryostat |
cstat | cryostat number |
Make all the arguments mandatory (as TPCID)
Change return type to size_t
what happens if TPC does not exist?
Definition at line 2848 of file GeometryCore.h.
|
inline |
Returns the total number of planes in the specified TPC.
tpcid | TPC ID |
The NElements() and NSiblingElements() methods are overloaded and their return depends on the type of ID.
Definition at line 2919 of file GeometryCore.h.
unsigned int geo::GeometryCore::NROPs | ( | readout::TPCsetID const & | tpcsetid | ) | const |
Returns the total number of ROP in the specified TPC set.
tpcsetid | TPC set ID |
Note that this methods explicitly check the existence of the TPC set.
The NSiblingElements() method is overloaded and its return depends on the type of ID.
Definition at line 1716 of file GeometryCore.cxx.
|
inline |
Definition at line 1996 of file GeometryCore.h.
|
inline |
Definition at line 2388 of file GeometryCore.h.
|
inline |
Definition at line 2926 of file GeometryCore.h.
|
inline |
Definition at line 3363 of file GeometryCore.h.
|
inline |
Definition at line 4880 of file GeometryCore.h.
|
inline |
Definition at line 5080 of file GeometryCore.h.
|
inline |
Returns the total number of TPCs in the specified cryostat.
cstat | cryostat number |
Make the cryostat number mandatory (as CryostatID)
Change return type to size_t
what happens if it does not exist?
Definition at line 2303 of file GeometryCore.h.
|
inline |
Returns the total number of TPCs in the specified cryostat.
cryoid | cryostat number |
The NElements() and NSiblingElements() methods are overloaded and their return depends on the type of ID.
Definition at line 2381 of file GeometryCore.h.
unsigned int geo::GeometryCore::NTPCsets | ( | readout::CryostatID const & | cryoid | ) | const |
Returns the total number of TPC sets in the specified cryostat.
cryoid | cryostat ID |
The NSiblingElements() method is overloaded and its return depends on the type of ID.
Definition at line 1672 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::Nviews | ( | ) | const |
Returns the number of views (different wire orientations)
Returns the number of different views, or wire orientations, in the detector.
The function assumes that all TPCs in all cryostats of a detector have the same number of planes, which should be a safe assumption.
Definition at line 307 of file GeometryCore.cxx.
|
inline |
Returns the total number of wires in the specified plane.
p | plane number within the TPC |
tpc | tpc number within the cryostat |
cstat | cryostat number |
Make all the arguments mandatory (as PlaneID)
Change return type to size_t
what happens if it does not exist?
Definition at line 3342 of file GeometryCore.h.
|
inline |
Returns the total number of wires in the specified plane.
planeid | plane ID |
The NElements() and NSiblingElements() methods are overloaded and their return depends on the type of ID.
Definition at line 3356 of file GeometryCore.h.
unsigned int geo::GeometryCore::OpChannel | ( | int | detNum, |
int | hardwareChannel | ||
) | const |
Convert detector number and hardware channel to unique channel.
Definition at line 271 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::OpDetFromCryo | ( | unsigned int | o, |
unsigned int | c | ||
) | const |
Get unique opdet number from cryo and internal count.
Definition at line 1788 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::OpDetFromOpChannel | ( | int | opChannel | ) | const |
Convert unique channel to detector number.
Definition at line 277 of file GeometryCore.cxx.
const OpDetGeo & geo::GeometryCore::OpDetGeoFromOpChannel | ( | unsigned int | OpChannel | ) | const |
Returns the geo::OpDetGeo
object for the given channel number.
OpChannel | optical detector unique channel number |
Definition at line 1824 of file GeometryCore.cxx.
const OpDetGeo & geo::GeometryCore::OpDetGeoFromOpDet | ( | unsigned int | OpDet | ) | const |
Returns the geo::OpDetGeo
object for the given detector number.
OpDet | optical detector unique number |
Definition at line 1830 of file GeometryCore.cxx.
std::string geo::GeometryCore::OpDetGeoName | ( | unsigned int | c = 0 | ) | const |
Returns gdml string which gives sensitive opdet name.
c | ID of the cryostat the detector is in |
This name is defined in the geometry (GDML) description.
Definition at line 1781 of file GeometryCore.cxx.
|
delete |
|
delete |
|
inline |
Returns the specified wire.
planeid | ID of the plane |
p | plane number within the TPC |
tpc | TPC number within the cryostat |
cstat | number of cryostat |
cet::exception | (GeometryCore category) if cryostat not present |
cet::exception | (TPCOutOfRange category) if no such TPC |
cet::exception | (PlaneOutOfRange category) if no such plane |
The GetElement() method is overloaded and its return depends on the type of ID.
Definition at line 2994 of file GeometryCore.h.
|
inline |
Definition at line 2997 of file GeometryCore.h.
std::set< PlaneID > const & geo::GeometryCore::PlaneIDs | ( | ) | const |
Returns a list of possible PlaneIDs in the detector.
Definition at line 613 of file GeometryCore.cxx.
double geo::GeometryCore::PlanePitch | ( | geo::TPCID const & | tpcid, |
geo::PlaneID::PlaneID_t | p1 = 0 , |
||
geo::PlaneID::PlaneID_t | p2 = 1 |
||
) | const |
Returns the distance between two planes.
p1 | index of the first plane |
p2 | index of the second plane |
tpc | tpc number within the cryostat |
cstat | cryostat number |
add a version with plane IDs
deprecate this function
add a default version for a given TPCID
add a version with two plane indices for a given TPCID
return the absolute value of the distance (makes the order unimportant)
document what will happen (in the future methods) with planes on different TPCs
Definition at line 800 of file GeometryCore.cxx.
double geo::GeometryCore::PlanePitch | ( | geo::PlaneID const & | pid1, |
geo::PlaneID const & | pid2 | ||
) | const |
Definition at line 809 of file GeometryCore.cxx.
double geo::GeometryCore::PlanePitch | ( | unsigned int | p1 = 0 , |
unsigned int | p2 = 1 , |
||
unsigned int | tpc = 0 , |
||
unsigned int | cstat = 0 |
||
) | const |
Definition at line 814 of file GeometryCore.cxx.
|
inline |
Returns the specified plane.
planeid | plane ID |
The GetElementPtr() method is overloaded and its return depends on the type of ID.
Definition at line 3012 of file GeometryCore.h.
raw::ChannelID_t geo::GeometryCore::PlaneWireToChannel | ( | WireID const & | wireid | ) | const |
Returns the ID of the TPC channel connected to the specified wire.
plane | the number of plane |
wire | the number of wire |
tpc | the number of TPC |
cryostat | the number of cryostat |
wireid | the ID of the wire |
Verify the raw::InvalidChannelID part
remove the integers version
Definition at line 1226 of file GeometryCore.cxx.
|
inline |
Definition at line 4738 of file GeometryCore.h.
|
staticprivate |
Returns whether x and y are within both specified ranges (A and B).
Definition at line 1913 of file GeometryCore.cxx.
const AuxDetGeo & geo::GeometryCore::PositionToAuxDet | ( | geo::Point_t const & | point, |
unsigned int & | ad, | ||
double | tolerance = 0 |
||
) | const |
Returns the auxiliary detector at specified location.
point | location to be tested |
ad | _(output)_ the auxiliary detector index |
tolerance | tolerance (cm) for matches. Default 0. |
Definition at line 511 of file GeometryCore.cxx.
const AuxDetGeo & geo::GeometryCore::PositionToAuxDet | ( | double const | worldLoc[3], |
unsigned int & | ad, | ||
double | tolerance = 0 |
||
) | const |
Returns the auxiliary detector at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
ad | (output) the auxiliary detector index |
tolerance | tolerance (cm) for matches. Default 0. |
geo::Point_t
. Definition at line 520 of file GeometryCore.cxx.
const AuxDetSensitiveGeo & geo::GeometryCore::PositionToAuxDetSensitive | ( | geo::Point_t const & | point, |
size_t & | ad, | ||
size_t & | sv, | ||
double | tolerance = 0 |
||
) | const |
Returns the auxiliary detector at specified location.
point | location to be tested |
ad | _(output)_ the auxiliary detector index |
sv | _(output)_ the auxiliary detector sensitive volume index |
tolerance | tolerance (cm) for matches. Default 0. |
Definition at line 542 of file GeometryCore.cxx.
const AuxDetSensitiveGeo & geo::GeometryCore::PositionToAuxDetSensitive | ( | double const | worldLoc[3], |
size_t & | ad, | ||
size_t & | sv, | ||
double | tolerance = 0 |
||
) | const |
Returns the auxiliary detector at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
ad | (output) the auxiliary detector index |
sv | (output) the auxiliary detector sensitive volume index |
tolerance | tolerance (cm) for matches. Default 0. |
geo::Point_t
. Definition at line 551 of file GeometryCore.cxx.
geo::CryostatGeo const & geo::GeometryCore::PositionToCryostat | ( | geo::Point_t const & | point | ) | const |
Returns the cryostat at specified location.
point | the location [cm] |
geo::CryostatGeo
containing point
cet::exception | ("Geometry" category) if no cryostat matches |
The tolerance used here is the one returned by DefaultWiggle().
Definition at line 460 of file GeometryCore.cxx.
|
inline |
Definition at line 2097 of file GeometryCore.h.
const CryostatGeo & geo::GeometryCore::PositionToCryostat | ( | double const | worldLoc[3], |
geo::CryostatID & | cid | ||
) | const |
Returns the cryostat at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
cid | (output) cryostat ID |
cet::exception | ("Geometry" category) if no cryostat matches |
The tolerance used here is the one returned by DefaultWiggle().
PositionToCryostat(geo::Point_t const&)
instead. Definition at line 473 of file GeometryCore.cxx.
const CryostatGeo & geo::GeometryCore::PositionToCryostat | ( | double const | worldLoc[3], |
unsigned int & | cstat | ||
) | const |
Returns the cryostat at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
cstat | (output) number of cryostat |
cet::exception | ("Geometry" category) if no cryostat matches |
The tolerance used here is the one returned by DefaultWiggle().
PositionToCryostat(geo::Point_t const&)
instead. Definition at line 487 of file GeometryCore.cxx.
geo::CryostatID geo::GeometryCore::PositionToCryostatID | ( | geo::Point_t const & | point | ) | const |
Returns the ID of the cryostat at specified location.
point | the location [cm] |
point
(invalid if none)The tolerance used here is the one returned by DefaultWiggle().
Definition at line 384 of file GeometryCore.cxx.
geo::CryostatGeo const * geo::GeometryCore::PositionToCryostatPtr | ( | geo::Point_t const & | point | ) | const |
Returns the cryostat at specified location.
point | the location [cm] |
geo::CryostatGeo
including point
, or nullptr
The tolerance used here is the one returned by DefaultWiggle().
Definition at line 372 of file GeometryCore.cxx.
geo::TPCGeo const & geo::GeometryCore::PositionToTPC | ( | geo::Point_t const & | point | ) | const |
Returns the TPC at specified location.
point | the location [cm] |
geo::TPCGeo
including point
cet::exception | ("Geometry" category) if no TPC matches |
Definition at line 419 of file GeometryCore.cxx.
|
inline |
Definition at line 2484 of file GeometryCore.h.
TPCGeo const & geo::GeometryCore::PositionToTPC | ( | double const | worldLoc[3], |
unsigned int & | tpc, | ||
unsigned int & | cstat | ||
) | const |
Returns the TPC at specified location.
point | the location [cm] |
tpc | _(output)_ where to store the number of TPC |
cstat | _(output)_ where to store the number of cryostat |
geo::TPCGeo
including point
cet::exception | ("Geometry" category) if no TPC matches |
Definition at line 442 of file GeometryCore.cxx.
Returns the TPC at specified location.
point | the location [cm] |
tpcid | _(output)_ where to store the TPC ID |
geo::TPCGeo
including point
cet::exception | ("Geometry" category) if no TPC matches |
Definition at line 432 of file GeometryCore.cxx.
geo::TPCID geo::GeometryCore::PositionToTPCID | ( | geo::Point_t const & | point | ) | const |
Returns the ID of the TPC at specified location.
point | the location [cm] |
PositionToTPC()
Definition at line 452 of file GeometryCore.cxx.
geo::TPCGeo const * geo::GeometryCore::PositionToTPCptr | ( | geo::Point_t const & | point | ) | const |
Returns the TPC at specified location.
point | the location [cm] |
geo::TPCGeo
including point
, or nullptr
if none Definition at line 410 of file GeometryCore.cxx.
void geo::GeometryCore::Print | ( | Stream && | out, |
std::string | indent = " " |
||
) | const |
Prints geometry information with maximum verbosity.
Definition at line 5704 of file GeometryCore.h.
|
inline |
Returns the full directory path to the geometry file source.
This is the full path of the source of the detector geometry GeometryCore relies on.
Definition at line 1740 of file GeometryCore.h.
TGeoManager * geo::GeometryCore::ROOTGeoManager | ( | ) | const |
Access to the ROOT geometry description manager.
Definition at line 202 of file GeometryCore.cxx.
std::vector< geo::TPCID > geo::GeometryCore::ROPtoTPCs | ( | readout::ROPID const & | ropid | ) | const |
Returns a list of ID of TPCs the specified ROP spans.
ropid | ID of the readout plane |
Note that this check is performed on the validity of the readout plane ID, that does not necessarily imply that the readout plane specified by the ID actually exists. Check if the ROP exists with HasROP(). The behaviour on non-existing readout planes is undefined.
Definition at line 1750 of file GeometryCore.cxx.
std::vector< geo::PlaneID > geo::GeometryCore::ROPtoWirePlanes | ( | readout::ROPID const & | ropid | ) | const |
Returns a list of ID of planes belonging to the specified ROP.
ropid | ID of the readout plane |
If ropid is an invalid ID, an empty list is returned. If ropid is a valid ID (i.e. an ID whose isValid flag is set) that points to a non-existent readout plane, the result is undefined. Use HasROP() to check if the readout plane actually exists.
Definition at line 1742 of file GeometryCore.cxx.
|
inlineprotected |
Sets the detector name.
Definition at line 5489 of file GeometryCore.h.
SigType_t geo::GeometryCore::SignalType | ( | geo::PlaneID const & | pid | ) | const |
Returns the type of signal on the channels of specified TPC plane.
plane | TPC plane ID |
Assumes that all the channels on the plane have the same signal type.
Definition at line 578 of file GeometryCore.cxx.
SigType_t geo::GeometryCore::SignalType | ( | raw::ChannelID_t const | channel | ) | const |
Returns the type of signal on the specified TPC channel.
channel | TPC channel ID |
Definition at line 572 of file GeometryCore.cxx.
geo::SigType_t geo::GeometryCore::SignalType | ( | readout::ROPID const & | ropid | ) | const |
Returns the type of signal of channels in specified readout plane.
ropid | readout plane ID |
Assumes that all the channels on the readout plane have the same signal type. If ropid is an invalid ID, geo::kMysteryType is returned. If ropid is a valid ID (i.e. an ID whose isValid flag is set) that points to a non-existent readout plane, the result is undefined. Use HasROP() to check if the readout plane actually exists.
Definition at line 1771 of file GeometryCore.cxx.
|
private |
Runs the sorting of geometry with the sorter provided by channel mapping.
Definition at line 168 of file GeometryCore.cxx.
|
inline |
The position of the detector respect to earth surface.
This is the depth (y) of the surface (where earth meets air) for this detector site. The number is expressed in world coordinates and in centimetres, and it represents the y coordinate of earth surface. A negative value means that the origin of coordinates, typically matching the detector centre, is above surface.
Definition at line 1812 of file GeometryCore.h.
geo::PlaneID geo::GeometryCore::ThirdPlane | ( | geo::PlaneID const & | pid1, |
geo::PlaneID const & | pid2 | ||
) | const |
Returns the plane that is not in the specified arguments.
pid1 | a plane |
pid2 | another plane |
cet::exception | (category: "GeometryCore") if other than 3 planes |
cet::exception | (category: "GeometryCore") if pid1 and pid2 match |
This function requires a geometry with exactly three planes. If the two input planes are not on the same TPC, the result is undefined.
Definition at line 1482 of file GeometryCore.cxx.
double geo::GeometryCore::ThirdPlane_dTdW | ( | geo::PlaneID const & | pid1, |
double | slope1, | ||
geo::PlaneID const & | pid2, | ||
double | slope2, | ||
geo::PlaneID const & | output_plane | ||
) | const |
Returns dT/dW on the third plane, given it in the other two.
pid1 | ID of the plane of the first dT/dW |
dTdW1 | dT/dW as seen on the first plane |
pid2 | ID of the plane of the second dT/dW |
dTdW2 | dT/dW as seen on the second plane |
output_plane | ID of the plane on which to calculate the slope |
cet::exception | (category: "GeometryCore") if different TPC |
cet::exception | (category: "GeometryCore") if same plane |
cet::exception | (category: "GeometryCore") if other than 3 planes |
Given a dT/dW as projected in two planes, returns the dT/dW as projected in the third plane. The dT/dW are defined in time ticks/wide number units.
Definition at line 1559 of file GeometryCore.cxx.
double geo::GeometryCore::ThirdPlane_dTdW | ( | geo::PlaneID const & | pid1, |
double | slope1, | ||
geo::PlaneID const & | pid2, | ||
double | slope2 | ||
) | const |
Returns dT/dW on the third plane, given it in the other two.
pid1 | ID of the plane of the first dT/dW |
dTdW1 | dT/dW as seen on the first plane |
pid2 | ID of the plane of the second dT/dW |
dTdW2 | dT/dW as seen on the second plane |
cet::exception | (category: "GeometryCore") if different TPC |
cet::exception | (category: "GeometryCore") if same plane |
cet::exception | (category: "GeometryCore") if other than 3 planes |
Given a dT/dW as projected in two planes, returns the dT/dW as projected in the third plane. This function is a shortcut assuming exactly three wire planes in the TPC, in which case the output plane is chosen as the one that is neither of the input planes.
Definition at line 1590 of file GeometryCore.cxx.
double geo::GeometryCore::ThirdPlaneSlope | ( | geo::PlaneID const & | pid1, |
double | slope1, | ||
geo::PlaneID const & | pid2, | ||
double | slope2, | ||
geo::PlaneID const & | output_plane | ||
) | const |
Returns the slope on the third plane, given it in the other two.
pid1 | ID of the plane of the first slope |
slope1 | slope as seen on the first plane |
pid2 | ID of the plane of the second slope |
slope2 | slope as seen on the second plane |
output_plane | ID of the plane on which to calculate the slope |
cet::exception | (category: "GeometryCore") if different TPC |
cet::exception | (category: "GeometryCore") if input planes match |
Given a slope as projected in two planes, returns the slope as projected in the specified output plane. The slopes are defined in uniform units; they should be computed as distance ratios (or tangent of a geometrical angle; the formula is still valid using dt/dw directly in case of equal wire pitch in all planes and uniform drift velocity.
Definition at line 1529 of file GeometryCore.cxx.
double geo::GeometryCore::ThirdPlaneSlope | ( | geo::PlaneID const & | pid1, |
double | slope1, | ||
geo::PlaneID const & | pid2, | ||
double | slope2 | ||
) | const |
Returns the slope on the third plane, given it in the other two.
pid1 | ID of the plane of the first slope |
slope1 | slope as seen on the first plane |
pid2 | ID of the plane of the second slope |
slope2 | slope as seen on the second plane |
cet::exception | (category: "GeometryCore") if different TPC |
cet::exception | (category: "GeometryCore") if same plane |
cet::exception | (category: "GeometryCore") if other than 3 planes |
Given a slope as projected in two planes, returns the slope as projected in the third plane. This function is a shortcut assuming exactly three wire planes in the TPC, in which case the output plane is chosen as the one that is neither of the input planes.
Definition at line 1550 of file GeometryCore.cxx.
|
inline |
Returns the slope on the third plane, given it in the other two.
plane1 | index of the plane of the first slope |
slope1 | slope as seen on the first plane |
plane2 | index of the plane of the second slope |
slope2 | slope as seen on the second plane |
tpcid | TPC where the two planes belong |
cet::exception | (category: "GeometryCore") if different TPC |
cet::exception | (category: "GeometryCore") if same plane |
cet::exception | (category: "GeometryCore") if other than 3 planes |
Given a slope as projected in two planes, returns the slope as projected in the third plane.
Definition at line 4349 of file GeometryCore.h.
|
inline |
Definition at line 4358 of file GeometryCore.h.
|
inline |
Returns the total mass [kg] of the specified volume (default: world).
Definition at line 1891 of file GeometryCore.h.
double geo::GeometryCore::TotalMass | ( | std::string | vol | ) | const |
Definition at line 1042 of file GeometryCore.cxx.
unsigned int geo::GeometryCore::TotalNTPC | ( | ) | const |
Returns the total number of TPCs in the detector.
Definition at line 868 of file GeometryCore.cxx.
|
inline |
Returns the specified TPC.
tpcid | ID of the tpc |
tpc | tpc number within the cryostat |
cstat | number of cryostat |
cet::exception | (GeometryCore category) if cryostat not present |
cet::exception | (TPCOutOfRange category) if no such TPC |
The GetElement() method is overloaded and its return depends on the type of ID.
Definition at line 2423 of file GeometryCore.h.
|
inline |
Definition at line 2425 of file GeometryCore.h.
|
inline |
Returns the specified TPC.
tpcid | TPC ID |
The GetElementPtr() method is overloaded and its return depends on the type of ID.
Definition at line 2440 of file GeometryCore.h.
std::vector< geo::TPCID > geo::GeometryCore::TPCsetToTPCs | ( | readout::TPCsetID const & | tpcsetid | ) | const |
Returns a list of ID of TPCs belonging to the specified TPC set.
tpcsetid | ID of the TPC set to convert into TPC IDs |
Note that the check is performed on the validity of the TPC set ID, that does not necessarily imply that the TPC set specified by the ID actually exists. Check the existence of the TPC set first (HasTPCset()). Behaviour on valid, non-existent TPC set IDs is undefined.
Definition at line 1706 of file GeometryCore.cxx.
readout::TPCsetID geo::GeometryCore::TPCtoTPCset | ( | geo::TPCID const & | tpcid | ) | const |
Returns the ID of the TPC set tpcid belongs to.
Definition at line 1698 of file GeometryCore.cxx.
|
private |
Performs all the updates needed after sorting.
Definition at line 187 of file GeometryCore.cxx.
bool geo::GeometryCore::ValueInRange | ( | double | value, |
double | min, | ||
double | max | ||
) | const |
Returns whether a value is within the specified range.
value | the value to be tested |
min | the lower boundary |
max | the upper boundary |
If min is larger than max, they are swapped. A tolerance of 10^-6 (absolute) is used.
Use wiggle instead of 10^-6
resort source code for a bit of speed up
Definition at line 1234 of file GeometryCore.cxx.
View_t geo::GeometryCore::View | ( | geo::PlaneID const & | pid | ) | const |
Returns the view (wire orientation) on the channels of specified TPC plane.
plane | TPC plane ID |
Definition at line 601 of file GeometryCore.cxx.
View_t geo::GeometryCore::View | ( | raw::ChannelID_t const | channel | ) | const |
Returns the view (wire orientation) on the specified TPC channel.
channel | TPC channel ID |
The view of the readout plane channel
belongs to is returned, as in View(readout::ROPID const&) const
.
Definition at line 595 of file GeometryCore.cxx.
geo::View_t geo::GeometryCore::View | ( | readout::ROPID const & | ropid | ) | const |
Returns the view of the channels in the specified readout plane.
ropid | readout plane ID |
Returns the view (wire orientation) on the channels of specified readout plane. If ropid is an invalid ID, geo::kUnknown is returned. If ropid is a valid ID (i.e. an ID whose isValid flag is set) that points to a non-existent readout plane, the result is undefined. Use HasROP() to check if the readout plane actually exists.
Definition at line 1765 of file GeometryCore.cxx.
|
inline |
Returns a list of possible views in the detector.
Definition at line 4707 of file GeometryCore.h.
std::string geo::GeometryCore::VolumeName | ( | geo::Point_t const & | point | ) | const |
Returns the name of the deepest volume containing specified point.
point | the location to query, in world coordinates |
what happens if none?
Unify the coordinates type
Definition at line 940 of file GeometryCore.cxx.
|
inline |
Definition at line 1842 of file GeometryCore.h.
|
inline |
Returns the specified wire.
wireid | ID of the wire |
cet::exception | if not found |
The GetElement() method is overloaded and its return depends on the type of ID.
Definition at line 3419 of file GeometryCore.h.
double geo::GeometryCore::WireAngleToVertical | ( | geo::View_t | view, |
geo::TPCID const & | tpcid | ||
) | const |
Returns the angle of the wires in the specified view from vertical.
view | the view |
TPC | the index of the TPC in the specified cryostat |
Cryo | the cryostat |
tpcid | ID of the TPC |
cet::exception | ("GeometryCore" category) if no such view |
The angle is defined as in WireGeo::ThetaZ().
This method assumes all wires in the view have the same angle (it queries for the first).
Definition at line 843 of file GeometryCore.cxx.
|
inline |
Definition at line 3802 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::WireCoordinate | ( | double | YPos, |
double | ZPos, | ||
geo::PlaneID const & | planeid | ||
) | const |
Returns the index of the nearest wire to the specified position.
YPos | y coordinate on the wire plane |
ZPos | z coordinate on the wire plane |
planeid | ID of the plane |
WireCoordinate(geo::Point_t const&, geo::PlaneID const&)
insteadRespect to NearestWireID()
, this method returns a real number, representing a continuous coordinate in the wire axis, with the round values corresponding to the actual wires.
Definition at line 1128 of file GeometryCore.cxx.
|
inline |
Returns the index of the nearest wire to the specified position.
YPos | y coordinate on the wire plane |
ZPos | z coordinate on the wire plane |
PlaneNo | number of plane |
TPCNo | number of TPC |
cstat | number of cryostat |
Definition at line 4061 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::WireCoordinate | ( | geo::Point_t const & | pos, |
geo::PlaneID const & | planeid | ||
) | const |
Returns the index of the nearest wire to the specified position.
pos | world coordinates of the position (it will be projected) |
planeid | ID of the plane |
Respect to NearestWireID(), this method returns a real number, representing a continuous coordinate in the wire axis, with the round values corresponding to the actual wires.
Definition at line 1121 of file GeometryCore.cxx.
|
inline |
Definition at line 4082 of file GeometryCore.h.
void geo::GeometryCore::WireEndPoints | ( | geo::WireID const & | wireid, |
double * | xyzStart, | ||
double * | xyzEnd | ||
) | const |
Fills two arrays with the coordinates of the wire end points.
wireid | ID of the wire |
xyzStart | (output) an array with the start coordinate |
xyzEnd | (output) an array with the end coordinate |
cet::exception | wire not present |
The starting point is the wire end with lower z coordinate.
Definition at line 1243 of file GeometryCore.cxx.
|
inline |
Fills two arrays with the coordinates of the wire end points.
cstat | cryostat number |
tpc | tpc number within the cryostat |
plane | plane number within the TPC |
wire | wire number within the plane |
xyzStart | (output) an array with the start coordinate |
xyzEnd | (output) an array with the end coordinate |
cet::exception | wire not present |
The starting point is the wire end with lower z coordinate.
Definition at line 3856 of file GeometryCore.h.
Segment<Point> geo::GeometryCore::WireEndPoints | ( | geo::WireID const & | wireID | ) | const |
Returns a segment whose ends are the wire end points.
wireid | ID of the wire |
cet::exception | wire not present |
The start and end are assigned as returned from the geo::WireGeo object. The rules for this assignment are documented in that class.
|
inline |
Definition at line 3877 of file GeometryCore.h.
geo::GeometryCore::Segment<Point> geo::GeometryCore::WireEndPoints | ( | geo::WireID const & | wireid | ) | const |
Definition at line 5694 of file GeometryCore.h.
|
private |
Wire ID check for WireIDsIntersect methods.
Definition at line 1884 of file GeometryCore.cxx.
bool geo::GeometryCore::WireIDsIntersect | ( | WireID const & | wid1, |
WireID const & | wid2, | ||
geo::Point_t & | intersection | ||
) | const |
Computes the intersection between two wires.
wid1 | ID of the first wire | |
wid2 | ID of the other wire | |
[out] | intersection | the intersection point (global coordinates) |
The wires identified by wid1
and wid2
are intersected, and the 3D intersection point is written into the intersection
parameter. The "intersection" point is actually the point belonging to the first wire (wid2
) which is the closest (in Euclidean 3D metric) to the second wire.
The intersection is computed only if the wires belong to different planes of the same TPC. If that is not the case (i.e. they belong to different TPC or cryostat, or if they belong to the same plane), false
is returned and intersection
is set with all components to infinity (std::numeric_limits<>::infinity()
).
When the intersection is computed, it is always stored in the intersection
output parameter. Return value is true
if this intersection lies within the physical boundaries first wire, while it is instead false
if it lies on the extrapolation of the wire direction, but not within the wire physical extension.
To test that the result is not infinity (nor NaN), use geo::vect::isfinite(intersection)
etc.
geo::WireGeo
objects are already available, using instead the free function geo::WiresIntersection()
or the method geo::WireGeo::IntersectionWith()
is faster (and recommended). For purely geometric intersection, geo::LineClosestPoint()
is also available. bool geo::GeometryCore::WireIDsIntersect | ( | WireID const & | wid1, |
WireID const & | wid2, | ||
TVector3 & | intersection | ||
) | const |
bool geo::GeometryCore::WireIDsIntersect | ( | WireID const & | wid1, |
WireID const & | wid2, | ||
WireIDIntersection & | widIntersect | ||
) | const |
Computes the intersection between two wires.
wid1 | ID of the first wire |
wid2 | ID of the other wire |
widIntersect | (output) the coordinate of the intersection point |
The "intersection" refers to the projection of the wires into the same plane. Wires are assumed to have at most one intersection. If wires are parallel, widIntersect
will have the two components set to infinity (std::numeric_limits<>::infinity()
) and the TPC number set to invalid (geo::TPCID::InvalidID
). Also, false
is returned. If the intersection is outside the TPC, false
is also returned, but the widIntersect
will contain the coordinates of that intersection. The TPC number is still set to invalid, although the intersection might belong to a valid TPC somewhere else.
|
inline |
Definition at line 3421 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::WirePitch | ( | geo::PlaneID const & | planeid | ) | const |
Returns the distance between two consecutive wires.
p | plane number within the TPC |
tpc | tpc number within the cryostat |
cstat | cryostat number |
add a version with wire IDs
deprecate this function
document what will happen (in the future methods) with wires on different planes
Definition at line 824 of file GeometryCore.cxx.
|
inline |
Definition at line 3763 of file GeometryCore.h.
geo::Length_t geo::GeometryCore::WirePitch | ( | geo::View_t | view | ) | const |
Returns the distance between two wires in the specified view.
w1 | index of the first wire |
w2 | index of the second wire |
p | plane number within the TPC |
tpc | tpc number within the cryostat |
cstat | cryostat number |
This method assumes that all the wires on all the planes on the specified view of all TPCs have the same pitch.
Definition at line 832 of file GeometryCore.cxx.
readout::ROPID geo::GeometryCore::WirePlaneToROP | ( | geo::PlaneID const & | planeid | ) | const |
Returns the ID of the ROP planeid belongs to.
planeid | ID of the wire plane |
If planeid is an invalid ID, an invalid ROP ID is returned. If planeid is a valid ID (i.e. an ID whose isValid flag is set) that points to a non-existent wire plane, the result is undefined. Use HasPlaneID() to check if the wire plane actually exists.
Definition at line 1734 of file GeometryCore.cxx.
|
inline |
Returns the specified wire.
wireid | wire ID |
The GetElementPtr() method is overloaded and its return depends on the type of ID.
Definition at line 3400 of file GeometryCore.h.
void geo::GeometryCore::WorldBox | ( | double * | xlo, |
double * | xhi, | ||
double * | ylo, | ||
double * | yhi, | ||
double * | zlo, | ||
double * | zhi | ||
) | const |
Fills the arguments with the boundaries of the world.
xlo | (output) pointer to the lower x coordinate |
xlo | (output) pointer to the upper x coordinate |
ylo | (output) pointer to the lower y coordinate |
ylo | (output) pointer to the upper y coordinate |
zlo | (output) pointer to the lower z coordinate |
zlo | (output) pointer to the upper z coordinate |
cet::exception | ("GeometryCore" category) if no world found |
GetWorldVolumeName()
This method fills the boundaries of the world volume (GetWorldVolumeName()
).
If a pointer is null, its coordinate is skipped.
Definition at line 926 of file GeometryCore.cxx.
geo::BoxBoundedGeo geo::GeometryCore::WorldBox | ( | ) | const |
Returns a box with the extremes of the world volume (from shape axes).
GetWorldVolumeName()
Definition at line 903 of file GeometryCore.cxx.
TGeoVolume const * geo::GeometryCore::WorldVolume | ( | ) | const |
Returns a pointer to the world volume.
Definition at line 898 of file GeometryCore.cxx.
|
private |
All views in the detector.
Definition at line 5526 of file GeometryCore.h.
|
static |
Value of tolerance for equality comparisons.
Definition at line 1513 of file GeometryCore.h.
|
private |
Configuration for the geometry builder (needed since builder is created after construction).
Definition at line 5521 of file GeometryCore.h.
|
private |
Object containing the channel to wire mapping.
Definition at line 5522 of file GeometryCore.h.
|
private |
Name of the detector.
Definition at line 5512 of file GeometryCore.h.
|
private |
path to geometry file used for Geant4 simulation
Definition at line 5513 of file GeometryCore.h.
|
private |
The detector description data.
Definition at line 5509 of file GeometryCore.h.
|
private |
Minimum distance in Z from a point in which to look for the closest wire
Definition at line 5515 of file GeometryCore.h.
|
private |
accounting for rounding errors when testing positions
Definition at line 5517 of file GeometryCore.h.
|
private |
path to geometry file for geometry in GeometryCore
Definition at line 5514 of file GeometryCore.h.
|
private |
The point where air meets earth for this detector.
Definition at line 5511 of file GeometryCore.h.
|
static |
Wires must be found in GDML description within this number of nested volumes.
Definition at line 1510 of file GeometryCore.h.