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 *, unsigned int verbosity) |
build up from DetGeomDesc structure More... | |
CTPPSGeometry (const DetGeomDesc *gd, unsigned int verbosity) | |
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... | |
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 30 of file CTPPSGeometry.h.
typedef std::map<unsigned int, std::set<unsigned int> > CTPPSGeometry::mapSetType |
Definition at line 34 of file CTPPSGeometry.h.
typedef std::map<unsigned int, const DetGeomDesc*> CTPPSGeometry::mapType |
Definition at line 32 of file CTPPSGeometry.h.
typedef std::map<int, const DetGeomDesc*> CTPPSGeometry::RPDeviceMapType |
Definition at line 33 of file CTPPSGeometry.h.
Definition at line 36 of file CTPPSGeometry.h.
|
inline |
build up from DetGeomDesc
Definition at line 39 of file CTPPSGeometry.h.
References build().
bool CTPPSGeometry::addRP | ( | unsigned int | id, |
const DetGeomDesc *& | gD | ||
) |
adds a RP box to a map
Definition at line 82 of file CTPPSGeometry.cc.
References gpuClustering::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 72 of file CTPPSGeometry.cc.
References gpuClustering::id, and sensors_map_.
Referenced by build().
|
inline |
begin iterator over RPs
Definition at line 72 of file CTPPSGeometry.h.
References rps_map_.
Referenced by CTPPSDiamondDQMSource::dqmBeginRun(), and CTPPSGeometryInfo::printGeometry().
|
inline |
begin iterator over sensors
Definition at line 67 of file CTPPSGeometry.h.
References sensors_map_.
Referenced by DiamondSampicDQMSource::bookHistograms(), CTPPSDiamondDQMSource::bookHistograms(), AlignmentTask::buildGeometry(), DiamondSampicDQMSource::dqmBeginRun(), PPSFastLocalSimulation::GenerateTrack(), and CTPPSGeometryInfo::printGeometry().
void CTPPSGeometry::build | ( | const DetGeomDesc * | gD, |
unsigned int | verbosity | ||
) |
build up from DetGeomDesc structure
Definition at line 15 of file CTPPSGeometry.cc.
References addRP(), addSensor(), CTPPSDetId::armId(), edmScanValgrind::buffer, AlCaHLTBitMon_QueryRunRegistry::comp, DetGeomDesc::components(), ztail::d, DDD_CTPPS_DIAMONDS_RP_NAME, DDD_CTPPS_DIAMONDS_SEGMENT_NAME, DDD_CTPPS_PIXELS_RP_NAME, DDD_CTPPS_PIXELS_SENSOR_NAME, DDD_CTPPS_PIXELS_SENSOR_NAME_2x2, 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_, DetGeomDesc::geographicalID(), DetGeomDesc::name(), DetGeomDesc::print(), 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 74 of file CTPPSGeometry.h.
References rps_map_.
Referenced by CTPPSDiamondDQMSource::dqmBeginRun(), and CTPPSGeometryInfo::printGeometry().
|
inline |
end iterator over sensors
Definition at line 69 of file CTPPSGeometry.h.
References sensors_map_.
Referenced by DiamondSampicDQMSource::bookHistograms(), CTPPSDiamondDQMSource::bookHistograms(), AlignmentTask::buildGeometry(), DiamondSampicDQMSource::dqmBeginRun(), PPSFastLocalSimulation::GenerateTrack(), and CTPPSGeometryInfo::printGeometry().
CTPPSGeometry::Vector CTPPSGeometry::globalToLocal | ( | const DetGeomDesc * | gd, |
const Vector & | r | ||
) | const |
Definition at line 171 of file CTPPSGeometry.cc.
References DetGeomDesc::rotation(), and DetGeomDesc::translation().
Referenced by PPSFastLocalSimulation::GenerateTrack(), globalToLocal(), and CTPPSDirectProtonSimulation::processProton().
CTPPSGeometry::Vector CTPPSGeometry::globalToLocal | ( | unsigned int | id, |
const Vector & | r | ||
) | const |
Definition at line 177 of file CTPPSGeometry.cc.
References globalToLocal(), 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 189 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 159 of file CTPPSGeometry.cc.
References DetGeomDesc::rotation(), and DetGeomDesc::translation().
Referenced by AlignmentTask::buildGeometry(), RPixPlaneCombinatoryTracking::calculatePointOnDetector(), RPixRoadFinder::findPattern(), PPSFastLocalSimulation::GenerateTrack(), localToGlobal(), CTPPSGeometryInfo::printGeometry(), and CTPPSDirectProtonSimulation::processProton().
CTPPSGeometry::Vector CTPPSGeometry::localToGlobal | ( | unsigned int | id, |
const Vector & | r | ||
) | const |
Definition at line 165 of file CTPPSGeometry.cc.
References localToGlobal(), 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 183 of file CTPPSGeometry.cc.
References DeadROC_duringRun::dir, DetGeomDesc::rotation(), and sensor().
Referenced by FastLineRecognition::getGeomData(), and TotemRPLocalTrackFitterAlgorithm::prepareReconstAlgebraData().
const DetGeomDesc * CTPPSGeometry::rp | ( | unsigned int | id | ) | const |
returns geometry of a RP box
Definition at line 112 of file CTPPSGeometry.cc.
References Exception, and rpNoThrow().
Referenced by rpTranslation().
|
noexcept |
Definition at line 122 of file CTPPSGeometry.cc.
Referenced by rp().
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 141 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 202 of file CTPPSGeometry.cc.
References rp().
Referenced by CTPPSProtonReconstructionPlotter::CalculateTimingTrackingDistance(), and CTPPSPixelLocalTrackProducer::produce().
const DetGeomDesc * CTPPSGeometry::sensor | ( | unsigned int | id | ) | const |
returns geometry of a detector performs necessary checks, returns NULL if fails
Definition at line 92 of file CTPPSGeometry.cc.
References Exception, g, and sensorNoThrow().
Referenced by CTPPSDiamondRecHitProducerAlgorithm::build(), RPixPlaneCombinatoryTracking::calculatePointOnDetector(), channelAlignedWithTrack(), CTPPSDiamondDQMSource::dqmBeginRun(), RPixRoadFinder::findPattern(), RPixPlaneCombinatoryTracking::findTracks(), FastLineRecognition::getGeomData(), globalToLocal(), globalToLocalDirection(), localToGlobal(), localToGlobalDirection(), CTPPSDirectProtonSimulation::processProton(), and sensorTranslation().
|
noexcept |
Definition at line 102 of file CTPPSGeometry.cc.
Referenced by TotemTimingRecHitProducerAlgorithm::build(), DiamondSampicDQMSource::dqmBeginRun(), and sensor().
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 150 of file CTPPSGeometry.cc.
References dets_in_rp_.
Referenced by CTPPSDirectProtonSimulation::processProton().
CTPPSGeometry::Vector CTPPSGeometry::sensorTranslation | ( | unsigned int | id | ) | const |
returns translation (position) of a detector
id | sensor id |
Definition at line 195 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 132 of file CTPPSGeometry.cc.
References stations_in_arm_.
|
protected |
Definition at line 119 of file CTPPSGeometry.h.
Referenced by build(), and sensorsInRP().
|
protected |
Definition at line 119 of file CTPPSGeometry.h.
Referenced by build(), and rpsInStation().
|
protected |
map: rp id –> DetGeomDesc
Definition at line 115 of file CTPPSGeometry.h.
|
protected |
map: sensor id –> DetGeomDesc
Definition at line 112 of file CTPPSGeometry.h.
Referenced by addSensor(), beginSensor(), build(), and endSensor().
|
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 119 of file CTPPSGeometry.h.
Referenced by build(), and stationsInArm().