CbmRoot
CbmMcbm2018MuchPar Class Reference

#include <CbmMcbm2018MuchPar.h>

Inheritance diagram for CbmMcbm2018MuchPar:
[legend]
Collaboration diagram for CbmMcbm2018MuchPar:
[legend]

Public Member Functions

 CbmMcbm2018MuchPar (const char *name="CbmMcbm2018MuchPar", const char *title="Much parameters", const char *context="Default")
 
virtual ~CbmMcbm2018MuchPar ()
 
virtual void clear ()
 
void putParams (FairParamList *)
 
Bool_t getParams (FairParamList *)
 
Int_t ElinkIdxToFebIdx (UInt_t uElink)
 
UInt_t ElinkIdxToAsicIdx (UInt_t uElink)
 
UInt_t ElinkIdxToAsicIdxFebMuch (UInt_t uElink)
 
UInt_t GetNrOfDpbs ()
 
UInt_t GetDpbId (UInt_t uDpbIdx)
 
UInt_t GetNrOfCrobs ()
 
UInt_t GetNrOfFebs ()
 
UInt_t GetNrOfAsics ()
 
UInt_t GetNrOfFebsInGemA ()
 
UInt_t GetNrOfFebsInGemB ()
 
Int_t GetNrOfChannels ()
 
UInt_t GetFebId (UInt_t)
 
UInt_t GetModule (UInt_t)
 
Short_t GetPadXA (UShort_t febid, UShort_t channelid)
 
Short_t GetPadYA (UShort_t febid, UShort_t channelid)
 
Short_t GetPadXB (UShort_t febid, UShort_t channelid)
 
Short_t GetPadYB (UShort_t febid, UShort_t channelid)
 
Double_t GetRealX (Int_t)
 
Double_t GetRealPadSize (Int_t)
 
Double_t GetRealX (Int_t Channel, Int_t Sector)
 
Double_t GetRealPadSize (Int_t Channel, Int_t Sector)
 
Bool_t IsCrobActive (UInt_t uDpbIdx, UInt_t uCrobIdx)
 
Bool_t IsFebActive (UInt_t uFebInSystIdx)
 
Bool_t IsFebActive (UInt_t uDpbIdx, UInt_t uCrobIdx, UInt_t uFebIdx)
 

Static Public Member Functions

static constexpr UInt_t GetNbCrobsPerDpb ()
 
static constexpr UInt_t GetNbElinkPerCrob ()
 
static constexpr UInt_t GetNbFebsPerCrob ()
 
static constexpr UInt_t GetNbFebsPerDpb ()
 
static constexpr UInt_t GetNbAsicsPerFeb ()
 
static constexpr UInt_t GetNbAsicsPerCrob ()
 
static constexpr UInt_t GetNbAsicsPerDpb ()
 
static constexpr UInt_t GetNbChanPerAsic ()
 
static constexpr UInt_t GetNbChanPerFeb ()
 

Private Member Functions

 ClassDef (CbmMcbm2018MuchPar, 1)
 

Private Attributes

const UInt_t kuCrobMapElinkFebMuch [kuNbElinksPerCrob]
 
const Int_t kiCrobMapElinkFebIdx [kuNbElinksPerCrob]
 Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb ) More...
 
UInt_t fuNrOfDpbs
 Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb ) More...
 
TArrayI fiDbpIdArray
 
TArrayI fiCrobActiveFlag
 
UInt_t fuFebsInGemA
 
UInt_t fuFebsInGemB
 
TArrayI fnFebsIdsArrayGemA
 
TArrayI fnFebsIdsArrayGemB
 
TArrayI fChannelsToPadXA
 
TArrayI fChannelsToPadYA
 
TArrayI fChannelsToPadXB
 
TArrayI fChannelsToPadYB
 
TArrayD fRealX
 
TArrayD fRealPadSize
 

Static Private Attributes

static const UInt_t kuNbCrobsPerDpb = 1
 Constants. More...
 
static const UInt_t kuNbElinksPerCrob
 
static const UInt_t kuNbFebsPerCrob
 
static const UInt_t kuNbAsicsPerFeb
 
static const UInt_t kuNbChanPerAsic = 128
 

Detailed Description

Definition at line 19 of file CbmMcbm2018MuchPar.h.

Constructor & Destructor Documentation

◆ CbmMcbm2018MuchPar()

