CbmRoot
|
CBM PSD interface class to the unique address. More...
#include <CbmPsdAddress.h>
Static Public Member Functions | |
static uint32_t | GetAddress (int32_t moduleId, int32_t sectionId) |
Return address from system ID, module, Section. | |
static uint32_t | GetSystemId (uint32_t address) |
Return System identifier from address. | |
static uint32_t | GetModuleId (uint32_t address) |
Return module ID from address. | |
static uint32_t | GetSectionId (uint32_t address) |
Return sector ID from address. | |
static uint32_t | SetModuleId (uint32_t address, int32_t newModuleId) |
Set new module ID for address. | |
static uint32_t | SetSectionId (uint32_t address, int32_t newSectionId) |
Set new section ID for address. | |
Static Private Attributes | |
static const int32_t | fgkSystemIdLength = 15 |
static const int32_t | fgkModuleIdLength = 63 |
static const int32_t | fgkSectionIdLength = 31 |
static const int32_t | fgkSystemIdShift = 0 |
static const int32_t | fgkModuleIdShift = 4 |
static const int32_t | fgkSectionIdShift = 10 |
CBM PSD interface class to the unique address.
CbmPsdAddress is the class for the concrete interfaces to the unique address, which is encoded in a 32-bit field (int32_t), for the PSD detector elements.
3 2 1 0 Shift Bits Values
Current definition: 10987654321098765432109876543210 System ID (ECbmModuleId::kPsd=8) on bits 0- 3 00000000000000000000000000001111 << 0 4 15 Module ID on bits 4- 9 00000000000000000000001111110000 << 4 6 63 Section ID on bits 10-14 00000000000000000111110000000000 <<10 5 31 // to be reduced to 15 Empty on bits 15-31 11111111111111111000000000000000 <<16 17 2^17-1
Definition at line 35 of file CbmPsdAddress.h.
|
inlinestatic |
Return address from system ID, module, Section.
[in] | moduleId | Module ID. |
[in] | SectionId | Section ID. |
Definition at line 43 of file CbmPsdAddress.h.
References fgkModuleIdLength, fgkModuleIdShift, fgkSectionIdLength, fgkSectionIdShift, fgkSystemIdShift, kPsd, and ToIntegralType().
Referenced by CbmPsdDigi::CbmPsdDigi(), CbmPsdSimpleDigitizer::Exec(), CbmMcbm2018UnpackerAlgoPsd::InitParameters(), CbmPsdUnpackAlgo::initParSet(), CbmPsdDigi::SetAddress(), SetModuleId(), and SetSectionId().
|
inlinestatic |
Return module ID from address.
[in] | address | Unique channel address. |
Definition at line 65 of file CbmPsdAddress.h.
References fgkModuleIdLength, and fgkModuleIdShift.
Referenced by comparePsdAddressDataMembers(), CbmPsdDigi::GetModuleID(), CbmPsdDsp::GetModuleID(), and SetSectionId().
|
inlinestatic |
Return sector ID from address.
[in] | address | Unique channel address. |
Definition at line 75 of file CbmPsdAddress.h.
References fgkSectionIdLength, and fgkSectionIdShift.
Referenced by CbmMcbmCheckTimingAlgo::CheckInterSystemOffset(), comparePsdAddressDataMembers(), CbmMcbmCheckTimingAlgo::FillTimeOffsetHistos(), CbmPsdDigi::GetSectionID(), CbmPsdDsp::GetSectionID(), and SetModuleId().
|
inlinestatic |
Return System identifier from address.
[in] | address | Unique channel address. |
Definition at line 55 of file CbmPsdAddress.h.
References fgkSystemIdLength, and fgkSystemIdShift.
Referenced by comparePsdAddressDataMembers().
|
inlinestatic |
Set new module ID for address.
address | Current address. |
newModuleId | New value for module ID. |
Definition at line 86 of file CbmPsdAddress.h.
References fgkModuleIdLength, GetAddress(), and GetSectionId().
Referenced by TEST().
|
inlinestatic |
Set new section ID for address.
address | Current address. |
newSectionId | New value for section ID. |
Definition at line 98 of file CbmPsdAddress.h.
References fgkSectionIdLength, GetAddress(), and GetModuleId().
Referenced by TEST().
|
staticprivate |
Definition at line 108 of file CbmPsdAddress.h.
Referenced by GetAddress(), GetModuleId(), and SetModuleId().
|
staticprivate |
Definition at line 113 of file CbmPsdAddress.h.
Referenced by GetAddress(), and GetModuleId().
|
staticprivate |
Definition at line 109 of file CbmPsdAddress.h.
Referenced by GetAddress(), GetSectionId(), and SetSectionId().
|
staticprivate |
Definition at line 114 of file CbmPsdAddress.h.
Referenced by GetAddress(), and GetSectionId().
|
staticprivate |
Definition at line 107 of file CbmPsdAddress.h.
Referenced by GetSystemId().
|
staticprivate |
Definition at line 112 of file CbmPsdAddress.h.
Referenced by GetAddress(), and GetSystemId().