ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Protected Attributes | List of all members
CaloRecGPU::Tag_1_12_1_32_18 Class Reference

#include <ExtraTagDefinitions.h>

Inheritance diagram for CaloRecGPU::Tag_1_12_1_32_18:
Collaboration diagram for CaloRecGPU::Tag_1_12_1_32_18:

Public Types

using carrier = CaloRecGPU::TagBase::carrier
 

Public Member Functions

constexpr bool get_first_flag () const
 
constexpr carrier set_first_flag () const
 
constexpr carrier unset_first_flag () const
 
constexpr bool get_second_flag () const
 
constexpr carrier set_second_flag () const
 
constexpr carrier make_first_flag (const bool flag) const
 
constexpr carrier make_second_flag (const bool flag) const
 
constexpr carrier unset_second_flag () const
 
constexpr uint32_t get_12_bits () const
 
constexpr uint32_t get_32_bits () const
 
constexpr uint32_t get_18_bits () const
 
constexpr GenericTagBase (const carrier v)
 
constexpr operator carrier () const
 

Static Public Member Functions

static constexpr carrier make_generic_tag (const uint32_t bits_18, const uint32_t bits_32, const uint32_t bits_12, const bool flag_2, const bool flag_1)
 
static constexpr carrier make_invalid_tag ()
 

Public Attributes

carrier value
 

Static Protected Attributes

constexpr static carrier s_first_flag_mask = 0x8000000000000000ULL
 
constexpr static carrier s_12_bit_mask = 0x7FF8000000000000ULL
 
constexpr static carrier s_second_flag_mask = 0x0004000000000000ULL
 
constexpr static carrier s_32_bit_mask = 0x0003FFFFFFFC0000ULL
 
constexpr static carrier s_18_bit_mask = 0x000000000003FFFFULL
 
constexpr static unsigned int s_18_bit_offset = 0
 
constexpr static unsigned int s_32_bit_offset = s_18_bit_offset + 18
 
constexpr static unsigned int s_12_bit_offset = s_32_bit_offset + 32 + 1
 

Detailed Description

A tag with a bit flag, then 12 bits (for a counter), then another bit flag, then 32 bits (for a float) and finally 18 bits (for a cell index)

Definition at line 550 of file ExtraTagDefinitions.h.

Member Typedef Documentation

◆ carrier

Definition at line 31 of file ExtraTagDefinitions.h.

Member Function Documentation

◆ GenericTagBase()

constexpr CaloRecGPU::GenericTagBase::GenericTagBase
inlineconstexpr

Definition at line 41 of file ExtraTagDefinitions.h.

41  : value(v)
42  {
43  }

◆ get_12_bits()

constexpr uint32_t CaloRecGPU::Tag_1_12_1_32_18::get_12_bits ( ) const
inlineconstexpr

Definition at line 610 of file ExtraTagDefinitions.h.

611  {
612  return (value & s_12_bit_mask) >> s_12_bit_offset;
613  }

◆ get_18_bits()

constexpr uint32_t CaloRecGPU::Tag_1_12_1_32_18::get_18_bits ( ) const
inlineconstexpr

Definition at line 620 of file ExtraTagDefinitions.h.

621  {
622  return (value & s_18_bit_mask) >> s_18_bit_offset;
623  }

◆ get_32_bits()

constexpr uint32_t CaloRecGPU::Tag_1_12_1_32_18::get_32_bits ( ) const
inlineconstexpr

Definition at line 615 of file ExtraTagDefinitions.h.

616  {
617  return (value & s_32_bit_mask) >> s_32_bit_offset;
618  }

◆ get_first_flag()

constexpr bool CaloRecGPU::Tag_1_12_1_32_18::get_first_flag ( ) const
inlineconstexpr

Definition at line 570 of file ExtraTagDefinitions.h.

571  {
572  return value & s_first_flag_mask;
573  }

◆ get_second_flag()

constexpr bool CaloRecGPU::Tag_1_12_1_32_18::get_second_flag ( ) const
inlineconstexpr

Definition at line 585 of file ExtraTagDefinitions.h.

586  {
587  return value & s_second_flag_mask;
588  }

◆ make_first_flag()

constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::make_first_flag ( const bool  flag) const
inlineconstexpr

Definition at line 595 of file ExtraTagDefinitions.h.

596  {
597  return (value & (~(s_first_flag_mask * (!flag)))) | (s_first_flag_mask * flag);
598  }

◆ make_generic_tag()

static constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::make_generic_tag ( const uint32_t  bits_18,
const uint32_t  bits_32,
const uint32_t  bits_12,
const bool  flag_2,
const bool  flag_1 
)
inlinestaticconstexpr

Definition at line 625 of file ExtraTagDefinitions.h.

627  {
628  constexpr uint32_t bits_18_mask = 0x0003FFFFU;
629  constexpr uint32_t bits_12_mask = 0x00000FFFU;
630 
631  carrier ret = bits_12 & bits_12_mask;
632 
633  ret = (ret << 33) | bits_32;
634 
635  ret = (ret << 18) | (bits_18 & bits_18_mask);
636 
637  ret = ret | (s_second_flag_mask * flag_2) | (s_first_flag_mask * flag_1);
638 
639  return ret;
640  }

◆ make_invalid_tag()

static constexpr carrier CaloRecGPU::GenericTagBase::make_invalid_tag ( )
inlinestaticconstexprinherited

Definition at line 51 of file ExtraTagDefinitions.h.

52  {
53  return 0ULL;
54  }

◆ make_second_flag()

constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::make_second_flag ( const bool  flag) const
inlineconstexpr

Definition at line 600 of file ExtraTagDefinitions.h.

601  {
602  return (value & (~(s_second_flag_mask * (!flag)))) | (s_second_flag_mask * flag);
603  }

◆ operator carrier()

constexpr CaloRecGPU::GenericTagBase::operator carrier ( ) const
inlineconstexprinherited

Definition at line 36 of file ExtraTagDefinitions.h.

37  {
38  return value;
39  }

◆ set_first_flag()

constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::set_first_flag ( ) const
inlineconstexpr

Definition at line 575 of file ExtraTagDefinitions.h.

576  {
577  return value | s_first_flag_mask;
578  }

◆ set_second_flag()

constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::set_second_flag ( ) const
inlineconstexpr

Definition at line 590 of file ExtraTagDefinitions.h.

591  {
592  return value | s_second_flag_mask;
593  }

◆ unset_first_flag()

constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::unset_first_flag ( ) const
inlineconstexpr

Definition at line 580 of file ExtraTagDefinitions.h.

581  {
582  return value & (~s_first_flag_mask);
583  }

◆ unset_second_flag()

constexpr carrier CaloRecGPU::Tag_1_12_1_32_18::unset_second_flag ( ) const
inlineconstexpr

Definition at line 605 of file ExtraTagDefinitions.h.

606  {
607  return value & (~s_second_flag_mask);
608  }

Member Data Documentation

◆ s_12_bit_mask

constexpr static carrier CaloRecGPU::Tag_1_12_1_32_18::s_12_bit_mask = 0x7FF8000000000000ULL
staticconstexprprotected

Definition at line 559 of file ExtraTagDefinitions.h.

◆ s_12_bit_offset

constexpr static unsigned int CaloRecGPU::Tag_1_12_1_32_18::s_12_bit_offset = s_32_bit_offset + 32 + 1
staticconstexprprotected

Definition at line 566 of file ExtraTagDefinitions.h.

◆ s_18_bit_mask

constexpr static carrier CaloRecGPU::Tag_1_12_1_32_18::s_18_bit_mask = 0x000000000003FFFFULL
staticconstexprprotected

Definition at line 562 of file ExtraTagDefinitions.h.

◆ s_18_bit_offset

constexpr static unsigned int CaloRecGPU::Tag_1_12_1_32_18::s_18_bit_offset = 0
staticconstexprprotected

Definition at line 564 of file ExtraTagDefinitions.h.

◆ s_32_bit_mask

constexpr static carrier CaloRecGPU::Tag_1_12_1_32_18::s_32_bit_mask = 0x0003FFFFFFFC0000ULL
staticconstexprprotected

Definition at line 561 of file ExtraTagDefinitions.h.

◆ s_32_bit_offset

constexpr static unsigned int CaloRecGPU::Tag_1_12_1_32_18::s_32_bit_offset = s_18_bit_offset + 18
staticconstexprprotected

Definition at line 565 of file ExtraTagDefinitions.h.

◆ s_first_flag_mask

constexpr static carrier CaloRecGPU::Tag_1_12_1_32_18::s_first_flag_mask = 0x8000000000000000ULL
staticconstexprprotected

Definition at line 558 of file ExtraTagDefinitions.h.

◆ s_second_flag_mask

constexpr static carrier CaloRecGPU::Tag_1_12_1_32_18::s_second_flag_mask = 0x0004000000000000ULL
staticconstexprprotected

Definition at line 560 of file ExtraTagDefinitions.h.

◆ value

carrier CaloRecGPU::GenericTagBase::value
inherited

Definition at line 34 of file ExtraTagDefinitions.h.


The documentation for this class was generated from the following file:
CaloRecGPU::Tag_1_12_1_32_18::s_12_bit_mask
constexpr static carrier s_12_bit_mask
Definition: ExtraTagDefinitions.h:559
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
CaloRecGPU::Tag_1_12_1_32_18::s_second_flag_mask
constexpr static carrier s_second_flag_mask
Definition: ExtraTagDefinitions.h:560
CaloRecGPU::Tag_1_12_1_32_18::s_18_bit_offset
constexpr static unsigned int s_18_bit_offset
Definition: ExtraTagDefinitions.h:564
CaloRecGPU::Tag_1_12_1_32_18::s_32_bit_mask
constexpr static carrier s_32_bit_mask
Definition: ExtraTagDefinitions.h:561
ret
T ret(T t)
Definition: rootspy.cxx:260
CaloRecGPU::GenericTagBase::value
carrier value
Definition: ExtraTagDefinitions.h:34
master.flag
bool flag
Definition: master.py:29
CaloRecGPU::Tag_1_12_1_32_18::s_32_bit_offset
constexpr static unsigned int s_32_bit_offset
Definition: ExtraTagDefinitions.h:565
CaloRecGPU::GenericTagBase::carrier
CaloRecGPU::TagBase::carrier carrier
Definition: ExtraTagDefinitions.h:31
python.PyAthena.v
v
Definition: PyAthena.py:157
CaloRecGPU::Tag_1_12_1_32_18::s_first_flag_mask
constexpr static carrier s_first_flag_mask
Definition: ExtraTagDefinitions.h:558
CaloRecGPU::Tag_1_12_1_32_18::s_12_bit_offset
constexpr static unsigned int s_12_bit_offset
Definition: ExtraTagDefinitions.h:566
CaloRecGPU::Tag_1_12_1_32_18::s_18_bit_mask
constexpr static carrier s_18_bit_mask
Definition: ExtraTagDefinitions.h:562