CbmMcbm2018MuchPar::CbmMcbm2018MuchPar ( const char *  name = "CbmMcbm2018MuchPar",
const char *  title = "Much parameters",
const char *  context = "Default" 
)

Standard constructor

Definition at line 20 of file CbmMcbm2018MuchPar.cxx.

◆ ~CbmMcbm2018MuchPar()

CbmMcbm2018MuchPar::~CbmMcbm2018MuchPar ( )
virtual

Destructor

Definition at line 43 of file CbmMcbm2018MuchPar.cxx.

Member Function Documentation

◆ ClassDef()

CbmMcbm2018MuchPar::ClassDef ( CbmMcbm2018MuchPar  ,
 
)
private

◆ clear()

void CbmMcbm2018MuchPar::clear ( )
virtual

Reset all parameters

Definition at line 48 of file CbmMcbm2018MuchPar.cxx.

◆ ElinkIdxToAsicIdx()

UInt_t CbmMcbm2018MuchPar::ElinkIdxToAsicIdx ( UInt_t  uElink)
inline

◆ ElinkIdxToAsicIdxFebMuch()

UInt_t CbmMcbm2018MuchPar::ElinkIdxToAsicIdxFebMuch ( UInt_t  uElink)

Definition at line 131 of file CbmMcbm2018MuchPar.cxx.

References kuCrobMapElinkFebMuch, and kuNbElinksPerCrob.

Referenced by ElinkIdxToAsicIdx().

◆ ElinkIdxToFebIdx()

Int_t CbmMcbm2018MuchPar::ElinkIdxToFebIdx ( UInt_t  uElink)

◆ GetDpbId()

UInt_t CbmMcbm2018MuchPar::GetDpbId ( UInt_t  uDpbIdx)

◆ GetFebId()

◆ GetModule()

UInt_t CbmMcbm2018MuchPar::GetModule ( UInt_t  uAsicIdx)

◆ GetNbAsicsPerCrob()

static constexpr UInt_t CbmMcbm2018MuchPar::GetNbAsicsPerCrob ( )
inlinestaticconstexpr

◆ GetNbAsicsPerDpb()

static constexpr UInt_t CbmMcbm2018MuchPar::GetNbAsicsPerDpb ( )
inlinestaticconstexpr

Definition at line 47 of file CbmMcbm2018MuchPar.h.

References GetNbAsicsPerCrob(), and kuNbCrobsPerDpb.

◆ GetNbAsicsPerFeb()

◆ GetNbChanPerAsic()

◆ GetNbChanPerFeb()

◆ GetNbCrobsPerDpb()

◆ GetNbElinkPerCrob()

◆ GetNbFebsPerCrob()

static constexpr UInt_t CbmMcbm2018MuchPar::GetNbFebsPerCrob ( )
inlinestaticconstexpr

Definition at line 39 of file CbmMcbm2018MuchPar.h.

References kuNbFebsPerCrob.

Referenced by CbmMcbm2018MonitorMuch::InitStsParameters().

◆ GetNbFebsPerDpb()

static constexpr UInt_t CbmMcbm2018MuchPar::GetNbFebsPerDpb ( )
inlinestaticconstexpr

◆ GetNrOfAsics()

UInt_t CbmMcbm2018MuchPar::GetNrOfAsics ( )
inline

◆ GetNrOfChannels()

Int_t CbmMcbm2018MuchPar::GetNrOfChannels ( )
inline

Definition at line 76 of file CbmMcbm2018MuchPar.h.

References kuNbChanPerAsic.

◆ GetNrOfCrobs()

UInt_t CbmMcbm2018MuchPar::GetNrOfCrobs ( )
inline

Definition at line 70 of file CbmMcbm2018MuchPar.h.

References fuNrOfDpbs, and kuNbCrobsPerDpb.

Referenced by GetNrOfFebs().

◆ GetNrOfDpbs()

UInt_t CbmMcbm2018MuchPar::GetNrOfDpbs ( )
inline

◆ GetNrOfFebs()

◆ GetNrOfFebsInGemA()

UInt_t CbmMcbm2018MuchPar::GetNrOfFebsInGemA ( )
inline

Definition at line 74 of file CbmMcbm2018MuchPar.h.

References fuFebsInGemA.

Referenced by GetFebId(), GetModule(), and getParams().

◆ GetNrOfFebsInGemB()

UInt_t CbmMcbm2018MuchPar::GetNrOfFebsInGemB ( )
inline

