12 #include <tracking/svdROIFinder/SVDROIGeometry.h>
13 #include <framework/logging/Logger.h>
14 #include <vxd/geometry/GeoCache.h>
15 #include <vxd/geometry/SensorInfoBase.h>
23 SVDROIGeometry::SVDROIGeometry()
28 SVDROIGeometry::~SVDROIGeometry()
34 SVDROIGeometry::fillPlaneList(
double toleranceZ,
40 std::set<Belle2::VxdID> svdLayers = geoCache.getLayers(VXD::SensorInfoBase::SVD);
41 std::set<Belle2::VxdID>::iterator itSvdLayers = svdLayers.begin();
45 while ((itSvdLayers != svdLayers.end()) && (itSvdLayers->getLayerNumber() != 7)) {
47 std::set<Belle2::VxdID> svdLadders = geoCache.getLadders(*itSvdLayers);
48 std::set<Belle2::VxdID>::iterator itSvdLadders = svdLadders.begin();
50 while (itSvdLadders != svdLadders.end()) {
52 std::set<Belle2::VxdID> svdSensors = geoCache.getSensors(*itSvdLadders);
53 std::set<Belle2::VxdID>::iterator itSvdSensors = svdSensors.begin();
55 while (itSvdSensors != svdSensors.end()) {
56 B2DEBUG(20,
" svd sensor info " << *itSvdSensors);
58 ROIDetPlane plane(*itSvdSensors, toleranceZ, tolerancePhi);
60 plane.setSharedPlanePtr(sharedPlane);
62 m_planeList.push_back(plane);
71 B2DEBUG(20,
"just filled the plane list with " << m_planeList.size() <<
"planes");
76 SVDROIGeometry::appendSelectedPlanes(std::list<ROIDetPlane>* selectedPlanes, TVector3 recoTrackPosition,
int layer)
80 std::list<ROIDetPlane>::iterator itPlanes = m_planeList.begin();
82 B2DEBUG(20,
" ..-append Planes, checking " << m_planeList.size() <<
" planes");
84 while (itPlanes != m_planeList.end()) {
86 if (itPlanes->isSensorInRange(recoTrackPosition, layer))
87 selectedPlanes->push_back(*itPlanes);
93 B2DEBUG(20,
" ..--list of sensor IDs of the selected planes for this track:");
94 itPlanes = selectedPlanes->begin();
95 while (itPlanes != selectedPlanes->end()) {
96 B2DEBUG(20,
" " << (itPlanes->getVxdID()));