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

#include <ConstantInfoDefinitions.h>

Collaboration diagram for CaloRecGPU::CellNoiseProperties:

Public Types

using carrier = unsigned int
 

Public Member Functions

constexpr operator carrier () const
 
constexpr CellNoiseProperties (const carrier v)
 
constexpr CellNoisePropertiesoperator= (const carrier v)
 
constexpr carrier version () const
 
constexpr carrier noise_type () const
 
constexpr bool is_electronic_noise () const
 
constexpr bool is_pile_up_noise () const
 
constexpr bool is_total_noise () const
 
constexpr CellNoiseProperties (const carrier version, const carrier noise_type)
 
constexpr bool is_invalid () const
 
constexpr bool is_valid () const
 

Static Public Member Functions

static constexpr carrier invalid_value ()
 

Public Attributes

carrier value
 

Static Protected Attributes

static constexpr carrier s_first_16_bit_mask = 0x0000FFFFU
 
static constexpr carrier s_last_16_bit_mask = 0xFFFF0000U
 
static constexpr carrier s_invalid_double_gaussian = s_first_16_bit_mask | s_last_16_bit_mask
 

Detailed Description

Definition at line 375 of file ConstantInfoDefinitions.h.

Member Typedef Documentation

◆ carrier

Definition at line 377 of file ConstantInfoDefinitions.h.

Constructor & Destructor Documentation

◆ CellNoiseProperties() [1/2]

constexpr CaloRecGPU::CellNoiseProperties::CellNoiseProperties ( const carrier  v)
inlineconstexpr

Definition at line 394 of file ConstantInfoDefinitions.h.

394  : value(v)
395  {
396  }

◆ CellNoiseProperties() [2/2]

constexpr CaloRecGPU::CellNoiseProperties::CellNoiseProperties ( const carrier  version,
const carrier  noise_type 
)
inlineconstexpr

Definition at line 429 of file ConstantInfoDefinitions.h.

429  :
431  {
432  value = (value << 16) | (version & s_first_16_bit_mask);
433  }

Member Function Documentation

◆ invalid_value()

static constexpr carrier CaloRecGPU::CellNoiseProperties::invalid_value ( )
inlinestaticconstexpr

Definition at line 445 of file ConstantInfoDefinitions.h.

446  {
448  }

◆ is_electronic_noise()

constexpr bool CaloRecGPU::CellNoiseProperties::is_electronic_noise ( ) const
inlineconstexpr

Definition at line 414 of file ConstantInfoDefinitions.h.

415  {
416  return is_valid() && ((value & s_last_16_bit_mask) == 0x00000000U);
417  }

◆ is_invalid()

constexpr bool CaloRecGPU::CellNoiseProperties::is_invalid ( ) const
inlineconstexpr

Definition at line 435 of file ConstantInfoDefinitions.h.

436  {
438  }

◆ is_pile_up_noise()

constexpr bool CaloRecGPU::CellNoiseProperties::is_pile_up_noise ( ) const
inlineconstexpr

Definition at line 419 of file ConstantInfoDefinitions.h.

420  {
421  return is_valid() && ((value & s_last_16_bit_mask) == 0x00010000U);
422  }

◆ is_total_noise()

constexpr bool CaloRecGPU::CellNoiseProperties::is_total_noise ( ) const
inlineconstexpr

Definition at line 424 of file ConstantInfoDefinitions.h.

425  {
426  return is_valid() && ((value & s_last_16_bit_mask) == 0x00020000U);
427  }

◆ is_valid()

constexpr bool CaloRecGPU::CellNoiseProperties::is_valid ( ) const
inlineconstexpr

Definition at line 440 of file ConstantInfoDefinitions.h.

441  {
442  return !is_invalid();
443  }

◆ noise_type()

constexpr carrier CaloRecGPU::CellNoiseProperties::noise_type ( ) const
inlineconstexpr

Definition at line 409 of file ConstantInfoDefinitions.h.

410  {
411  return (value & s_last_16_bit_mask) >> 16;
412  }

◆ operator carrier()

constexpr CaloRecGPU::CellNoiseProperties::operator carrier ( ) const
inlineconstexpr

Definition at line 389 of file ConstantInfoDefinitions.h.

390  {
391  return value;
392  }

◆ operator=()

constexpr CellNoiseProperties& CaloRecGPU::CellNoiseProperties::operator= ( const carrier  v)
inlineconstexpr

Definition at line 398 of file ConstantInfoDefinitions.h.

399  {
400  value = v;
401  return (*this);
402  }

◆ version()

constexpr carrier CaloRecGPU::CellNoiseProperties::version ( ) const
inlineconstexpr

Definition at line 404 of file ConstantInfoDefinitions.h.

405  {
406  return value & s_first_16_bit_mask;
407  }

Member Data Documentation

◆ s_first_16_bit_mask

constexpr carrier CaloRecGPU::CellNoiseProperties::s_first_16_bit_mask = 0x0000FFFFU
staticconstexprprotected

Definition at line 382 of file ConstantInfoDefinitions.h.

◆ s_invalid_double_gaussian

constexpr carrier CaloRecGPU::CellNoiseProperties::s_invalid_double_gaussian = s_first_16_bit_mask | s_last_16_bit_mask
staticconstexprprotected

Definition at line 384 of file ConstantInfoDefinitions.h.

◆ s_last_16_bit_mask

constexpr carrier CaloRecGPU::CellNoiseProperties::s_last_16_bit_mask = 0xFFFF0000U
staticconstexprprotected

Definition at line 383 of file ConstantInfoDefinitions.h.

◆ value

carrier CaloRecGPU::CellNoiseProperties::value

Definition at line 378 of file ConstantInfoDefinitions.h.


The documentation for this struct was generated from the following file:
CaloRecGPU::CellNoiseProperties::is_invalid
constexpr bool is_invalid() const
Definition: ConstantInfoDefinitions.h:435
CaloRecGPU::CellNoiseProperties::version
constexpr carrier version() const
Definition: ConstantInfoDefinitions.h:404
CaloRecGPU::CellNoiseProperties::s_last_16_bit_mask
static constexpr carrier s_last_16_bit_mask
Definition: ConstantInfoDefinitions.h:383
CaloRecGPU::CellNoiseProperties::s_invalid_double_gaussian
static constexpr carrier s_invalid_double_gaussian
Definition: ConstantInfoDefinitions.h:384
CaloRecGPU::CellNoiseProperties::s_first_16_bit_mask
static constexpr carrier s_first_16_bit_mask
Definition: ConstantInfoDefinitions.h:382
python.PyAthena.v
v
Definition: PyAthena.py:157
CaloRecGPU::CellNoiseProperties::value
carrier value
Definition: ConstantInfoDefinitions.h:378
CaloRecGPU::CellNoiseProperties::noise_type
constexpr carrier noise_type() const
Definition: ConstantInfoDefinitions.h:409
CaloRecGPU::CellNoiseProperties::is_valid
constexpr bool is_valid() const
Definition: ConstantInfoDefinitions.h:440