CbmRoot
Loading...
Searching...
No Matches
cbm::algo::bmon::Hitfind Class Reference

Hit-finder steering class for BMON. More...

#include <Hitfind.h>

Public Types

using Output_t = std::tuple<PartitionedVector<Hit>, HitfindMonitorData, PODVector<int32_t>>
 Output format.
 

Public Member Functions

 Hitfind (HitfindSetup setup, uint32_t nThreads=1)
 Constructor.
 
Output_t operator() (gsl::span< CbmBmonDigi > digisIn, uint32_t iThread=0)
 Algorithm execution operator.
 
size_t GetDiamondIndex (uint32_t address) const
 Returns an index of the diamond by the address.
 
const PODVector< uint32_t > & GetDiamondAddresses () const
 Gets diamond addresses vector.
 

Private Attributes

uint32_t fNofThreads
 Number of threads.
 
uint32_t fSelectionBitsOffset
 Number of bits to ther right from the first bit in the selection mask.
 
uint32_t fSelectionBitmask
 Selection bitmask.
 
std::vector< std::vector< Clusterizer > > fAlgo
 Clusterizer algorithms [thread][diamond].
 
PODVector< uint32_t > fDiamondAddress
 Diamond address.
 

Detailed Description

Hit-finder steering class for BMON.

Definition at line 33 of file bmon/Hitfind.h.

Member Typedef Documentation

◆ Output_t

Output format.

Definition at line 36 of file bmon/Hitfind.h.

Constructor & Destructor Documentation

◆ Hitfind()

Hitfind::Hitfind ( HitfindSetup setup,
uint32_t nThreads = 1 )
explicit

Constructor.

Parameters
setupSetup configuration
nThreadsNumber of threads (for event-based mode)

Definition at line 26 of file bmon/Hitfind.cxx.

References cbm::algo::bmon::HitfindSetup::diamonds, fAlgo, fDiamondAddress, fNofThreads, fSelectionBitmask, fSelectionBitsOffset, L_, and cbm::algo::bmon::HitfindSetup::selectionMask.

Member Function Documentation

◆ GetDiamondAddresses()

const PODVector< uint32_t > & cbm::algo::bmon::Hitfind::GetDiamondAddresses ( ) const
inline

Gets diamond addresses vector.

Definition at line 53 of file bmon/Hitfind.h.

References fDiamondAddress.

◆ GetDiamondIndex()

size_t cbm::algo::bmon::Hitfind::GetDiamondIndex ( uint32_t address) const
inline

Returns an index of the diamond by the address.

Parameters
addressA hardware address of the digi

Definition at line 50 of file bmon/Hitfind.h.

References fSelectionBitmask, and fSelectionBitsOffset.

Referenced by operator()().

◆ operator()()

Hitfind::Output_t Hitfind::operator() ( gsl::span< CbmBmonDigi > digisIn,
uint32_t iThread = 0 )

Algorithm execution operator.

Parameters
digiInA portion of digis in TS/event
iThreadIndex of thread

Definition at line 77 of file bmon/Hitfind.cxx.

References fAlgo, fDiamondAddress, GetDiamondIndex(), and hits.

Member Data Documentation

◆ fAlgo

std::vector<std::vector<Clusterizer> > cbm::algo::bmon::Hitfind::fAlgo
private

Clusterizer algorithms [thread][diamond].

Definition at line 60 of file bmon/Hitfind.h.

Referenced by Hitfind(), and operator()().

◆ fDiamondAddress

PODVector<uint32_t> cbm::algo::bmon::Hitfind::fDiamondAddress
private

Diamond address.

Definition at line 61 of file bmon/Hitfind.h.

Referenced by GetDiamondAddresses(), Hitfind(), and operator()().

◆ fNofThreads

uint32_t cbm::algo::bmon::Hitfind::fNofThreads
private

Number of threads.

Definition at line 56 of file bmon/Hitfind.h.

Referenced by Hitfind().

◆ fSelectionBitmask

uint32_t cbm::algo::bmon::Hitfind::fSelectionBitmask
private

Selection bitmask.

Definition at line 58 of file bmon/Hitfind.h.

Referenced by GetDiamondIndex(), and Hitfind().

◆ fSelectionBitsOffset

uint32_t cbm::algo::bmon::Hitfind::fSelectionBitsOffset
private

Number of bits to ther right from the first bit in the selection mask.

Definition at line 57 of file bmon/Hitfind.h.

Referenced by GetDiamondIndex(), and Hitfind().


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