LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
Interface for a class providing readout channel mapping to geometry. More...
#include "ChannelMapAlg.h"
Public Member Functions | |
virtual | ~ChannelMapAlg ()=default |
Virtual destructor. More... | |
virtual geo::GeoObjectSorter const & | Sorter () const =0 |
Returns the object to sort geometry with. More... | |
Geometry and mapping initialization and management | |
virtual void | Initialize (GeometryData_t const &geodata)=0 |
Geometry initialisation. More... | |
virtual void | Uninitialize ()=0 |
Deconfiguration: prepare for a following call of Initialize() More... | |
Optical detector channel mapping | |
virtual unsigned int | NOpChannels (unsigned int NOpDets) const |
Returns the number of optical channels contained in some detectors. More... | |
virtual unsigned int | MaxOpChannel (unsigned int NOpDets) const |
Returns the number of optical channels contained in some detectors. More... | |
virtual unsigned int | NOpHardwareChannels (unsigned int opDet) const |
Returns the number of channels in the specified optical detectors. More... | |
virtual bool | IsValidOpChannel (unsigned int opChannel, unsigned int NOpDets) const |
Returns whether the ID identifies a valid optical detector channel. More... | |
virtual unsigned int | OpChannel (unsigned int detNum, unsigned int hwchannel=0) const |
Returns the channel ID of the specified hardware channel. More... | |
virtual unsigned int | OpDetFromOpChannel (unsigned int opChannel) const |
Returns the optical detector the specified optical channel belongs. More... | |
virtual unsigned int | HardwareChannelFromOpChannel (unsigned int opChannel) const |
Returns the hardware channel number of specified optical channel. More... | |
Mapping of position to wires | |
virtual double | WireCoordinate (double YPos, double ZPos, geo::PlaneID const &planeID) const |
Returns the index of the wire nearest to the specified position. More... | |
virtual double | WireCoordinate (double YPos, double ZPos, unsigned int PlaneNo, unsigned int TPCNo, unsigned int cstat) const =0 |
Returns the index of the wire nearest to the specified position. More... | |
virtual geo::WireID | NearestWireID (const TVector3 &worldPos, geo::PlaneID const &planeID) const |
Returns the ID of the wire nearest to the specified position. More... | |
virtual geo::WireID | NearestWireID (const TVector3 &worldPos, unsigned int PlaneNo, unsigned int TPCNo, unsigned int cstat) const =0 |
Returns the ID of the wire nearest to the specified position. More... | |
unsigned int | NearestWire (const TVector3 &worldPos, geo::PlaneID const &planeID) const |
Returns the index of the wire nearest to the specified position. More... | |
unsigned int | NearestWire (const TVector3 &worldPos, unsigned int PlaneNo, unsigned int TPCNo, unsigned int cstat) const |
Returns the index of the wire nearest to the specified position. More... | |
Auxiliary detectors | |
virtual size_t | NearestAuxDet (const double *point, std::vector< geo::AuxDetGeo * > const &auxDets) const |
Returns the auxiliary detector closest to the specified point. More... | |
virtual size_t | NearestSensitiveAuxDet (const double *point, std::vector< geo::AuxDetGeo * > const &auxDets) const |
Returns sensitive auxiliary detector closest to specified point. More... | |
virtual size_t | ChannelToAuxDet (std::vector< geo::AuxDetGeo * > const &auxDets, std::string const &detName, uint32_t const &channel) const |
Returns the index of the detector containing the specified channel. More... | |
virtual std::pair< size_t, size_t > | ChannelToSensitiveAuxDet (std::vector< geo::AuxDetGeo * > const &auxDets, std::string const &detName, uint32_t const &channel) const |
Returns the index of the sensitive detector containing the channel. More... | |
TPC set mapping | |
virtual unsigned int | NTPCsets (readout::CryostatID const &cryoid) const =0 |
Returns the total number of TPC sets in the specified cryostat. More... | |
virtual unsigned int | MaxTPCsets () const =0 |
Returns the largest number of TPC sets any cryostat in the detector has. More... | |
virtual bool | HasTPCset (readout::TPCsetID const &tpcsetid) const =0 |
virtual readout::TPCsetID | TPCtoTPCset (geo::TPCID const &tpcid) const =0 |
Returns the ID of the TPC set tpcid belongs to. More... | |
virtual std::vector< geo::TPCID > | TPCsetToTPCs (readout::TPCsetID const &tpcsetid) const =0 |
Returns a list of ID of TPCs belonging to the specified TPC set. More... | |
virtual geo::TPCID | FirstTPCinTPCset (readout::TPCsetID const &tpcsetid) const =0 |
Returns the ID of the first TPC belonging to the specified TPC set. More... | |
Readout plane mapping | |
virtual unsigned int | NROPs (readout::TPCsetID const &tpcsetid) const =0 |
Returns the total number of ROP in the specified TPC set. More... | |
virtual unsigned int | MaxROPs () const =0 |
Returns the largest number of ROPs a TPC set in the detector has. More... | |
virtual bool | HasROP (readout::ROPID const &ropid) const =0 |
virtual readout::ROPID | WirePlaneToROP (geo::PlaneID const &planeid) const =0 |
Returns the ID of the ROP planeid belongs to. More... | |
virtual std::vector< geo::PlaneID > | ROPtoWirePlanes (readout::ROPID const &ropid) const =0 |
Returns a list of ID of planes belonging to the specified ROP. More... | |
virtual geo::PlaneID | FirstWirePlaneInROP (readout::ROPID const &ropid) const =0 |
Returns the ID of the first plane belonging to the specified ROP. More... | |
virtual std::vector< geo::TPCID > | ROPtoTPCs (readout::ROPID const &ropid) const =0 |
Returns a list of ID of TPCs the specified ROP spans. More... | |
virtual readout::ROPID | ChannelToROP (raw::ChannelID_t channel) const =0 |
Returns the ID of the ROP the channel belongs to. More... | |
virtual raw::ChannelID_t | FirstChannelInROP (readout::ROPID const &ropid) const =0 |
Returns the ID of the first channel in the specified readout plane. More... | |
Testing (not in the interface) | |
const std::vector< std::vector< std::vector< raw::ChannelID_t > > > | FirstChannelInNextPlane () const |
Retrieve the private fFirstChannelInNextPlane vector for testing. More... | |
const std::vector< std::vector< std::vector< raw::ChannelID_t > > > | FirstChannelInThisPlane () const |
Retrieve the private fFirstChannelInThisPlane vector for testing. More... | |
Protected Types | |
template<typename T > | |
using | TPCInfoMap_t = std::vector< std::vector< T >> |
Data type for per-TPC information. More... | |
template<typename T > | |
using | PlaneInfoMap_t = TPCInfoMap_t< std::vector< T >> |
Data type for per-plane information. More... | |
Protected Member Functions | |
template<typename T > | |
T const & | AccessElement (PlaneInfoMap_t< T > const &map, geo::PlaneID const &id) const |
Returns the specified element of the plane map. More... | |
template<typename T > | |
size_t | AccessElementSize (PlaneInfoMap_t< T > const &map, geo::TPCID const &id) const |
Returns the number of elements in the specified TPC of the plane map. More... | |
template<typename T > | |
T const * | GetElementPtr (PlaneInfoMap_t< T > const &map, geo::PlaneID const &id) const |
Returns a pointer to the specified element, or nullptr if invalid. More... | |
Internal structure data access | |
These functions allow access to the XxxInfoMap_t types based on geometry element IDs. They are strictly internal. | |
template<typename T > | |
T const & | AccessElement (TPCInfoMap_t< T > const &map, geo::TPCID const &id) const |
Returns the specified element of the TPC map. More... | |
template<typename T > | |
size_t | AccessElementSize (TPCInfoMap_t< T > const &map, geo::CryostatID const &id) const |
Returns the number of elements in the specified cryostat of the TPC map. More... | |
template<typename T > | |
bool | isValidElement (TPCInfoMap_t< T > const &map, geo::CryostatID const &id) const |
Returns whether the ID specifies a valid entry. More... | |
template<typename T > | |
bool | isValidElement (TPCInfoMap_t< T > const &map, geo::TPCID const &id) const |
Returns the specified element of the TPC map. More... | |
template<typename T > | |
bool | isValidElement (PlaneInfoMap_t< T > const &map, geo::CryostatID const &id) const |
Returns whether the ID specifies a valid entry. More... | |
template<typename T > | |
bool | isValidElement (PlaneInfoMap_t< T > const &map, geo::TPCID const &id) const |
Returns whether the ID specifies a valid entry. More... | |
template<typename T > | |
bool | isValidElement (PlaneInfoMap_t< T > const &map, geo::PlaneID const &id) const |
Returns whether the ID specifies a valid entry. More... | |
Protected Attributes | |
PlaneInfoMap_t< raw::ChannelID_t > | fFirstChannelInThisPlane |
PlaneInfoMap_t< raw::ChannelID_t > | fFirstChannelInNextPlane |
std::map< std::string, size_t > | fADNameToGeo |
map the names of the dets to the AuxDetGeo objects More... | |
std::map< size_t, std::vector< size_t > > | fADChannelToSensitiveGeo |
TPC channel mapping | |
virtual unsigned int | Nchannels () const =0 |
Returns the total number of channels present (not necessarily contiguous) More... | |
virtual unsigned int | Nchannels (readout::ROPID const &ropid) const =0 |
Returns the number of channels in the specified ROP. More... | |
virtual bool | HasChannel (raw::ChannelID_t channel) const |
Returns whether the specified channel is valid This default implementation assumes all channels up to Nchannels() valid. More... | |
virtual std::vector< WireID > | ChannelToWire (raw::ChannelID_t channel) const =0 |
geo::SigType_t | SignalTypeForChannel (raw::ChannelID_t const channel) const |
Return the signal type of the specified channel. More... | |
geo::SigType_t | SignalTypeForROPID (readout::ROPID const &ropid) const |
Return the signal type on the specified readout plane. More... | |
virtual std::set< geo::PlaneID > const & | PlaneIDs () const =0 |
Returns a list of the plane IDs in the whole detector. More... | |
virtual raw::ChannelID_t | PlaneWireToChannel (geo::WireID const &wireID) const |
Returns the channel ID a wire is connected to. More... | |
virtual raw::ChannelID_t | PlaneWireToChannel (unsigned int plane, unsigned int wire, unsigned int tpc, unsigned int cstat) const =0 |
Returns the channel ID a wire is connected to. More... | |
virtual geo::SigType_t | SignalTypeForChannelImpl (raw::ChannelID_t const channel) const =0 |
Return the signal type of the specified channel. More... | |
virtual geo::SigType_t | SignalTypeForROPIDImpl (readout::ROPID const &ropid) const |
Return the signal type on the specified readout plane. More... | |
Interface for a class providing readout channel mapping to geometry.
isValid
flag unset, or, in case of channel IDs, an ID with value raw::InvalidChannelID
. An ID that does not present this feature is by definition "valid"; this does not imply that the represented entity (channel, geometry entity or readout group) actually exists. The behaviour of the methods to valid, non-existent IDs should be considered undefined, and it is recommended that the existence of the entity is checked beforehand. Unless the documentation explicitly defines a behaviour, an undefined behaviour should be assumed; nevertheless, the documentation of some of the methods still reminds of this. Definition at line 55 of file ChannelMapAlg.h.
|
protected |
Data type for per-plane information.
Definition at line 610 of file ChannelMapAlg.h.
|
protected |
Data type for per-TPC information.
Definition at line 606 of file ChannelMapAlg.h.
|
virtualdefault |
Virtual destructor.
|
inlineprotected |
Returns the specified element of the TPC map.
Definition at line 633 of file ChannelMapAlg.h.
References AccessElementSize().
Referenced by geo::ChannelMapStandardAlg::FirstChannelInROP(), isValidElement(), geo::ChannelMapStandardAlg::NROPs(), geo::ChannelMapStandardAlg::WireCoordinate(), and geo::ChannelMapStandardAlg::WireCount().
|
inlineprotected |
Returns the specified element of the plane map.
Definition at line 660 of file ChannelMapAlg.h.
References AccessElementSize().
|
inlineprotected |
Returns the number of elements in the specified cryostat of the TPC map.
Definition at line 639 of file ChannelMapAlg.h.
References isValidElement().
Referenced by AccessElement().
|
inlineprotected |
Returns the number of elements in the specified TPC of the plane map.
Definition at line 666 of file ChannelMapAlg.h.
References isValidElement().
|
virtual |
Returns the index of the detector containing the specified channel.
auxDets | list of the auxiliary detectors |
detName | name of the auxiliary detector being investigated |
channel | number of the channel within that auxiliary detector |
auxDets
in the arguments and instead relies on a cache that is never filled by this class (derived classes can fill it though). Definition at line 151 of file ChannelMapAlg.cxx.
References fADNameToGeo.
Referenced by ChannelToSensitiveAuxDet(), and NearestWire().
|
pure virtual |
Returns the ID of the ROP the channel belongs to.
The channel must exist, or be the invalid channel value. With a channel that is not present in the mapping and that is not the invalid channel (raw::InvalidChannelID
), the result is undefined.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
virtual |
Returns the index of the sensitive detector containing the channel.
auxDets | list of the sensitive auxiliary detectors |
detName | name of the auxiliary detector being investigated |
channel | number of the channel within that auxiliary detector |
Definition at line 169 of file ChannelMapAlg.cxx.
References ChannelToAuxDet(), and fADChannelToSensitiveGeo.
Referenced by NearestWire().
|
pure virtual |
Returns a list of TPC wires connected to the specified readout channel ID
cet::exception | (category: "Geometry") if non-existent channel |
Implemented in geo::ChannelMapStandardAlg.
Referenced by HasChannel().
|
inline |
Retrieve the private fFirstChannelInNextPlane vector for testing.
Definition at line 591 of file ChannelMapAlg.h.
References fFirstChannelInThisPlane.
|
pure virtual |
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.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire(), and SignalTypeForROPIDImpl().
|
inline |
Retrieve the private fFirstChannelInThisPlane vector for testing.
Definition at line 595 of file ChannelMapAlg.h.
References fFirstChannelInNextPlane.
|
pure virtual |
Returns the ID of the first TPC belonging to the specified TPC set.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns the ID of the first plane belonging to the specified ROP.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
inlineprotected |
Returns a pointer to the specified element, or nullptr if invalid.
Definition at line 693 of file ChannelMapAlg.h.
Referenced by isValidElement(), and geo::ChannelMapStandardAlg::PlaneWireToChannel().
|
virtual |
Returns the hardware channel number of specified optical channel.
opChannel | the optical detector channel being queried |
If the specified optical channel is invalid, behaviour is undefined.
Definition at line 57 of file ChannelMapAlg.cxx.
Referenced by IsValidOpChannel(), and PlaneWireToChannel().
|
inlinevirtual |
Returns whether the specified channel is valid This default implementation assumes all channels up to Nchannels() valid.
Definition at line 90 of file ChannelMapAlg.h.
References ChannelToWire(), raw::isValidChannelID(), Nchannels(), PlaneIDs(), SignalTypeForChannel(), SignalTypeForChannelImpl(), SignalTypeForROPID(), and SignalTypeForROPIDImpl().
|
pure virtual |
Returns whether we have the specified ROP
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns whether we have the specified TPC set
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Geometry initialisation.
Implemented in geo::ChannelMapStandardAlg.
|
inlineprotected |
Returns whether the ID specifies a valid entry.
Definition at line 646 of file ChannelMapAlg.h.
Referenced by AccessElementSize(), and isValidElement().
|
inlineprotected |
Returns the specified element of the TPC map.
Definition at line 649 of file ChannelMapAlg.h.
References AccessElement(), and isValidElement().
|
inlineprotected |
Returns whether the ID specifies a valid entry.
Definition at line 673 of file ChannelMapAlg.h.
|
inlineprotected |
Returns whether the ID specifies a valid entry.
Definition at line 676 of file ChannelMapAlg.h.
References isValidElement().
|
inlineprotected |
Returns whether the ID specifies a valid entry.
Definition at line 683 of file ChannelMapAlg.h.
References GetElementPtr(), and isValidElement().
|
virtual |
Returns whether the ID identifies a valid optical detector channel.
opChannel | channel number |
NOpDets | number of optical detectors in the detector |
The specification of the number of optical channels reflects the logic described in NOpChannel()
.
Definition at line 63 of file ChannelMapAlg.cxx.
References HardwareChannelFromOpChannel(), NOpChannels(), NOpHardwareChannels(), and OpDetFromOpChannel().
Referenced by PlaneWireToChannel().
|
virtual |
Returns the number of optical channels contained in some detectors.
NOpDets | number of optical detectors |
This function returns the first optical channel ID larger than the last channel ID in a detector with NOpDets optical detectors (with the same logic as NOpChannels()
). For example, in a detector with 32 channels with contiguous IDs starting at 0, this function would return 32. If the channels started with ID 1, this function would instead return 33 and if there were a 16 channel gap, so that valid channels are from 0 to 15 and from 32 to 47, this function would return 48.
Definition at line 29 of file ChannelMapAlg.cxx.
References NOpChannels().
Referenced by PlaneWireToChannel().
|
pure virtual |
Returns the largest number of ROPs a TPC set in the detector has.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns the largest number of TPC sets any cryostat in the detector has.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns the total number of channels present (not necessarily contiguous)
Implemented in geo::ChannelMapStandardAlg.
Referenced by HasChannel().
|
pure virtual |
Returns the number of channels in the specified ROP.
Implemented in geo::ChannelMapStandardAlg.
|
virtual |
Returns the auxiliary detector closest to the specified point.
point | coordinates of the position to be investigated (x, y, z) |
auxDets | list of the sought auxiliary detectors |
Definition at line 80 of file ChannelMapAlg.cxx.
Referenced by NearestSensitiveAuxDet(), and NearestWire().
|
virtual |
Returns sensitive auxiliary detector closest to specified point.
point | coordinates of the position to be investigated (x, y, z) |
auxDets | list of the auxiliary detectors |
Definition at line 114 of file ChannelMapAlg.cxx.
References geo::AuxDetSensitiveGeo::HalfHeight(), geo::AuxDetSensitiveGeo::HalfWidth1(), geo::AuxDetSensitiveGeo::HalfWidth2(), geo::AuxDetSensitiveGeo::Length(), NearestAuxDet(), geo::AuxDetGeo::NSensitiveVolume(), geo::AuxDetGeo::SensitiveVolume(), and geo::AuxDetSensitiveGeo::WorldToLocal().
Referenced by NearestWire().
unsigned int geo::ChannelMapAlg::NearestWire | ( | const TVector3 & | worldPos, |
geo::PlaneID const & | planeID | ||
) | const |
Returns the index of the wire nearest to the specified position.
worldPos | position to be tested |
planeID | plane containing the wire |
NearestWireID(const TVector3&, geo::PlaneID const&)
instead. Definition at line 15 of file ChannelMapAlg.cxx.
References NearestWireID(), and geo::WireID::Wire.
Referenced by NearestWire(), and NearestWireID().
|
inline |
Returns the index of the wire nearest to the specified position.
worldPos | position to be tested |
PlaneNo | number of plane containing the wire |
TPCNo | number of TPC containing the wire |
cstat | number of cryostat containing the wire |
NearestWireID(const TVector3&, geo::PlaneID const&)
instead. Definition at line 408 of file ChannelMapAlg.h.
References ChannelToAuxDet(), ChannelToROP(), ChannelToSensitiveAuxDet(), FirstChannelInROP(), FirstTPCinTPCset(), FirstWirePlaneInROP(), HasROP(), HasTPCset(), MaxROPs(), MaxTPCsets(), NearestAuxDet(), NearestSensitiveAuxDet(), NearestWire(), NROPs(), NTPCsets(), ROPtoTPCs(), ROPtoWirePlanes(), Sorter(), TPCsetToTPCs(), TPCtoTPCset(), and WirePlaneToROP().
|
inlinevirtual |
Returns the ID of the wire nearest to the specified position.
worldPos | position to be tested |
planeID | plane containing the wire |
InvalidWireIDError | the ID found is not present in the detector |
The plane is required to be valid and exist in the detector. Otherwise, the behaviour is undefined. An exception is thrown if the wire that would be the closest is actually not present; but no check is performed whether the specified position is outside the wire plane: wires are extrapolated to be infinitely long. In other words, the result can be trusted only as long as the position is within the specified wire plane.
Reimplemented in geo::ChannelMapStandardAlg.
Definition at line 361 of file ChannelMapAlg.h.
References geo::CryostatID::Cryostat, NearestWire(), geo::PlaneID::Plane, and geo::TPCID::TPC.
Referenced by NearestWire(), and WireCoordinate().
|
pure virtual |
Returns the ID of the wire nearest to the specified position.
worldPos | position to be tested |
PlaneNo | number of plane containing the wire |
TPCNo | number of TPC containing the wire |
cstat | number of cryostat containing the wire |
geo::PlaneID
instead Implemented in geo::ChannelMapStandardAlg.
|
virtual |
Returns the number of optical channels contained in some detectors.
NOpDets | number of optical detectors |
This function returns how many channels can be expected to be present in a detector with NOpDets optical detectors. This is an upper limit, as not all channels have necessarily to be present.
For example: if a detector has four channels per optical detector, the returned value will be four times the argument NOpDets. If there is a single channel on each optical detector, the return value will be the value NOpDets (this is in fact the fallback implementation). If each optical detector can have anywhere between 2 and 12 channels, the returned value is 12 times NOpDets, and it will be an overestimation of the number of channels.
Definition at line 22 of file ChannelMapAlg.cxx.
Referenced by IsValidOpChannel(), MaxOpChannel(), and PlaneWireToChannel().
|
virtual |
Returns the number of channels in the specified optical detectors.
opDet | ID of the chosen optical detector |
This function returns how many channels are actually present in the optical detector with the specified ID.
For example: if a detector has four channels per optical detector, the returned value will be four, regardless opDet, and . If there is a single channel on each optical detector, the return value will be 1, again ignoring opDet (this is in fact the fallback implementation). If each optical detector can have anywhere between 2 and 12 channels, the returned value will be 2, 12, etc., that is the exact number of channels in opDet.
Although implementations are encouraged to return 0 on invalid optical detectors, the actual return value in that case is undefined.
Definition at line 36 of file ChannelMapAlg.cxx.
Referenced by IsValidOpChannel(), and PlaneWireToChannel().
|
pure virtual |
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.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns the total number of TPC sets in the specified cryostat.
cryoid | cryostat ID |
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
virtual |
Returns the channel ID of the specified hardware channel.
detNum | optical detector ID |
hwchannel | hardware channel within the specified optical detector |
If the input IDs identify a non-existing channel, the result is undefined.
Definition at line 45 of file ChannelMapAlg.cxx.
Referenced by PlaneWireToChannel().
|
virtual |
Returns the optical detector the specified optical channel belongs.
opChannel | the optical detector channel being queried |
If the specified optical channel is invalid, behaviour is undefined.
Definition at line 51 of file ChannelMapAlg.cxx.
Referenced by IsValidOpChannel(), and PlaneWireToChannel().
|
pure virtual |
Returns a list of the plane IDs in the whole detector.
Implemented in geo::ChannelMapStandardAlg.
Referenced by HasChannel().
|
inlinevirtual |
Returns the channel ID a wire is connected to.
wireID | ID of the wire |
Behaviour on an invalid or not present wires is undefined.
geo::WireID
Reimplemented in geo::ChannelMapStandardAlg.
Definition at line 167 of file ChannelMapAlg.h.
References geo::CryostatID::Cryostat, HardwareChannelFromOpChannel(), IsValidOpChannel(), MaxOpChannel(), NOpChannels(), NOpHardwareChannels(), OpChannel(), OpDetFromOpChannel(), geo::PlaneID::Plane, geo::TPCID::TPC, and geo::WireID::Wire.
|
pure virtual |
Returns the channel ID a wire is connected to.
plane | number of plane |
wire | number of wire |
tpc | number of TPC |
cstat | number of cryostat |
geo::WireID
Implemented in geo::ChannelMapStandardAlg.
|
pure virtual |
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.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns a list of ID of planes belonging to the specified ROP.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
geo::SigType_t geo::ChannelMapAlg::SignalTypeForChannel | ( | raw::ChannelID_t const | channel | ) | const |
Return the signal type of the specified channel.
channel | ID of the channel |
On any type of error (e.g., invalid or unknown channel ID), geo::kMysteryType is returned.
Definition at line 195 of file ChannelMapAlg.cxx.
References SignalTypeForChannelImpl().
Referenced by HasChannel(), and SignalTypeForROPIDImpl().
|
protectedpure virtual |
Return the signal type of the specified channel.
channel | ID of the channel |
On any type of error (e.g., invalid or unknown channel ID), geo::kMysteryType is returned.
Implemented in geo::ChannelMapStandardAlg.
Referenced by HasChannel(), and SignalTypeForChannel().
geo::SigType_t geo::ChannelMapAlg::SignalTypeForROPID | ( | readout::ROPID const & | ropid | ) | const |
Return the signal type on the specified readout plane.
ropid | ID of the readout plane |
If the readout plane ID is marked invalid, geo::kMysteryType is returned. If the readout plane is not marked invalid, but it does not match an existing readout plane, the result is undefined.
The default implementation uses readout plane to channel mapping. Other implementation may decide to do the opposite.
Definition at line 200 of file ChannelMapAlg.cxx.
References SignalTypeForROPIDImpl().
Referenced by HasChannel().
|
protectedvirtual |
Return the signal type on the specified readout plane.
ropid | ID of the readout plane |
If the readout plane ID is marked invalid, geo::kMysteryType is returned. If the readout plane is not marked invalid, but it does not match an existing readout plane, the result is undefined.
The default implementation uses readout plane to channel mapping. Other implementation may decide to do the opposite.
Definition at line 205 of file ChannelMapAlg.cxx.
References FirstChannelInROP(), and SignalTypeForChannel().
Referenced by HasChannel(), and SignalTypeForROPID().
|
pure virtual |
Returns the object to sort geometry with.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
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.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Returns the ID of the TPC set tpcid belongs to.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
pure virtual |
Deconfiguration: prepare for a following call of Initialize()
Implemented in geo::ChannelMapStandardAlg.
|
inlinevirtual |
Returns the index of the wire nearest to the specified position.
YPos | y coordinate on the wire plane |
ZPos | z coordinate on the wire plane |
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.
The plane is required to be valid and exist in the detector. Otherwise, the behaviour is undefined.
Reimplemented in geo::ChannelMapStandardAlg.
Definition at line 317 of file ChannelMapAlg.h.
References geo::CryostatID::Cryostat, NearestWireID(), geo::PlaneID::Plane, and geo::TPCID::TPC.
|
pure virtual |
Returns the index of the wire nearest 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 |
geo::PlaneID
instead Implemented in geo::ChannelMapStandardAlg.
|
pure virtual |
Returns the ID of the ROP planeid belongs to.
Implemented in geo::ChannelMapStandardAlg.
Referenced by NearestWire().
|
protected |
map the AuxDetGeo index to a vector of indices corresponding to the AuxDetSensitiveGeo index
Definition at line 618 of file ChannelMapAlg.h.
Referenced by ChannelToSensitiveAuxDet().
|
protected |
map the names of the dets to the AuxDetGeo objects
Definition at line 617 of file ChannelMapAlg.h.
Referenced by ChannelToAuxDet().
|
protected |
Definition at line 615 of file ChannelMapAlg.h.
Referenced by geo::ChannelMapStandardAlg::ChannelToWire(), FirstChannelInThisPlane(), geo::ChannelMapStandardAlg::Initialize(), and geo::ChannelMapStandardAlg::SignalTypeForChannelImpl().
|
protected |
Definition at line 614 of file ChannelMapAlg.h.
Referenced by geo::ChannelMapStandardAlg::ChannelToWire(), FirstChannelInNextPlane(), geo::ChannelMapStandardAlg::Initialize(), and geo::ChannelMapStandardAlg::SignalTypeForChannelImpl().