![]() |
Project
|
#include <Clusterer.h>
Public Member Functions | |
void | resetColumn (int *buff) |
reset column buffer, for the performance reasons we use memset | |
void | swapColumnBuffers () |
add cluster at row (entry ip in the ChipPixeData) to the precluster with given index | |
void | expandPreCluster (uint32_t ip, uint16_t row, int preClusIndex) |
add new precluster at given row of current column for the fired pixel with index ip in the ChipPixelData | |
void | addNewPrecluster (uint32_t ip, uint16_t row) |
void | fetchMCLabels (int digID, const ConstMCTruth *labelsDig, int &nfilled) |
void | initChip (const ChipPixelData *curChipData, uint32_t first) |
void | updateChip (const ChipPixelData *curChipData, uint32_t ip) |
void | finishChip (ChipPixelData *curChipData, CompClusCont *compClus, PatternCont *patterns, const ConstMCTruth *labelsDig, MCTruth *labelsClus) |
void | finishChipSingleHitFast (uint32_t hit, ChipPixelData *curChipData, CompClusCont *compClusPtr, PatternCont *patternsPtr, const ConstMCTruth *labelsDigPtr, MCTruth *labelsClusPTr) |
void | process (uint16_t chip, uint16_t nChips, CompClusCont *compClusPtr, PatternCont *patternsPtr, const ConstMCTruth *labelsDigPtr, MCTruth *labelsClPtr, const ROFRecord &rofPtr) |
ClustererThread (Clusterer *par=nullptr, int _id=-1) | |
Public Attributes | |
int | id = -1 |
Clusterer * | parent = nullptr |
int | column1 [SegmentationAlpide::NRows+2] |
int | column2 [SegmentationAlpide::NRows+2] |
int * | curr = nullptr |
int * | prev = nullptr |
std::vector< std::pair< int, uint32_t > > | pixels |
std::vector< int > | preClusterHeads |
std::vector< int > | preClusterIndices |
uint16_t | currCol = 0xffff |
Column being processed. | |
bool | noLeftCol = true |
flag that there is no column on the left to check | |
std::array< Label, MaxLabels > | labelsBuff |
std::vector< PixelData > | pixArrBuff |
temporary buffer for building cluster labels | |
CompClusCont | compClusters |
temporary buffer for pattern calc. | |
PatternCont | patterns |
MCTruth | labels |
std::vector< ThreadStat > | stats |
Definition at line 123 of file Clusterer.h.
|
inline |
Definition at line 184 of file Clusterer.h.
|
inline |
Definition at line 164 of file Clusterer.h.
|
inline |
add new precluster at given row of current column for the fired pixel with index ip in the ChipPixelData
Definition at line 155 of file Clusterer.h.
void Clusterer::ClustererThread::fetchMCLabels | ( | int | digID, |
const ConstMCTruth * | labelsDig, | ||
int & | nfilled | ||
) |
Definition at line 417 of file Clusterer.cxx.
void Clusterer::ClustererThread::finishChip | ( | ChipPixelData * | curChipData, |
CompClusCont * | compClus, | ||
PatternCont * | patterns, | ||
const ConstMCTruth * | labelsDig, | ||
MCTruth * | labelsClus | ||
) |
Definition at line 213 of file Clusterer.cxx.
void Clusterer::ClustererThread::finishChipSingleHitFast | ( | uint32_t | hit, |
ChipPixelData * | curChipData, | ||
CompClusCont * | compClusPtr, | ||
PatternCont * | patternsPtr, | ||
const ConstMCTruth * | labelsDigPtr, | ||
MCTruth * | labelsClusPTr | ||
) |
Definition at line 303 of file Clusterer.cxx.
void Clusterer::ClustererThread::initChip | ( | const ChipPixelData * | curChipData, |
uint32_t | first | ||
) |
Definition at line 341 of file Clusterer.cxx.
void Clusterer::ClustererThread::process | ( | uint16_t | chip, |
uint16_t | nChips, | ||
CompClusCont * | compClusPtr, | ||
PatternCont * | patternsPtr, | ||
const ConstMCTruth * | labelsDigPtr, | ||
MCTruth * | labelsClPtr, | ||
const ROFRecord & | rofPtr | ||
) |
Definition at line 170 of file Clusterer.cxx.
reset column buffer, for the performance reasons we use memset
swap current and previous column buffers
Definition at line 149 of file Clusterer.h.
|
inline |
add cluster at row (entry ip in the ChipPixeData) to the precluster with given index
Definition at line 152 of file Clusterer.h.
void Clusterer::ClustererThread::updateChip | ( | const ChipPixelData * | curChipData, |
uint32_t | ip | ||
) |
Definition at line 362 of file Clusterer.cxx.
int o2::itsmft::Clusterer::ClustererThread::column1[SegmentationAlpide::NRows+2] |
Definition at line 128 of file Clusterer.h.
int o2::itsmft::Clusterer::ClustererThread::column2[SegmentationAlpide::NRows+2] |
Definition at line 129 of file Clusterer.h.
CompClusCont o2::itsmft::Clusterer::ClustererThread::compClusters |
temporary buffer for pattern calc.
temporary storage for the thread output
Definition at line 143 of file Clusterer.h.
int* o2::itsmft::Clusterer::ClustererThread::curr = nullptr |
Definition at line 130 of file Clusterer.h.
uint16_t o2::itsmft::Clusterer::ClustererThread::currCol = 0xffff |
Column being processed.
Definition at line 137 of file Clusterer.h.
int o2::itsmft::Clusterer::ClustererThread::id = -1 |
Definition at line 124 of file Clusterer.h.
MCTruth o2::itsmft::Clusterer::ClustererThread::labels |
Definition at line 145 of file Clusterer.h.
Definition at line 139 of file Clusterer.h.
bool o2::itsmft::Clusterer::ClustererThread::noLeftCol = true |
flag that there is no column on the left to check
Definition at line 138 of file Clusterer.h.
Clusterer* o2::itsmft::Clusterer::ClustererThread::parent = nullptr |
Definition at line 125 of file Clusterer.h.
PatternCont o2::itsmft::Clusterer::ClustererThread::patterns |
Definition at line 144 of file Clusterer.h.
std::vector<PixelData> o2::itsmft::Clusterer::ClustererThread::pixArrBuff |
temporary buffer for building cluster labels
Definition at line 140 of file Clusterer.h.
std::vector<std::pair<int, uint32_t> > o2::itsmft::Clusterer::ClustererThread::pixels |
Definition at line 134 of file Clusterer.h.
std::vector<int> o2::itsmft::Clusterer::ClustererThread::preClusterHeads |
Definition at line 135 of file Clusterer.h.
std::vector<int> o2::itsmft::Clusterer::ClustererThread::preClusterIndices |
Definition at line 136 of file Clusterer.h.
int* o2::itsmft::Clusterer::ClustererThread::prev = nullptr |
Definition at line 131 of file Clusterer.h.
std::vector<ThreadStat> o2::itsmft::Clusterer::ClustererThread::stats |
Definition at line 146 of file Clusterer.h.