Internal lookup table used to speedup WaferID queries as function of position.
More...
#include <ScdGeoParams.h>
|
| WaferLookupTable () |
| map of all the waferIDs covered by each cell. More...
|
|
const std::vector< unsigned int > & | WaferIDsAtPos (std::array< float, 2 > position) |
|
size_t | PosToCellID (std::array< float, 2 > position) |
|
void | UpdateNCells (std::array< size_t, 2 > newNcells) |
|
void | UpdateSurface (std::array< float, 2 > newOrigin, std::array< float, 2 > newSizes) |
|
void | UpdateInternals (std::vector< Point > waferPositions, std::array< float, 2 > waferSizes, std::pair< RefFrame::Direction, RefFrame::Direction > segmDirections) |
|
|
bool | isValid = false |
|
std::array< size_t, 2 > | ncells |
|
std::array< float, 2 > | sizes |
| Number of cells in the lookup table [primary strip segm dir, secondary strip segm dir]. More...
|
|
std::array< float, 2 > | cellDimension |
| Total size of the lookup table [primary strip segm dir, secondary strip segm dir]. More...
|
|
Rectangle | surface |
|
std::vector< std::vector< unsigned int > > | waferIDs |
|
Internal lookup table used to speedup WaferID queries as function of position.
The LUT divides the detector surface in cells and for each cell stores the list of waferIDs covered by it. Input position is then converted to a cell number by simple math operations and the corresponding wafers are then checked for intersection more thoroughly.
◆ WaferLookupTable()
Herd::ScdGeoParams::WaferLookupTable::WaferLookupTable |
( |
| ) |
|
|
inline |
map of all the waferIDs covered by each cell.
◆ PosToCellID()
size_t Herd::ScdGeoParams::WaferLookupTable::PosToCellID |
( |
std::array< float, 2 > |
position | ) |
|
◆ UpdateInternals()
◆ UpdateNCells()
void Herd::ScdGeoParams::WaferLookupTable::UpdateNCells |
( |
std::array< size_t, 2 > |
newNcells | ) |
|
◆ UpdateSurface()
void Herd::ScdGeoParams::WaferLookupTable::UpdateSurface |
( |
std::array< float, 2 > |
newOrigin, |
|
|
std::array< float, 2 > |
newSizes |
|
) |
| |
◆ WaferIDsAtPos()
const std::vector< unsigned int > & Herd::ScdGeoParams::WaferLookupTable::WaferIDsAtPos |
( |
std::array< float, 2 > |
position | ) |
|
◆ cellDimension
std::array<float, 2> Herd::ScdGeoParams::WaferLookupTable::cellDimension |
Total size of the lookup table [primary strip segm dir, secondary strip segm dir].
◆ isValid
bool Herd::ScdGeoParams::WaferLookupTable::isValid = false |
◆ ncells
std::array<size_t, 2> Herd::ScdGeoParams::WaferLookupTable::ncells |
◆ sizes
std::array<float, 2> Herd::ScdGeoParams::WaferLookupTable::sizes |
Number of cells in the lookup table [primary strip segm dir, secondary strip segm dir].
◆ surface
Rectangle Herd::ScdGeoParams::WaferLookupTable::surface |
Physical dimension of the lookup table cell [primary strip segm dir, secondary strip segm dir]
◆ waferIDs
std::vector<std::vector<unsigned int> > Herd::ScdGeoParams::WaferLookupTable::waferIDs |
The documentation for this struct was generated from the following files: