Project
Loading...
Searching...
No Matches
o2::itsmft::tracking::CapacityEstimator Class Reference

#include <CapacityEstimator.h>

Classes

struct  Config
 
struct  Decoded
 
struct  Impl
 
struct  Statistics
 

Public Types

using KeyType = uint64_t
 

Public Member Functions

 CapacityEstimator ()
 
 CapacityEstimator (Config cfg)
 
 ~CapacityEstimator ()
 
 CapacityEstimator (const CapacityEstimator &)=delete
 
CapacityEstimatoroperator= (const CapacityEstimator &)=delete
 
void reset ()
 
void beginTransaction ()
 
void commitTransaction () noexcept
 
void rollbackTransaction () noexcept
 
size_t capacity (uint64_t key, double scale) const
 
size_t peakCapacity (uint64_t key) const
 
double expected (uint64_t key, double scale) const
 
Statistics statistics (uint64_t key) const
 
void update (uint64_t key, double scale, size_t emitted, size_t capacityUsed, bool overflowed, bool memoryLimited)
 
void update (uint64_t key, double scale, size_t requested, size_t granted, size_t emitted, size_t spilled, bool overflowed, bool memoryLimited)
 
void print () const
 

Static Public Member Functions

static constexpr KeyType makeKey (SlabSite site, int iteration, int variant, int slot) noexcept
 
static constexpr Decoded decodeKey (KeyType key) noexcept
 
static constexpr int makeVariant (int high, int low) noexcept
 
static constexpr int getVariantHigh (int variant) noexcept
 
static constexpr int getVariantLow (int variant) noexcept
 

Detailed Description

Definition at line 41 of file CapacityEstimator.h.

Member Typedef Documentation

◆ KeyType

Definition at line 57 of file CapacityEstimator.h.

Constructor & Destructor Documentation

◆ CapacityEstimator() [1/3]

o2::itsmft::tracking::CapacityEstimator::CapacityEstimator ( )

Definition at line 112 of file CapacityEstimator.cxx.

◆ CapacityEstimator() [2/3]

o2::itsmft::tracking::CapacityEstimator::CapacityEstimator ( Config  cfg)
explicit

Definition at line 114 of file CapacityEstimator.cxx.

◆ ~CapacityEstimator()

o2::itsmft::tracking::CapacityEstimator::~CapacityEstimator ( )
default

◆ CapacityEstimator() [3/3]

o2::itsmft::tracking::CapacityEstimator::CapacityEstimator ( const CapacityEstimator )
delete

Member Function Documentation

◆ beginTransaction()

void o2::itsmft::tracking::CapacityEstimator::beginTransaction ( )

Definition at line 126 of file CapacityEstimator.cxx.

◆ capacity()

size_t o2::itsmft::tracking::CapacityEstimator::capacity ( uint64_t  key,
double  scale 
) const

Definition at line 162 of file CapacityEstimator.cxx.

◆ commitTransaction()

void o2::itsmft::tracking::CapacityEstimator::commitTransaction ( )
noexcept

Definition at line 136 of file CapacityEstimator.cxx.

◆ decodeKey()

static constexpr Decoded o2::itsmft::tracking::CapacityEstimator::decodeKey ( KeyType  key)
inlinestaticconstexprnoexcept

Definition at line 85 of file CapacityEstimator.h.

◆ expected()

double o2::itsmft::tracking::CapacityEstimator::expected ( uint64_t  key,
double  scale 
) const

Definition at line 203 of file CapacityEstimator.cxx.

◆ getVariantHigh()

static constexpr int o2::itsmft::tracking::CapacityEstimator::getVariantHigh ( int  variant)
inlinestaticconstexprnoexcept

Definition at line 99 of file CapacityEstimator.h.

◆ getVariantLow()

static constexpr int o2::itsmft::tracking::CapacityEstimator::getVariantLow ( int  variant)
inlinestaticconstexprnoexcept

Definition at line 104 of file CapacityEstimator.h.

◆ makeKey()

static constexpr KeyType o2::itsmft::tracking::CapacityEstimator::makeKey ( SlabSite  site,
int  iteration,
int  variant,
int  slot 
)
inlinestaticconstexprnoexcept

Definition at line 77 of file CapacityEstimator.h.

◆ makeVariant()

static constexpr int o2::itsmft::tracking::CapacityEstimator::makeVariant ( int  high,
int  low 
)
inlinestaticconstexprnoexcept

Definition at line 94 of file CapacityEstimator.h.

◆ operator=()

CapacityEstimator & o2::itsmft::tracking::CapacityEstimator::operator= ( const CapacityEstimator )
delete

◆ peakCapacity()

size_t o2::itsmft::tracking::CapacityEstimator::peakCapacity ( uint64_t  key) const

Definition at line 188 of file CapacityEstimator.cxx.

◆ print()

void o2::itsmft::tracking::CapacityEstimator::print ( ) const

Definition at line 248 of file CapacityEstimator.cxx.

◆ reset()

void o2::itsmft::tracking::CapacityEstimator::reset ( )

Definition at line 118 of file CapacityEstimator.cxx.

◆ rollbackTransaction()

void o2::itsmft::tracking::CapacityEstimator::rollbackTransaction ( )
noexcept

Definition at line 143 of file CapacityEstimator.cxx.

◆ statistics()

CapacityEstimator::Statistics o2::itsmft::tracking::CapacityEstimator::statistics ( uint64_t  key) const

Definition at line 217 of file CapacityEstimator.cxx.

◆ update() [1/2]

void o2::itsmft::tracking::CapacityEstimator::update ( uint64_t  key,
double  scale,
size_t  emitted,
size_t  capacityUsed,
bool  overflowed,
bool  memoryLimited 
)

Definition at line 227 of file CapacityEstimator.cxx.

◆ update() [2/2]

void o2::itsmft::tracking::CapacityEstimator::update ( uint64_t  key,
double  scale,
size_t  requested,
size_t  granted,
size_t  emitted,
size_t  spilled,
bool  overflowed,
bool  memoryLimited 
)

Definition at line 238 of file CapacityEstimator.cxx.


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