LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
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... | |
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::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 | WireIDsIntersect (WireID const &wid1, WireID const &wid2, WireIDIntersection &widIntersect) const |
Computes the intersection between two wires. 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... | |
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... | |
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 |
Returns a string with the name of the detector, as configured. More... | |
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 |
Name of the deepest material containing the point xyz. More... | |
double | TotalMass () const |
Returns the total mass [kg] of the specified volume (default: world). More... | |
double | TotalMass (std::string vol) const |
Returns the total mass [kg] of the specified volume (default: world). More... | |
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 |
Returns the column density between two points. More... | |
Cryostat access and information | |
unsigned int | Ncryostats () const |
Returns the number of cryostats in the detector. More... | |
unsigned int | NElements () const |
Returns the number of cryostats in the detector. More... | |
unsigned int | NSiblingElements (geo::CryostatID const &) const |
Returns the number of cryostats in the detector. More... | |
bool | HasCryostat (geo::CryostatID const &cryoid) const |
Returns whether we have the specified cryostat. More... | |
bool | HasElement (geo::CryostatID const &cryoid) const |
Returns whether we have the specified cryostat. More... | |
CryostatGeo const & | Cryostat (geo::CryostatID const &cryoid) const |
Returns the specified cryostat. More... | |
CryostatGeo const & | Cryostat (unsigned int const cstat=0) const |
Returns the specified cryostat. More... | |
CryostatGeo const & | GetElement (geo::CryostatID const &cryoid) const |
Returns the specified cryostat. More... | |
CryostatGeo const * | CryostatPtr (geo::CryostatID const &cryoid) const |
Returns the specified cryostat. More... | |
CryostatGeo const * | GetElementPtr (geo::CryostatID const &cryoid) const |
Returns the specified cryostat. More... | |
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 |
Returns the index of the cryostat at specified location. More... | |
CryostatGeo const & | PositionToCryostat (geo::Point_t const &point) const |
Returns the cryostat at specified location. More... | |
CryostatGeo const & | PositionToCryostat (double const point[3]) const |
Returns the cryostat at specified location. More... | |
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 |
Returns the half width of the cryostat (x direction) More... | |
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 |
Returns the height of the cryostat (y direction) More... | |
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 |
Returns the length of the cryostat (z direction) More... | |
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 |
Return the name of LAr TPC volume. More... | |
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 |
Returns the total number of TPCs in the specified cryostat. More... | |
unsigned int | NSiblingElements (geo::TPCID const &tpcid) const |
Returns the total number of TPCs in the specified cryostat. More... | |
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 |
Returns the specified TPC. More... | |
TPCGeo const & | GetElement (geo::TPCID const &tpcid) const |
Returns the specified TPC. More... | |
TPCGeo const * | TPCPtr (geo::TPCID const &tpcid) const |
Returns the specified TPC. More... | |
TPCGeo const * | GetElementPtr (geo::TPCID const &tpcid) const |
Returns the specified TPC. More... | |
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 |
Returns the ID of the TPC at specified location. More... | |
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 |
Returns the TPC at specified location. More... | |
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 |
Returns the half width of the active volume of the specified TPC. More... | |
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 |
Returns the half height of the active volume of the specified TPC. More... | |
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 |
Returns the length of the active volume of the specified TPC. More... | |
template<typename Point = DefaultPoint_t> | |
Point | GetTPCFrontFaceCenter (geo::TPCID const &tpcid) const |
Returns the center of side of the detector facing the beam. More... | |
template<typename Point = DefaultPoint_t> | |
Point | GetTPCFrontFaceCenter (unsigned int tpc=0, unsigned int cstat=0) const |
Returns the center of side of the detector facing the beam. More... | |
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 |
Return the name of specified LAr TPC volume. More... | |
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 |
Returns the total number of wire planes in the specified TPC. More... | |
unsigned int | NSiblingElements (geo::PlaneID const &planeid) const |
Returns the total number of wire planes in the specified TPC. More... | |
bool | HasPlane (geo::PlaneID const &planeid) const |
Returns whether we have the specified plane. More... | |
bool | HasElement (geo::PlaneID const &planeid) const |
Returns whether we have the specified plane. More... | |
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 |
Returns the specified wire. More... | |
PlaneGeo const & | GetElement (geo::PlaneID const &planeid) const |
Returns the specified wire. More... | |
PlaneGeo const * | PlanePtr (geo::PlaneID const &planeid) const |
Returns the specified plane. More... | |
PlaneGeo const * | GetElementPtr (geo::PlaneID const &planeid) const |
Returns the specified plane. More... | |
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 |
Returns the distance between two planes. More... | |
geo::Length_t | PlanePitch (unsigned int p1=0, unsigned int p2=1, unsigned int tpc=0, unsigned int cstat=0) const |
Returns the distance between two planes. More... | |
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 |
Returns the total number of wires in the specified plane. More... | |
unsigned int | NSiblingElements (geo::WireID const &wireid) const |
Returns the total number of wires in the specified plane. More... | |
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 |
Returns whether we have the specified wire. More... | |
WireGeo const * | WirePtr (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
WireGeo const * | GetElementPtr (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
WireGeo const & | Wire (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
WireGeo const & | WireIDToWireGeo (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
WireGeo const & | GetElement (geo::WireID const &wireid) const |
Returns the specified wire. More... | |
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 |
Returns the distance between two consecutive wires. More... | |
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 |
Returns the angle of the wires in the specified view from vertical. More... | |
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 = DefaultPoint_t> | |
Segment< Point > | WireEndPoints (geo::WireID const &wireID) const |
Returns a segment whose ends are the wire end points. 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 | 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 |
Fills two arrays with the coordinates of the wire end points. More... | |
geo::WireID | NearestWireID (const TVector3 &point, geo::PlaneID const &planeid) const |
Fills two arrays with the coordinates of the wire end points. More... | |
geo::WireID | NearestWireID (const double point[3], unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Fills two arrays with the coordinates of the wire end points. More... | |
geo::WireID | NearestWireID (std::vector< double > const &point, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Fills two arrays with the coordinates of the wire end points. More... | |
geo::WireID | NearestWireID (const TVector3 &point, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Fills two arrays with the coordinates of the wire end points. More... | |
geo::WireID | NearestWireID (geo::Point_t const &point, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Fills two arrays with the coordinates of the wire end points. More... | |
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 |
Returns the index of wire closest to position in the specified TPC. More... | |
unsigned int | NearestWire (const TVector3 &worldLoc, geo::PlaneID const &planeid) const |
Returns the index of wire closest to position in the specified TPC. More... | |
unsigned int | NearestWire (const double worldLoc[3], unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the index of wire closest to position in the specified TPC. More... | |
unsigned int | NearestWire (std::vector< double > const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the index of wire closest to position in the specified TPC. More... | |
unsigned int | NearestWire (const TVector3 &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the index of wire closest to position in the specified TPC. More... | |
unsigned int | NearestWire (geo::Point_t const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the index of wire closest to position in the specified TPC. More... | |
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 |
Returns the index of the nearest wire to the specified position. More... | |
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 |
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 |
Returns the slope on the third plane, given it in the other two. More... | |
Optical detector geometry access and information | |
unsigned int | NOpDets () const |
Number of OpDets in the whole detector. More... | |
OpDetGeo const & | OpDetGeoFromOpChannel (unsigned int OpChannel) const |
Access the OpDetGeo object by OpDet or Channel Number. More... | |
OpDetGeo const & | OpDetGeoFromOpDet (unsigned int OpDet) const |
Number of OpDets in the whole detector. 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 |
Find the nearest OpChannel to some point. More... | |
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]) const |
Returns the index of the auxiliary detector at specified location. More... | |
unsigned int | FindAuxDetAtPosition (geo::Point_t const &point) 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) const |
Fills the indices of the sensitive auxiliary detector at location. More... | |
void | FindAuxDetSensitiveAtPosition (double const worldLoc[3], size_t &adg, size_t &sv) const |
Fills the indices of the sensitive auxiliary detector at location. More... | |
AuxDetGeo const & | PositionToAuxDet (geo::Point_t const &point, unsigned int &ad) const |
Returns the auxiliary detector at specified location. More... | |
AuxDetGeo const & | PositionToAuxDet (double const worldLoc[3], unsigned int &ad) const |
Returns the auxiliary detector at specified location. More... | |
const AuxDetSensitiveGeo & | PositionToAuxDetSensitive (geo::Point_t const &point, size_t &ad, size_t &sv) const |
Returns the auxiliary detector at specified location. More... | |
const AuxDetSensitiveGeo & | PositionToAuxDetSensitive (double const worldLoc[3], size_t &ad, size_t &sv) const |
Returns the auxiliary detector at specified location. More... | |
const AuxDetGeo & | ChannelToAuxDet (std::string const &auxDetName, uint32_t const &channel) const |
Returns the number of auxiliary detectors. More... | |
const AuxDetSensitiveGeo & | ChannelToAuxDetSensitive (std::string const &auxDetName, uint32_t const &channel) const |
Returns the number of auxiliary detectors. More... | |
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::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 |
Returns the number of TPC readout channels in the detector. More... | |
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 |
Returns the ID of the channel nearest to the specified position. More... | |
raw::ChannelID_t | NearestChannel (const TVector3 &worldLoc, geo::PlaneID const &planeid) const |
Returns the ID of the channel nearest to the specified position. More... | |
raw::ChannelID_t | NearestChannel (const double worldLoc[3], unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the ID of the channel nearest to the specified position. More... | |
raw::ChannelID_t | NearestChannel (std::vector< double > const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the ID of the channel nearest to the specified position. More... | |
raw::ChannelID_t | NearestChannel (const TVector3 &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the ID of the channel nearest to the specified position. More... | |
raw::ChannelID_t | NearestChannel (geo::Point_t const &worldLoc, unsigned int const PlaneNo, unsigned int const TPCNo=0, unsigned int const cstat=0) const |
Returns the ID of the channel nearest to the specified position. More... | |
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 |
Returns the total number of TPC sets in the specified cryostat. More... | |
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 |
Returns the total number of ROP in the specified TPC set. More... | |
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 |
Number of electronics channels for all the optical detectors. More... | |
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, bool bForceReload=false) |
Loads the geometry information from the specified files. More... | |
void | ApplyChannelMap (std::shared_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 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 |
Return the internal cryostat list. More... | |
AuxDetList_t & | AuxDets () |
Return the interfal auxiliary detectors list. More... | |
AuxDetList_t const & | AuxDets () const |
Return the interfal auxiliary detectors list. More... | |
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 | FindCryostat (std::vector< const TGeoNode * > &path, unsigned int depth) |
void | MakeCryostat (std::vector< const TGeoNode * > &path, int depth) |
void | FindAuxDet (std::vector< const TGeoNode * > &path, unsigned int depth) |
void | MakeAuxDet (std::vector< const TGeoNode * > &path, int depth) |
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... | |
std::shared_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 1442 of file GeometryCore.h.
Type of list of auxiliary detectors.
Definition at line 1479 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 1510 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 1531 of file GeometryCore.h.
Type of list of cryostats.
Definition at line 1477 of file GeometryCore.h.
|
private |
Default template argument.
Definition at line 1445 of file GeometryCore.h.
|
private |
Default template argument.
Definition at line 1444 of file GeometryCore.h.
Definition at line 1451 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 1601 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 1623 of file GeometryCore.h.
Definition at line 1474 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 1555 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 1577 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 1647 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 1669 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 61 of file GeometryCore.cxx.
References fDetectorName.
geo::GeometryCore::~GeometryCore | ( | ) |
Destructor.
Definition at line 75 of file GeometryCore.cxx.
References ApplyChannelMap(), and ClearGeometry().
|
delete |
|
delete |
void geo::GeometryCore::ApplyChannelMap | ( | std::shared_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. The algorithm object is asked and allowed to make the necessary modifications to the geometry description. These modifications typically involve some resorting of the objects.
The ownership of the algorithm object is shared, usually with a calling framework: we maintain it alive as long as we need it (and no other code can delete it), and we delete it only if no other code is sharing the ownership.
This method needs to be called after LoadGeometryFile() to complete the geometry initialization.
Definition at line 82 of file GeometryCore.cxx.
References fChannelMapAlg, fGeoData, SortGeometry(), and UpdateAfterSorting().
Referenced by geo::StandardGeometryHelper::doConfigureChannelMapAlg(), and ~GeometryCore().
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 299 of file GeometryCore.cxx.
References AuxDets(), and NAuxDets().
Referenced by ChannelToAuxDet(), ChannelToAuxDetSensitive(), PositionToAuxDet(), PositionToAuxDetSensitive(), and larg4::LArG4::produce().
|
inlineprotected |
Return the interfal auxiliary detectors list.
Definition at line 5346 of file GeometryCore.h.
Referenced by AuxDet(), ChannelToAuxDet(), ChannelToAuxDetSensitive(), ClearGeometry(), FindAuxDetAtPosition(), FindAuxDetSensitiveAtPosition(), MakeAuxDet(), NAuxDetSensitive(), and SortGeometry().
|
inlineprotected |
Return the interfal auxiliary detectors list.
Definition at line 5347 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first cryostat.
Definition at line 2124 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by evd_tool::ICARUSDrawer::DetOutline3D(), and IterateCryostatIDs().
|
inline |
Returns an iterator pointing to the first cryostat ID.
Definition at line 2116 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by end_cryostat().
|
inline |
Returns an iterator pointing to the first plane in the detector.
Definition at line 3035 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by IteratePlaneIDs(), and IteratePlanes().
|
inline |
Returns an iterator pointing to the first plane in the specified cryostat.
Definition at line 3044 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane in the specified TPC.
Definition at line 3053 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane ID in the detector.
Definition at line 3007 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by end_plane(), and IteratePlaneIDs().
|
inline |
Returns an iterator pointing to the first plane ID in the specified cryostat.
Definition at line 3016 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first plane ID in the specified TPC.
Definition at line 3026 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first ROP ID in the detector.
Definition at line 5086 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by end_ROP_id(), and IterateROPIDs().
|
inline |
Returns an iterator pointing to the first readout plane ID in the specified cryostat.
Definition at line 5095 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first readout plane ID in the specified TPC set.
Definition at line 5105 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC in the detector.
Definition at line 2534 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), IterateTPCIDs(), IterateTPCs(), and sim::MCRecoPart::MCRecoPart().
|
inline |
Returns an iterator pointing to the first TPC in the detector.
Definition at line 2542 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC ID in the detector.
Definition at line 2516 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by pma::PMAlgTracker::build(), end_TPC(), IterateTPCIDs(), and tss::TrackShowerHits::produce().
|
inline |
Returns an iterator pointing to the first TPC ID in the specified cryostat.
Definition at line 2525 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first TPC set ID in the detector.
Definition at line 4849 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by end_TPCset_id(), and IterateTPCsetIDs().
|
inline |
Returns an iterator pointing to the first TPC set ID in the specified cryostat.
Definition at line 4858 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in the detector.
Definition at line 3455 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by IterateWireIDs(), and IterateWires().
|
inline |
Returns an iterator pointing to the first wire in specified cryostat.
Definition at line 3463 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in specified TPC.
Definition at line 3471 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire in specified plane.
Definition at line 3479 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in the detector.
Definition at line 3422 of file GeometryCore.h.
References geo::details::geometry_iterator_types::begin_pos.
Referenced by end_wire(), IterateWireIDs(), lariov::SIOVElectronicsCalibProvider::Reconfigure(), and lariov::DetPedestalRetrievalAlg::Reconfigure().
|
inline |
Returns an iterator pointing to the first wire ID in specified cryostat.
Definition at line 3430 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in specified TPC.
Definition at line 3439 of file GeometryCore.h.
|
inline |
Returns an iterator pointing to the first wire ID in specified plane.
Definition at line 3447 of file GeometryCore.h.
|
inlineprotected |
Returns the object handling the channel map.
Definition at line 5335 of file GeometryCore.h.
Referenced by geo::Geometry::InitializeChannelMap().
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 1335 of file GeometryCore.cxx.
References ChannelToWire(), WireIDsIntersect(), geo::WireIDIntersection::y, and geo::WireIDIntersection::z.
Referenced by vertex::FeatureVertexFinder::Find3dVtxFrom2dClusterVtxCand(), evd::TWQMultiTPCProjectionView::FindEndPoint(), evd::TWQMultiTPCProjectionView::FindLineLength(), cmtool::CFAlgoStartTimeCompat::Float(), vertex::FeatureVertexFinder::Get3dVertexCandidates(), util::GeometryUtilities::GetProjectedPoint(), util::GeometryUtilities::GetYZ(), vertex::VertexFinder2D::produce(), and shwf::ShowerReco::produce().
const AuxDetGeo & geo::GeometryCore::ChannelToAuxDet | ( | std::string const & | auxDetName, |
uint32_t const & | channel | ||
) | const |
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 514 of file GeometryCore.cxx.
References AuxDet(), AuxDets(), and fChannelMapAlg.
const AuxDetSensitiveGeo & geo::GeometryCore::ChannelToAuxDetSensitive | ( | std::string const & | auxDetName, |
uint32_t const & | channel | ||
) | const |
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 522 of file GeometryCore.cxx.
References AuxDet(), AuxDets(), fChannelMapAlg, and geo::AuxDetGeo::SensitiveVolume().
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 1174 of file GeometryCore.cxx.
References fChannelMapAlg, and WireCoordinate().
Referenced by reco3d::TripletFinder::FillBadMap(), reco3d::TripletFinder::FillHitMap(), and View().
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 1168 of file GeometryCore.cxx.
References fChannelMapAlg.
Referenced by hit::MCHitAnaExample::analyze(), MCBTDemo::analyze(), detsim::WienerFilterAna::analyze(), apa::APAGeometryAlg::APAChannelsIntersect(), lar_cluster3d::StandardHit3DBuilder::BuildChannelStatusVec(), ChannelsIntersect(), apa::APAGeometryAlg::ChanSegsPerSide(), apa::DisambigAlg::CompareViews(), lar_cluster3d::MinSpanTreeAlg::configure(), reco3d::TripletFinder::FillHitMap(), evd::RawDataDrawer::FillQHisto(), evd::RecoBaseDrawer::FillQHisto(), lar_pandora::PFParticleHitDumper::FillRecoWires(), evd::RecoBaseDrawer::FillTQHisto(), evd::RecoBaseDrawer::FillTQHistoDP(), reco_tool::CandHitStandard::findHitCandidates(), reco_tool::CandHitDerivative::findHitCandidates(), reco_tool::CandHitMorphological::findHitCandidates(), hit::HitCheater::FindHitsOnChannel(), cluster::SmallClusterFinderAlg::GetPlaneAndTPC(), corner::CornerFinderAlg::GrabWires(), apa::APAGeometryAlg::Init(), hit::DisambigCheater::InitHitToWids(), reco3d::IntersectionCache::ISect(), apa::APAGeometryAlg::LineSegChanIntersect(), apa::DisambigAlg::MakeCloseHits(), sim::MCRecoEdep::MakeMCEdep(), apa::APAGeometryAlg::NearestWireIDOnChan(), btutil::MCBTAlg::ProcessSimChannel(), hit::TTHitFinder::produce(), hit::FFTHitFinder::produce(), hit::RawHitFinder::produce(), hit::GausHitFinder::produce(), hit::DPRawHitFinder::produce(), hit::RFFHitFinderAlg::Run(), hit::CCHitFinderAlg::RunCCHitFinder(), evd::RawDataDrawer::RunOperation(), img::DataProviderAlg::setWireDriftData(), apa::APAGeometryAlg::ThreeChanPos(), apa::DisambigAlg::TrivialDisambig(), and evd::RecoBaseDrawer::Wire2D().
|
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 1606 of file GeometryCore.cxx.
References geo::TPCID::asTPCID().
Referenced by ThirdPlane(), ThirdPlane_dTdW(), and ThirdPlaneSlope().
|
private |
Deletes the detector geometry structures.
Definition at line 133 of file GeometryCore.cxx.
References AuxDets(), evd::details::begin(), Cryostats(), and evd::details::end().
Referenced by LoadGeometryFile(), and ~GeometryCore().
|
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 1724 of file GeometryCore.cxx.
References ComputeThirdPlaneSlope().
Referenced by ThirdPlane_dTdW().
|
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 1699 of file GeometryCore.cxx.
Referenced by ComputeThirdPlane_dTdW(), ThirdPlane_dTdW(), and ThirdPlaneSlope().
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 280 of file GeometryCore.cxx.
References geo::CryostatID::Cryostat, and CryostatPtr().
Referenced by trkf::SpacePointAna::bookHistograms(), pma::ProjectionMatchingAlg::buildShowerSeg(), lar_pandora::LArPandoraOutput::CalculateT0(), util::DetectorPropertiesServiceArgoNeuT::CalculateXTicksParams(), detinfo::DetectorPropertiesStandard::CalculateXTicksParams(), larg4::LArVoxelReadoutGeometry::Construct(), ems::MultiEMShowers::convCluster(), lar_pandora::LArPandoraInput::CreatePandoraHits2D(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), CryostatBoundaries(), CryostatHalfHeight(), CryostatHalfWidth(), CryostatLength(), hit::DisambigCheater::DisambigCheater(), evd::RecoBaseDrawer::DrawTrack2D(), cluster::EndPointAlg::EndPoint(), cluster::HoughBaseAlg::FastTransform(), trkf::SpacePointAlg::fillComplexSpacePoint(), cosmic::BeamFlashTrackMatchTaggerAlg::FillFlashProperties(), opdet::FlashHypothesisAnaAlg::FillOpDetPositions(), vertex::FeatureVertexFinder::Find2dClusterVertexCandidates(), vertex::FeatureVertexFinder::Find3dVtxFrom2dClusterVtxCand(), vertex::FeatureVertexFinder::Get3dVertexCandidates(), corner::CornerFinderAlg::get_feature_points_fast(), GetCryostatVolumeName(), trkf::BezierTrack::GetProjectedPointUVWT(), trkf::BezierTrack::GetProjectedPointUVWX(), trkf::BezierTrack::GetTrackPitch(), lar_pandora::LArPandoraInput::GetTrueX0(), lar_pandora::PFParticleHitDumper::GetUVW(), cluster::fuzzyClusterAlg::InitFuzzy(), ems::EMShower3D::LinkCandidates(), trkf::SpacePointAlg::makeSpacePoints(), NOpDets(), OpDetFromCryo(), OpDetGeoFromOpDet(), OpDetGeoName(), PositionToCryostat(), cluster::ClusterCheater::produce(), vertex::HarrisVertexFinder::produce(), vertex::FeatureVertexFinder::produce(), larg4::LArG4::produce(), evd::SimulationDrawer::SimulationDrawer(), apa::APAGeometryAlg::ThreeChanPos(), cluster::HoughBaseAlg::Transform(), apa::DisambigAlg::TrivialDisambig(), DUNE::NeutrinoTrackingEff::truthLength(), trkf::SpacePointAlg::update(), apa::DisambigAlg::UseEndPts(), and trkf::VertexFitAlg::VertexFit().
|
inline |
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 2001 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 750 of file GeometryCore.cxx.
References geo::CryostatGeo::Boundaries(), and Cryostat().
Referenced by evgen::GaisserParam::beginJob(), ems::MergeEMShower3D::collectshowers(), CryostatLength(), evgen::CORSIKAGen::populateNShowers(), evgen::CosmicsGen::produce(), evgen::CORSIKAGen::produce(), and phot::PhotonVisibilityService::reconfigure().
|
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 2230 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 737 of file GeometryCore.cxx.
References Cryostat(), and geo::CryostatGeo::HalfHeight().
Referenced by CryostatHalfWidth(), simfilter::FilterNoDirtNeutrinos::filter(), and evgen::FileMuons::ReadEvents().
|
inline |
Returns the height of the cryostat (y direction)
Definition at line 2184 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 730 of file GeometryCore.cxx.
References Cryostat(), CryostatHalfHeight(), and geo::CryostatGeo::HalfWidth().
Referenced by DetLength(), simfilter::FilterNoDirtNeutrinos::filter(), and evgen::FileMuons::ReadEvents().
|
inline |
Returns the half width of the cryostat (x direction)
Definition at line 2177 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 743 of file GeometryCore.cxx.
References Cryostat(), CryostatBoundaries(), and geo::CryostatGeo::Length().
Referenced by evgen::FileMuons::ReadEvents().
|
inline |
Returns the length of the cryostat (z direction)
Definition at line 2191 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 2016 of file GeometryCore.h.
References geo::CryostatID::Cryostat.
Referenced by Cryostat().
|
inlineprotected |
Return the internal cryostat list.
Definition at line 5340 of file GeometryCore.h.
Referenced by ClearGeometry(), MakeCryostat(), MaxPlanes(), MaxTPCs(), MaxWires(), SortGeometry(), TotalNTPC(), and UpdateAfterSorting().
|
inlineprotected |
Return the internal cryostat list.
Definition at line 5341 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 1705 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 588 of file GeometryCore.cxx.
References FindDetectorEnclosure(), and geo::LocalTransformation< StoredMatrix >::LocalToWorld().
Referenced by GetWorldVolumeName().
|
inline |
Returns a string with the name of the detector, as configured.
Definition at line 1735 of file GeometryCore.h.
Referenced by ToyOneShowerGen::beginRun(), evgen::SNNueAr40CCGen::beginRun(), evgen::CosmicsGen::beginRun(), evgen::CORSIKAGen::beginRun(), evgen::FileMuons::beginRun(), evgen::NUANCEGen::beginRun(), evgen::NucleonDecay::beginRun(), evgen::NDKGen::beginRun(), evgen::MarleyGen::beginRun(), evgen::GaisserParam::beginRun(), evgen::TextFileGen::beginRun(), evgen::NeutronOsc::beginRun(), evgen::GENIEGen::beginRun(), evgen::RadioGen::beginRun(), evgen::LightSource::beginRun(), evgen::MUSUN::beginRun(), evgen::MarleyTimeGen::beginRun(), geo::DumpGeometry::dump(), geo::Geometry::preBeginRun(), wc::CellTree::processSpacePoint(), and geo::DumpGeometry::shouldDumpGeometry().
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 717 of file GeometryCore.cxx.
References geo::TPCGeo::ActiveHalfHeight(), and TPC().
Referenced by lar::example::AnalysisExample::analyze(), evgen::NUANCEGen::beginJob(), evgen::NDKGen::beginJob(), evgen::GENIEGen::beginJob(), trkf::SpacePointAna::bookHistograms(), LArStackingAction::ClassifyNewTrack(), evd_tool::MicroBooNEDrawer::DetOutline3D(), evd::Display3DPad::Draw(), lar_pandora::PFParticleCosmicAna::FillRecoTree(), tca::FillWireHitRange(), simfilter::FilterStoppingMuon::filter(), simfilter::FilterNoDirtNeutrinos::filter(), cmtool::CFAlgoVolumeOverlap::Float(), cmtool::CFAlgoWireOverlap::Float(), util::GeometryUtilities::Get2DangleFrom3D(), trk::TrackContainmentAlg::GetCosmicTagID(), ToyOneShowerGen::GetXYZPosition(), cosmic::BeamFlashTrackMatchTaggerAlg::InDetector(), tca::InsideTPC(), trk::TrackContainmentAlg::IsContained(), trkf::SeedAna::MCHists::MCHists(), trkf::TrackAna::MCHists::MCHists(), evd::Ortho3DPad::Ortho3DPad(), trk::TrackContainmentAlg::ProcessTracks(), trkf::SpacePts::produce(), trkf::Track3Dreco::produce(), evgen::NDKGen::produce(), vertex::VertexFinder2D::produce(), trkf::Track3DKalmanSPS::produce(), trkf::SeedAna::RecoHists::RecoHists(), trkf::TrackAna::RecoHists::RecoHists(), and evd::TWQProjectionView::SetSeeds().
|
inline |
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 2708 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 711 of file GeometryCore.cxx.
References geo::TPCGeo::ActiveHalfWidth(), and TPC().
Referenced by lar::example::AnalysisExample::analyze(), evgen::NUANCEGen::beginJob(), evgen::NDKGen::beginJob(), evgen::GENIEGen::beginJob(), trkf::SpacePointAna::bookHistograms(), LArStackingAction::ClassifyNewTrack(), evd_tool::MicroBooNEDrawer::DetOutline3D(), evd::Display3DPad::Draw(), lar_pandora::PFParticleCosmicAna::FillRecoTree(), tca::FillWireHitRange(), simfilter::FilterStoppingMuon::filter(), simfilter::FilterNoDirtNeutrinos::filter(), util::GeometryUtilities::Get2DangleFrom3D(), trk::TrackContainmentAlg::GetCosmicTagID(), ToyOneShowerGen::GetXYZPosition(), cosmic::BeamFlashTrackMatchTaggerAlg::InDetector(), cosmic::BeamFlashTrackMatchTaggerAlg::InDriftWindow(), tca::InsideTPC(), trk::TrackContainmentAlg::IsContained(), trkf::SeedAna::MCHists::MCHists(), trkf::TrackAna::MCHists::MCHists(), evd::RecoBaseDrawer::OpFlashOrtho(), evd::Ortho3DPad::Ortho3DPad(), trk::TrackContainmentAlg::ProcessTracks(), evgen::NUANCEGen::produce(), evgen::NDKGen::produce(), trkf::Track3DKalmanSPS::produce(), trkf::SeedAna::RecoHists::RecoHists(), trkf::TrackAna::RecoHists::RecoHists(), evd::TWQProjectionView::SetSeeds(), and evd::RecoBaseDrawer::Vertex2D().
|
inline |
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 2686 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 723 of file GeometryCore.cxx.
References geo::TPCGeo::ActiveLength(), CryostatHalfWidth(), and TPC().
Referenced by lar::example::AnalysisExample::analyze(), evgen::NUANCEGen::beginJob(), evgen::NDKGen::beginJob(), evgen::GENIEGen::beginJob(), trkf::SpacePointAna::bookHistograms(), LArStackingAction::ClassifyNewTrack(), evd_tool::MicroBooNEDrawer::DetOutline3D(), evd::Display3DPad::Draw(), lar_pandora::PFParticleCosmicAna::FillRecoTree(), tca::FillWireHitRange(), simfilter::FilterNoDirtNeutrinos::filter(), simfilter::FilterStoppingMuon::filter(), cmtool::CFAlgoVolumeOverlap::Float(), cmtool::CFAlgoWireOverlap::Float(), util::GeometryUtilities::Get2DangleFrom3D(), trk::TrackContainmentAlg::GetCosmicTagID(), ToyOneShowerGen::GetXYZPosition(), cosmic::BeamFlashTrackMatchTaggerAlg::InDetector(), tca::InsideTPC(), trk::TrackContainmentAlg::IsContained(), trkf::SeedAna::MCHists::MCHists(), trkf::TrackAna::MCHists::MCHists(), lar_cluster3d::StandardHit3DBuilder::NearestWireID(), evd::Ortho3DPad::Ortho3DPad(), trk::TrackContainmentAlg::ProcessTracks(), evgen::CosmicsGen::produce(), evgen::NUANCEGen::produce(), evgen::NDKGen::produce(), trkf::Track3DKalmanSPS::produce(), trkf::SeedAna::RecoHists::RecoHists(), trkf::TrackAna::RecoHists::RecoHists(), evd::TWQProjectionView::SetSeeds(), and evd::RecoBaseDrawer::Vertex2D().
|
inline |
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 2729 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last cryostat.
Definition at line 2128 of file GeometryCore.h.
References begin_cryostat_id(), end_cryostat_id(), and geo::details::geometry_iterator_types::end_pos.
Referenced by evd_tool::ICARUSDrawer::DetOutline3D(), and IterateCryostatIDs().
|
inline |
Returns an iterator pointing after the last cryostat ID.
Definition at line 2120 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by end_cryostat().
|
inline |
Returns an iterator pointing after the last plane in the detector.
Definition at line 3039 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by IteratePlaneIDs(), and IteratePlanes().
|
inline |
Returns an iterator pointing after the last plane in the specified cryostat.
Definition at line 3049 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane in the specified TPC.
Definition at line 3057 of file GeometryCore.h.
References begin_plane_id(), and end_plane_id().
|
inline |
Returns an iterator pointing after the last plane ID in the detector.
Definition at line 3011 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by end_plane(), and IteratePlaneIDs().
|
inline |
Returns an iterator pointing after the last plane ID in the specified cryostat.
Definition at line 3021 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last plane ID in the specified TPC.
Definition at line 3031 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last ROP ID in the detector.
Definition at line 5090 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by end_ROP_id(), and IterateROPIDs().
|
inline |
Returns an iterator pointing after the last readout plane ID in the specified cryostat.
Definition at line 5100 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last readout plane ID in the specified TPC set.
Definition at line 5110 of file GeometryCore.h.
References begin_ROP_id(), and end_ROP_id().
|
inline |
Returns an iterator pointing after the last TPC in the detector.
Definition at line 2538 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), IterateTPCIDs(), IterateTPCs(), and sim::MCRecoPart::MCRecoPart().
|
inline |
Returns an iterator pointing after the last TPC in the detector.
Definition at line 2546 of file GeometryCore.h.
References begin_TPC_id(), and end_TPC_id().
|
inline |
Returns an iterator pointing after the last TPC ID in the detector.
Definition at line 2520 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by pma::PMAlgTracker::build(), end_TPC(), IterateTPCIDs(), and tss::TrackShowerHits::produce().
|
inline |
Returns an iterator pointing after the last TPC ID in the specified cryostat.
Definition at line 2530 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last TPC set ID in the detector.
Definition at line 4853 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by end_TPCset_id(), and IterateTPCsetIDs().
|
inline |
Returns an iterator pointing after the last TPC set ID in the specified cryostat.
Definition at line 4863 of file GeometryCore.h.
References begin_TPCset_id(), and end_TPCset_id().
|
inline |
Returns an iterator pointing after the last wire in the detector.
Definition at line 3459 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by IterateWireIDs(), and IterateWires().
|
inline |
Returns an iterator pointing after the last wire in specified cryostat.
Definition at line 3467 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire in specified TPC.
Definition at line 3475 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire in specified plane.
Definition at line 3483 of file GeometryCore.h.
References begin_wire_id(), and end_wire_id().
|
inline |
Returns an iterator pointing after the last wire ID in the detector.
Definition at line 3426 of file GeometryCore.h.
References geo::details::geometry_iterator_types::end_pos.
Referenced by end_wire(), IterateWireIDs(), lariov::SIOVElectronicsCalibProvider::Reconfigure(), and lariov::DetPedestalRetrievalAlg::Reconfigure().
|
inline |
Returns an iterator pointing after the last wire ID in specified cryostat.
Definition at line 3435 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire ID in specified TPC.
Definition at line 3443 of file GeometryCore.h.
|
inline |
Returns an iterator pointing after the last wire ID in specified plane.
Definition at line 3451 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 682 of file GeometryCore.cxx.
References geo::CollectPathsByName::paths, and ROOTGeoManager().
Referenced by FindAllVolumes().
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 665 of file GeometryCore.cxx.
References FindAllVolumePaths(), geo::CollectNodesByName::nodes, and ROOTGeoManager().
|
private |
Definition at line 1077 of file GeometryCore.cxx.
References MakeAuxDet().
Referenced by LoadGeometryFile().
unsigned int geo::GeometryCore::FindAuxDetAtPosition | ( | double const | worldLoc[3] | ) | const |
Returns the index of the auxiliary detector at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
std::numeric_limits<unsigned int>max()
if no detector is theregeo::Point_t
. Definition at line 464 of file GeometryCore.cxx.
References geo::vect::makePointFromCoords(), and PositionToAuxDet().
Referenced by FindAuxDetSensitiveAtPosition(), and PositionToAuxDet().
unsigned int geo::GeometryCore::FindAuxDetAtPosition | ( | geo::Point_t const & | point | ) | const |
Returns the index of the auxiliary detector at specified location.
point | location to be tested |
std::numeric_limits<unsigned int>max()
if no detector is thereDefinition at line 455 of file GeometryCore.cxx.
References AuxDets(), and fChannelMapAlg.
void geo::GeometryCore::FindAuxDetSensitiveAtPosition | ( | geo::Point_t const & | point, |
std::size_t & | adg, | ||
std::size_t & | sv | ||
) | 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 |
Definition at line 484 of file GeometryCore.cxx.
References AuxDets(), fChannelMapAlg, and FindAuxDetAtPosition().
Referenced by larg4::AuxDetReadoutGeometry::FindAndMakeAuxDetSensitive(), FindAuxDetSensitiveAtPosition(), PositionToAuxDet(), and PositionToAuxDetSensitive().
void geo::GeometryCore::FindAuxDetSensitiveAtPosition | ( | double const | worldLoc[3], |
size_t & | adg, | ||
size_t & | sv | ||
) | 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 |
geo::Point_t
. Definition at line 495 of file GeometryCore.cxx.
References FindAuxDetSensitiveAtPosition(), geo::vect::makePointFromCoords(), and PositionToAuxDetSensitive().
|
private |
Definition at line 1046 of file GeometryCore.cxx.
References MakeCryostat().
Referenced by LoadGeometryFile().
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 352 of file GeometryCore.cxx.
References geo::CryostatID::Cryostat, geo::CryostatGeo::ID(), geo::CryostatID::InvalidID, and PositionToCryostatPtr().
Referenced by pma::ProjectionMatchingAlg::buildShowerSeg(), ems::MultiEMShowers::convCluster(), FindCryostatAtPosition(), evd::SimulationDrawer::MCTruthOrtho(), PositionToCryostat(), and PositionToCryostatID().
geo::CryostatID::CryostatID_t geo::GeometryCore::FindCryostatAtPosition | ( | double const | worldLoc[3] | ) | const |
Returns the index of the cryostat at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
PositionToCryostatID()
instead Definition at line 361 of file GeometryCore.cxx.
References FindCryostatAtPosition(), geo::vect::makePointFromCoords(), and PositionToTPCptr().
|
private |
Definition at line 957 of file GeometryCore.cxx.
References FindFirstVolume(), and ROOTGeoManager().
Referenced by DetectorEnclosureBox(), and MaterialName().
|
private |
Definition at line 966 of file GeometryCore.cxx.
Referenced by FindDetectorEnclosure().
|
inline |
Returns the ID of the TPC at specified location.
worldLoc | 3D coordinates of the point (world reference frame) [cm] |
Definition at line 2424 of file GeometryCore.h.
References geo::vect::makePointFromCoords().
Referenced by pma::ProjectionMatchingAlg::buildShowerSeg(), ems::MultiEMShowers::convCluster(), hit::HitCheater::FindHitsOnChannel(), shower::EMShowerAlg::FindInitialTrackHits(), FindTPCsetAtPosition(), opdet::GetHitGeometryInfo(), nnet::TrainingDataAlg::getProjection(), lar_pandora::LArPandoraInput::GetTrueStartAndEndPoints(), hit::DisambigCheater::InitHitToWids(), evd::SimulationDrawer::MCTruthOrtho(), shower::EMShowerAlg::OrderShowerHits(), calo::Calorimetry::produce(), shower::EMShowerAlg::Project3DPointOntoPlane(), filt::LArG4ParticleFilter::StartInTPCCheck(), filt::LArG4ParticleFilter::StopInTPCCheck(), filt::LArG4ParticleFilter::TPCTrajLengthCheck(), DUNE::NeutrinoTrackingEff::truthLength(), and DUNE::MuonTrackingEff::truthLength().
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 311 of file GeometryCore.cxx.
References geo::CryostatID::Cryostat, fPositionWiggle, geo::CryostatGeo::ID(), geo::CryostatID::markInvalid(), PositionToCryostatPtr(), and geo::CryostatGeo::PositionToTPCID().
|
inline |
Returns the ID of the TPC at specified location.
worldLoc | 3D point (world reference frame, centimeters) |
Definition at line 2434 of file GeometryCore.h.
References geo::vect::toPoint().
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 1783 of file GeometryCore.cxx.
References FindTPCAtPosition(), and TPCtoTPCset().
Referenced by HasTPCset().
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 1850 of file GeometryCore.cxx.
References fChannelMapAlg.
Referenced by ROPtoTPCs().
|
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 1723 of file GeometryCore.h.
Referenced by larg4::LArG4::beginJob(), and evd::Landed::Landed().
|
inline |
Returns the ID of the first element of the detector.
GeoID | type of the ID to be returned |
Definition at line 1903 of file GeometryCore.h.
References GetBeginID().
Referenced by GetBeginID().
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 2104 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first TPC.
iterators
Definition at line 2494 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first plane.
Definition at line 2977 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first wire.
Definition at line 3383 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first TPC set.
iterators
Definition at line 4827 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the ID of the first readout plane.
iterators
Definition at line 5056 of file GeometryCore.h.
|
inline |
Returns the ID of the first plane of the specified cryostat.
Definition at line 2989 of file GeometryCore.h.
|
inline |
Returns the ID of the first plane of the specified TPC.
Definition at line 2998 of file GeometryCore.h.
|
inline |
Returns the ID of the first readout plane of the specified cryostat.
Definition at line 5068 of file GeometryCore.h.
|
inline |
Returns the ID of the first readout plane of the specified TPC set.
Definition at line 5077 of file GeometryCore.h.
|
inline |
Returns the ID of the first TPC in the specified cryostat.
Definition at line 2506 of file GeometryCore.h.
|
inline |
Returns the ID of the first TPC set in the specified cryostat.
Definition at line 4839 of file GeometryCore.h.
|
inline |
Returns the ID of the first wire in the specified cryostat.
Definition at line 3395 of file GeometryCore.h.
|
inline |
Returns the ID of the first wire of the specified TPC.
Definition at line 3404 of file GeometryCore.h.
|
inline |
Returns the ID of the first wire of the specified wire plane.
Definition at line 3413 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 1959 of file GeometryCore.cxx.
References geo::CryostatID::Cryostat, geo::CryostatGeo::GetClosestOpDet(), geo::CryostatGeo::ID(), max, OpDetFromCryo(), and PositionToCryostatPtr().
Referenced by GetClosestOpDet().
unsigned int geo::GeometryCore::GetClosestOpDet | ( | double 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 1970 of file GeometryCore.cxx.
References GetClosestOpDet(), geo::vect::makePointFromCoords(), and WireIDIntersectionCheck().
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 705 of file GeometryCore.cxx.
References Cryostat().
|
inline |
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 2250 of file GeometryCore.h.
|
inline |
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 2003 of file GeometryCore.h.
Referenced by evd::SimulationDrawer::MCTruthOrtho().
|
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 2397 of file GeometryCore.h.
|
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 2950 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 3374 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 2018 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 2415 of file GeometryCore.h.
|
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 2968 of file GeometryCore.h.
|
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 3356 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 1922 of file GeometryCore.h.
References GetEndID().
Referenced by GetEndID().
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 2108 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last TPC.
Definition at line 2498 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last plane.
Definition at line 2981 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last wire.
Definition at line 3387 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last TPC set.
Definition at line 4831 of file GeometryCore.h.
|
inline |
Initializes the specified ID with the invalid ID after the last ROP.
Definition at line 5060 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last plane of the specified cryostat.
Definition at line 2994 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last plane of the specified TPC.
Definition at line 3003 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last readout plane of the specified cryostat.
Definition at line 5073 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last readout plane of the specified TPC set.
Definition at line 5082 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last TPC of the specified cryostat.
Definition at line 2511 of file GeometryCore.h.
References geo::CryostatID::Cryostat.
|
inline |
Returns the (possibly invalid) ID after the last TPC set of the specified cryostat.
Definition at line 4844 of file GeometryCore.h.
References geo::CryostatID::Cryostat.
|
inline |
Returns the (possibly invalid) ID after the last wire in the specified cryostat.
Definition at line 3400 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last wire of the specified TPC.
Definition at line 3409 of file GeometryCore.h.
|
inline |
Returns the (possibly invalid) ID after the last wire of the specified wire plane.
Definition at line 3418 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 699 of file GeometryCore.cxx.
References TPC().
Referenced by LArStackingAction::ClassifyNewTrack(), trkf::SpacePts::produce(), trkf::Track3Dreco::produce(), vertex::VertexFinder2D::produce(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inline |
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 2775 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 1912 of file GeometryCore.h.
|
inline |
Returns the center of side of the detector facing the beam.
tpcid | ID of the TPC |
tpc | tpc number within the cryostat |
cstat | number of cryostat |
Effectively, this is the center of the side of TPC active volume which faces the negative z direction, the first that a beam following
Definition at line 2747 of file GeometryCore.h.
|
inline |
Returns the center of side of the detector facing the beam.
tpcid | ID of the TPC |
tpc | tpc number within the cryostat |
cstat | number of cryostat |
Effectively, this is the center of the side of TPC active volume which faces the negative z direction, the first that a beam following
Definition at line 2751 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 578 of file GeometryCore.cxx.
References DetectorEnclosureBox().
Referenced by evgen::CosmicsGen::reconfigure(), WorldBox(), and WorldVolume().
unsigned int geo::GeometryCore::HardwareChannelFromOpChannel | ( | int | opChannel | ) | const |
Convert unique channel to hardware channel.
Definition at line 242 of file GeometryCore.cxx.
References fChannelMapAlg.
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 566 of file GeometryCore.cxx.
References fChannelMapAlg.
|
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 1981 of file GeometryCore.h.
References geo::CryostatID::Cryostat.
|
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 1983 of file GeometryCore.h.
|
inline |
Returns whether we have the specified TPC.
Definition at line 2374 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 2923 of file GeometryCore.h.
|
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 3339 of file GeometryCore.h.
|
inline |
Returns whether we have the specified TPC set.
Definition at line 4791 of file GeometryCore.h.
|
inline |
Returns whether we have the specified readout plane
Definition at line 4995 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 2918 of file GeometryCore.h.
References geo::TPCGeo::HasPlane().
bool geo::GeometryCore::HasROP | ( | readout::ROPID const & | ropid | ) | const |
Returns whether we have the specified readout plane
Definition at line 1820 of file GeometryCore.cxx.
References fChannelMapAlg.
|
inline |
Returns whether we have the specified TPC.
Definition at line 2367 of file GeometryCore.h.
References geo::CryostatGeo::HasTPC().
Referenced by pma::ProjectionMatchingAlg::buildShowerSeg(), ems::MultiEMShowers::convCluster(), and evd::TWQProjectionView::SelectTPC().
bool geo::GeometryCore::HasTPCset | ( | readout::TPCsetID const & | tpcsetid | ) | const |
Returns whether we have the specified TPC set
Definition at line 1776 of file GeometryCore.cxx.
References fChannelMapAlg, and FindTPCsetAtPosition().
|
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 3334 of file GeometryCore.h.
References geo::PlaneGeo::HasWire().
Referenced by tca::FillmAllTraj(), tca::Find3DVertices(), pma::ProjectionMatchingAlg::validate(), pma::ProjectionMatchingAlg::validate_on_adc(), pma::ProjectionMatchingAlg::validate_on_adc_test(), and WireIDIntersectionCheck().
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5475 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5481 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5489 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5499 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5509 of file GeometryCore.h.
|
inline |
Sets the ID to the ID after the specified one.
Definition at line 5518 of file GeometryCore.h.
References WireEndPoints().
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 1749 of file GeometryCore.cxx.
References WireIDsIntersect(), geo::WireIDIntersection::y, and geo::WireIDIntersection::z.
Referenced by pma::ProjectionMatchingAlg::addEndpointRef(), sppt::SpacePointAlg_TimeSort::fillCoordinatesArrays(), filter::MuonFilter::filter(), tca::Find3DVertices(), cmtool::CFAlgoStartPointCompat::Float(), cmtool::CFAlgoStartPointMatch::Float(), vertex::FeatureVertexFinder::Get3dVertexCandidates(), trkf::BezierTrackerAlgorithm::MakeTracks(), cluster::ClusterMatchAlg::Match_RoughZ(), and trkf::TrackTrajectoryAlg::ShortTrackTrajectory().
|
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 4188 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 1384 of file GeometryCore.cxx.
References B, coordIs, and lar::util::RealComparisons< RealType >::zero().
Referenced by IntersectSegments().
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 1411 of file GeometryCore.cxx.
References c1, c2, geo::vect::cross(), geo::WireGeo::Direction(), geo::vect::dot(), geo::GeometryCore::Segment< Point >::end(), geo::WireGeo::GetCenter(), geo::WireGeo::HalfL(), IntersectLines(), geo::TPCID::InvalidID, PointWithinSegments(), geo::sqr(), geo::GeometryCore::Segment< Point >::start(), ThirdPlane(), geo::vect::toTVector3(), geo::TPCID::TPC, geo::WireIDIntersection::TPC, Wire(), WireEndPoints(), WireIDIntersectionCheck(), WireIDsIntersect(), geo::WireIDIntersection::y, and geo::WireIDIntersection::z.
bool geo::GeometryCore::IsValidOpChannel | ( | int | opChannel | ) | const |
Is this a valid OpChannel number?
Definition at line 249 of file GeometryCore.cxx.
References fChannelMapAlg, and NOpDets().
Referenced by cosmic::BeamFlashTrackMatchTaggerAlg::CheckCompatibility(), cosmic::BeamFlashTrackMatchTaggerAlg::PrintHypothesisFlashComparison(), lariov::SIOVPmtGainProvider::Reconfigure(), and opdet::RunHitFinder().
|
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 2149 of file GeometryCore.h.
References begin_cryostat(), and end_cryostat().
|
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 2168 of file GeometryCore.h.
Referenced by PositionToCryostatPtr().
|
inline |
Enables ranged-for loops on all plane IDs of the detector.
Example of usage:
Definition at line 3078 of file GeometryCore.h.
References begin_plane_id(), and end_plane_id().
Referenced by vertex::FeatureVertexFinderAna::analyze(), corner::CornerFinderAlg::create_smaller_histos(), sim::details::createPlaneIndexMap(), corner::CornerFinderAlg::get_feature_points(), corner::CornerFinderAlg::get_feature_points_LineIntegralScore(), cluster::DBScan3DAlg::init(), vertex::VertexMatch::produce(), and vertex::HarrisVertexFinder::produce().
|
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 3103 of file GeometryCore.h.
References begin_plane_id(), and end_plane_id().
|
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 3127 of file GeometryCore.h.
References begin_plane(), and end_plane().
|
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 3160 of file GeometryCore.h.
References begin_plane(), and end_plane().
Referenced by mvapid::MVAAlg::GetWireNormals().
|
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 3183 of file GeometryCore.h.
References begin_plane(), and end_plane().
|
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 3206 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 5131 of file GeometryCore.h.
References begin_ROP_id(), and end_ROP_id().
|
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 5155 of file GeometryCore.h.
References begin_ROP_id(), and end_ROP_id().
|
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 5179 of file GeometryCore.h.
References max, min, and fhicl::detail::atom::value().
|
inline |
Enables ranged-for loops on all TPC IDs of the detector.
Example of usage:
Definition at line 2567 of file GeometryCore.h.
References begin_TPC_id(), and end_TPC_id().
Referenced by tca::InsideTPC(), and tca::TruthMatcher::MatchAndSum().
|
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 2591 of file GeometryCore.h.
References begin_TPC(), and end_TPC().
|
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 2625 of file GeometryCore.h.
References begin_TPC(), and end_TPC().
Referenced by ems::MCinfo::Findtpcborders(), and UpdateAfterSorting().
|
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 2648 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 4884 of file GeometryCore.h.
References begin_TPCset_id(), and end_TPCset_id().
|
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 4908 of file GeometryCore.h.
|
inline |
Enables ranged-for loops on all wire IDs of the detector.
Example of usage:
Definition at line 3505 of file GeometryCore.h.
References begin_wire_id(), and end_wire_id().
Referenced by cluster::DBScan3DAlg::init().
|
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 3530 of file GeometryCore.h.
References begin_wire_id(), and end_wire_id().
|
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 3555 of file GeometryCore.h.
References begin_wire_id(), and end_wire_id().
|
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 3580 of file GeometryCore.h.
References begin_wire(), and end_wire().
|
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 3609 of file GeometryCore.h.
References begin_wire(), and end_wire().
|
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 3633 of file GeometryCore.h.
References begin_wire(), and end_wire().
|
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 3657 of file GeometryCore.h.
References begin_wire(), and end_wire().
|
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 3681 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, | ||
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 |
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 92 of file GeometryCore.cxx.
References ClearGeometry(), fGDMLfile, FindAuxDet(), FindCryostat(), fROOTfile, and MaxWireDepthInGDML.
Referenced by geo::Geometry::LoadNewGeometry().
|
private |
Definition at line 1102 of file GeometryCore.cxx.
References AuxDets().
Referenced by FindAuxDet().
|
private |
Definition at line 1071 of file GeometryCore.cxx.
References Cryostats().
Referenced by FindCryostat().
|
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 2833 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 2855 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 2312 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 2335 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 1126 of file GeometryCore.cxx.
References dir, geo::vect::makePointFromCoords(), and R.
Referenced by TotalMass().
double geo::GeometryCore::MassBetweenPoints | ( | double * | p1, |
double * | 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.
TGeoMaterial const * geo::GeometryCore::Material | ( | geo::Point_t const & | point | ) | const |
Returns the material at the specified position.
Definition at line 925 of file GeometryCore.cxx.
Referenced by MaterialName().
|
inline |
Name of the deepest material containing the point xyz.
Definition at line 1857 of file GeometryCore.h.
References art::detail::indent(), pyG4Element::Print(), and geo::vect::toPoint().
Referenced by larg4::LArG4Ana::analyze().
std::string geo::GeometryCore::MaterialName | ( | geo::Point_t const & | point | ) | const |
Name of the deepest material containing the point xyz.
Definition at line 933 of file GeometryCore.cxx.
References geo::BoxBoundedGeo::ContainsPosition(), FindDetectorEnclosure(), Material(), geo::BoxBoundedGeo::Max(), geo::BoxBoundedGeo::Min(), and WorldBox().
unsigned int geo::GeometryCore::MaxOpChannel | ( | ) | const |
Largest optical channel number.
Definition at line 218 of file GeometryCore.cxx.
References fChannelMapAlg, and NOpDets().
Referenced by cosmic::BeamFlashTrackMatchTaggerAlg::CheckCompatibility(), opdet::ConstructFlash(), and cosmic::BeamFlashTrackMatchTaggerAlg::PrintHypothesisFlashComparison().
unsigned int geo::GeometryCore::MaxPlanes | ( | ) | const |
Returns the largest number of planes among all TPCs in this detector.
Definition at line 837 of file GeometryCore.cxx.
References Cryostats().
Referenced by pma::PMAlgTracker::build(), shower::EMShowerAlg::CheckIsolatedHits(), img::DataProviderAlg::DataProviderAlg(), trkf::TrackKalmanFitter::doFitWork(), lar_pandora::LArPandoraGeometry::LoadGeometry(), shower::EMShowerAlg::MakeShower(), shower::EMShowerAlg::MakeSpacePoints(), Nviews(), shower::EMShowerAlg::OrderShowerHits(), pma::PMAlgTracker::PMAlgTracker(), trkf::PMAlgTrackMaker::PMAlgTrackMaker(), lar_pandora::LArPandoraTrackCreation::produce(), shower::EMShowerAlg::RelativeWireWidth(), trkf::TrackKalmanFitter::sortOutput(), and shower::EMShowerAlg::WorstPlane().
unsigned int geo::GeometryCore::MaxROPs | ( | ) | const |
Returns the largest number of ROPs a TPC set in the detector has.
Definition at line 1814 of file GeometryCore.cxx.
References fChannelMapAlg.
unsigned int geo::GeometryCore::MaxTPCs | ( | ) | const |
Returns the largest number of TPCs a cryostat in the detector has.
Definition at line 817 of file GeometryCore.cxx.
References Cryostats().
Referenced by evd::TWQProjectionView::SetUpTPCselection().
unsigned int geo::GeometryCore::MaxTPCsets | ( | ) | const |
Returns the largest number of TPC sets any cryostat in the detector has.
Definition at line 1770 of file GeometryCore.cxx.
References fChannelMapAlg.
unsigned int geo::GeometryCore::MaxWires | ( | ) | const |
Returns the largest number of wires among all planes in this detector.
Definition at line 847 of file GeometryCore.cxx.
References Cryostats().
Referenced by cluster::BlurredClusteringAlg::ConvertRecobHitsToVector().
|
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 4458 of file GeometryCore.h.
Referenced by AuxDet(), NAuxDetSensitive(), and larg4::LArG4::produce().
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 255 of file GeometryCore.cxx.
References AuxDets(), and NAuxDets().
unsigned int geo::GeometryCore::Nchannels | ( | ) | const |
Returns the number of TPC readout channels in the detector.
Definition at line 191 of file GeometryCore.cxx.
References fChannelMapAlg.
Referenced by larg4::LArG4Ana::beginJob(), lar_cluster3d::StandardHit3DBuilder::BuildChannelStatusVec(), trkf::SeedFinderAlgorithm::CalculateGeometricalElements(), trkf::BezierTrackerAlgorithm::MakeTracks(), hit::MCHitFinder::produce(), and detsim::SimWire::produce().
unsigned int geo::GeometryCore::Nchannels | ( | readout::ROPID const & | ropid | ) | const |
Returns the number of channels in the specified ROP.
Definition at line 197 of file GeometryCore.cxx.
References fChannelMapAlg.
|
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 1964 of file GeometryCore.h.
Referenced by detsim::WienerFilterAna::beginJob(), evgen::GaisserParam::beginJob(), detsim::SimDriftElectrons::beginJob(), trkf::SpacePointAna::bookHistograms(), lar_cluster3d::StandardHit3DBuilder::BuildHitPairMap(), util::DetectorPropertiesServiceArgoNeuT::CalculateXTicksParams(), detinfo::DetectorPropertiesStandard::CalculateXTicksParams(), larg4::LArVoxelReadout::ClearSimChannels(), lar_cluster3d::StandardHit3DBuilder::CollectArtHits(), larg4::LArVoxelReadoutGeometry::Construct(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), hit::DisambigCheater::DisambigCheater(), detsim::WienerFilterAna::endJob(), vertex::FeatureVertexFinder::Find2dClusterVertexCandidates(), vertex::FeatureVertexFinder::Find3dVtxFrom2dClusterVtxCand(), vertex::FeatureVertexFinder::Get3dVertexCandidates(), corner::CornerFinderAlg::get_feature_points_fast(), lar_pandora::LArPandoraInput::GetTrueStartAndEndPoints(), lar_cluster3d::SpacePointHit3DBuilder::Hit3DBuilder(), lar_pandora::LArPandoraGeometry::LoadGeometry(), trkf::SpacePointAlg::makeSpacePoints(), NOpDets(), OpDetFromCryo(), OpDetGeoFromOpDet(), evgen::CORSIKAGen::populateNShowers(), lar_pandora::LArPandoraTrackCreation::produce(), evgen::CosmicsGen::produce(), evgen::CORSIKAGen::produce(), vertex::FeatureVertexFinder::produce(), larg4::LArG4::produce(), evd::TWQProjectionView::SelectTPC(), evd::TWQProjectionView::SetUpTPCselection(), evd::SimulationDrawer::SimulationDrawer(), cheat::BackTracker::SpacePointHitsToWeightedXYZ(), trkf::SpacePointAlg::update(), and UpdateAfterSorting().
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 1271 of file GeometryCore.cxx.
References raw::InvalidChannelID, NearestWireID(), and PlaneWireToChannel().
Referenced by larg4::LArVoxelReadout::DriftIonizationElectrons(), NearestChannel(), NearestWireID(), detsim::SimDriftElectrons::produce(), vertex::FeatureVertexFinder::produce(), and apa::DisambigAlg::TrivialDisambig().
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 1253 of file GeometryCore.cxx.
References NearestChannel().
raw::ChannelID_t geo::GeometryCore::NearestChannel | ( | std::vector< double > 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) |
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 1260 of file GeometryCore.cxx.
References NearestChannel().
|
inline |
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 4714 of file GeometryCore.h.
References geo::vect::toPoint().
|
inline |
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 4716 of file GeometryCore.h.
|
inline |
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 4721 of file GeometryCore.h.
|
inline |
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 4726 of file GeometryCore.h.
|
inline |
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 4731 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 1202 of file GeometryCore.cxx.
References NearestWireID(), and geo::WireID::Wire.
Referenced by vertex::FeatureVertexFinderAna::analyze(), trkf::TrackAna::analyze(), evd::RecoBaseDrawer::DrawTrack2D(), evd::TWQMultiTPCProjectionView::FindEndPoint(), evd::TWQProjectionView::FindEndPoint(), hit::HitCheater::FindHitsOnChannel(), cmtool::CFAlgoStartPointCompat::Float(), cmtool::CFAlgoStartTimeCompat::Float(), util::GeometryUtilities::Get2DPointProjection(), util::GeometryUtilities::Get2DPointProjectionCM(), trkf::FeatureTracker::GetConnectionMap(), opdet::GetHitGeometryInfo(), trkf::BezierTrack::GetProjectedPointUVWT(), trkf::BezierTrack::GetProjectedPointUVWX(), nnet::TrainingDataAlg::getProjection(), apa::APAGeometryAlg::LineSegChanIntersect(), NearestWire(), cluster::ClusterCheater::produce(), shwf::ShowerReco::produce(), vertex::FeatureVertexFinder::produce(), evd::RecoBaseDrawer::Seed2D(), and WireCoordinate().
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 1210 of file GeometryCore.cxx.
References NearestWire().
unsigned int geo::GeometryCore::NearestWire | ( | std::vector< double > const & | worldLoc, |
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 1217 of file GeometryCore.cxx.
References NearestWire(), and NearestWireID().
|
inline |
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 3951 of file GeometryCore.h.
References geo::vect::toPoint().
|
inline |
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 3953 of file GeometryCore.h.
|
inline |
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 3958 of file GeometryCore.h.
|
inline |
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 3963 of file GeometryCore.h.
|
inline |
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 3968 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 1228 of file GeometryCore.cxx.
References geo::PlaneGeo::NearestWireID(), and Plane().
Referenced by hit::DisambigCheater::InitHitToWids(), NearestChannel(), NearestWire(), NearestWireID(), apa::APAGeometryAlg::NearestWireIDOnChan(), evd::RecoBaseDrawer::OpFlash2D(), trk::TrackContainmentAlg::ProcessTracks(), and shower::EMShowerAlg::Project3DPointOntoPlane().
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 1246 of file GeometryCore.cxx.
References NearestChannel(), and NearestWireID().
geo::WireID geo::GeometryCore::NearestWireID | ( | std::vector< double > const & | point, |
geo::PlaneID const & | planeid | ||
) | 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 1235 of file GeometryCore.cxx.
References NearestWireID().
|
inline |
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 3894 of file GeometryCore.h.
References geo::vect::toPoint().
|
inline |
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 3896 of file GeometryCore.h.
|
inline |
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 3901 of file GeometryCore.h.
|
inline |
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 3906 of file GeometryCore.h.
|
inline |
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 3911 of file GeometryCore.h.
|
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 1965 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 2356 of file GeometryCore.h.
|
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 2875 of file GeometryCore.h.
|
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 3312 of file GeometryCore.h.
unsigned int geo::GeometryCore::NOpChannels | ( | ) | const |
Number of electronics channels for all the optical detectors.
Definition at line 212 of file GeometryCore.cxx.
References fChannelMapAlg, and NOpDets().
Referenced by opdet::OpHitAna::analyze(), opdet::OpFlashAna::analyze(), opdet::SimPhotonCounter::analyze(), opdet::SimPhotonCounter::beginJob(), opdet::OpDetResponseInterface::doNOpChannels(), opdet::OpDigiProperties::FillGainArray(), opdet::OpDigiProperties::FillPedMeanArray(), opdet::FlashClusterMatch::produce(), opdet::TrackTimeAssoc::produce(), opdet::BeamFlashCompatabilityCheck::produce(), opdet::OptDetDigitizer::produce(), and opdet::OpDigiProperties::reconfigure().
unsigned int geo::GeometryCore::NOpDets | ( | ) | const |
Number of OpDets in the whole detector.
Definition at line 203 of file GeometryCore.cxx.
References Cryostat(), Ncryostats(), and geo::CryostatGeo::NOpDet().
Referenced by cosmic::BeamFlashTrackMatchTaggerAlg::CheckCompatibility(), phot::CreateHybridLibrary::CreateHybridLibrary(), opdet::FlashHypothesisAnaAlg::FillOpDetPositions(), larg4::OpDetLookup::FindClosestOpDet(), opdet::FlashClusterMatch::GetLightHypothesis(), opdet::TrackTimeAssoc::GetMIPHypotheses(), opdet::BeamFlashCompatabilityCheck::GetMIPHypotheses(), IsValidOpChannel(), phot::PhotonVisibilityService::LoadLibrary(), MaxOpChannel(), NOpChannels(), cosmic::BeamFlashTrackMatchTaggerAlg::NormalizeLightHypothesis(), phot::PhotonLibraryHybrid::PhotonLibraryHybrid(), cosmic::BeamFlashTrackMatchTaggerAlg::PrintHypothesisFlashComparison(), wc::CellTree::processOpFlash(), opdet::FlashClusterMatch::produce(), opdet::TrackTimeAssoc::produce(), opdet::BeamFlashCompatabilityCheck::produce(), larg4::LArG4::produce(), lariov::SIOVPmtGainProvider::Reconfigure(), opdet::TrackTimeAssoc::ScanMIPHypotheses(), and opdet::FlashHypothesisAnaAlg::SetOutputObjects().
unsigned int geo::GeometryCore::NOpHardwareChannels | ( | int | opDet | ) | const |
Number of electronics channels for all the optical detectors.
Definition at line 224 of file GeometryCore.cxx.
References fChannelMapAlg.
|
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 2799 of file GeometryCore.h.
Referenced by hit::MCHitAnaExample::analyze(), cluster::ClusterAna::analyze(), pfpf::PFPAna::analyze(), hit::MagDriftAna::analyze(), cluster::DBclusterAna::analyze(), trkf::TrackAna::analyze(), tca::AnalyzeHits(), cluster::SmallClusterFilter::beginJob(), cluster::SmallClusterFinder::beginJob(), detsim::WienerFilterAna::beginJob(), shwf::ShowerReco::beginJob(), lar_cluster3d::StandardHit3DBuilder::BuildChannelStatusVec(), btutil::MCMatchAlg::BuildMap(), mvapid::MVAAlg::CalcSegmentdEdxDist(), util::GeometryUtilities::CalculatePitch(), util::GeometryUtilities::CalculatePitchPolar(), tca::TruthMatcher::CanReconstruct(), cluster::ClusterMatchTQ::ClusterMatch(), opdet::ConstructFlash(), evd::AnalysisBaseDrawer::DrawDeDx(), evd::AnalysisBaseDrawer::DrawKineticEnergy(), detsim::WienerFilterAna::endJob(), cluster::HoughBaseAlg::FastTransform(), hit::GausHitFinder::FillOutHitParameterVector(), hit::DPRawHitFinder::FillOutHitParameterVector(), trkf::BezierTrack::FillTrajectoryVectors(), tca::FillWireHitRange(), filter::MuonFilter::filter(), calo::GeneralCalorimetry::GeneralCalorimetry(), opdet::GetHitGeometryInfo(), mvapid::MVAAlg::GetWireNormals(), corner::CornerFinderAlg::GrabWires(), evd::GraphCluster::GraphCluster(), evd::GraphClusterAlg::GraphClusterAlg(), evd::InfoTransfer::InfoTransfer(), corner::CornerFinderAlg::InitializeGeometry(), tca::TruthMatcher::MatchAndSum(), hit::MCHitAnaExample::MCHitAnaExample(), cluster::ClusterMatchAlg::PrepareDetParams(), btutil::MCBTAlg::ProcessSimChannel(), trk::TrackContainmentAlg::ProcessTracks(), calo::Calorimetry::produce(), shwf::ShowerReco::produce(), evd::RawDataDrawer::RawDataDrawer(), evd::InfoTransfer::Rebuild(), evd::RecoBaseDrawer::RecoBaseDrawer(), evd::InfoTransfer::reconfigure(), util::GeometryUtilities::Reconfigure(), hit::RFFHitFinderAlg::SetFitterParamsVectors(), showerreco::ShowerRecoManager::ShowerRecoManager(), cheat::BackTracker::SpacePointHitsToWeightedXYZ(), ThirdPlane(), evd::TQPad::TQPad(), cluster::HoughBaseAlg::Transform(), evd::TWireProjPad::TWireProjPad(), evd::TWQMultiTPCProjectionView::TWQMultiTPCProjectionView(), and evd::TWQProjectionView::TWQProjectionView().
|
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 2870 of file GeometryCore.h.
References geo::TPCGeo::NElements().
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 1808 of file GeometryCore.cxx.
References fChannelMapAlg.
|
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 1966 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 2358 of file GeometryCore.h.
|
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 2877 of file GeometryCore.h.
|
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 3314 of file GeometryCore.h.
|
inline |
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 4775 of file GeometryCore.h.
|
inline |
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 4978 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 2273 of file GeometryCore.h.
Referenced by detsim::WienerFilterAna::beginJob(), detsim::SimDriftElectrons::beginJob(), lar_cluster3d::StandardHit3DBuilder::BuildHitPairMap(), mvapid::MVAAlg::CalcSegmentdEdxDist(), larg4::LArVoxelReadout::ClearSimChannels(), lar_cluster3d::StandardHit3DBuilder::CollectArtHits(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), hit::DisambigCheater::DisambigCheater(), detsim::WienerFilterAna::endJob(), lar_pandora::LArPandoraInput::GetTrueStartAndEndPoints(), mvapid::MVAAlg::GetWireNormals(), lar_cluster3d::SpacePointHit3DBuilder::Hit3DBuilder(), apa::APAGeometryAlg::Init(), lar_pandora::LArPandoraGeometry::LoadGeometry(), evd::RecoBaseDrawer::OpFlashOrtho(), evd::Ortho3DPad::Ortho3DPad(), lar_pandora::LArPandoraTrackCreation::produce(), cluster::TrajCluster::produce(), evgen::NucleonDecay::produce(), evgen::NDKGen::produce(), evgen::NeutronOsc::produce(), evd::RecoBaseDrawer::RecoBaseDrawer(), evgen::ActiveVolumeVertexSampler::reconfigure(), evd::TWQProjectionView::SelectTPC(), evd::TWQProjectionView::SetUpTPCselection(), cheat::BackTracker::SpacePointHitsToWeightedXYZ(), tca::StitchPFPs(), apa::DisambigAlg::TrivialDisambig(), and evd::TWQMultiTPCProjectionView::TWQMultiTPCProjectionView().
|
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 2351 of file GeometryCore.h.
References geo::CryostatGeo::NElements().
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 1764 of file GeometryCore.cxx.
References fChannelMapAlg.
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 266 of file GeometryCore.cxx.
References MaxPlanes().
Referenced by evd_tool::ICARUSDrawer::DrawBadChannels(), and evd_tool::MicroBooNEDrawer::DrawBadChannels().
|
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 3293 of file GeometryCore.h.
Referenced by lar_cluster3d::StandardHit3DBuilder::BuildChannelStatusVec(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), noisefilteralg::WireCellNoiseFilter::DoNoiseFilter(), evd_tool::ICARUSDrawer::DrawBadChannels(), evd_tool::MicroBooNEDrawer::DrawBadChannels(), sppt::SpacePointAlg_TimeSort::fillCoordinatesArrays(), tca::FillWireHitRange(), vertex::FeatureVertexFinder::Find2dClusterVertexCandidates(), evd::RawDataDrawer::RoIextractorClass::Finish(), cmtool::CFAlgoVolumeOverlap::Float(), cmtool::CFAlgoWireOverlap::Float(), evd::RawDataDrawer::GetRegionOfInterest(), evd::RecoBaseDrawer::GetRegionOfInterest(), util::GeometryUtilities::GetYZ(), cluster::MergeClusterAlg::GlobalWire(), cluster::BlurredClusteringAlg::GlobalWire(), shower::EMShowerAlg::GlobalWire(), corner::CornerFinderAlg::GrabWires(), corner::CornerFinderAlg::InitializeGeometry(), lar_cluster3d::StandardHit3DBuilder::NearestWireID(), cluster::fuzzyClusterAlg::run_fuzzy_cluster(), util::GeometryUtilities::SelectPolygonHitList(), evd::TWQProjectionView::SetWire(), img::DataProviderAlg::setWireDriftData(), cluster::HoughBaseAlg::Transform(), evd::TWireProjPad::TWireProjPad(), evd::TWQMultiTPCProjectionView::TWQMultiTPCProjectionView(), evd::TWQProjectionView::TWQProjectionView(), evd::RecoBaseDrawer::Wire2D(), WireIDIntersectionCheck(), evd::TWQMultiTPCProjectionView::ZoomInterest(), and evd::TWQProjectionView::ZoomInterest().
|
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 3307 of file GeometryCore.h.
References geo::PlaneGeo::NElements().
unsigned int geo::GeometryCore::OpChannel | ( | int | detNum, |
int | hardwareChannel | ||
) | const |
Convert detector number and hardware channel to unique channel.
Definition at line 230 of file GeometryCore.cxx.
References fChannelMapAlg.
unsigned int geo::GeometryCore::OpDetFromCryo | ( | unsigned int | o, |
unsigned int | c | ||
) | const |
Get unique opdet number from cryo and internal count.
Definition at line 1880 of file GeometryCore.cxx.
References Cryostat(), Ncryostats(), and geo::CryostatGeo::NOpDet().
Referenced by GetClosestOpDet().
unsigned int geo::GeometryCore::OpDetFromOpChannel | ( | int | opChannel | ) | const |
Convert unique channel to detector number.
Definition at line 236 of file GeometryCore.cxx.
References fChannelMapAlg.
Referenced by cheat::PhotonBackTracker::ChannelToTrackSDPs(), cosmic::BeamFlashTrackMatchTaggerAlg::CheckCompatibility(), opdet::OpDetResponseInterface::doReadoutToGeoChannel(), OpDetGeoFromOpChannel(), cheat::PhotonBackTracker::OpHitToSDPs(), cheat::PhotonBackTracker::OpHitToSimSDPs_Ps(), cheat::PhotonBackTracker::OpHitToTrackSDPs(), cosmic::BeamFlashTrackMatchTaggerAlg::PrintHypothesisFlashComparison(), opdet::FlashClusterMatch::produce(), opdet::TrackTimeAssoc::produce(), opdet::BeamFlashCompatabilityCheck::produce(), and cheat::PhotonBackTracker::TrackIdsToOpHits_Ps().
const OpDetGeo & geo::GeometryCore::OpDetGeoFromOpChannel | ( | unsigned int | OpChannel | ) | const |
Access the OpDetGeo object by OpDet or Channel Number.
Definition at line 1916 of file GeometryCore.cxx.
References OpDetFromOpChannel(), and OpDetGeoFromOpDet().
Referenced by opdet::GetHitGeometryInfo().
const OpDetGeo & geo::GeometryCore::OpDetGeoFromOpDet | ( | unsigned int | OpDet | ) | const |
Number of OpDets in the whole detector.
Definition at line 1922 of file GeometryCore.cxx.
References Cryostat(), Ncryostats(), geo::CryostatGeo::NOpDet(), and geo::CryostatGeo::OpDet().
Referenced by phot::CreateHybridLibrary::CreateHybridLibrary(), phot::PhotonVisibilityService::DistanceToOpDet(), larg4::OpDetLookup::FindClosestOpDet(), phot::PhotonLibraryHybrid::GetCount(), OpDetGeoFromOpChannel(), larg4::OpFastScintillation::propagation_time(), and phot::PhotonVisibilityService::SolidAngleFactor().
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 1873 of file GeometryCore.cxx.
References Cryostat(), and geo::CryostatGeo::OpDetGeoName().
Referenced by larg4::LArG4::beginJob().
|
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 2945 of file GeometryCore.h.
Referenced by cluster::ClusterAna::analyze(), pfpf::PFPAna::analyze(), cluster::DBclusterAna::analyze(), hit::GausHitFinderAna::analyze(), cluster::ClusterMergeHelper::AppendResult(), util::GeometryUtilities::CalculatePitch(), util::GeometryUtilities::CalculatePitchPolar(), trkf::Track3DKalmanSPS::dQdxCalc(), tca::FilldEdx(), filter::MuonFilter::filter(), evd::TWQMultiTPCProjectionView::FindEndPoint(), evd::TWQProjectionView::FindEndPoint(), evd::TWQMultiTPCProjectionView::FindLineLength(), evd::TWQProjectionView::FindLineLength(), util::GeometryUtilities::Get2DangleFrom3D(), util::GeometryUtilities::Get2DPointProjection(), calo::Calorimetry::GetPitch(), util::GeometryUtilities::GetProjectedPoint(), util::GeometryUtilities::GetTimeTicks(), util::GeometryUtilities::GetXYZ(), shower::EMShowerAlg::MakeShower(), lar_cluster3d::StandardHit3DBuilder::NearestWireID(), NearestWireID(), util::GeometryUtilities::PitchInView(), cluster::SimpleClusterMerger::produce(), cluster::FuzzyClusterMerger::produce(), trkf::SpacePts::produce(), trkf::Track3Dreco::produce(), cluster::SmallClusterFinder::produce(), calo::Calorimetry::produce(), vertex::VertexFinder2D::produce(), shwf::ShowerReco::produce(), evd::GraphCluster::produce(), util::GeometryUtilities::Reconfigure(), detsim::SimWire::SetFieldResponse(), View(), WireCoordinate(), and WirePitch().
|
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 2948 of file GeometryCore.h.
std::set< PlaneID > const & geo::GeometryCore::PlaneIDs | ( | ) | const |
Returns a list of possible PlaneIDs in the detector.
Definition at line 572 of file GeometryCore.cxx.
References fChannelMapAlg.
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 759 of file GeometryCore.cxx.
References geo::TPCGeo::PlanePitch(), and TPC().
Referenced by PlanePitch(), trkf::SpacePts::produce(), and trkf::Track3Dreco::produce().
double geo::GeometryCore::PlanePitch | ( | geo::PlaneID const & | pid1, |
geo::PlaneID const & | pid2 | ||
) | 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 768 of file GeometryCore.cxx.
References geo::TPCID::asTPCID(), geo::PlaneID::Plane, and PlanePitch().
double geo::GeometryCore::PlanePitch | ( | unsigned int | p1 = 0 , |
unsigned int | p2 = 1 , |
||
unsigned int | tpc = 0 , |
||
unsigned int | cstat = 0 |
||
) | 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 773 of file GeometryCore.cxx.
References PlanePitch().
|
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 2963 of file GeometryCore.h.
References geo::TPCGeo::PlanePtr().
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 1290 of file GeometryCore.cxx.
References fChannelMapAlg.
Referenced by hit::MCHitAnaExample::analyze(), cluster::BlurredClusteringAlg::ConvertRecobHitsToVector(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), evd_tool::MicroBooNEDrawer::DrawBadChannels(), evd_tool::ICARUSDrawer::DrawBadChannels(), evd::RawDataDrawer::FillTQHisto(), tca::FillWireHitRange(), vertex::FeatureVertexFinder::Find3dVtxFrom2dClusterVtxCand(), evd::TWQMultiTPCProjectionView::FindEndPoint(), evd::TWQMultiTPCProjectionView::FindLineLength(), cmtool::CFAlgoStartTimeCompat::Float(), vertex::FeatureVertexFinder::Get3dVertexCandidates(), tca::GetOrigin(), util::GeometryUtilities::GetProjectedPoint(), util::GeometryUtilities::GetYZ(), cluster::DBScan3DAlg::init(), apa::DisambigAlg::MakeCloseHits(), NearestChannel(), wc::MergeWireCell::produce(), calo::Calorimetry::produce(), vertex::VertexFinder2D::produce(), shwf::ShowerReco::produce(), lariov::SIOVElectronicsCalibProvider::Reconfigure(), lariov::DetPedestalRetrievalAlg::Reconfigure(), pma::ProjectionMatchingAlg::validate(), pma::ProjectionMatchingAlg::validate_on_adc(), pma::ProjectionMatchingAlg::validate_on_adc_test(), and evd::RecoBaseDrawer::Wire2D().
|
inline |
Returns the number of TPC readout channels in the detector.
Definition at line 4633 of file GeometryCore.h.
|
staticprivate |
Returns whether x and y are within both specified ranges (A and B).
Definition at line 2005 of file GeometryCore.cxx.
References geo::details::geometry_iterator_types::begin_pos, coordIs, geo::details::geometry_iterator_types::end_pos, geo::details::geometry_iterator_types::undefined_pos, and lar::util::RealComparisons< RealType >::withinSorted().
Referenced by IntersectSegments().
const AuxDetGeo & geo::GeometryCore::PositionToAuxDet | ( | geo::Point_t const & | point, |
unsigned int & | ad | ||
) | const |
Returns the auxiliary detector at specified location.
point | location to be tested |
ad | _(output)_ the auxiliary detector index |
Definition at line 470 of file GeometryCore.cxx.
References AuxDet(), and FindAuxDetAtPosition().
Referenced by larg4::AuxDetReadoutGeometry::FindAndMakeAuxDet(), FindAuxDetAtPosition(), and PositionToAuxDet().
const AuxDetGeo & geo::GeometryCore::PositionToAuxDet | ( | double const | worldLoc[3], |
unsigned int & | ad | ||
) | const |
Returns the auxiliary detector at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
ad | (output) the auxiliary detector index |
geo::Point_t
. Definition at line 479 of file GeometryCore.cxx.
References FindAuxDetSensitiveAtPosition(), geo::vect::makePointFromCoords(), and PositionToAuxDet().
const AuxDetSensitiveGeo & geo::GeometryCore::PositionToAuxDetSensitive | ( | geo::Point_t const & | point, |
size_t & | ad, | ||
size_t & | sv | ||
) | 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 |
Definition at line 501 of file GeometryCore.cxx.
References AuxDet(), FindAuxDetSensitiveAtPosition(), and geo::AuxDetGeo::SensitiveVolume().
Referenced by FindAuxDetSensitiveAtPosition(), and PositionToAuxDetSensitive().
const AuxDetSensitiveGeo & geo::GeometryCore::PositionToAuxDetSensitive | ( | double const | worldLoc[3], |
size_t & | ad, | ||
size_t & | sv | ||
) | 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 |
geo::Point_t
. Definition at line 510 of file GeometryCore.cxx.
References geo::vect::makePointFromCoords(), and PositionToAuxDetSensitive().
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 419 of file GeometryCore.cxx.
References PositionToCryostatPtr().
Referenced by larg4::LArVoxelReadoutGeometry::FindNestedVolume(), PositionToCryostat(), PositionToTPCID(), and detsim::SimDriftElectrons::produce().
|
inline |
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 2067 of file GeometryCore.h.
References geo::vect::makePointFromCoords().
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 432 of file GeometryCore.cxx.
References Cryostat(), FindCryostatAtPosition(), geo::CryostatID::InvalidID, and PositionToCryostat().
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 446 of file GeometryCore.cxx.
References geo::CryostatID::Cryostat, and PositionToCryostat().
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 343 of file GeometryCore.cxx.
References FindCryostatAtPosition(), geo::CryostatGeo::ID(), and PositionToCryostatPtr().
Referenced by PositionToCryostatPtr().
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 331 of file GeometryCore.cxx.
References fPositionWiggle, IterateCryostats(), and PositionToCryostatID().
Referenced by FindCryostatAtPosition(), FindTPCAtPosition(), GetClosestOpDet(), PositionToCryostat(), PositionToCryostatID(), and PositionToTPCptr().
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 378 of file GeometryCore.cxx.
References PositionToTPCptr().
Referenced by larg4::LArVoxelReadoutGeometry::FindNestedVolume(), lar_pandora::PFParticleMonitoring::GetStartAndEndPoints(), lar_pandora::LArPandoraInput::GetTrueX0(), apa::APAGeometryAlg::LineSegChanIntersect(), PositionToTPC(), PositionToTPCptr(), detsim::SimDriftElectrons::produce(), cheat::BackTracker::SpacePointHitsToWeightedXYZ(), and opreco::OpticalRecoAna::update_MC_particle_time().
|
inline |
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 2454 of file GeometryCore.h.
References geo::vect::makePointFromCoords().
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 |
PositionToTPCID()
or PositionToTPC().ID()
Definition at line 401 of file GeometryCore.cxx.
References geo::CryostatID::Cryostat, geo::TPCGeo::ID(), PositionToTPC(), geo::TPCID::TPC, and TPC().
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 |
PositionToTPCID()
or PositionToTPC().ID()
Definition at line 391 of file GeometryCore.cxx.
References geo::TPCGeo::ID(), PositionToTPC(), and TPC().
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 411 of file GeometryCore.cxx.
References geo::TPCGeo::ID(), PositionToCryostat(), and PositionToTPCptr().
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 369 of file GeometryCore.cxx.
References fPositionWiggle, PositionToCryostatPtr(), PositionToTPC(), and geo::CryostatGeo::PositionToTPCptr().
Referenced by FindCryostatAtPosition(), PositionToTPC(), and PositionToTPCID().
void geo::GeometryCore::Print | ( | Stream && | out, |
std::string | indent = " " |
||
) | const |
Prints geometry information with maximum verbosity.
Definition at line 5546 of file GeometryCore.h.
References geo::PlaneGeo::ID(), art::detail::indent(), geo::AuxDetSensitiveGeo::MaxVerbosity, geo::OpDetGeo::MaxVerbosity, geo::AuxDetGeo::MaxVerbosity, geo::WireGeo::MaxVerbosity, geo::TPCGeo::MaxVerbosity, geo::PlaneGeo::MaxVerbosity, geo::TPCGeo::Nplanes(), geo::AuxDetGeo::NSensitiveVolume(), geo::PlaneGeo::Nwires(), geo::TPCGeo::Plane(), geo::AuxDetSensitiveGeo::PrintAuxDetInfo(), geo::AuxDetGeo::PrintAuxDetInfo(), geo::OpDetGeo::PrintOpDetInfo(), geo::PlaneGeo::PrintPlaneInfo(), geo::TPCGeo::PrintTPCInfo(), geo::WireGeo::PrintWireInfo(), geo::AuxDetGeo::SensitiveVolume(), w, and geo::PlaneGeo::Wire().
Referenced by geo::DumpGeometry::dumpGeometryCore(), and WireEndPoints().
|
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 1714 of file GeometryCore.h.
Referenced by geo::DumpGeometry::dumpGeometryCore(), and evgen::GENIEGen::GENIEGen().
TGeoManager * geo::GeometryCore::ROOTGeoManager | ( | ) | const |
Access to the ROOT geometry description manager.
Definition at line 185 of file GeometryCore.cxx.
Referenced by FindAllVolumePaths(), FindAllVolumes(), FindDetectorEnclosure(), evgen::GENIEGen::GENIEGen(), and evgen::RadioGen::SampleOne().
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 1842 of file GeometryCore.cxx.
References fChannelMapAlg, and FirstChannelInROP().
Referenced by reco3d::TripletFinder::FillBadMap(), reco3d::TripletFinder::FillHitMap(), and ROPtoWirePlanes().
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 1834 of file GeometryCore.cxx.
References fChannelMapAlg, and ROPtoTPCs().
Referenced by WirePlaneToROP().
|
inlineprotected |
Sets the detector name.
Definition at line 5332 of file GeometryCore.h.
Referenced by geo::Geometry::preBeginRun().
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 537 of file GeometryCore.cxx.
References WirePlaneToROP().
Referenced by caldata::CalWireAna::analyze(), evd::Landed::analyze(), lar::example::AnalysisExample::analyze(), cluster::HoughBaseAlg::FastTransform(), reco3d::TripletFinder::FillHitMap(), hit::HitCheater::FindHitsOnChannel(), calo::GeneralCalorimetry::GeneralCalorimetry(), cluster::MergeClusterAlg::GlobalWire(), cluster::BlurredClusteringAlg::GlobalWire(), shower::EMShowerAlg::GlobalWire(), shwf::ShowerReco::LongTransEnergy(), trkf::SpacePointAlg::makeSpacePoints(), evd::TWQMultiTPCProjectionView::PrintCharge(), evd::TWQProjectionView::PrintCharge(), hit::TTHitFinder::produce(), hit::FFTHitFinder::produce(), wc::MergeWireCell::produce(), caldata::CalWire::produce(), cluster::DBcluster::produce(), cluster::fuzzyCluster::produce(), trkf::SpacePts::produce(), hit::RawHitFinder::produce(), reco3d::SpacePointSolver::produce(), detsim::SimWire::produce(), evd::RawDataDrawer::QueueDrawingBoxes(), lariov::DetPedestalRetrievalAlg::Reconfigure(), hit::RFFHitFinderAlg::Run(), cluster::fuzzyClusterAlg::run_fuzzy_cluster(), cluster::HoughBaseAlg::Transform(), evd::TWireProjPad::TWireProjPad(), trkf::SpacePointAlg::update(), and evd::RecoBaseDrawer::Wire2D().
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 531 of file GeometryCore.cxx.
References fChannelMapAlg.
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 1863 of file GeometryCore.cxx.
References fChannelMapAlg.
|
private |
Runs the sorting of geometry with the sorter provided by channel mapping.
Definition at line 146 of file GeometryCore.cxx.
References AuxDets(), Cryostats(), geo::GeoObjectSorter::SortAuxDets(), util::SortByPointers(), and geo::GeoObjectSorter::SortCryostats().
Referenced by ApplyChannelMap().
|
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 1786 of file GeometryCore.h.
Referenced by evgen::CosmicsGen::produce().
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 1574 of file GeometryCore.cxx.
References CheckIndependentPlanesOnSameTPC(), Nplanes(), and geo::PlaneID::Plane.
Referenced by IntersectSegments(), ThirdPlane_dTdW(), and ThirdPlaneSlope().
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 1651 of file GeometryCore.cxx.
References CheckIndependentPlanesOnSameTPC(), ComputeThirdPlane_dTdW(), geo::PlaneGeo::PhiZ(), geo::TPCGeo::Plane(), TPC(), and geo::PlaneGeo::WirePitch().
Referenced by ThirdPlane_dTdW().
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 1682 of file GeometryCore.cxx.
References ComputeThirdPlaneSlope(), ThirdPlane(), and ThirdPlane_dTdW().
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 1621 of file GeometryCore.cxx.
References CheckIndependentPlanesOnSameTPC(), ComputeThirdPlaneSlope(), geo::PlaneGeo::PhiZ(), geo::TPCGeo::Plane(), and TPC().
Referenced by ThirdPlaneSlope().
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 1642 of file GeometryCore.cxx.
References ThirdPlane(), and ThirdPlaneSlope().
|
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 4278 of file GeometryCore.h.
|
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 4287 of file GeometryCore.h.
|
inline |
Returns the total mass [kg] of the specified volume (default: world).
Definition at line 1865 of file GeometryCore.h.
Referenced by evgen::GENIEGen::GENIEGen().
double geo::GeometryCore::TotalMass | ( | std::string | vol | ) | const |
Returns the total mass [kg] of the specified volume (default: world).
Definition at line 1112 of file GeometryCore.cxx.
References MassBetweenPoints().
unsigned int geo::GeometryCore::TotalNTPC | ( | ) | const |
Returns the total number of TPCs in the detector.
Definition at line 827 of file GeometryCore.cxx.
References evd::details::begin(), Cryostats(), evd::details::end(), and geo::CryostatGeo::NTPC().
Referenced by mvapid::MVAAlg::GetDetectorEdges().
|
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 2393 of file GeometryCore.h.
Referenced by hit::MagDriftAna::analyze(), calo::LinearEnergyAlg::CalculateEnergy(), evd::RecoBaseDrawer::Cluster2D(), pma::CmToWireDrift(), pma::VtxCandidate::ComputeMse2D(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), DetHalfHeight(), DetHalfWidth(), DetLength(), evd::RecoBaseDrawer::DrawTrack2D(), evd::RecoBaseDrawer::DrawTrackVertexAssns2D(), larg4::LArVoxelReadout::DriftIonizationElectrons(), evd::RecoBaseDrawer::EndPoint2D(), larg::LArSimChannelAna::ensureHists(), hit::MagDriftAna::ensureHists(), evd::RecoBaseDrawer::Event2D(), tca::FillWireHitRange(), tca::FindShowers3D(), pma::ProjectionMatchingAlg::GetCloseHits(), mvapid::MVAAlg::GetDetectorEdges(), GetLArTPCVolumeName(), nnet::TrainingDataAlg::getProjection(), pma::GetProjectionToPlane(), pma::ProjectionMatchingAlg::guideEndpoints(), pma::Track3D::InitFromMiddle(), tca::InsideTPC(), lar_pandora::LArPandoraGeometry::LoadGeometry(), pma::PMAlgTracker::matchCluster(), tca::MergePFPTjs(), evd::RecoBaseDrawer::OpFlashOrtho(), evd::Ortho3DPad::Ortho3DPad(), PlanePitch(), PositionToTPC(), lar_pandora::LArPandoraTrackCreation::produce(), evgen::NucleonDecay::produce(), evgen::NDKGen::produce(), evgen::NeutronOsc::produce(), trkf::PMAlgTrajFitter::produce(), detsim::SimDriftElectrons::produce(), trkf::PMAlgTrackMaker::produce(), evd::RecoBaseDrawer::Prong2D(), evd::RecoBaseDrawer::RecoBaseDrawer(), evgen::ActiveVolumeVertexSampler::reconfigure(), evgen::ActiveVolumeVertexSampler::sample_vertex_pos(), tca::SaveCRInfo(), lar_pandora::LArPandoraGeometry::ShouldSwitchUV(), ThirdPlane_dTdW(), ThirdPlaneSlope(), pma::ProjectionMatchingAlg::validate(), pma::ProjectionMatchingAlg::validate_on_adc_test(), evd::RecoBaseDrawer::Vertex2D(), WireAngleToVertical(), pma::WireDriftToCm(), and WirePitch().
|
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 2395 of file GeometryCore.h.
References geo::CryostatGeo::TPC().
|
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 2410 of file GeometryCore.h.
References geo::CryostatGeo::TPCPtr().
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 1798 of file GeometryCore.cxx.
References fChannelMapAlg.
Referenced by TPCtoTPCset().
readout::TPCsetID geo::GeometryCore::TPCtoTPCset | ( | geo::TPCID const & | tpcid | ) | const |
Returns the ID of the TPC set tpcid belongs to.
Definition at line 1790 of file GeometryCore.cxx.
References fChannelMapAlg, and TPCsetToTPCs().
Referenced by FindTPCsetAtPosition().
|
private |
Performs all the updates needed after sorting.
Definition at line 170 of file GeometryCore.cxx.
References allViews, Cryostats(), IterateTPCs(), and Ncryostats().
Referenced by ApplyChannelMap().
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 1298 of file GeometryCore.cxx.
References e, max, and WireEndPoints().
Referenced by apa::APAGeometryAlg::LineSegChanIntersect().
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 560 of file GeometryCore.cxx.
References geo::kUnknown, Plane(), and geo::PlaneGeo::View().
Referenced by calo::TrackCalorimetryAlg::AnalyzeHit(), apa::APAGeometryAlg::APAChannelsIntersect(), apa::APAGeometryAlg::APAView(), tca::FillWireHitRange(), hit::HitCheater::FindHitsOnChannel(), apa::APAGeometryAlg::FirstChannelInView(), calo::GeneralCalorimetry::GeneralCalorimetry(), corner::CornerFinderAlg::get_feature_points(), corner::CornerFinderAlg::get_feature_points_LineIntegralScore(), apa::APAGeometryAlg::Init(), apa::DisambigAlg::MakeCloseHits(), apa::APAGeometryAlg::NearestWireIDOnChan(), wc::MergeWireCell::produce(), cluster::TrajCluster::produce(), vertex::VertexMatch::produce(), reco3d::SpacePointSolver::produce(), vertex::HarrisVertexFinder::produce(), vertex::FeatureVertexFinder::produce(), shower::TCShowerTemplateMaker::showerProfileTrue(), cheat::BackTracker::TrackIdToSimIDEs_Ps(), and View().
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 554 of file GeometryCore.cxx.
References ChannelToROP(), raw::InvalidChannelID, geo::kUnknown, and View().
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 1857 of file GeometryCore.cxx.
References fChannelMapAlg, and View().
|
inline |
Returns a list of possible views in the detector.
Definition at line 4602 of file GeometryCore.h.
Referenced by cluster::HoughLineFinderAna::analyze(), vertex::FeatureVertexFinderAna::analyze(), detinfo::DetectorPropertiesStandard::CheckTimeOffsetConfigurationAfterSetup(), cluster::EndPointAlg::EndPoint(), cluster::HoughBaseAlg::FastTransform(), pma::PMAlgTracker::PMAlgTracker(), and vertex::VertexFinder2D::produce().
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 899 of file GeometryCore.cxx.
References art::productstatus::unknown(), and WorldVolume().
Referenced by larg4::LArG4Ana::analyze(), and LArStackingAction::InsideTPC().
|
inline |
Returns a string with the name of the detector, as configured.
Definition at line 1816 of file GeometryCore.h.
References geo::vect::toPoint().
|
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 3370 of file GeometryCore.h.
Referenced by IntersectSegments(), and trkf::Track3DKalmanHitAlg::makeSeed().
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 802 of file GeometryCore.cxx.
References geo::TPCGeo::Nplanes(), geo::TPCGeo::Plane(), geo::PlaneGeo::ThetaZ(), TPC(), geo::PlaneGeo::View(), and geo::PlaneGeo::ViewName().
Referenced by util::GeometryUtilities::CalculatePitch(), util::GeometryUtilities::CalculatePitchPolar(), util::GeometryUtilities::Get2DangleFrom3D(), lar_pandora::LArPandoraGeometry::LoadGeometry(), shower::EMShowerAlg::MakeShower(), util::GeometryUtilities::PitchInView(), calo::Calorimetry::produce(), WirePitch(), lar_pandora::PFParticleHitDumper::YZtoU(), and lar_pandora::PFParticleHitDumper::YZtoV().
|
inline |
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 3753 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 1189 of file GeometryCore.cxx.
References fChannelMapAlg, and NearestWire().
Referenced by ChannelToROP(), tca::ChgFracBetween(), tca::ChgFracNearEnd(), evd::RecoBaseDrawer::DrawProng2D(), evd::RecoBaseDrawer::DrawTrackVertexAssns2D(), tca::Find3DVertices(), tca::FindCompleteness(), tca::FindXMatches(), tca::FitTp3(), tca::FitTp3s(), tca::FollowTp3s(), cluster::MergeClusterAlg::GlobalWire(), cluster::BlurredClusteringAlg::GlobalWire(), shower::EMShowerAlg::GlobalWire(), ems::Hit2D::Hit2D(), lar_cluster3d::PCASeedFinderAlg::LineFit2DHits(), lar_cluster3d::HoughSeedFinderAlg::LineFit2DHits(), tca::MakeBareTP(), tca::MakeTp3(), shower::EMShowerAlg::OrderShowerHits(), tca::PosInPlane(), evd::RecoBaseDrawer::Prong2D(), evd::RecoBaseDrawer::Slice2D(), trkf::TrackLineFitAlg::TrkLineFit(), pma::ProjectionMatchingAlg::validate(), pma::ProjectionMatchingAlg::validate_on_adc(), pma::ProjectionMatchingAlg::validate_on_adc_test(), evd::RecoBaseDrawer::Vertex2D(), trkf::VertexFitAlg::VertexFit(), and WireCoordinate().
|
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 4007 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 1182 of file GeometryCore.cxx.
References Plane(), geo::PlaneGeo::WireCoordinate(), and WireCoordinate().
|
inline |
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 4028 of file GeometryCore.h.
References geo::vect::toPoint(), x, y, and z.
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 1307 of file GeometryCore.cxx.
References geo::GeometryCore::Segment< Point >::end(), and geo::GeometryCore::Segment< Point >::start().
Referenced by trkf::BezierTrackerAlgorithm::CalculateGeometricalElements(), trkf::SeedFinderAlgorithm::CalculateGeometricalElements(), cmtool::CFAlgoWireOverlap::Float(), cmtool::CFAlgoVolumeOverlap::Float(), trkf::BezierTrack::GetClosestApproach(), trkf::BezierTrack::GetClosestApproaches(), trkf::SeedFinderAlgorithm::GetHitDistAndProj(), trkf::BezierTrack::GetTrackPitch(), IncrementID(), IntersectSegments(), apa::DisambigAlg::TrivialDisambig(), and ValueInRange().
|
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 3807 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.
geo::GeometryCore::Segment<Point> geo::GeometryCore::WireEndPoints | ( | geo::WireID const & | wireid | ) | const |
Definition at line 5536 of file GeometryCore.h.
References geo::WireGeo::GetEnd(), geo::WireGeo::GetStart(), and Print().
|
private |
Wire ID check for WireIDsIntersect methods.
Definition at line 1976 of file GeometryCore.cxx.
References geo::TPCID::asTPCID(), HasWire(), Nwires(), geo::PlaneID::Plane, and geo::WireID::planeID().
Referenced by GetClosestOpDet(), and IntersectSegments().
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 |
intersection | (output) the intersection point (global coordinates) |
The "intersection" refers to the projection of the wires into the same wire plane. The coordinate along the drift direction is arbitrarily set to the one of the first wire. Wires are assumed to have at most one intersection. If wires are parallel, intersection
will have all components set to infinity (std::numeric_limits<>::infinity()
) and false
is returned. If the intersection is outside the TPC, false
is also returned, but the intersection
point will contain that intersection.
To test that the result is not infinity (nor NaN), use geo::vect::isfinite(intersection)
etc.
Referenced by apa::APAGeometryAlg::APAChannelsIntersect(), ChannelsIntersect(), apa::DisambigAlg::CompareViews(), shower::EMShowerAlg::Construct3DPoint(), evd::TWQProjectionView::FindEndPoint(), evd::TWQProjectionView::FindLineLength(), IntersectionPoint(), IntersectSegments(), reco3d::IntersectionCache::ISect(), lar_cluster3d::StandardHit3DBuilder::makeDeadChannelPair(), lar_cluster3d::StandardHit3DBuilder::makeHitPair(), and apa::APAGeometryAlg::ThreeChanPos().
bool geo::GeometryCore::WireIDsIntersect | ( | WireID const & | wid1, |
WireID const & | wid2, | ||
TVector3 & | intersection | ||
) | const |
Computes the intersection between two wires.
wid1 | ID of the first wire |
wid2 | ID of the other wire |
intersection | (output) the intersection point (global coordinates) |
The "intersection" refers to the projection of the wires into the same wire plane. The coordinate along the drift direction is arbitrarily set to the one of the first wire. Wires are assumed to have at most one intersection. If wires are parallel, intersection
will have all components set to infinity (std::numeric_limits<>::infinity()
) and false
is returned. If the intersection is outside the TPC, false
is also returned, but the intersection
point will contain that intersection.
To test that the result is not infinity (nor NaN), use geo::vect::isfinite(intersection)
etc.
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 |
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 3372 of file GeometryCore.h.
Referenced by trkf::SpacePointAlg::compatible(), trkf::SpacePointAlg::fillComplexSpacePoint(), trkf::SpacePointAlg::fillSpacePoint(), lar_cluster3d::PrincipalComponentsAlg::getHit2DPocaToAxis(), cluster::MergeClusterAlg::GlobalWire(), cluster::BlurredClusteringAlg::GlobalWire(), shower::EMShowerAlg::GlobalWire(), ems::Hit2D::Hit2D(), trkf::SpacePointAlg::makeSpacePoints(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_2D(), lar_cluster3d::PrincipalComponentsAlg::PCAAnalysis_calc2DDocas(), trkf::SpacePointAlg::separation(), trkf::TrackKalmanFitter::setupInputStates(), trkf::SurfWireLine::SurfWireLine(), trkf::SurfWireX::SurfWireX(), and apa::APAGeometryAlg::ThreeChanPos().
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 783 of file GeometryCore.cxx.
References Plane(), and geo::PlaneGeo::WirePitch().
Referenced by vertex::FeatureVertexFinderAna::analyze(), shwf::ShowerReco::beginJob(), shwf::ShowerReco::beginRun(), mvapid::MVAAlg::CalcSegmentdEdxDist(), trkf::BezierTrackerAlgorithm::CalculateGeometricalElements(), trkf::SeedFinderAlgorithm::CalculateGeometricalElements(), util::GeometryUtilities::CalculatePitch(), util::GeometryUtilities::CalculatePitchPolar(), evd::RecoBaseDrawer::Cluster2D(), cluster::ClusterMatchTQ::ClusterMatch(), lar_cluster3d::StandardHit3DBuilder::configure(), shower::HitPosition::ConvertWireTickToCm(), lar_pandora::LArPandoraInput::CreatePandoraHits2D(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), trkf::Track3DKalmanSPS::dQdxCalc(), evd::RecoBaseDrawer::DrawTrack2D(), cluster::EndPointAlg::EndPoint(), cluster::HoughBaseAlg::FastTransform(), trkf::SpacePointAlg::fillComplexSpacePoint(), tca::FilldEdx(), trkf::SpacePointAlg::fillSpacePoint(), tca::FillWireHitRange(), apa::DisambigAlg::FindChanTimeEndPts(), lar_cluster3d::HoughSeedFinderAlg::findHoughClusters(), trkf::BezierTrack::GetCalorimetryObject(), lar_pandora::LArPandoraInput::GetMips(), calo::Calorimetry::GetPitch(), trkf::BezierTrack::GetTrackPitch(), shower::TCShowerAlg::goodHit(), evd::RecoBaseDrawer::Hit2D(), shower::EMShowerAlg::HitPosition(), apa::APAGeometryAlg::Init(), lar_cluster3d::PCASeedFinderAlg::LineFit2DHits(), lar_cluster3d::HoughSeedFinderAlg::LineFit2DHits(), lar_pandora::LArPandoraGeometry::LoadGeometry(), shower::EMShowerAlg::MakeShower(), trkf::SpacePointAlg::makeSpacePoints(), util::GeometryUtilities::PitchInView(), lar_pandora::LArPandoraTrackCreation::produce(), cluster::DBCluster3D::produce(), trkf::SpacePts::produce(), trkf::Track3Dreco::produce(), calo::Calorimetry::produce(), vertex::VertexFinder2D::produce(), util::GeometryUtilities::Reconfigure(), trkf::KHitWireLine::subpredict(), trkf::KHitWireX::subpredict(), cluster::HoughBaseAlg::Transform(), trkf::TrackLineFitAlg::TrkLineFit(), evd::details::ADCCorrectorClass::update(), and trkf::VertexFitAlg::VertexFit().
|
inline |
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 3714 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 791 of file GeometryCore.cxx.
References Plane(), TPC(), WireAngleToVertical(), and geo::PlaneGeo::WirePitch().
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 1826 of file GeometryCore.cxx.
References fChannelMapAlg, and ROPtoWirePlanes().
Referenced by SignalType().
|
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 3351 of file GeometryCore.h.
References geo::PlaneGeo::WirePtr().
Referenced by lar_cluster3d::MinSpanTreeAlg::configure(), evd_tool::MicroBooNEDrawer::DrawBadChannels(), and evd_tool::ICARUSDrawer::DrawBadChannels().
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 885 of file GeometryCore.cxx.
References geo::BoxBoundedGeo::MaxX(), geo::BoxBoundedGeo::MaxY(), geo::BoxBoundedGeo::MaxZ(), geo::BoxBoundedGeo::MinX(), geo::BoxBoundedGeo::MinY(), geo::BoxBoundedGeo::MinZ(), and WorldBox().
Referenced by evd_tool::ICARUSDrawer::DetOutline3D(), and evgen::CORSIKAGen::GetSample().
geo::BoxBoundedGeo geo::GeometryCore::WorldBox | ( | ) | const |
Returns a box with the extremes of the world volume (from shape axes).
GetWorldVolumeName()
Definition at line 862 of file GeometryCore.cxx.
References GetWorldVolumeName(), s, WorldVolume(), x1, x2, y1, and y2.
Referenced by MaterialName(), and WorldBox().
TGeoVolume const * geo::GeometryCore::WorldVolume | ( | ) | const |
Returns a pointer to the world volume.
Definition at line 857 of file GeometryCore.cxx.
References GetWorldVolumeName().
Referenced by VolumeName(), and WorldBox().
|
private |
All views in the detector.
Definition at line 5404 of file GeometryCore.h.
Referenced by UpdateAfterSorting().
|
static |
Value of tolerance for equality comparisons.
Definition at line 1487 of file GeometryCore.h.
Referenced by IntersectLines(), PointWithinSegments(), and geo::sqr().
|
private |
Object containing the channel to wire mapping.
Definition at line 5400 of file GeometryCore.h.
Referenced by ApplyChannelMap(), ChannelToAuxDet(), ChannelToAuxDetSensitive(), ChannelToROP(), ChannelToWire(), FindAuxDetAtPosition(), FindAuxDetSensitiveAtPosition(), FirstChannelInROP(), HardwareChannelFromOpChannel(), HasChannel(), HasROP(), HasTPCset(), IsValidOpChannel(), MaxOpChannel(), MaxROPs(), MaxTPCsets(), Nchannels(), NOpChannels(), NOpHardwareChannels(), NROPs(), NTPCsets(), OpChannel(), OpDetFromOpChannel(), PlaneIDs(), PlaneWireToChannel(), ROPtoTPCs(), ROPtoWirePlanes(), SignalType(), TPCsetToTPCs(), TPCtoTPCset(), View(), WireCoordinate(), and WirePlaneToROP().
|
private |
|
private |
path to geometry file used for Geant4 simulation
Definition at line 5395 of file GeometryCore.h.
Referenced by LoadGeometryFile().
|
private |
The detector description data.
Definition at line 5391 of file GeometryCore.h.
Referenced by ApplyChannelMap().
|
private |
Minimum distance in Z from a point in which to look for the closest wire
Definition at line 5397 of file GeometryCore.h.
|
private |
accounting for rounding errors when testing positions
Definition at line 5399 of file GeometryCore.h.
Referenced by FindTPCAtPosition(), PositionToCryostatPtr(), and PositionToTPCptr().
|
private |
path to geometry file for geometry in GeometryCore
Definition at line 5396 of file GeometryCore.h.
Referenced by LoadGeometryFile().
|
private |
The point where air meets earth for this detector.
Definition at line 5393 of file GeometryCore.h.
|
static |
Wires must be found in GDML description within this number of nested volumes.
Definition at line 1484 of file GeometryCore.h.
Referenced by LoadGeometryFile().