8 #ifndef Geometry_VeryForwardGeometryBuilder_CTPPSGeometry 9 #define Geometry_VeryForwardGeometryBuilder_CTPPSGeometry 16 #include "CLHEP/Vector/ThreeVector.h" 17 #include "CLHEP/Vector/Rotation.h" 36 typedef std::map<unsigned int, const DetGeomDesc* >
mapType;
38 typedef std::map<unsigned int, std::set<unsigned int> >
mapSetType;
77 RPDeviceMapType::const_iterator
endRP()
const {
return rps_map_.end(); }
86 CLHEP::Hep3Vector
localToGlobal(
unsigned int,
const CLHEP::Hep3Vector& )
const;
87 CLHEP::Hep3Vector
globalToLocal(
unsigned int,
const CLHEP::Hep3Vector& )
const;
111 const std::set<unsigned int>&
getSensorsInRP(
unsigned int )
const;
std::map< unsigned int, const DetGeomDesc * > mapType
CTPPSGeometry(const DetGeomDesc *gd)
build up from DetGeomDesc
const std::set< unsigned int > & getStationsInArm(unsigned int) const
after checks returns set of station ids corresponding to the given arm id
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...
mapType::const_iterator beginSensor() const
begin iterator over sensors
const std::set< unsigned int > & getRPsInStation(unsigned int) const
after checks returns set of RP ids corresponding to the given station id
const DetGeomDesc * getSensor(unsigned int id) const
returns geometry of a detector performs necessary checks, returns NULL if fails
std::map< int, const DetGeomDesc * > RPDeviceMapType
void build(const DetGeomDesc *)
build up from DetGeomDesc structure
RPDeviceMapType::const_iterator beginRP() const
begin iterator over RPs
Geometrical description of a sensor.
CLHEP::Hep3Vector localToGlobal(const DetGeomDesc *, const CLHEP::Hep3Vector &) const
The manager class for TOTEM RP geometry.
CLHEP::Hep3Vector getRPTranslation(unsigned int id) const
mapSetType rps_in_station_
CLHEP::Hep3Vector localToGlobalDirection(unsigned int id, const CLHEP::Hep3Vector &) const
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
CLHEP::Hep3Vector globalToLocalDirection(unsigned int id, const CLHEP::Hep3Vector &) const
bool addSensor(unsigned int, const DetGeomDesc *&)
adds an item to the map (detector ID –> DetGeomDesc) performs necessary checks
CLHEP::Hep3Vector getSensorTranslation(unsigned int id) const
std::map< unsigned int, std::set< unsigned int > > mapSetType
const std::set< unsigned int > & getSensorsInRP(unsigned int) const
after checks returns set of sensor ids corresponding to the given RP id
mapType sensors_map_
map: sensor id –> DetGeomDesc
CLHEP::Hep3Vector globalToLocal(const DetGeomDesc *, const CLHEP::Hep3Vector &) const
const DetGeomDesc * getRP(unsigned int id) const
returns geometry of a RP box
bool addRP(unsigned int id, const DetGeomDesc *&)
adds a RP box to a map