Project
Loading...
Searching...
No Matches
o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes > Class Template Reference

#include <RawReaderBase.h>

Public Types

typedef DigitBlockType DigitBlock_t
 
typedef RawDataMetric RawDataMetric_t
 
using LookupTable_t = typename DigitBlock_t::LookupTable_t
 
using EntryCRU_t = typename LookupTable_t::EntryCRU_t
 
using HashTableCRU_t = std::unordered_map< EntryCRU_t, RawDataMetric, typename LookupTable_t::MapEntryCRU2ModuleType_t::hasher, typename LookupTable_t::MapEntryCRU2ModuleType_t::key_equal >
 
typedef boost::mpl::vector< typename DataBlockTypes::DataBlockInvertedPadding_t..., DataBlockTypes... > VecDataBlocks_t
 

Public Member Functions

 RawReaderBase ()=default
 
 ~RawReaderBase ()=default
 
template<typename T >
constexpr std::vector< T > & getVecDataBlocks ()
 
template<class DataBlockType >
size_t decodeBlocks (const gsl::span< const uint8_t > binaryPayload, RawDataMetric &metric, std::vector< DataBlockType > &vecDataBlocks)
 
template<class DataBlockType , typename... T>
void processBinaryData (gsl::span< const uint8_t > payload, uint16_t feeID, uint8_t linkID, uint8_t epID)
 
RawDataMetricaddMetric (uint16_t feeID, uint8_t linkID, uint8_t epID, bool isRegisteredFEE=true)
 
template<typename... VecDigitType>
int getDigits (VecDigitType &... vecDigit)
 
void getMetrics (std::vector< RawDataMetric > &vecMetrics)
 

Public Attributes

HashTableCRU_t mHashTableMetrics {}
 
std::tuple< std::vector< typename DataBlockTypes::DataBlockInvertedPadding_t >..., std::vector< DataBlockTypes >... > mTupleVecDataBlocks
 
std::map< InteractionRecord, DigitBlock_tmMapDigits
 

Detailed Description

template<typename DigitBlockType, typename... DataBlockTypes>
class o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >

Definition at line 46 of file RawReaderBase.h.

Member Typedef Documentation

◆ DigitBlock_t

template<typename DigitBlockType , typename... DataBlockTypes>
typedef DigitBlockType o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::DigitBlock_t

Definition at line 51 of file RawReaderBase.h.

◆ EntryCRU_t

template<typename DigitBlockType , typename... DataBlockTypes>
using o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::EntryCRU_t = typename LookupTable_t::EntryCRU_t

Definition at line 54 of file RawReaderBase.h.

◆ HashTableCRU_t

template<typename DigitBlockType , typename... DataBlockTypes>
using o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::HashTableCRU_t = std::unordered_map<EntryCRU_t, RawDataMetric, typename LookupTable_t::MapEntryCRU2ModuleType_t::hasher, typename LookupTable_t::MapEntryCRU2ModuleType_t::key_equal>

Definition at line 55 of file RawReaderBase.h.

◆ LookupTable_t

template<typename DigitBlockType , typename... DataBlockTypes>
using o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::LookupTable_t = typename DigitBlock_t::LookupTable_t

Definition at line 53 of file RawReaderBase.h.

◆ RawDataMetric_t

template<typename DigitBlockType , typename... DataBlockTypes>
typedef RawDataMetric o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::RawDataMetric_t

Definition at line 52 of file RawReaderBase.h.

◆ VecDataBlocks_t

template<typename DigitBlockType , typename... DataBlockTypes>
typedef boost::mpl::vector<typename DataBlockTypes::DataBlockInvertedPadding_t..., DataBlockTypes...> o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::VecDataBlocks_t

Definition at line 58 of file RawReaderBase.h.

Constructor & Destructor Documentation

◆ RawReaderBase()

template<typename DigitBlockType , typename... DataBlockTypes>
o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::RawReaderBase ( )
default

◆ ~RawReaderBase()

template<typename DigitBlockType , typename... DataBlockTypes>
o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::~RawReaderBase ( )
default

Member Function Documentation

◆ addMetric()

template<typename DigitBlockType , typename... DataBlockTypes>
RawDataMetric & o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::addMetric ( uint16_t  feeID,
uint8_t  linkID,
uint8_t  epID,
bool  isRegisteredFEE = true 
)
inline

Definition at line 103 of file RawReaderBase.h.

◆ decodeBlocks()

template<typename DigitBlockType , typename... DataBlockTypes>
template<class DataBlockType >
size_t o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::decodeBlocks ( const gsl::span< const uint8_t >  binaryPayload,
RawDataMetric metric,
std::vector< DataBlockType > &  vecDataBlocks 
)
inline

Definition at line 70 of file RawReaderBase.h.

◆ getDigits()

template<typename DigitBlockType , typename... DataBlockTypes>
template<typename... VecDigitType>
int o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::getDigits ( VecDigitType &...  vecDigit)
inline

Definition at line 111 of file RawReaderBase.h.

◆ getMetrics()

template<typename DigitBlockType , typename... DataBlockTypes>
void o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::getMetrics ( std::vector< RawDataMetric > &  vecMetrics)
inline

Definition at line 120 of file RawReaderBase.h.

◆ getVecDataBlocks()

template<typename DigitBlockType , typename... DataBlockTypes>
template<typename T >
constexpr std::vector< T > & o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::getVecDataBlocks ( )
inlineconstexpr

Definition at line 63 of file RawReaderBase.h.

◆ processBinaryData()

template<typename DigitBlockType , typename... DataBlockTypes>
template<class DataBlockType , typename... T>
void o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::processBinaryData ( gsl::span< const uint8_t >  payload,
uint16_t  feeID,
uint8_t  linkID,
uint8_t  epID 
)
inline

Definition at line 90 of file RawReaderBase.h.

Member Data Documentation

◆ mHashTableMetrics

template<typename DigitBlockType , typename... DataBlockTypes>
HashTableCRU_t o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::mHashTableMetrics {}

Definition at line 57 of file RawReaderBase.h.

◆ mMapDigits

template<typename DigitBlockType , typename... DataBlockTypes>
std::map<InteractionRecord, DigitBlock_t> o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::mMapDigits

Definition at line 61 of file RawReaderBase.h.

◆ mTupleVecDataBlocks

template<typename DigitBlockType , typename... DataBlockTypes>
std::tuple<std::vector<typename DataBlockTypes::DataBlockInvertedPadding_t>..., std::vector<DataBlockTypes>...> o2::fit::RawReaderBase< DigitBlockType, DataBlockTypes >::mTupleVecDataBlocks

Definition at line 59 of file RawReaderBase.h.


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