Project
Loading...
Searching...
No Matches
o2::tpc::CMVPerTF Struct Reference

#include <CMVContainer.h>

Public Member Functions

uint16_t getCMV (const int cru, const int timeBin) const
 Return the raw 16-bit CMV value for a given CRU and timebin within this TF.
 
float getCMVFloat (const int cru, const int timeBin) const
 Return the float CMV value for a given CRU and timebin within this TF.
 
void zeroSmallValues (float threshold=1.0f)
 Zero out raw CMV values whose float magnitude is below threshold.
 
void roundToIntegers (uint16_t threshold)
 Round values to the nearest integer ADC for all values whose rounded magnitude is <= threshold.
 
void trimGaussianPrecision (float mean, float sigma)
 
CMVPerTFCompressed compress (uint8_t flags) const
 
std::unique_ptr< TTree > toTTree () const
 Serialise into a TTree; each Fill() call appends one entry (one TF)
 

Static Public Member Functions

static void writeToFile (const std::string &filename, const std::unique_ptr< TTree > &tree)
 Write the TTree to a ROOT file.
 

Public Attributes

uint32_t firstOrbit {0}
 First orbit of this TF, from heartbeatOrbit of the first CMV packet.
 
uint16_t firstBC {0}
 First bunch crossing of this TF, from heartbeatBC of the first CMV packet.
 
uint16_t mDataPerTF [CRU::MaxCRU *cmv::NTimeBinsPerTF] {}
 

Detailed Description

CMV data for one TF across all CRUs Raw 16-bit CMV values are stored in a flat C array indexed as [cru * NTimeBinsPerTF + timeBin]

Definition at line 96 of file CMVContainer.h.

Member Function Documentation

◆ compress()

CMVPerTFCompressed o2::tpc::CMVPerTF::compress ( uint8_t  flags) const

Compress this object into a CMVPerTFCompressed using the encoding pipeline described by flags Quantisation (trimGaussianPrecision / roundToIntegers / zeroSmallValues) should be applied to this object before calling compress(); it is not part of the flags pipeline

Definition at line 437 of file CMVContainer.cxx.

◆ getCMV()

uint16_t o2::tpc::CMVPerTF::getCMV ( const int  cru,
const int  timeBin 
) const

Return the raw 16-bit CMV value for a given CRU and timebin within this TF.

Definition at line 373 of file CMVContainer.cxx.

◆ getCMVFloat()

float o2::tpc::CMVPerTF::getCMVFloat ( const int  cru,
const int  timeBin 
) const

Return the float CMV value for a given CRU and timebin within this TF.

Definition at line 384 of file CMVContainer.cxx.

◆ roundToIntegers()

void o2::tpc::CMVPerTF::roundToIntegers ( uint16_t  threshold)

Round values to the nearest integer ADC for all values whose rounded magnitude is <= threshold.

Definition at line 408 of file CMVContainer.cxx.

◆ toTTree()

std::unique_ptr< TTree > o2::tpc::CMVPerTF::toTTree ( ) const

Serialise into a TTree; each Fill() call appends one entry (one TF)

Definition at line 691 of file CMVContainer.cxx.

◆ trimGaussianPrecision()

void o2::tpc::CMVPerTF::trimGaussianPrecision ( float  mean,
float  sigma 
)

Quantise |v| with a Gaussian-CDF recovery profile: Coarse decimal-style precision below and around mean, then a smooth return to the full native I8F7 precision as the magnitude increases with width sigma

Definition at line 426 of file CMVContainer.cxx.

◆ writeToFile()

void o2::tpc::CMVPerTF::writeToFile ( const std::string &  filename,
const std::unique_ptr< TTree > &  tree 
)
static

Write the TTree to a ROOT file.

Definition at line 719 of file CMVContainer.cxx.

◆ zeroSmallValues()

void o2::tpc::CMVPerTF::zeroSmallValues ( float  threshold = 1.0f)

Zero out raw CMV values whose float magnitude is below threshold.

Definition at line 395 of file CMVContainer.cxx.

Member Data Documentation

◆ firstBC

uint16_t o2::tpc::CMVPerTF::firstBC {0}

First bunch crossing of this TF, from heartbeatBC of the first CMV packet.

Definition at line 98 of file CMVContainer.h.

◆ firstOrbit

uint32_t o2::tpc::CMVPerTF::firstOrbit {0}

First orbit of this TF, from heartbeatOrbit of the first CMV packet.

Definition at line 97 of file CMVContainer.h.

◆ mDataPerTF

uint16_t o2::tpc::CMVPerTF::mDataPerTF[CRU::MaxCRU *cmv::NTimeBinsPerTF] {}

Definition at line 101 of file CMVContainer.h.


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