Project
Loading...
Searching...
No Matches
o2::its3::align::GlobalLabel Class Reference

#include <AlignmentHierarchy.h>

Public Types

using T = uint32_t
 

Public Member Functions

 GlobalLabel (T det, T id, bool sens, bool calib=false)
 
constexpr T raw (T dof) const noexcept
 produce the raw Millepede label for a given DOF index (rigid body: calib=0 in label)
 
constexpr int rawGBL (T dof) const noexcept
 
GlobalLabel asCalib () const noexcept
 return a copy of this label with the CALIB bit set (for calibration DOFs on same volume)
 
constexpr T id () const noexcept
 
constexpr T det () const noexcept
 
constexpr bool sens () const noexcept
 
constexpr bool calib () const noexcept
 
std::string asString () const
 
constexpr auto operator<=> (const GlobalLabel &) const noexcept=default
 

Static Public Member Functions

static constexpr T bitMask (int b) noexcept
 

Static Public Attributes

static constexpr int DOF_BITS = 5
 
static constexpr int CALIB_BITS = 1
 
static constexpr int ID_BITS = 22
 
static constexpr int SENS_BITS = 1
 
static constexpr int TOTAL_BITS = sizeof(T) * 8
 
static constexpr int DET_BITS = TOTAL_BITS - (DOF_BITS + CALIB_BITS + ID_BITS + SENS_BITS) - 1
 
static constexpr int DOF_SHIFT = 0
 
static constexpr T DOF_MAX = (T(1) << DOF_BITS) - T(1)
 
static constexpr T DOF_MASK = DOF_MAX << DOF_SHIFT
 
static constexpr int CALIB_SHIFT = DOF_BITS
 
static constexpr T CALIB_MAX = (T(1) << CALIB_BITS) - T(1)
 
static constexpr T CALIB_MASK = CALIB_MAX << CALIB_SHIFT
 
static constexpr int ID_SHIFT = DOF_BITS + CALIB_BITS
 
static constexpr T ID_MAX = (T(1) << ID_BITS) - T(1)
 
static constexpr T ID_MASK = ID_MAX << ID_SHIFT
 
static constexpr int SENS_SHIFT = DOF_BITS + CALIB_BITS + ID_BITS
 
static constexpr T SENS_MAX = (T(1) << SENS_BITS) - T(1)
 
static constexpr T SENS_MASK = SENS_MAX << SENS_SHIFT
 
static constexpr int DET_SHIFT = DOF_BITS + CALIB_BITS + ID_BITS + SENS_BITS
 
static constexpr T DET_MAX = (T(1) << DET_BITS) - T(1)
 
static constexpr T DET_MASK = DET_MAX << DET_SHIFT
 

Detailed Description

Definition at line 136 of file AlignmentHierarchy.h.

Member Typedef Documentation

◆ T

Definition at line 141 of file AlignmentHierarchy.h.

Constructor & Destructor Documentation

◆ GlobalLabel()

o2::its3::align::GlobalLabel::GlobalLabel ( T  det,
T  id,
bool  sens,
bool  calib = false 
)
inline

Definition at line 168 of file AlignmentHierarchy.h.

Member Function Documentation

◆ asCalib()

GlobalLabel o2::its3::align::GlobalLabel::asCalib ( ) const
inlinenoexcept

return a copy of this label with the CALIB bit set (for calibration DOFs on same volume)

Definition at line 181 of file AlignmentHierarchy.h.

◆ asString()

std::string o2::its3::align::GlobalLabel::asString ( ) const
inline

Definition at line 193 of file AlignmentHierarchy.h.

◆ bitMask()

static constexpr T o2::its3::align::GlobalLabel::bitMask ( int  b)
inlinestaticconstexprnoexcept

Definition at line 148 of file AlignmentHierarchy.h.

◆ calib()

constexpr bool o2::its3::align::GlobalLabel::calib ( ) const
inlineconstexprnoexcept

Definition at line 191 of file AlignmentHierarchy.h.

◆ det()

constexpr T o2::its3::align::GlobalLabel::det ( ) const
inlineconstexprnoexcept

Definition at line 189 of file AlignmentHierarchy.h.

◆ id()

constexpr T o2::its3::align::GlobalLabel::id ( ) const
inlineconstexprnoexcept

Definition at line 188 of file AlignmentHierarchy.h.

◆ operator<=>()

constexpr auto o2::its3::align::GlobalLabel::operator<=> ( const GlobalLabel ) const
constexprdefaultnoexcept

◆ raw()

constexpr T o2::its3::align::GlobalLabel::raw ( T  dof) const
inlineconstexprnoexcept

produce the raw Millepede label for a given DOF index (rigid body: calib=0 in label)

Definition at line 177 of file AlignmentHierarchy.h.

◆ rawGBL()

constexpr int o2::its3::align::GlobalLabel::rawGBL ( T  dof) const
inlineconstexprnoexcept

Definition at line 178 of file AlignmentHierarchy.h.