Definition at line 75 of file CbmMcbm2018MuchPar.h.

References fuFebsInGemB.

Referenced by GetFebId(), GetModule(), and getParams().

◆ GetPadXA()

Short_t CbmMcbm2018MuchPar::GetPadXA ( UShort_t  febid,
UShort_t  channelid 
)

◆ GetPadXB()

Short_t CbmMcbm2018MuchPar::GetPadXB ( UShort_t  febid,
UShort_t  channelid 
)

◆ GetPadYA()

Short_t CbmMcbm2018MuchPar::GetPadYA ( UShort_t  febid,
UShort_t  channelid 
)

◆ GetPadYB()

Short_t CbmMcbm2018MuchPar::GetPadYB ( UShort_t  febid,
UShort_t  channelid 
)

◆ getParams()

◆ GetRealPadSize() [1/2]

Double_t CbmMcbm2018MuchPar::GetRealPadSize ( Int_t  Channel,
Int_t  Sector 
)

Definition at line 327 of file CbmMcbm2018MuchPar.cxx.

References fRealPadSize.

◆ GetRealPadSize() [2/2]

Double_t CbmMcbm2018MuchPar::GetRealPadSize ( Int_t  SectorIndex)

◆ GetRealX() [1/2]

Double_t CbmMcbm2018MuchPar::GetRealX ( Int_t  Channel,
Int_t  Sector 
)

Definition at line 316 of file CbmMcbm2018MuchPar.cxx.

References fRealX.

◆ GetRealX() [2/2]

Double_t CbmMcbm2018MuchPar::GetRealX ( Int_t  SectorIndex)

◆ IsCrobActive()

Bool_t CbmMcbm2018MuchPar::IsCrobActive ( UInt_t  uDpbIdx,
UInt_t  uCrobIdx 
)

◆ IsFebActive() [1/2]

Bool_t CbmMcbm2018MuchPar::IsFebActive ( UInt_t  uDpbIdx,
UInt_t  uCrobIdx,
UInt_t  uFebIdx 
)

Definition at line 184 of file CbmMcbm2018MuchPar.cxx.

References fuNrOfDpbs, IsFebActive(), kuNbCrobsPerDpb, and kuNbFebsPerCrob.

◆ IsFebActive() [2/2]

◆ putParams()

Member Data Documentation

◆ fChannelsToPadXA

TArrayI CbmMcbm2018MuchPar::fChannelsToPadXA
private

Definition at line 162 of file CbmMcbm2018MuchPar.h.

Referenced by GetPadXA(), GetPadYA(), getParams(), and putParams().

◆ fChannelsToPadXB

TArrayI CbmMcbm2018MuchPar::fChannelsToPadXB
private

Definition at line 166 of file CbmMcbm2018MuchPar.h.

Referenced by GetPadXB(), GetPadYB(), getParams(), and putParams().

◆ fChannelsToPadYA

TArrayI CbmMcbm2018MuchPar::fChannelsToPadYA
private

Definition at line 164 of file CbmMcbm2018MuchPar.h.

Referenced by GetPadYA(), getParams(), and putParams().

◆ fChannelsToPadYB

TArrayI CbmMcbm2018MuchPar::fChannelsToPadYB
private

Definition at line 168 of file CbmMcbm2018MuchPar.h.

Referenced by GetPadYB(), getParams(), and putParams().

◆ fiCrobActiveFlag

TArrayI CbmMcbm2018MuchPar::fiCrobActiveFlag
private

Definition at line 154 of file CbmMcbm2018MuchPar.h.

Referenced by getParams(), IsCrobActive(), and putParams().

◆ fiDbpIdArray

TArrayI CbmMcbm2018MuchPar::fiDbpIdArray
private

Definition at line 152 of file CbmMcbm2018MuchPar.h.

Referenced by GetDpbId(), getParams(), and putParams().

◆ fnFebsIdsArrayGemA

TArrayI CbmMcbm2018MuchPar::fnFebsIdsArrayGemA
private

Definition at line 158 of file CbmMcbm2018MuchPar.h.

Referenced by GetFebId(), getParams(), and putParams().

◆ fnFebsIdsArrayGemB

TArrayI CbmMcbm2018MuchPar::fnFebsIdsArrayGemB
private

Definition at line 160 of file CbmMcbm2018MuchPar.h.

Referenced by GetFebId(), getParams(), and putParams().

◆ fRealPadSize

