![]() |
Project
|
#include <ClustersPerLayer.h>
Public Member Functions | |
| void | init (int nLr) |
| < prepare for filling nLr layer slots, discarding the previous content | |
| void | beginLayer (int lr) |
| to be called once all the layers were filled | |
| void | finalize () |
| void | clear () |
| the clusters of all layers, to be appended to by the caller between beginLayer and finalize | |
| auto & | getClusters () |
| const auto & | getClusters () const |
| auto | getNLayers () const |
| auto | getFirstIndex (int lr) const |
| auto | getNClusters (int lr) const |
| auto | size () const |
| bool | empty () const |
| flat index of the cluster referred to by its composed ID | |
| int | flatIndex (int composedID) const |
| const T & | operator[] (int composedID) const |
< Container of the ITS/MFT clusters supplied either as a single (monolithic) array or per layer (staggered readout). The clusters of all layers are kept in a single vector, layer by layer, with the per-layer starting offsets recorded, so that a cluster referred to by the composed ID (layer << ClusLayerShift) + index_in_layer can be looked up directly. With the monolithic input only the layer slot 0 is filled and the composed ID coincides with the flat cluster index, hence the same lookup works for both cases.
The conversion of the compact clusters to the stored objects is detector specific (and needs the geometry), so it is left to the caller: the container only records where each layer starts. Expected usage (nLr == 1 for the monolithic input): cont.init(nLr); for (int lr = 0; lr < nLr; lr++) { cont.beginLayer(lr); auto pattIt = recoData.getITSClustersPatterns(lr).begin(); o2::its::ioutils::convertCompactClusters(recoData.getITSClusters(lr), pattIt, cont.getClusters(), dict); } cont.finalize(); after which cont[composedID] gives the cluster referred to by a track cluster reference.
Definition at line 46 of file ClustersPerLayer.h.
|
inline |
to be called once all the layers were filled
Definition at line 61 of file ClustersPerLayer.h.
|
inline |
the clusters of all layers, to be appended to by the caller between beginLayer and finalize
Definition at line 77 of file ClustersPerLayer.h.
|
inline |
flat index of the cluster referred to by its composed ID
Definition at line 92 of file ClustersPerLayer.h.
|
inline |
Definition at line 70 of file ClustersPerLayer.h.
|
inline |
Definition at line 95 of file ClustersPerLayer.h.
|
inline |
Definition at line 85 of file ClustersPerLayer.h.
|
inline |
Definition at line 86 of file ClustersPerLayer.h.
|
inline |
Definition at line 89 of file ClustersPerLayer.h.
|
inline |
Definition at line 90 of file ClustersPerLayer.h.
|
inline |
Definition at line 88 of file ClustersPerLayer.h.
|
inline |
< prepare for filling nLr layer slots, discarding the previous content
record the start of the layer lr data, the layers must be filled in the increasing order
Definition at line 50 of file ClustersPerLayer.h.
|
inline |
Definition at line 99 of file ClustersPerLayer.h.
|
inline |
Definition at line 91 of file ClustersPerLayer.h.