MetroCollect  2.3.4
MetroCollect::MetricsDataArray Class Reference

Class to fetch metrics from the kernel and store them. More...

#include <MetricsDataArray.h>

Inheritance diagram for MetroCollect::MetricsDataArray:
Collaboration diagram for MetroCollect::MetricsDataArray:

Public Member Functions

 MetricsDataArray () noexcept
 Construct a new Metrics Data Array object. More...
 
 MetricsDataArray (MetricsSource::SourceInterests sourceInterests) noexcept
 Construct a new Metrics Data Array object. More...
 
void updateData ()
 Fetch new metric values from each source. More...
 
- Public Member Functions inherited from MetroCollect::MetricsArray< DataValueType >
 MetricsArray () noexcept
 Construct a new Metrics Array object. More...
 
 MetricsArray (MetricsSource::SourceInterests sourceInterests) noexcept
 Construct a new Metrics Array object. More...
 
 MetricsArray (const MetricsArray &other) noexcept
 Copy constructor. More...
 
MetricsArrayoperator= (const MetricsArray &other) noexcept
 Assignment operator. More...
 
MetricsSource::SourceInterests sourceInterests () const noexcept
 Returns the source interests. More...
 
void setSourcesInterests (MetricsSource::SourceInterests sourceInterests) noexcept
 Set the source interests. More...
 
const std::chrono::system_clock::time_point & timestamp () const noexcept
 Returns the timestamp of stored metrics. More...
 
size_t fieldCount () const noexcept
 Returns the total number of available metrics. More...
 
const std::vector< size_t > indexesOfFieldName (const MetricsSource::FieldName &fieldName, bool setInterest=true) const noexcept
 Finds indexes of a field from its name across sources. More...
 
const MetricsSource::FieldInfo fieldInfoAtIndex (size_t index) const noexcept
 Get details about a specific metric field. More...
 
const std::vector< MetricsSource::FieldInfoallFieldsInfo () const noexcept
 Get details about all fields. More...
 
size_t size () const noexcept
 Returns the size of the underlying array. More...
 
DataValueTypeat (size_t index)
 Access specified element. More...
 
const DataValueTypeat (size_t index) const
 Access specified element. More...
 
DataValueTypeoperator[] (size_t index)
 Access specified element. More...
 
const DataValueTypeoperator[] (size_t index) const
 Access specified element. More...
 
std::pair< Iterator, IteratormetricsSliceForSource (size_t sourceIndex)
 Returns the iterator pair associated with a source. More...
 
Iterator begin () noexcept
 Returns an iterator to the first element of the container. More...
 
const ConstIterator begin () const noexcept
 Returns an iterator to the first element of the container. More...
 
Iterator end () noexcept
 Returns an iterator to the element following the last element of the container. More...
 
const ConstIterator end () const noexcept
 Returns an iterator to the element following the last element of the container. More...
 

Additional Inherited Members

- Public Types inherited from MetroCollect::MetricsArray< DataValueType >
using ValueType = DataValueType
 Type of stored metrics on the container. More...
 
using Iterator = typename std::vector< DataValueType >::iterator
 Iterator type. More...
 
using ConstIterator = typename std::vector< DataValueType >::const_iterator
 Const iterator type. More...
 
- Protected Member Functions inherited from MetroCollect::MetricsArray< DataValueType >
void setSize () noexcept
 Resize the underlying container to fit the total number of metrics. More...
 
void setIterators () noexcept
 Update internal iterators pairs. More...
 
- Protected Attributes inherited from MetroCollect::MetricsArray< DataValueType >
MetricsSource::SourceInterests sourceInterests_
 Boolean arrays to store source interests. More...
 
std::chrono::system_clock::time_point timestamp_
 Time at which metrics were collected. More...
 
std::vector< DataValueTypedata_
 Underlying data storage. More...
 
MetricsSource::MetricsSourceArray sources_
 Array of sources to fetch data from. More...
 
std::array< std::pair< Iterator, Iterator >, MetricsSource::MetricsSourceArray::count > sourceIterators_
 Iterators pairs associating metrics to a source. More...
 
friend MetricsDiffArray
 To allow internal access by subclass. More...
 

Detailed Description

Class to fetch metrics from the kernel and store them.

Definition at line 30 of file MetricsDataArray.h.

Constructor & Destructor Documentation

◆ MetricsDataArray() [1/2]

MetroCollect::MetricsDataArray::MetricsDataArray ( )
noexcept

Construct a new Metrics Data Array object.

Definition at line 25 of file MetricsDataArray.cc.

◆ MetricsDataArray() [2/2]

MetroCollect::MetricsDataArray::MetricsDataArray ( MetricsSource::SourceInterests  sourceInterests)
explicitnoexcept

Construct a new Metrics Data Array object.

Parameters
sourceInterestsboolean arrays to store source interests

Definition at line 27 of file MetricsDataArray.cc.

Member Function Documentation

◆ updateData()

void MetroCollect::MetricsDataArray::updateData ( )

Fetch new metric values from each source.

Metric values are stored directly into the underlying array

Definition at line 30 of file MetricsDataArray.cc.

Here is the call graph for this function:

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