TArrayD CbmMcbm2018MuchPar::fRealPadSize
private

Definition at line 172 of file CbmMcbm2018MuchPar.h.

Referenced by getParams(), GetRealPadSize(), and putParams().

◆ fRealX

TArrayD CbmMcbm2018MuchPar::fRealX
private

Definition at line 170 of file CbmMcbm2018MuchPar.h.

Referenced by getParams(), GetRealX(), and putParams().

◆ fuFebsInGemA

UInt_t CbmMcbm2018MuchPar::fuFebsInGemA
private

Definition at line 155 of file CbmMcbm2018MuchPar.h.

Referenced by GetNrOfFebsInGemA(), getParams(), and putParams().

◆ fuFebsInGemB

UInt_t CbmMcbm2018MuchPar::fuFebsInGemB
private

Definition at line 156 of file CbmMcbm2018MuchPar.h.

Referenced by GetNrOfFebsInGemB(), getParams(), and putParams().

◆ fuNrOfDpbs

UInt_t CbmMcbm2018MuchPar::fuNrOfDpbs
private

Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )

Variables

Definition at line 150 of file CbmMcbm2018MuchPar.h.

Referenced by GetDpbId(), GetNrOfCrobs(), GetNrOfDpbs(), getParams(), IsCrobActive(), IsFebActive(), and putParams().

◆ kiCrobMapElinkFebIdx

const Int_t CbmMcbm2018MuchPar::kiCrobMapElinkFebIdx[kuNbElinksPerCrob]
private
Initial value:
= {0, 0, 0, 0, 0, 1, 1, 1,
1, 1, 2, 2, 2, 2, 3, 3,
3, 3, 3, 4, 4, 4, 4, 4,
5, 5, 5, 5, 6, 6, 6, 6,
6, 7, 7, 7, 7, 7, 8, 8,
8, 8}

Map from eLink index to ASIC index within CROB ( 0 to kuNbFebsPerCrob * kuNbAsicPerFeb )

Definition at line 140 of file CbmMcbm2018MuchPar.h.

Referenced by ElinkIdxToFebIdx().

◆ kuCrobMapElinkFebMuch

const UInt_t CbmMcbm2018MuchPar::kuCrobMapElinkFebMuch[kuNbElinksPerCrob]
private
Initial value:
=
{
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001, 0x0001, 0x0001,
0x0001, 0x0001, 0x0002, 0x0002, 0x0002, 0x0002, 0x0003, 0x0003,
0x0003, 0x0003, 0x0003, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004,
0x0005, 0x0005, 0x0005, 0x0005, 0x0003, 0x0003, 0x0003, 0x0003,
0x0003, 0x0004, 0x0004, 0x0004, 0x0004, 0x0004, 0x0005, 0x0005,
0x0005, 0x0005}

Definition at line 119 of file CbmMcbm2018MuchPar.h.

Referenced by ElinkIdxToAsicIdxFebMuch().

◆ kuNbAsicsPerFeb

const UInt_t CbmMcbm2018MuchPar::kuNbAsicsPerFeb
staticprivate
Initial value:
=
1

Definition at line 103 of file CbmMcbm2018MuchPar.h.

Referenced by GetNbAsicsPerCrob(), GetNbAsicsPerFeb(), GetNbChanPerFeb(), and GetNrOfAsics().

◆ kuNbChanPerAsic

const UInt_t CbmMcbm2018MuchPar::kuNbChanPerAsic = 128
staticprivate

◆ kuNbCrobsPerDpb

const UInt_t CbmMcbm2018MuchPar::kuNbCrobsPerDpb = 1
staticprivate

◆ kuNbElinksPerCrob

const UInt_t CbmMcbm2018MuchPar::kuNbElinksPerCrob
staticprivate
Initial value:
=
42

Definition at line 99 of file CbmMcbm2018MuchPar.h.

Referenced by ElinkIdxToAsicIdxFebMuch(), ElinkIdxToFebIdx(), and GetNbElinkPerCrob().

◆ kuNbFebsPerCrob

const UInt_t CbmMcbm2018MuchPar::kuNbFebsPerCrob
staticprivate
Initial value:
=
6

Definition at line 101 of file CbmMcbm2018MuchPar.h.

Referenced by GetNbAsicsPerCrob(), GetNbFebsPerCrob(), GetNbFebsPerDpb(), GetNrOfFebs(), and IsFebActive().


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