Belle II Software  release-08-01-10
CDCCrossTalkLibrary Class Reference

Database object for ASIC crosstalk library. More...

#include <CDCCrossTalkLibrary.h>

Inheritance diagram for CDCCrossTalkLibrary:
Collaboration diagram for CDCCrossTalkLibrary:

Public Member Functions

 CDCCrossTalkLibrary ()=default
 Default constructor.
 
void addAsicRecord (const Short_t channel, const Short_t ADC, const asicChannels &asicInfo)
 Add a new ASIC record to the library. More...
 
const vector< pair< Short_t, asicChannel > > getLibraryCrossTalk (Short_t channel, Short_t TDCin, Short_t ADCin, Short_t TOTin, size_t entry=0, bool insertSignalToOutput=false) const
 Get cross talk record from the library. More...
 
void dump (int verbosity) const
 Print out contents of the library.
 
void dumpEntry (size_t entry)
 Dump single entry, for a given channel.
 
double pCrossTalk (const Short_t ADC) const
 Get probability of the cross talk.
 
void setPCrossTalk (const double *probs)
 Store x-talk probability.
 

Private Member Functions

 ClassDef (CDCCrossTalkLibrary, 2)
 ClassDef.
 

Private Attributes

std::vector< adcAsicTuplem_library
 Library.
 
array< float, 8196 > m_pCrossTalk
 x-talk probability
 

Detailed Description

Database object for ASIC crosstalk library.

Definition at line 31 of file CDCCrossTalkLibrary.h.

Member Function Documentation

◆ addAsicRecord()

void addAsicRecord ( const Short_t  channel,
const Short_t  ADC,
const asicChannels asicInfo 
)
inline

Add a new ASIC record to the library.

Parameters
channel– Channel number inside RO board (between 0 and 48)
ADC– ADC value
asicInfo– TDC,ADC,TOT information for all channels in ASIC, -1 if no hit.

Definition at line 45 of file CDCCrossTalkLibrary.h.

46  {
47  Short_t ch8 = channel % 8;
48  adcAsicTuple entry{ADC, ch8, asicInfo};
49  // keep sorted
50  auto place = upper_bound(m_library.begin(), m_library.end(), entry, adc_search());
51  m_library.insert(place, entry);
52  }
std::vector< adcAsicTuple > m_library
Library.

◆ getLibraryCrossTalk()

const vector< pair<Short_t, asicChannel> > getLibraryCrossTalk ( Short_t  channel,
Short_t  TDCin,
Short_t  ADCin,
Short_t  TOTin,
size_t  entry = 0,
bool  insertSignalToOutput = false 
) const
inline

Get cross talk record from the library.

Output is a vector of pairs: channel number (from 0 to 48) and corresponding TDC,ADC,TOT values. Depending on the value of insertSignalToOutput, the output may contain the input signal hit.

Parameters
channelreadout board channel number, from 0 to 48
TDCininput channel TDC value
ADCininput channel ADC value
TOTininput channel TOT value
entryfor multiple entries given (channel,ADC) value either return random (entry=0) or specific one (entry>0). If entry > max entries, entry % max entries is used
insertSignalToOutputAdd signal to the output vector

return signal-only, no x-talk

Determine Delta in TDC:

Definition at line 65 of file CDCCrossTalkLibrary.h.


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