CPP-TOOLBOX
Loading...
Searching...
No Matches
FixedSizeArrayTracker Class Reference

#include <fixed_size_array_tracker.hpp>

Public Member Functions

 FixedSizeArrayTracker (unsigned int size, bool logging_enabled=false)
 
void log (const std::string &message) const
 
double get_usage_percentage () const
 
std::optional< unsigned int > find_contiguous_space (unsigned int length)
 
bool add_metadata (int id, unsigned int start, unsigned int length)
 
void remove_metadata (int id)
 
std::optional< std::pair< unsigned int, unsigned int > > get_metadata (int id) const
 
void compact ()
 
const std::unordered_map< int, std::pair< unsigned int, unsigned int > > & get_all_metadata () const
 

Friends

std::ostream & operator<< (std::ostream &os, const FixedSizeArrayTracker &tracker)
 

Constructor & Destructor Documentation

◆ FixedSizeArrayTracker()

FixedSizeArrayTracker::FixedSizeArrayTracker ( unsigned int size,
bool logging_enabled = false )

Member Function Documentation

◆ add_metadata()

bool FixedSizeArrayTracker::add_metadata ( int id,
unsigned int start,
unsigned int length )

◆ compact()

void FixedSizeArrayTracker::compact ( )

◆ find_contiguous_space()

std::optional< unsigned int > FixedSizeArrayTracker::find_contiguous_space ( unsigned int length)

◆ get_all_metadata()

const std::unordered_map< int, std::pair< unsigned int, unsigned int > > & FixedSizeArrayTracker::get_all_metadata ( ) const

◆ get_metadata()

std::optional< std::pair< unsigned int, unsigned int > > FixedSizeArrayTracker::get_metadata ( int id) const

◆ get_usage_percentage()

double FixedSizeArrayTracker::get_usage_percentage ( ) const

◆ log()

void FixedSizeArrayTracker::log ( const std::string & message) const

◆ remove_metadata()

void FixedSizeArrayTracker::remove_metadata ( int id)

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream & os,
const FixedSizeArrayTracker & tracker )
friend

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