hardware_table_impl

Warning

doxygenfile: Cannot find file “eos/hardware_table_impl.h

Type definitions in hardware_table_impl

namespace eos
class hardware_table_key_impl_t
#include <hardware_table_impl.h>

The unique identifier for a hardware table.

Public Functions

hardware_table_key_impl_t()
hardware_table_key_impl_t(std::string const & table_name, std::string const & feature, std::string const & chip)
hardware_table_key_impl_t(std::string const & table_name, std::string const & feature)
hardware_table_key_impl_t(std::string const & table_name)
std::string table_name() const

Getter for ‘table_name’: the name of the hardware resource. For example, this value could be ‘TCAM’, ‘LEM’, ‘ECMP’, ‘LPM’ etc.

std::string feature() const

Getter for ‘feature’: the name of the feature using the table, such as ‘Multicast’, ‘IPv6’ or ‘MPLS’.

std::string chip() const

Getter for ‘chip’: which chip this table is located on. If empty, then this feature’s usage is identical across chips.

bool operator==(hardware_table_key_impl_t const & other) const
bool operator!=(hardware_table_key_impl_t const & other) const
bool operator<(hardware_table_key_impl_t const & other) const
uint32_t hash() const

The hash function for type hardware_table_key_t.

void mix_me(hash_mix & h) const

The hash mix function for type hardware_table_key_t.

std::string to_string() const

Returns a string representation of the current object’s values.

Private Members

std::string table_name_
std::string feature_
std::string chip_

Friends

friend std::ostream & operator<<

A utility stream operator that adds a string representation of hardware_table_key_t to the ostream.

class hardware_table_high_watermark_impl_t
#include <hardware_table_impl.h>

The compound high watermark statistics.

Public Functions

hardware_table_high_watermark_impl_t()
hardware_table_high_watermark_impl_t(uint32_t max_entries, time_t timestamp)
uint32_t max_entries() const

Getter for ‘max_entries’: the maximum number of entries used so far.

time_t timestamp() const

Getter for ‘timestamp’: the last time when high watermark reached.

bool operator==(hardware_table_high_watermark_impl_t const & other) const
bool operator!=(hardware_table_high_watermark_impl_t const & other) const
bool operator<(hardware_table_high_watermark_impl_t const & other) const
uint32_t hash() const

The hash function for type hardware_table_high_watermark_t.

void mix_me(hash_mix & h) const

The hash mix function for type hardware_table_high_watermark_t.

std::string to_string() const

Returns a string representation of the current object’s values.

Private Members

uint32_t max_entries_
time_t timestamp_

Friends

friend std::ostream & operator<<

A utility stream operator that adds a string representation of hardware_table_high_watermark_t to the ostream.

class hardware_table_usage_impl_t
#include <hardware_table_impl.h>

The usage statistics for a given table (or partition of a table).

Public Functions

hardware_table_usage_impl_t()
hardware_table_usage_impl_t(uint32_t used_entries, uint32_t free_entries, uint32_t committed_entries)
uint32_t used_entries() const

Getter for ‘used_entries’: number of entries used by this feature on this table.

uint32_t free_entries() const

Getter for ‘free_entries’: the number of free entries available for this feature to use. For features that share a table, if a feature increases its used or committed entries, all other features’ free entries will decrease.

uint32_t committed_entries() const

Getter for ‘committed_entries’: the number of entries currently allocated for this feature. For tables that have no explicit partitions, this value will be 0.

bool operator==(hardware_table_usage_impl_t const & other) const
bool operator!=(hardware_table_usage_impl_t const & other) const
bool operator<(hardware_table_usage_impl_t const & other) const
uint32_t hash() const

The hash function for type hardware_table_usage_t.

void mix_me(hash_mix & h) const

The hash mix function for type hardware_table_usage_t.

std::string to_string() const

Returns a string representation of the current object’s values.

Private Members

uint32_t used_entries_
uint32_t free_entries_
uint32_t committed_entries_

Friends

friend std::ostream & operator<<

A utility stream operator that adds a string representation of hardware_table_usage_t to the ostream.

class hardware_table_entry_impl_t
#include <hardware_table_impl.h>

The hardware table entry for a given table key.

Public Functions

hardware_table_entry_impl_t()
hardware_table_entry_impl_t(hardware_table_usage_t const & usage, uint32_t max_entries, hardware_table_high_watermark_t const & high_watermark)
hardware_table_usage_t usage() const

Getter for ‘usage’: the compound usage statistics.

uint32_t max_entries() const

Getter for ‘max_entries’: the theoretical maximum number of entries available.

hardware_table_high_watermark_t high_watermark() const

Getter for ‘high_watermark’: the compound high watermark statistics.

bool operator==(hardware_table_entry_impl_t const & other) const
bool operator!=(hardware_table_entry_impl_t const & other) const
bool operator<(hardware_table_entry_impl_t const & other) const
uint32_t hash() const

The hash function for type hardware_table_entry_t.

void mix_me(hash_mix & h) const

The hash mix function for type hardware_table_entry_t.

std::string to_string() const

Returns a string representation of the current object’s values.

Private Members

hardware_table_usage_t usage_
uint32_t max_entries_
hardware_table_high_watermark_t high_watermark_

Friends

friend std::ostream & operator<<

A utility stream operator that adds a string representation of hardware_table_entry_t to the ostream.