◆ sens()

constexpr bool o2::its3::align::GlobalLabel::sens ( ) const
inlineconstexprnoexcept

Definition at line 190 of file AlignmentHierarchy.h.

Member Data Documentation

◆ CALIB_BITS

constexpr int o2::its3::align::GlobalLabel::CALIB_BITS = 1
staticconstexpr

Definition at line 143 of file AlignmentHierarchy.h.

◆ CALIB_MASK

constexpr T o2::its3::align::GlobalLabel::CALIB_MASK = CALIB_MAX << CALIB_SHIFT
staticconstexpr

Definition at line 157 of file AlignmentHierarchy.h.

◆ CALIB_MAX

constexpr T o2::its3::align::GlobalLabel::CALIB_MAX = (T(1) << CALIB_BITS) - T(1)
staticconstexpr

Definition at line 156 of file AlignmentHierarchy.h.

◆ CALIB_SHIFT

constexpr int o2::its3::align::GlobalLabel::CALIB_SHIFT = DOF_BITS
staticconstexpr

Definition at line 155 of file AlignmentHierarchy.h.

◆ DET_BITS

constexpr int o2::its3::align::GlobalLabel::DET_BITS = TOTAL_BITS - (DOF_BITS + CALIB_BITS + ID_BITS + SENS_BITS) - 1
staticconstexpr

Definition at line 147 of file AlignmentHierarchy.h.

◆ DET_MASK

constexpr T o2::its3::align::GlobalLabel::DET_MASK = DET_MAX << DET_SHIFT
staticconstexpr

Definition at line 166 of file AlignmentHierarchy.h.

◆ DET_MAX

constexpr T o2::its3::align::GlobalLabel::DET_MAX = (T(1) << DET_BITS) - T(1)
staticconstexpr

Definition at line 165 of file AlignmentHierarchy.h.

◆ DET_SHIFT

constexpr int o2::its3::align::GlobalLabel::DET_SHIFT = DOF_BITS + CALIB_BITS + ID_BITS + SENS_BITS
staticconstexpr

Definition at line 164 of file AlignmentHierarchy.h.

◆ DOF_BITS

constexpr int o2::its3::align::GlobalLabel::DOF_BITS = 5
staticconstexpr

Definition at line 142 of file AlignmentHierarchy.h.

◆ DOF_MASK

constexpr T o2::its3::align::GlobalLabel::DOF_MASK = DOF_MAX << DOF_SHIFT
staticconstexpr

Definition at line 154 of file AlignmentHierarchy.h.

◆ DOF_MAX

constexpr T o2::its3::align::GlobalLabel::DOF_MAX = (T(1) << DOF_BITS) - T(1)
staticconstexpr

Definition at line 153 of file AlignmentHierarchy.h.

◆ DOF_SHIFT

constexpr int o2::its3::align::GlobalLabel::DOF_SHIFT = 0
staticconstexpr

Definition at line 152 of file AlignmentHierarchy.h.

◆ ID_BITS

constexpr int o2::its3::align::GlobalLabel::ID_BITS = 22
staticconstexpr

Definition at line 144 of file AlignmentHierarchy.h.

◆ ID_MASK

constexpr T o2::its3::align::GlobalLabel::ID_MASK = ID_MAX << ID_SHIFT
staticconstexpr

Definition at line 160 of file AlignmentHierarchy.h.

◆ ID_MAX

constexpr T o2::its3::align::GlobalLabel::ID_MAX = (T(1) << ID_BITS) - T(1)
staticconstexpr

Definition at line 159 of file AlignmentHierarchy.h.

◆ ID_SHIFT

constexpr int o2::its3::align::GlobalLabel::ID_SHIFT = DOF_BITS + CALIB_BITS
staticconstexpr

Definition at line 158 of file AlignmentHierarchy.h.

◆ SENS_BITS

constexpr int o2::its3::align::GlobalLabel::SENS_BITS = 1
staticconstexpr

Definition at line 145 of file AlignmentHierarchy.h.

◆ SENS_MASK

constexpr T o2::its3::align::GlobalLabel::SENS_MASK = SENS_MAX << SENS_SHIFT
staticconstexpr

Definition at line 163 of file AlignmentHierarchy.h.

◆ SENS_MAX

constexpr T o2::its3::align::GlobalLabel::SENS_MAX = (T(1) << SENS_BITS) - T(1)
staticconstexpr

Definition at line 162 of file AlignmentHierarchy.h.

◆ SENS_SHIFT

constexpr int o2::its3::align::GlobalLabel::SENS_SHIFT = DOF_BITS + CALIB_BITS + ID_BITS
staticconstexpr

Definition at line 161 of file AlignmentHierarchy.h.

◆ TOTAL_BITS

constexpr int o2::its3::align::GlobalLabel::TOTAL_BITS = sizeof(T) * 8
staticconstexpr

Definition at line 146 of file AlignmentHierarchy.h.


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