The manager class for TOTEM RP geometry. More...
#include <CTPPSGeometry.h>
Public Types | |
typedef std::map< unsigned int, std::set< unsigned int > > | mapSetType |
typedef std::map< unsigned int, const DetGeomDesc * > | mapType |
typedef std::map< int, const DetGeomDesc * > | RPDeviceMapType |
using | Vector = DetGeomDesc::Translation |
Public Member Functions | |
bool | addRP (unsigned int id, const DetGeomDesc *&) |
adds a RP box to a map More... | |
bool | addSensor (unsigned int, const DetGeomDesc *&) |
adds an item to the map (detector ID --> DetGeomDesc) performs necessary checks More... | |
RPDeviceMapType::const_iterator | beginRP () const |
begin iterator over RPs More... | |
mapType::const_iterator | beginSensor () const |
begin iterator over sensors More... | |
void | build (const DetGeomDesc *) |
build up from DetGeomDesc structure More... | |
CTPPSGeometry () | |
CTPPSGeometry (const DetGeomDesc *gd) | |
build up from DetGeomDesc More... | |
RPDeviceMapType::const_iterator | endRP () const |
end iterator over RPs More... | |
mapType::const_iterator | endSensor () const |
end iterator over sensors More... | |
Vector | globalToLocal (const DetGeomDesc *, const Vector &) const |
Vector | globalToLocal (unsigned int, const Vector &) const |
Vector | globalToLocalDirection (unsigned int id, const Vector &) const |
Vector | localToGlobal (const DetGeomDesc *, const Vector &) const |
Vector | localToGlobal (unsigned int, const Vector &) const |
Vector | localToGlobalDirection (unsigned int id, const Vector &) const |
const DetGeomDesc * | rp (unsigned int id) const |
returns geometry of a RP box More... | |
const DetGeomDesc * | rpNoThrow (unsigned int id) const noexcept |
const std::set< unsigned int > & | rpsInStation (unsigned int) const |
after checks returns set of RP ids corresponding to the given station id More... | |
Vector | rpTranslation (unsigned int id) const |
const DetGeomDesc * | sensor (unsigned int id) const |
returns geometry of a detector performs necessary checks, returns NULL if fails More... | |
const DetGeomDesc * | sensorNoThrow (unsigned int id) const noexcept |
const std::set< unsigned int > & | sensorsInRP (unsigned int) const |
after checks returns set of sensor ids corresponding to the given RP id More... | |
Vector | sensorTranslation (unsigned int id) const |
const std::set< unsigned int > & | stationsInArm (unsigned int) const |
after checks returns set of station ids corresponding to the given arm id More... | |
~CTPPSGeometry () | |
Protected Attributes | |
mapSetType | dets_in_rp_ |
mapSetType | rps_in_station_ |
RPDeviceMapType | rps_map_ |
map: rp id --> DetGeomDesc More... | |
mapType | sensors_map_ |
map: sensor id --> DetGeomDesc More... | |
mapSetType | stations_in_arm_ |
map: parent ID -> set of subelements E.g. stations_in_arm_ is map of arm ID -> set of stations (in that arm) More... | |
The manager class for TOTEM RP geometry.
This is kind of "public relation class" for the tree structure of DetGeomDesc. It provides convenient interface to answer frequently asked questions about the geometry of TOTEM Roman Pots. These questions are of type:
Definition at line 29 of file CTPPSGeometry.h.
typedef std::map<unsigned int, std::set<unsigned int> > CTPPSGeometry::mapSetType |
Definition at line 37 of file CTPPSGeometry.h.
typedef std::map<unsigned int, const DetGeomDesc*> CTPPSGeometry::mapType |
Definition at line 35 of file CTPPSGeometry.h.
typedef std::map<int, const DetGeomDesc*> CTPPSGeometry::RPDeviceMapType |
Definition at line 36 of file CTPPSGeometry.h.
Definition at line 39 of file CTPPSGeometry.h.
|
inline |
Definition at line 41 of file CTPPSGeometry.h.
|
inline |
|
inline |
build up from DetGeomDesc
Definition at line 45 of file CTPPSGeometry.h.
bool CTPPSGeometry::addRP | ( | unsigned int | id, |
const DetGeomDesc *& | gD | ||
) |
adds a RP box to a map
Definition at line 69 of file CTPPSGeometry.cc.
References triggerObjects_cff::id, and rps_map_.
Referenced by build().
bool CTPPSGeometry::addSensor | ( | unsigned int | id, |
const DetGeomDesc *& | gD | ||
) |
adds an item to the map (detector ID --> DetGeomDesc) performs necessary checks
Definition at line 59 of file CTPPSGeometry.cc.
References triggerObjects_cff::id, and sensors_map_.
Referenced by build().
|
inline |
begin iterator over RPs
Definition at line 78 of file CTPPSGeometry.h.
|
inline |
begin iterator over sensors
Definition at line 73 of file CTPPSGeometry.h.
void CTPPSGeometry::build | ( | const DetGeomDesc * | gD | ) |
build up from DetGeomDesc structure
Definition at line 13 of file CTPPSGeometry.cc.
References addRP(), addSensor(), CTPPSDetId::armId(), edmScanValgrind::buffer, AlCaHLTBitMon_QueryRunRegistry::comp, ztail::d, DDD_CTPPS_DIAMONDS_RP_NAME, DDD_CTPPS_DIAMONDS_SEGMENT_NAME, DDD_CTPPS_PIXELS_RP_NAME, DDD_CTPPS_PIXELS_SENSOR_NAME, DDD_CTPPS_UFSD_SEGMENT_NAME, DDD_TOTEM_RP_RP_NAME, DDD_TOTEM_RP_SENSOR_NAME, DDD_TOTEM_TIMING_RP_NAME, DDD_TOTEM_TIMING_SENSOR_TMPL, dets_in_rp_, year_2016_postTS2_cff::rpId, CTPPSDetId::rpId(), rps_in_station_, rps_map_, sensors_map_, CTPPSDetId::stationId(), and stations_in_arm_.
Referenced by ~CTPPSGeometry().
|
inline |
end iterator over RPs
Definition at line 80 of file CTPPSGeometry.h.
|
inline |
CTPPSGeometry::Vector CTPPSGeometry::globalToLocal | ( | const DetGeomDesc * | gd, |
const Vector & | r | ||
) | const |
Definition at line 158 of file CTPPSGeometry.cc.
References alignCSCRings::r, DetGeomDesc::rotation(), and DetGeomDesc::translation().
Referenced by globalToLocal().
CTPPSGeometry::Vector CTPPSGeometry::globalToLocal | ( | unsigned int | id, |
const Vector & | r | ||
) | const |
Definition at line 164 of file CTPPSGeometry.cc.
References globalToLocal(), alignCSCRings::r, and sensor().
CTPPSGeometry::Vector CTPPSGeometry::globalToLocalDirection | ( | unsigned int | id, |
const Vector & | dir | ||
) | const |
direction transformations between global and local reference frames
id | sensor id |
Definition at line 176 of file CTPPSGeometry.cc.
References DeadROC_duringRun::dir, DetGeomDesc::rotation(), and sensor().
CTPPSGeometry::Vector CTPPSGeometry::localToGlobal | ( | const DetGeomDesc * | gd, |
const Vector & | r | ||
) | const |
coordinate transformations between local<-->global reference frames dimensions in mm sensor id expected
Definition at line 146 of file CTPPSGeometry.cc.
References alignCSCRings::r, DetGeomDesc::rotation(), and DetGeomDesc::translation().
Referenced by RPixPlaneCombinatoryTracking::calculatePointOnDetector(), RPixRoadFinder::findPattern(), and localToGlobal().
CTPPSGeometry::Vector CTPPSGeometry::localToGlobal | ( | unsigned int | id, |
const Vector & | r | ||
) | const |
Definition at line 152 of file CTPPSGeometry.cc.
References localToGlobal(), alignCSCRings::r, and sensor().
CTPPSGeometry::Vector CTPPSGeometry::localToGlobalDirection | ( | unsigned int | id, |
const Vector & | dir | ||
) | const |
direction transformations between local and global reference frames
id | sensor id |
Definition at line 170 of file CTPPSGeometry.cc.
References DeadROC_duringRun::dir, DetGeomDesc::rotation(), and sensor().
Referenced by TotemRPLocalTrackFitterAlgorithm::prepareReconstAlgebraData().
const DetGeomDesc * CTPPSGeometry::rp | ( | unsigned int | id | ) | const |
returns geometry of a RP box
Definition at line 99 of file CTPPSGeometry.cc.
References Exception, and rpNoThrow().
Referenced by rpTranslation().
|
noexcept |
const std::set< unsigned int > & CTPPSGeometry::rpsInStation | ( | unsigned int | id | ) | const |
after checks returns set of RP ids corresponding to the given station id
Definition at line 128 of file CTPPSGeometry.cc.
References rps_in_station_.
CTPPSGeometry::Vector CTPPSGeometry::rpTranslation | ( | unsigned int | id | ) | const |
returns position of a RP box
id | RP id |
Definition at line 189 of file CTPPSGeometry.cc.
References rp().
Referenced by CTPPSProtonProducer::produce().
const DetGeomDesc * CTPPSGeometry::sensor | ( | unsigned int | id | ) | const |
returns geometry of a detector performs necessary checks, returns NULL if fails
Definition at line 79 of file CTPPSGeometry.cc.
References Exception, g, and sensorNoThrow().
Referenced by RPixPlaneCombinatoryTracking::calculatePointOnDetector(), RPixRoadFinder::findPattern(), RPixPlaneCombinatoryTracking::findTracks(), globalToLocal(), globalToLocalDirection(), localToGlobal(), localToGlobalDirection(), and sensorTranslation().
|
noexcept |
const std::set< unsigned int > & CTPPSGeometry::sensorsInRP | ( | unsigned int | id | ) | const |
after checks returns set of sensor ids corresponding to the given RP id
Definition at line 137 of file CTPPSGeometry.cc.
References dets_in_rp_.
CTPPSGeometry::Vector CTPPSGeometry::sensorTranslation | ( | unsigned int | id | ) | const |
returns translation (position) of a detector
id | sensor id |
Definition at line 182 of file CTPPSGeometry.cc.
References sensor().
Referenced by TotemRPLocalTrackFitterAlgorithm::prepareReconstAlgebraData().
const std::set< unsigned int > & CTPPSGeometry::stationsInArm | ( | unsigned int | id | ) | const |
after checks returns set of station ids corresponding to the given arm id
Definition at line 119 of file CTPPSGeometry.cc.
References stations_in_arm_.
|
protected |
Definition at line 125 of file CTPPSGeometry.h.
Referenced by build(), and sensorsInRP().
|
protected |
Definition at line 125 of file CTPPSGeometry.h.
Referenced by build(), and rpsInStation().
|
protected |
map: rp id --> DetGeomDesc
Definition at line 121 of file CTPPSGeometry.h.
Referenced by addRP(), build(), and endSensor().
|
protected |
map: sensor id --> DetGeomDesc
Definition at line 118 of file CTPPSGeometry.h.
Referenced by addSensor(), and build().
|
protected |
map: parent ID -> set of subelements E.g. stations_in_arm_ is map of arm ID -> set of stations (in that arm)
Definition at line 125 of file CTPPSGeometry.h.
Referenced by build(), and stationsInArm().