ROOT logo
AliRoot » EMCAL » AliEMCALGeoParams

class AliEMCALGeoParams



 class for holding various EMCAL basic parameters
 - number of towers in each dimension per SuperModule
 - info on LED Reference, TRU, Temperature sensors
 and so on.
 Also some simple conversion methods.
 So far it serves as the catch-all to avoid magic numbers inside the code

 This empty cxx file is just added to get the class/numbers into
 the Utils library

 Author: David Silvermyr (ORNL)


Function Members (Methods)

Data Members

public:
static const intfgkEMCAL2x2PerTRUnumber of 2x2's in a TRU
static const intfgkEMCALColsnumber of columns per module for EMCAL
static const intfgkEMCALLEDRefsnumber of LEDs (reference/monitors) per module for EMCAL; one per StripModule
static const intfgkEMCALModulesnumber of modules, 12 for EMCal + 8 for DCAL
static const intfgkEMCALRowsnumber of rows per module for EMCAL
static const intfgkEMCALSTUColsSTU columns
static const intfgkEMCALSTURowsSTU rows
static const intfgkEMCALTRUColsnumber of TRY cols
static const intfgkEMCALTRURowsnumber of TRU rows
static const intfgkEMCALTRUsPerSMnumber of TRU's in a SuperModule
static const intfgkEMCALTempSensorsnumber Temperature sensors per module for EMCAL
static const intfgkLastAltroDDL0..23 (i.e. 24) for EMCAL; 24..39 (i.e. 16) allocated for DCAL
static const intfgkOverflowCutsaturation starts around here; also exist as private constant in AliEMCALRawUtils, should probably be replaced
static const intfgkSampleMaxhighest possible sample value (10-bit = 0x3ff)
static const intfgkSampleMinlowest possible sample value

Class Charts

Inheritance Chart:
AliEMCALGeoParams

Function documentation

Int_t GetStripModule(Int_t iSM, Int_t iCol) const
 Strip 0 is the one closest to the FEE crates; different for A (iColumn/2) and C sides
{ return ( (iSM%2==0) ? iCol/2 : AliEMCALGeoParams::fgkEMCALLEDRefs - 1 - iCol/2 ); }
Int_t GetHWAddress(Int_t iBranch, Int_t iFEC, Int_t iALTRO, Int_t iChannel) const
 RAW/AliCaloAltroMapping provides the correspondence information between
 an electronics HWAddress (Branch<<1 | FEC<<7 | ALTRO<<4 | Channel)
 for the RCUs and which tower (Column and Row) that corresponds to.
 For the cases when one doesn't have a Raw stream to decode the HW address
 into the other FEE indices, we provide the needed simple methods here
 with arguments (within an RCU)
{ return ( (iBranch<<11) | (iFEC<<7) | (iALTRO<<4) | iChannel ); }
Int_t GetBranch(Int_t iHW) const
 and for converting back to the individual indices
{ return ( (iHW>>11) & 0x1 ) ; }
Int_t GetFEC(Int_t iHW) const
{ return ( (iHW>>7) & 0xf ) ; }
Int_t GetAltro(Int_t iHW) const
{ return ( (iHW>>4) & 0x7 ) ; }
Int_t GetChannel(Int_t iHW) const
{ return ( iHW & 0xf ) ; }
Int_t GetCSPAddress(Int_t iBranch, Int_t iFEC, Int_t iCSP) const
 We can also encode a very similar CSP address
{ return ( (iBranch<<11) | (iFEC<<7) | iCSP ); }
Int_t GetCSPFromAddress(Int_t i) const
 and for converting back to the individual indices
 Branch and FEC methods would just be the same as above
{ return ( i & 0x1f ) ; }