Belle II Software development
|
This object contains ECL DSP coefs – electromagnetic calorimeter digital signal processing coefficients. More...
#include <ECLDspData.h>
Public Member Functions | |
ECLDspData (unsigned char board_number=0) | |
Initialize DSP coefficients class from binary file. | |
std::vector< short int > | getExtraData () const |
void | getF (std::vector< short int > &dst) const |
Array with tabulated signal waveform. | |
void | getF1 (std::vector< short int > &dst) const |
Array with tabulated derivative of signal waveform. | |
void | getF31 (std::vector< short int > &dst) const |
Array FG31, used to estimate signal amplitude. | |
void | getF32 (std::vector< short int > &dst) const |
Array FG32, used to estimate A * delta_t. | |
void | getF33 (std::vector< short int > &dst) const |
Array FG33, used to estimate pedestal height in signal. | |
void | getF41 (std::vector< short int > &dst) const |
Alternative for FG31 for signals with small amplitude. | |
void | getF43 (std::vector< short int > &dst) const |
Alternative for FG33 for signals with small amplitude. | |
unsigned char | getverMaj () const |
unsigned char | getverMin () const |
short int | getaAT () const |
short int | getlAT () const |
short int | getsT () const |
short int | gethT () const |
short int | getchiThresh () const |
chi2 threshold for fit quality flag | |
unsigned char | getk1 () const |
multipliers power of 2 for f, f1 | |
unsigned char | getk2 () const |
multipliers power of 2 for chi2 calculation | |
unsigned char | getka () const |
Number of bits for FG31, FG41. | |
unsigned char | getkb () const |
Number of bits for FG32. | |
unsigned char | getkc () const |
Number of bits for FG33, FG43. | |
unsigned char | gety0Startr () const |
start point for pedestal calculation | |
unsigned char | getBoardNumber () const |
Return ShaperDSP board number, 0..11. | |
void | setExtraData (const std::vector< short int > &newval) |
SETTERS. | |
void | setF (const std::vector< short int > &src) |
Array with tabulated signal waveform. | |
void | setF1 (const std::vector< short int > &src) |
Array with tabulated derivative of signal waveform. | |
void | setF31 (const std::vector< short int > &src) |
Array FG31, used to estimate signal amplitude. | |
void | setF32 (const std::vector< short int > &src) |
Array FG32, used to estimate A * delta_t. | |
void | setF33 (const std::vector< short int > &src) |
Array FG33, used to estimate pedestal height in signal. | |
void | setF41 (const std::vector< short int > &src) |
Alternative for FG31 for signals with small amplitude. | |
void | setF43 (const std::vector< short int > &src) |
Alternative for FG33 for signals with small amplitude. | |
void | setverMaj (unsigned char val) |
Sets major version of DSP coefficients. | |
void | setverMin (unsigned char val) |
Sets minor version of DSP coefficients. | |
void | setaAT (short int val) |
Set Low amp threshold (https://xwiki.desy.de/xwiki/rest/p/545bc) | |
void | setlAT (short int val) |
Set Low amp threshold (https://xwiki.desy.de/xwiki/rest/p/545bc) | |
void | setsT (short int val) |
Set Skip threshold (https://xwiki.desy.de/xwiki/rest/p/545bc) | |
void | sethT (short int val) |
Set Hit threshold (https://xwiki.desy.de/xwiki/rest/p/545bc) | |
void | setchiThresh (short int val) |
Set chi2 threshold for fit quality flag. | |
void | setk1 (unsigned char val) |
Set multipliers power of 2 for f, f1. | |
void | setk2 (unsigned char val) |
Set multipliers power of 2 for chi2 calculation. | |
void | setka (unsigned char val) |
Set number of bits for FG31, FG41. | |
void | setkb (unsigned char val) |
Set number of bits for FG32. | |
void | setkc (unsigned char val) |
Set number of bits for FG33, FG43. | |
void | sety0Startr (unsigned char val) |
Set start point for pedestal calculation. | |
Static Public Member Functions | |
static constexpr short int | getPackerVersion () |
GETTERS. | |
Private Member Functions | |
void | packCoefVector (const std::vector< short int > &src, std::vector< short int > &dst) |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst). | |
void | unpackCoefVector (const std::vector< short int > &src, std::vector< short int > &dst) const |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst). | |
ClassDef (ECLDspData, 1) | |
ClassDef. | |
Private Attributes | |
unsigned char | m_boardNumber |
ShaperDSP board number, 0..11. | |
unsigned char | m_verMaj |
Major version of DSP coefficients. | |
unsigned char | m_verMin |
Minor version of DSP coefficients. | |
unsigned char | m_ka |
Number of bits for FG31, FG41. | |
unsigned char | m_kb |
Number of bits for FG32. | |
unsigned char | m_kc |
Number of bits for FG33, FG43. | |
unsigned char | m_y0Startr |
start point for pedestal calculation | |
short int | m_chiThresh |
chi2 threshold for quality bit | |
unsigned char | m_k1Chi |
multipliers power of 2 for f, f1 | |
unsigned char | m_k2Chi |
multipliers power of 2 for chi2 calculation | |
short int | m_hitThresh |
See https://xwiki.desy.de/xwiki/rest/p/545bc. | |
short int | m_lowAmpThresh |
See https://xwiki.desy.de/xwiki/rest/p/545bc. | |
short int | m_skipThresh |
See https://xwiki.desy.de/xwiki/rest/p/545bc. | |
short int | m_adcAlwThresh |
See https://xwiki.desy.de/xwiki/rest/p/545bc. | |
std::vector< short int > | m_fg31 = {} |
See documentation for method 'getF31'. | |
std::vector< short int > | m_fg32 = {} |
See documentation for method 'getF32'. | |
std::vector< short int > | m_fg33 = {} |
See documentation for method 'getF33'. | |
std::vector< short int > | m_fg41 = {} |
See documentation for method 'getF41'. | |
std::vector< short int > | m_fg43 = {} |
See documentation for method 'getF43'. | |
std::vector< short int > | m_f = {} |
See documentation for method 'getF'. | |
std::vector< short int > | m_f1 = {} |
See documentation for method 'getF1'. | |
std::vector< short int > | m_extraData |
This vector contains all parameters that didn't exist in the initial version of ECL DSP file format. | |
Static Private Attributes | |
static const short int | c_packerVersion = 2 |
Version of packer used in packCoefVector by default Version of unpacker is dynamically determined from the data. | |
This object contains ECL DSP coefs – electromagnetic calorimeter digital signal processing coefficients.
Payloads with these objects are used in two use cases.
For detailed overview of ECLDSP file structure see ECL-TN-2013-02 <https://xwiki.desy.de/xwiki/bin/download/BI/Belle%20II%20Internal/Detector%20WebHome/ECL%20WebHome/ECL%20Technical%20Notes/WebHome/digi.pdf?rev=4.1>
__
Definition at line 33 of file ECLDspData.h.
|
inlineexplicit |
Initialize DSP coefficients class from binary file.
board_number | Id of specific shaperDSP, 0..11 |
Definition at line 104 of file ECLDspData.h.
|
inline |
Definition at line 121 of file ECLDspData.h.
|
inline |
Definition at line 177 of file ECLDspData.h.
|
inline |
|
inline |
|
inline |
Definition at line 134 of file ECLDspData.h.
|
inline |
Array with tabulated signal waveform.
Definition at line 139 of file ECLDspData.h.
|
inline |
Array with tabulated derivative of signal waveform.
Definition at line 143 of file ECLDspData.h.
|
inline |
Array FG31, used to estimate signal amplitude.
Calculated from F and covariance matrix.
Definition at line 148 of file ECLDspData.h.
|
inline |
Array FG32, used to estimate A * delta_t.
(A – amplitude, delta_t – time shift for linearization)
Calculated from F and covariance matrix.
Definition at line 155 of file ECLDspData.h.
|
inline |
Array FG33, used to estimate pedestal height in signal.
Calculated from F and covariance matrix.
Definition at line 161 of file ECLDspData.h.
|
inline |
Alternative for FG31 for signals with small amplitude.
Definition at line 165 of file ECLDspData.h.
|
inline |
Alternative for FG33 for signals with small amplitude.
Definition at line 169 of file ECLDspData.h.
|
inline |
Definition at line 189 of file ECLDspData.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 181 of file ECLDspData.h.
|
inlinestaticconstexpr |
GETTERS.
Return version of packer algorithm used in [un]packCoefVector
Definition at line 128 of file ECLDspData.h.
|
inline |
Definition at line 185 of file ECLDspData.h.
|
inline |
|
inline |
|
inline |
|
private |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst).
The internal format of coefficient vectors stored in this object is different from their real values: this improves data compression by ~200%. Thus, any accessor methods to m_f* vectors utilize packCoefVector and unpackCoefVector.
Definition at line 12 of file ECLDspData.cc.
|
inline |
Set Low amp threshold (https://xwiki.desy.de/xwiki/rest/p/545bc)
Definition at line 260 of file ECLDspData.h.
|
inline |
Set chi2 threshold for fit quality flag.
Definition at line 274 of file ECLDspData.h.
|
inline |
SETTERS.
Sets vector with all parameters that haven't been included in basic ECL DSP file format
Definition at line 216 of file ECLDspData.h.
|
inline |
Array with tabulated signal waveform.
Definition at line 221 of file ECLDspData.h.
|
inline |
|
inline |
Array FG31, used to estimate signal amplitude.
Calculated from F and covariance matrix.
Definition at line 230 of file ECLDspData.h.
|
inline |
Array FG32, used to estimate A * delta_t.
(A – amplitude, delta_t – time shift for linearization)
Calculated from F and covariance matrix.
Definition at line 237 of file ECLDspData.h.
|
inline |
Array FG33, used to estimate pedestal height in signal.
Calculated from F and covariance matrix.
Definition at line 243 of file ECLDspData.h.
|
inline |
|
inline |
|
inline |
Set Hit threshold (https://xwiki.desy.de/xwiki/rest/p/545bc)
Definition at line 272 of file ECLDspData.h.
|
inline |
Set multipliers power of 2 for f, f1.
Definition at line 276 of file ECLDspData.h.
|
inline |
Set multipliers power of 2 for chi2 calculation.
Definition at line 278 of file ECLDspData.h.
|
inline |
|
inline |
|
inline |
|
inline |
Set Low amp threshold (https://xwiki.desy.de/xwiki/rest/p/545bc)
Definition at line 264 of file ECLDspData.h.
|
inline |
Set Skip threshold (https://xwiki.desy.de/xwiki/rest/p/545bc)
Definition at line 268 of file ECLDspData.h.
|
inline |
Sets major version of DSP coefficients.
Definition at line 254 of file ECLDspData.h.
|
inline |
Sets minor version of DSP coefficients.
Definition at line 256 of file ECLDspData.h.
|
inline |
Set start point for pedestal calculation.
Definition at line 286 of file ECLDspData.h.
|
private |
Convert vector of DSP coefficients (src) to ECLDspData internal format (dst).
See documentation for packCoefVector on why this was necessary.
Definition at line 79 of file ECLDspData.cc.
|
staticprivate |
Version of packer used in packCoefVector by default Version of unpacker is dynamically determined from the data.
Definition at line 97 of file ECLDspData.h.
|
private |
See https://xwiki.desy.de/xwiki/rest/p/545bc.
Definition at line 66 of file ECLDspData.h.
|
private |
ShaperDSP board number, 0..11.
Definition at line 36 of file ECLDspData.h.
|
private |
chi2 threshold for quality bit
We use condition chi^2 < (Amp^2 / (2^{k2Chi}) + chiThresh)
Definition at line 54 of file ECLDspData.h.
|
private |
This vector contains all parameters that didn't exist in the initial version of ECL DSP file format.
This vector allows loose coupling between ECLDspData class and ECL DSP file format.
m_extraData[0] – FORMAT_VERSION m_extraData[1] – PACKER_VERSION
Definition at line 91 of file ECLDspData.h.
|
private |
See documentation for method 'getF'.
Definition at line 78 of file ECLDspData.h.
|
private |
See documentation for method 'getF1'.
Definition at line 80 of file ECLDspData.h.
|
private |
See documentation for method 'getF31'.
Definition at line 68 of file ECLDspData.h.
|
private |
See documentation for method 'getF32'.
Definition at line 70 of file ECLDspData.h.
|
private |
See documentation for method 'getF33'.
Definition at line 72 of file ECLDspData.h.
|
private |
See documentation for method 'getF41'.
Definition at line 74 of file ECLDspData.h.
|
private |
See documentation for method 'getF43'.
Definition at line 76 of file ECLDspData.h.
|
private |
See https://xwiki.desy.de/xwiki/rest/p/545bc.
Definition at line 60 of file ECLDspData.h.
|
private |
multipliers power of 2 for f, f1
Definition at line 56 of file ECLDspData.h.
|
private |
multipliers power of 2 for chi2 calculation
Definition at line 58 of file ECLDspData.h.
|
private |
Number of bits for FG31, FG41.
Definition at line 42 of file ECLDspData.h.
|
private |
Number of bits for FG32.
Definition at line 44 of file ECLDspData.h.
|
private |
Number of bits for FG33, FG43.
Definition at line 46 of file ECLDspData.h.
|
private |
See https://xwiki.desy.de/xwiki/rest/p/545bc.
Definition at line 62 of file ECLDspData.h.
|
private |
See https://xwiki.desy.de/xwiki/rest/p/545bc.
Definition at line 64 of file ECLDspData.h.
|
private |
Major version of DSP coefficients.
Definition at line 38 of file ECLDspData.h.
|
private |
Minor version of DSP coefficients.
Definition at line 40 of file ECLDspData.h.
|
private |
start point for pedestal calculation
Definition at line 48 of file ECLDspData.h.