 |
Belle II Software
release-05-01-25
|
12 #ifndef PXD_IGNORED_PIXELS_MAP_H_
13 #define PXD_IGNORED_PIXELS_MAP_H_
15 #include <vxd/dataobjects/VxdID.h>
19 #include <unordered_map>
21 #include <unordered_set>
43 class PXDIgnoredPixelsMap {
46 typedef std::pair<unsigned short, unsigned short>
map_pixel;
50 typedef std::multimap< unsigned int, pixel_range_test_prototype, std::greater<unsigned int> >
IgnoredPixelsRangeSet;
79 std::unordered_map<unsigned short, IgnoredPixelsRangeSet>
m_Map;
81 std::unordered_map<unsigned short, IgnoredSinglePixelsSet>
m_MapSingles;
Class to uniquely identify a any structure of the PXD and SVD.
PXDIgnoredPixelsMap()=delete
No default constructor.
std::function< bool(unsigned short, unsigned short) > pixel_range_test_prototype
Prototype for lambda function used to check if a pixel is in masked range.
std::multimap< unsigned int, pixel_range_test_prototype, std::greater< unsigned int > > IgnoredPixelsRangeSet
Structure to hold set of masked pixel ranges ordered from largest to smallest by their area (unsigned...
IgnoredPixelsRangeSet m_lastIgnored
Set of ignored pixel ranges for the most currently queried sensor.
std::unordered_map< unsigned short, IgnoredPixelsRangeSet > m_Map
Structure holding sets of ignored pixel ranges for all sensors by sensor id (unsigned short).
IgnoredSinglePixelsSet m_lastIgnoredSingles
Set of ignored single pixels for the most currently queried sensor.
Abstract base class for different kinds of events.
unsigned short m_lastSensorVCells
The most currently queried sensor number of V pixels (for quick pixel uid evaluation)
std::unordered_map< unsigned short, IgnoredSinglePixelsSet > m_MapSingles
Structure holding sets of ingored single pixels for all sensors by sensor id (unsigned short).
const std::set< map_pixel > getIgnoredPixels(VxdID id)
Get the set of ignored pixels for a sensor.
bool pixelOK(VxdID id, map_pixel pixel)
Check whether a pixel on a given sensor is OK or not.
std::unordered_set< unsigned int > IgnoredSinglePixelsSet
Structure to hold set of masked single pixels indexed by their unique id (unsigned int),...
VxdID m_lastSensorID
The most currently queried sensor number.
std::pair< unsigned short, unsigned short > map_pixel
Simple structure for a pixel, u = map_pixel.first, v = map_pixel.second.