CbmRoot
Loading...
Searching...
No Matches
CbmRichAddress.h File Reference
#include <cstdint>
#include <string>
Include dependency graph for CbmRichAddress.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  CbmRichAddress
 Functions to encode or decode the address field of RICH data.
 
namespace  CbmRichAddress::Detail
 

Enumerations

enum class  CbmRichAddress::RichElementLevel {
  CbmRichAddress::kSystem , CbmRichAddress::kCamera , CbmRichAddress::kStrip , CbmRichAddress::kBackplane ,
  CbmRichAddress::kPmt , CbmRichAddress::kPixel , CbmRichAddress::kNumLevels
}
 

Functions

int32_t CbmRichAddress::GetAddress (uint32_t camera=0, uint32_t strip=0, uint32_t backplane=0, uint32_t pmt=0, uint32_t pixel=0, uint32_t version=kCurrentVersion)
 Construct address.
 
int32_t CbmRichAddress::GetMotherAddress (int32_t address, int32_t level)
 Construct the address of an element from the address of a descendant element.
 
uint32_t CbmRichAddress::GetElementId (int32_t address, int32_t level)
 Get the index of an element.
 
uint32_t CbmRichAddress::GetSystemId (int32_t address)
 Get system Id (should be integer value of ECbmModuleId::kRich)
 
uint32_t CbmRichAddress::GetVersion (int32_t address)
 Extract version number.
 
int32_t CbmRichAddress::SetElementId (int32_t address, int32_t level, uint32_t newId)
 Set the index of an element, leaving the other element levels untouched.
 
std::string CbmRichAddress::ToString (int32_t address)
 String output.
 

Variables

constexpr uint32_t CbmRichAddress::kCurrentVersion = 0
 
constexpr int32_t CbmRichAddress::kVersionSize = 4
 
constexpr int32_t CbmRichAddress::kVersionShift = 28
 
constexpr int32_t CbmRichAddress::kVersionMask = (1 << kVersionSize) - 1
 
constexpr uint16_t CbmRichAddress::Detail::kBits [kCurrentVersion+1][static_cast< uint32_t >(RichElementLevel::kNumLevels)]
 
constexpr int32_t CbmRichAddress::Detail::kShift [kCurrentVersion+1][static_cast< uint32_t >(RichElementLevel::kNumLevels)]
 
constexpr int32_t CbmRichAddress::Detail::kMask [kCurrentVersion+1][static_cast< uint32_t >(RichElementLevel::kNumLevels)]
 

Detailed Description

Author
Martin Beyer ma.be.nosp@m.yer@.nosp@m.gsi.d.nosp@m.e
Date
12.11.2024

Definition in file CbmRichAddress.h.