8 #ifndef Geometry_VeryForwardGeometryBuilder_CTPPSGeometry
9 #define Geometry_VeryForwardGeometryBuilder_CTPPSGeometry
32 typedef std::map<unsigned int, const DetGeomDesc*>
mapType;
34 typedef std::map<unsigned int, std::set<unsigned int> >
mapSetType;
74 RPDeviceMapType::const_iterator
endRP()
const {
return rps_map_.end(); }
102 const std::set<unsigned int>&
stationsInArm(
unsigned int)
const;
105 const std::set<unsigned int>&
rpsInStation(
unsigned int)
const;
108 const std::set<unsigned int>&
sensorsInRP(
unsigned int)
const;
void build(const DetGeomDesc *, unsigned int verbosity)
build up from DetGeomDesc structure
ROOT::Math::Plane3D::Vector Vector
mapSetType stations_in_arm_
map: parent ID -> set of subelements E.g. stations_in_arm_ is map of arm ID -> set of stations (in th...
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double >> Translation
const DetGeomDesc * rp(unsigned int id) const
returns geometry of a RP box
std::map< int, const DetGeomDesc * > RPDeviceMapType
mapType::const_iterator beginSensor() const
begin iterator over sensors
const std::set< unsigned int > & rpsInStation(unsigned int) const
after checks returns set of RP ids corresponding to the given station id
DetGeomDesc::Translation Vector
Vector localToGlobal(const DetGeomDesc *, const Vector &) const
std::map< unsigned int, const DetGeomDesc * > mapType
Vector globalToLocal(const DetGeomDesc *, const Vector &) const
const DetGeomDesc * sensorNoThrow(unsigned int id) const noexcept
RPDeviceMapType::const_iterator beginRP() const
begin iterator over RPs
Vector globalToLocalDirection(unsigned int id, const Vector &) const
The manager class for TOTEM RP geometry.
const std::set< unsigned int > & sensorsInRP(unsigned int) const
after checks returns set of sensor ids corresponding to the given RP id
const DetGeomDesc * sensor(unsigned int id) const
returns geometry of a detector performs necessary checks, returns NULL if fails
mapSetType rps_in_station_
mapType::const_iterator endSensor() const
end iterator over sensors
RPDeviceMapType::const_iterator endRP() const
end iterator over RPs
RPDeviceMapType rps_map_
map: rp id –> DetGeomDesc
Vector localToGlobalDirection(unsigned int id, const Vector &) const
Vector sensorTranslation(unsigned int id) const
const DetGeomDesc * rpNoThrow(unsigned int id) const noexcept
const std::set< unsigned int > & stationsInArm(unsigned int) const
after checks returns set of station ids corresponding to the given arm id
Vector rpTranslation(unsigned int id) const
bool addSensor(unsigned int, const DetGeomDesc *&)
adds an item to the map (detector ID –> DetGeomDesc) performs necessary checks
std::map< unsigned int, std::set< unsigned int > > mapSetType
mapType sensors_map_
map: sensor id –> DetGeomDesc
bool addRP(unsigned int id, const DetGeomDesc *&)
adds a RP box to a map
CTPPSGeometry(const DetGeomDesc *gd, unsigned int verbosity)
build up from DetGeomDesc