10 #include "tracking/pxdDataReductionClasses/ROIGeometry.h"
11 #include <framework/logging/Logger.h>
12 #include <vxd/geometry/GeoCache.h>
13 #include <vxd/geometry/SensorInfoBase.h>
14 #include <tracking/pxdDataReductionClasses/ROIDetPlane.h>
39 std::set<Belle2::VxdID>::iterator itPxdLayers = pxdLayers.begin();
43 while ((itPxdLayers != pxdLayers.end()) && (itPxdLayers->getLayerNumber() != 7)) {
45 std::set<Belle2::VxdID> pxdLadders = aGeometry.
getLadders(*itPxdLayers);
46 std::set<Belle2::VxdID>::iterator itPxdLadders = pxdLadders.begin();
48 while (itPxdLadders != pxdLadders.end()) {
50 std::set<Belle2::VxdID> pxdSensors = aGeometry.
getSensors(*itPxdLadders);
51 std::set<Belle2::VxdID>::iterator itPxdSensors = pxdSensors.begin();
52 B2DEBUG(20,
" pxd sensor info " << * (pxdSensors.begin()));
54 while (itPxdSensors != pxdSensors.end()) {
55 B2DEBUG(20,
" pxd sensor info " << *itPxdSensors);
57 ROIDetPlane plane(*itPxdSensors, toleranceZ, tolerancePhi);
59 plane.setSharedPlanePtr(sharedPlane);
70 B2DEBUG(20,
"just filled the plane list with " <<
m_planeList.size() <<
"planes");
79 std::list<ROIDetPlane>::iterator itPlanes =
m_planeList.begin();
81 B2DEBUG(20,
"append Planes, checking " <<
m_planeList.size() <<
" planes");
85 if (itPlanes->isSensorInRange(recoTrackPosition, layer))
86 selectedPlanes->push_back(*itPlanes);
92 B2DEBUG(20,
" list of sensor IDs of the selected planes for this track:");
93 itPlanes = selectedPlanes->begin();
94 while (itPlanes != selectedPlanes->end()) {
95 B2DEBUG(20,
" " << (itPlanes->getVxdID()));
ROIDetPlane describes the plane containing a sensor.
void appendSelectedPlanes(std::list< ROIDetPlane > *selectedPlanes, ROOT::Math::XYZVector recoTrackPosition, int layer)
Append to selectedPlanes those in the internal list for which a sensor is near the RecoTrack position...
void fillPlaneList(double toleranceZ, double tolerancePhi)
fill the list of planes
ROIGeometry()
Constructor.
~ROIGeometry()
Destructor.
std::list< ROIDetPlane > m_planeList
Append the PXDIntercept infos related to the track theTrack to the listToBeFilled.
Class to faciliate easy access to sensor information of the VXD like coordinate transformations or pi...
const std::set< Belle2::VxdID > getLayers(SensorInfoBase::SensorType sensortype=SensorInfoBase::VXD)
Return a set of all known Layers.
const std::set< Belle2::VxdID > & getSensors(Belle2::VxdID ladder) const
Return a set of all sensor IDs belonging to a given ladder.
static GeoCache & getInstance()
Return a reference to the singleton instance.
const std::set< Belle2::VxdID > & getLadders(Belle2::VxdID layer) const
Return a set of all ladder IDs belonging to a given layer.
Abstract base class for different kinds of events.
std::shared_ptr< genfit::DetPlane > SharedPlanePtr
Shared Pointer to a DetPlane.