Project
Loading...
Searching...
No Matches
o2::trk::Clusterer::ClustererThread Struct Reference

#include <Clusterer.h>

Public Member Functions

void resetColumn (int *buff) const
 swap current and previous column buffers
 
void swapColumnBuffers ()
 append pixel ip to the pre-cluster headed at preClusterIndex
 
void expandPreCluster (uint32_t ip, uint16_t row, int preClusterIndex)
 start a new pre-cluster with pixel ip at given row
 
void addNewPreCluster (uint32_t ip, uint16_t row)
 
void fetchMCLabels (uint32_t digID, const ConstDigitTruth *labelsDig, int &nfilled)
 
void initChip (gsl::span< const Digit > digits, uint32_t first, GeometryTGeo *geom)
 
void updateChip (gsl::span< const Digit > digits, uint32_t ip)
 
void finishChip (gsl::span< const Digit > digits, const ConstDigitTruth *labelsDigPtr, ClusterTruth *labelsClusPtr, GeometryTGeo *geom)
 
void finishChipSingleHitFast (gsl::span< const Digit > digits, uint32_t hit, const ConstDigitTruth *labelsDigPtr, ClusterTruth *labelsClusPtr, GeometryTGeo *geom)
 
void processChip (gsl::span< const Digit > digits, int chipFirst, int chipN, std::vector< Cluster > *clustersOut, std::vector< unsigned char > *patternsOut, const ConstDigitTruth *labelsDigPtr, ClusterTruth *labelsClusPtr, GeometryTGeo *geom)
 
void streamCluster (const BBox &bbox, const std::vector< std::pair< uint16_t, uint16_t > > &pixbuf, uint32_t totalCharge, bool doLabels, int nlab, uint16_t chipID, int subDetID, int layer, int disk)
 
 ~ClustererThread ()
 
 ClustererThread (Clusterer *par=nullptr)
 
 ClustererThread (const ClustererThread &)=delete
 
ClustererThreadoperator= (const ClustererThread &)=delete
 

Public Attributes

Clustererparent = nullptr
 
intcolumn1 = nullptr
 
intcolumn2 = nullptr
 
intcurr = nullptr
 current column pre-cluster indices
 
intprev = nullptr
 previous column pre-cluster indices
 
int size = constants::moduleMLOT::chip::nRows + 2
 reallocated per chip in initChip
 
std::vector< std::pair< int, uint32_t > > pixels
 
std::vector< intpreClusterHeads
 
std::vector< intpreClusterIndices
 
uint16_t currCol = 0xffff
 
bool noLeftCol = true
 
std::array< Label, MaxLabelslabelsBuff
 MC label buffer for one cluster.
 
std::vector< std::pair< uint16_t, uint16_t > > pixArrBuff
 (row,col) pixel buffer for pattern
 
std::vector< Clusterclusters
 
std::vector< unsigned charpatterns
 
ClusterTruth labels
 reset column buffer
 

Detailed Description

Definition at line 88 of file Clusterer.h.

Constructor & Destructor Documentation

◆ ~ClustererThread()

o2::trk::Clusterer::ClustererThread::~ClustererThread ( )
inline

Definition at line 153 of file Clusterer.h.

◆ ClustererThread() [1/2]

o2::trk::Clusterer::ClustererThread::ClustererThread ( Clusterer par = nullptr)
inlineexplicit

Definition at line 158 of file Clusterer.h.

◆ ClustererThread() [2/2]

o2::trk::Clusterer::ClustererThread::ClustererThread ( const ClustererThread )
delete

Member Function Documentation

◆ addNewPreCluster()

void o2::trk::Clusterer::ClustererThread::addNewPreCluster ( uint32_t  ip,
uint16_t  row 
)
inline

Definition at line 127 of file Clusterer.h.

◆ expandPreCluster()

void o2::trk::Clusterer::ClustererThread::expandPreCluster ( uint32_t  ip,
uint16_t  row,
int  preClusterIndex 
)
inline

start a new pre-cluster with pixel ip at given row

Definition at line 118 of file Clusterer.h.

◆ fetchMCLabels()

void o2::trk::Clusterer::ClustererThread::fetchMCLabels ( uint32_t  digID,
const ConstDigitTruth labelsDig,
int nfilled 
)

Definition at line 396 of file Clusterer.cxx.

◆ finishChip()

void o2::trk::Clusterer::ClustererThread::finishChip ( gsl::span< const Digit digits,
const ConstDigitTruth labelsDigPtr,
ClusterTruth labelsClusPtr,
GeometryTGeo geom 
)

Definition at line 225 of file Clusterer.cxx.

◆ finishChipSingleHitFast()

