![]() |
Project
|
HMPID Digit declaration. More...
#include <Digit.h>
Public Member Functions | |
| Digit ()=default | |
| Digit (int pad, uint16_t charge) | |
| Digit (int chamber, int photo, int x, int y, uint16_t charge) | |
| Digit (uint16_t charge, int equipment, int column, int dilogic, int channel) | |
| Digit (uint16_t charge, int module, int x, int y) | |
| uint16_t | getCharge () const |
| void | setCharge (uint16_t Q) |
| int | getPadID () const |
| void | setPadID (uint32_t pad) |
| bool | isValid () |
| void | setInvalid () |
| void | addCharge (float q) |
| void | subCharge (float q) |
| uint16_t | getQ () const |
| uint8_t | getCh () const |
| uint8_t | getPh () const |
| uint8_t | getX () const |
| uint8_t | getY () const |
| ClassDefNV (Digit, 2) | |
Static Public Member Functions | |
| static uint32_t | abs (int ch, int pc, int x, int y) |
| static int | ddl2C (int ddl) |
| static int | a2C (uint32_t pad) |
| static int | a2P (uint32_t pad) |
| static int | a2X (uint32_t pad) |
| static int | a2Y (uint32_t pad) |
| static uint32_t | photo2Pad (int ch, int pc, int x, int y) |
| static uint32_t | equipment2Pad (int Equi, int Colu, int Dilo, int Chan) |
| static uint32_t | absolute2Pad (int Module, int x, int y) |
| static void | pad2Equipment (uint32_t pad, int *Equi, int *Colu, int *Dilo, int *Chan) |
| static void | pad2Absolute (uint32_t pad, int *Module, int *x, int *y) |
| static void | pad2Photo (uint32_t pad, uint8_t *chamber, uint8_t *photo, uint8_t *x, uint8_t *y) |
| static void | absolute2Equipment (int Module, int x, int y, int *Equi, int *Colu, int *Dilo, int *Chan) |
| static void | equipment2Absolute (int Equi, int Colu, int Dilo, int Chan, int *Module, int *x, int *y) |
| static void | getPadAndTotalCharge (o2::hmpid::HitType const &hit, int &chamber, int &pc, int &px, int &py, float &totalcharge) |
| static float | getFractionalContributionForPad (o2::hmpid::HitType const &hit, int somepad) |
| static float | lorsX (int pad) |
| static float | lorsY (int pad) |
| static double | qdcTot (double e, double time, int pc, int px, int py, double &localX, double &localY) |
| static double | intPartMathiX (double x, int pad) |
| static double | intPartMathiY (double y, int pad) |
| static double | intMathieson (double localX, double localY, int pad) |
| static double | mathiesonX (double x) |
| static double | mathiesonY (double x) |
Public Attributes | |
| uint16_t | mQ = 0 |
| uint8_t | mCh = 0 |
| uint8_t | mPh = 0 |
| uint8_t | mX = 0 |
| uint8_t | mY = 0 |
Friends | |
| bool | operator< (const Digit &l, const Digit &r) |
| bool | operator== (const Digit &l, const Digit &r) |
| bool | operator> (const Digit &l, const Digit &r) |
| bool | operator<= (const Digit &l, const Digit &r) |
| bool | operator>= (const Digit &l, const Digit &r) |
| bool | operator!= (const Digit &l, const Digit &r) |
| std::ostream & | operator<< (std::ostream &os, const Digit &d) |
|
default |
| o2::hmpid::Digit::Digit | ( | int | pad, |
| uint16_t | charge | ||
| ) |
| o2::hmpid::Digit::Digit | ( | int | chamber, |
| int | photo, | ||
| int | x, | ||
| int | y, | ||
| uint16_t | charge | ||
| ) |
Constructor : Create the Digit structure. Accepts the trigger time (Orbit,BC) The mapping of the digit is in the Photo Cathod coords (Chamber, PhotoCathod, X, Y)
| [in] | chamber | : the HMPID module [0 .. 6] |
| [in] | photo | : the photo cathode number [0 .. 5] (left-down to right-up) |
| [in] | x | : the horizontal in cathode displacement [0 .. 79] |
| [in] | y | : the vertical in cathode displacement [0 .. 47] |
| [in] | charge | : the value of the charge [0 .. 2^12-1] |
| o2::hmpid::Digit::Digit | ( | uint16_t | charge, |
| int | equipment, | ||
| int | column, | ||
| int | dilogic, | ||
| int | channel | ||
| ) |
Constructor : Create the Digit structure. Accepts the trigger time (Orbit,BC) The mapping of the digit is in the Hardware coords (Equipment, Column, Dilogic, Channel)
| [in] | charge | : the value of the charge [0 .. 2^12-1] |
| [in] | equipment | : the HMPID DDL link [0 .. 13] |
| [in] | column | : the readout column number [0 .. 23] |
| [in] | dilogic | : the displacement in the Dilogics chain [0 .. 9] |
| [in] | channel | : the number of gassiplexes channels [0 .. 47] |
| o2::hmpid::Digit::Digit | ( | uint16_t | charge, |
| int | module, | ||
| int | x, | ||
| int | y | ||
| ) |
Constructor : Create the Digit structure. Accepts the trigger time (Orbit,BC) The mapping of the digit is in the Logical coords (Module, X, Y)
| [in] | charge | : the value of the charge [0 .. 2^12-1] |
| [in] | module | : the HMPID Module [0 .. 6] |
| [in] | x | : the horizontal in Module displacement [0 .. 159] |
| [in] | y | : the vertical in Module displacement [0 .. 143] |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
static |
Absolute2Equipment : Converts the Module coords to Hardware coords
| [in] | Module | : the HMPID Module number [0..6] |
| [in] | x | : the horizontal displacement [0..159] |
| [in] | y | : the vertical displacement [0..143] |
| [out] | Equi | : the equipment [0 .. 13] |
| [out] | Colu | : the readout column number [0 .. 23] |
| [out] | Dilo | : the displacement in the Dilogics chain [0 .. 9] |
| [out] | Chan | : the number of gassiplexes channels [0 .. 47] |
|
static |
| o2::hmpid::Digit::ClassDefNV | ( | Digit | , |
| 2 | |||
| ) |
|
static |
Equipment2Absolute : Converts the Module coords to Hardware coords
| [in] | Equi | : the equipment [0 .. 13] |
| [in] | Colu | : the readout column number [0 .. 23] |
| [in] | Dilo | : the displacement in the Dilogics chain [0 .. 9] |
| [in] | Chan | : the number of gassiplexes channels [0 .. 47] |
| [out] | Module | : the HMPID Module number [0..6] |
| [out] | x | : the horizontal displacement [0..159] |
| [out] | y | : the vertical displacement [0..143] |
|
static |
Equipment2Pad : Converts the coords from Hardware to Digit Unique Id
| [in] | Equi | : the equipment [0 .. 13] |
| [in] | Colu | : the readout column number [0 .. 23] |
| [in] | Dilo | : the displacement in the Dilogics chain [0 .. 9] |
| [in] | Chan | : the number of gassiplexes channels [0 .. 47] |
|
static |
|
static |
getPadAndTotalCharge : Extract all the info from the Hit structure and returns they in the Photo Cathode coords
| [in] | hit | : the HMPID Hit |
| [out] | chamber | : the HMPID chamber number [0..6] |
| [out] | pc | : the photo cathode number [0..5] |
| [out] | px | : the horizontal displacement [0..79] |
| [out] | py | : the vertical displacement [0..47] |
| [out] | totalcharge | : the charge of the hit [0..2^12-1] |
|
static |
IntMathieson : Integration of Mathieson. This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
| [in] | localX | : X position of the center of Mathieson distribution |
| [in] | localY | : Y position of the center of Mathieson distribution |
| [in] | pad | : the Digit Unique Id [0x00CPXXYY] |
|
static |
IntPartMathiX : Integration of Mathieson. This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
| [in] | x | : position of the center of Mathieson distribution |
| [in] | pad | : the Digit Unique Id [0x00CPXXYY] |
|
static |
IntPartMathiY : Integration of Mathieson. This is the answer to electrostatic problem of charge distrubution in MWPC described elsewhere. (NIM A370(1988)602-603)
| [in] | y | : position of the center of Mathieson distribution |
| [in] | pad | : the Digit Unique Id [0x00CPXXYY] |
|
inlinestatic |
|
inlinestatic |
|
static |
|
static |
Pad2Equipment : Converts the Digit Unique Id to Hardware coords
| [in] | pad | : the Digit Unique Id [0x00CPXXYY] |
| [out] | Equi | : the equipment [0 .. 13] |
| [out] | Colu | : the readout column number [0 .. 23] |
| [out] | Dilo | : the displacement in the Dilogics chain [0 .. 9] |
| [out] | Chan | : the number of gassiplexes channels [0 .. 47] |
|
static |
|
inlinestatic |
|
static |
QdcTot : Samples total charge associated to a hit
| [in] | e | : hit energy [GeV] for mip Eloss for photon Etot |
| [in] | time | : ... |
| [in] | pc | : the photo cathode number [0..5] |
| [in] | px | : the horizontal displacement [0..79] |
| [in] | py | : the vertical displacement [0..47] |
| [out] | localX | : the horizontal displacement related to Anode Wires |
| [out] | localY | : the vertical displacement related to Anode Wires |
|
friend |