![]() |
LArSoft
v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "APAGeometryAlg.h"
Public Member Functions | |
APAGeometryAlg () | |
bool | APAChannelsIntersect (uint32_t chan1, uint32_t chan2, std::vector< geo::WireIDIntersection > &IntersectVector) const |
If the channels intersect, get all intersections. More... | |
bool | LineSegChanIntersect (geo::Point_t const &xyzStart, geo::Point_t const &xyzEnd, uint32_t chan, std::vector< geo::WireID > &widsCrossed, bool ExtendLine) const |
If a line given by start/end points intersects a channel. More... | |
std::vector< geo::WireID > | ChanSegsPerSide (uint32_t chan, unsigned int side) const |
std::vector< geo::WireID > | ChanSegsPerSide (std::vector< geo::WireID > wids, unsigned int side) const |
std::vector< double > | ThreeChanPos (uint32_t u, uint32_t v, uint32_t z) const |
Find the center of the 3 intersections, choose best if multiple. More... | |
geo::WireID | NearestWireIDOnChan (geo::Point_t const &WorldLoc, uint32_t chan, geo::PlaneID const &planeID) const |
unsigned int | ChannelToAPA (uint32_t chan) const |
Get number of the APA containing the given channel. More... | |
void | ChannelToAPA (uint32_t chan, unsigned int &apa, unsigned int &cryo) const |
APAView_t | APAView (uint32_t chan) const |
Get which of the 4 APA views the channel is in. More... | |
unsigned int | ChannelsInView (geo::View_t geoview) const |
uint32_t | FirstChannelInView (geo::View_t geoview, unsigned int apa, unsigned int cryo) const |
uint32_t | FirstChannelInView (geo::View_t geoview, uint32_t chan) const |
uint32_t | FirstChannelInView (uint32_t chan) const |
unsigned int | ChannelsInAPAView (APAView_t apaview) const |
unsigned int | ChannelsPerAPA () const |
Private Attributes | |
art::ServiceHandle< geo::Geometry const > | fGeom |
geo::WireReadoutGeom const * | fWireReadoutGeom |
unsigned int | fChannelsPerAPA |
All APAs have this same number of channels. More... | |
unsigned int | fAPAsPerCryo |
uint32_t | fFirstU |
uint32_t | fLastU |
uint32_t | fFirstV |
uint32_t | fLastV |
uint32_t | fFirstZ0 |
uint32_t | fLastZ0 |
uint32_t | fFirstZ1 |
uint32_t | fLastZ1 |
double | fChannelRange [2] |
Definition at line 27 of file APAGeometryAlg.h.
apa::APAGeometryAlg::APAGeometryAlg | ( | ) |
Definition at line 32 of file APAGeometryAlg.cxx.
References geo::WireReadoutGeom::ChannelToWire(), fAPAsPerCryo, fChannelRange, fChannelsPerAPA, fFirstU, fFirstV, fFirstZ0, fFirstZ1, fGeom, fLastU, fLastV, fLastZ0, fLastZ1, fWireReadoutGeom, Get, geo::kU, geo::kV, geo::kZ, geo::WireReadoutGeom::Nchannels(), geo::GeometryCore::NTPC(), geo::WireReadoutGeom::Plane(), geo::TPCID::TPC, geo::WireReadoutGeom::View(), and geo::PlaneGeo::WirePitch().
bool apa::APAGeometryAlg::APAChannelsIntersect | ( | uint32_t | chan1, |
uint32_t | chan2, | ||
std::vector< geo::WireIDIntersection > & | IntersectVector | ||
) | const |
If the channels intersect, get all intersections.
Definition at line 403 of file APAGeometryAlg.cxx.
References ChannelToAPA(), geo::WireReadoutGeom::ChannelToWire(), fWireReadoutGeom, geo::WireReadoutGeom::View(), and geo::WireReadoutGeom::WireIDsIntersect().
Referenced by ThreeChanPos(), and apa::DisambigAlg::UseEndPts().
APAView_t apa::APAGeometryAlg::APAView | ( | uint32_t | chan | ) | const |
Get which of the 4 APA views the channel is in.
Definition at line 168 of file APAGeometryAlg.cxx.
References fChannelsPerAPA, fFirstZ1, fLastV, fLastZ0, fWireReadoutGeom, apa::kU, geo::kU, apa::kUnknown, apa::kV, geo::kV, geo::kZ, apa::kZ0, apa::kZ1, and geo::WireReadoutGeom::View().
unsigned int apa::APAGeometryAlg::ChannelsInAPAView | ( | APAView_t | apaview | ) | const |
unsigned int apa::APAGeometryAlg::ChannelsInView | ( | geo::View_t | geoview | ) | const |
Definition at line 108 of file APAGeometryAlg.cxx.
References ChannelsInAPAView(), apa::kU, geo::kU, apa::kV, geo::kV, geo::kZ, apa::kZ0, and apa::kZ1.
Referenced by apa::DisambigAlg::FindChanTimeEndPts(), and apa::DisambigAlg::MakeCloseHits().
|
inline |
Definition at line 63 of file APAGeometryAlg.h.
References fChannelsPerAPA.
unsigned int apa::APAGeometryAlg::ChannelToAPA | ( | uint32_t | chan | ) | const |
Get number of the APA containing the given channel.
Definition at line 102 of file APAGeometryAlg.cxx.
References fChannelsPerAPA.
Referenced by APAChannelsIntersect(), FirstChannelInView(), apa::DisambigAlg::MakeCloseHits(), and apa::DisambigAlg::RunDisambig().
void apa::APAGeometryAlg::ChannelToAPA | ( | uint32_t | chan, |
unsigned int & | apa, | ||
unsigned int & | cryo | ||
) | const |
Definition at line 90 of file APAGeometryAlg.cxx.
References fAPAsPerCryo, and fChannelsPerAPA.
std::vector< geo::WireID > apa::APAGeometryAlg::ChanSegsPerSide | ( | uint32_t | chan, |
unsigned int | side | ||
) | const |
Definition at line 189 of file APAGeometryAlg.cxx.
References geo::WireReadoutGeom::ChannelToWire(), and fWireReadoutGeom.
std::vector< geo::WireID > apa::APAGeometryAlg::ChanSegsPerSide | ( | std::vector< geo::WireID > | wids, |
unsigned int | side | ||
) | const |
Definition at line 196 of file APAGeometryAlg.cxx.
uint32_t apa::APAGeometryAlg::FirstChannelInView | ( | geo::View_t | geoview, |
unsigned int | apa, | ||
unsigned int | cryo | ||
) | const |
Definition at line 136 of file APAGeometryAlg.cxx.
References fAPAsPerCryo, fChannelsPerAPA, fFirstU, fFirstV, fFirstZ0, geo::kU, geo::kV, and geo::kZ.
Referenced by apa::DisambigAlg::FindChanTimeEndPts(), FirstChannelInView(), and apa::DisambigAlg::MakeCloseHits().
uint32_t apa::APAGeometryAlg::FirstChannelInView | ( | geo::View_t | geoview, |
uint32_t | chan | ||
) | const |
Definition at line 160 of file APAGeometryAlg.cxx.
References ChannelToAPA(), and FirstChannelInView().
uint32_t apa::APAGeometryAlg::FirstChannelInView | ( | uint32_t | chan | ) | const |
Definition at line 151 of file APAGeometryAlg.cxx.
References ChannelToAPA(), FirstChannelInView(), fWireReadoutGeom, and geo::WireReadoutGeom::View().
bool apa::APAGeometryAlg::LineSegChanIntersect | ( | geo::Point_t const & | xyzStart, |
geo::Point_t const & | xyzEnd, | ||
uint32_t | chan, | ||
std::vector< geo::WireID > & | widsCrossed, | ||
bool | ExtendLine = true |
||
) | const |
If a line given by start/end points intersects a channel.
Definition at line 244 of file APAGeometryAlg.cxx.
References geo::WireReadoutGeom::ChannelToWire(), fGeom, fWireReadoutGeom, geo::vect::middlePoint(), geo::PlaneGeo::NearestWireID(), geo::WireReadoutGeom::Plane(), geo::GeometryCore::PositionToTPCID(), lar::util::ValueInRange(), w, and geo::WireID::Wire.
geo::WireID apa::APAGeometryAlg::NearestWireIDOnChan | ( | geo::Point_t const & | WorldLoc, |
uint32_t | chan, | ||
geo::PlaneID const & | planeID | ||
) | const |
Definition at line 211 of file APAGeometryAlg.cxx.
References util::abs(), geo::WireReadoutGeom::ChannelToWire(), geo::CryostatID::Cryostat, fChannelRange, fWireReadoutGeom, geo::kZ, geo::PlaneGeo::NearestWireID(), geo::WireReadoutGeom::Plane(), geo::PlaneID::Plane, geo::TPCID::TPC, geo::WireReadoutGeom::View(), and geo::WireID::Wire.
Referenced by ThreeChanPos(), and apa::DisambigAlg::UseEndPts().
std::vector< double > apa::APAGeometryAlg::ThreeChanPos | ( | uint32_t | u, |
uint32_t | v, | ||
uint32_t | z | ||
) | const |
Find the center of the 3 intersections, choose best if multiple.
Definition at line 291 of file APAGeometryAlg.cxx.
References util::abs(), APAChannelsIntersect(), geo::WireReadoutGeom::ChannelToWire(), fGeom, fWireReadoutGeom, geo::WireGeo::GetCenter(), geo::TPCGeo::Length(), NearestWireIDOnChan(), geo::GeometryCore::TPC(), geo::WireReadoutGeom::Wire(), geo::WireReadoutGeom::WireIDsIntersect(), geo::WireIDIntersection::y, and geo::WireIDIntersection::z.
Referenced by apa::DisambigAlg::UseEndPts().
|
private |
Definition at line 70 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), ChannelToAPA(), and FirstChannelInView().
|
private |
Definition at line 82 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), and NearestWireIDOnChan().
|
private |
All APAs have this same number of channels.
Definition at line 69 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), APAView(), ChannelsPerAPA(), ChannelToAPA(), and FirstChannelInView().
|
private |
Definition at line 73 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), ChannelsInAPAView(), and FirstChannelInView().
|
private |
Definition at line 75 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), ChannelsInAPAView(), and FirstChannelInView().
|
private |
Definition at line 77 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), ChannelsInAPAView(), and FirstChannelInView().
|
private |
Definition at line 79 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), APAView(), and ChannelsInAPAView().
|
private |
Definition at line 66 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), LineSegChanIntersect(), and ThreeChanPos().
|
private |
Definition at line 74 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg().
|
private |
Definition at line 76 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), and APAView().
|
private |
Definition at line 78 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), and APAView().
|
private |
Definition at line 80 of file APAGeometryAlg.h.
Referenced by APAGeometryAlg(), and ChannelsInAPAView().
|
private |
Definition at line 67 of file APAGeometryAlg.h.
Referenced by APAChannelsIntersect(), APAGeometryAlg(), APAView(), ChanSegsPerSide(), FirstChannelInView(), LineSegChanIntersect(), NearestWireIDOnChan(), and ThreeChanPos().