void o2::trk::Clusterer::ClustererThread::finishChipSingleHitFast ( gsl::span< const Digit digits,
uint32_t  hit,
const ConstDigitTruth labelsDigPtr,
ClusterTruth labelsClusPtr,
GeometryTGeo geom 
)

Definition at line 318 of file Clusterer.cxx.

◆ initChip()

void o2::trk::Clusterer::ClustererThread::initChip ( gsl::span< const Digit digits,
uint32_t  first,
GeometryTGeo geom 
)

Definition at line 133 of file Clusterer.cxx.

◆ operator=()

ClustererThread & o2::trk::Clusterer::ClustererThread::operator= ( const ClustererThread )
delete

◆ processChip()

void o2::trk::Clusterer::ClustererThread::processChip ( gsl::span< const Digit digits,
int  chipFirst,
int  chipN,
std::vector< Cluster > *  clustersOut,
std::vector< unsigned char > *  patternsOut,
const ConstDigitTruth labelsDigPtr,
ClusterTruth labelsClusPtr,
GeometryTGeo geom 
)

Definition at line 94 of file Clusterer.cxx.

◆ resetColumn()

void o2::trk::Clusterer::ClustererThread::resetColumn ( int buff) const
inline

swap current and previous column buffers

Definition at line 113 of file Clusterer.h.

◆ streamCluster()

void o2::trk::Clusterer::ClustererThread::streamCluster ( const BBox bbox,
const std::vector< std::pair< uint16_t, uint16_t > > &  pixbuf,
uint32_t  totalCharge,
bool  doLabels,
int  nlab,
uint16_t  chipID,
int  subDetID,
int  layer,
int  disk 
)

Definition at line 356 of file Clusterer.cxx.

◆ swapColumnBuffers()

void o2::trk::Clusterer::ClustererThread::swapColumnBuffers ( )
inline

append pixel ip to the pre-cluster headed at preClusterIndex

Definition at line 115 of file Clusterer.h.

◆ updateChip()

void o2::trk::Clusterer::ClustererThread::updateChip ( gsl::span< const Digit digits,
uint32_t  ip 
)

Definition at line 170 of file Clusterer.cxx.

Member Data Documentation

◆ clusters

std::vector<Cluster> o2::trk::Clusterer::ClustererThread::clusters

Definition at line 108 of file Clusterer.h.

◆ column1

int* o2::trk::Clusterer::ClustererThread::column1 = nullptr

Definition at line 91 of file Clusterer.h.

◆ column2

int* o2::trk::Clusterer::ClustererThread::column2 = nullptr

Definition at line 92 of file Clusterer.h.

◆ curr

int* o2::trk::Clusterer::ClustererThread::curr = nullptr

current column pre-cluster indices

Definition at line 93 of file Clusterer.h.

◆ currCol

uint16_t o2::trk::Clusterer::ClustererThread::currCol = 0xffff

Definition at line 101 of file Clusterer.h.

◆ labels

ClusterTruth o2::trk::Clusterer::ClustererThread::labels

reset column buffer

Definition at line 110 of file Clusterer.h.

◆ labelsBuff

std::array<Label, MaxLabels> o2::trk::Clusterer::ClustererThread::labelsBuff

MC label buffer for one cluster.

Definition at line 104 of file Clusterer.h.

◆ noLeftCol

bool o2::trk::Clusterer::ClustererThread::noLeftCol = true

Definition at line 102 of file Clusterer.h.

◆ parent

Clusterer* o2::trk::Clusterer::ClustererThread::parent = nullptr

Definition at line 89 of file Clusterer.h.

◆ patterns

std::vector<unsigned char> o2::trk::Clusterer::ClustererThread::patterns

Definition at line 109 of file Clusterer.h.

◆ pixArrBuff

std::vector<std::pair<uint16_t, uint16_t> > o2::trk::Clusterer::ClustererThread::pixArrBuff

(row,col) pixel buffer for pattern

Definition at line 105 of file Clusterer.h.

◆ pixels

std::vector<std::pair<int, uint32_t> > o2::trk::Clusterer::ClustererThread::pixels

Definition at line 98 of file Clusterer.h.

◆ preClusterHeads

std::vector<int> o2::trk::Clusterer::ClustererThread::preClusterHeads

Definition at line 99 of file Clusterer.h.

◆ preClusterIndices

std::vector<int> o2::trk::Clusterer::ClustererThread::preClusterIndices

Definition at line 100 of file Clusterer.h.

◆ prev

int* o2::trk::Clusterer::ClustererThread::prev = nullptr

previous column pre-cluster indices

Definition at line 94 of file Clusterer.h.

◆ size

int o2::trk::Clusterer::ClustererThread::size = constants::moduleMLOT::chip::nRows + 2

reallocated per chip in initChip

Definition at line 95 of file Clusterer.h.


The documentation for this struct was generated from the following files: