|
MetroCollect
2.3.4
|
Generic class to store and manage metrics. More...
#include <MetricsArray.h>


Public Types | |
| using | ValueType = T |
| Type of stored metrics on the container. More... | |
| using | Iterator = typename std::vector< T >::iterator |
| Iterator type. More... | |
| using | ConstIterator = typename std::vector< T >::const_iterator |
| Const iterator type. More... | |
Public Member Functions | |
| 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... | |
| MetricsArray & | operator= (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::FieldInfo > | allFieldsInfo () const noexcept |
| Get details about all fields. More... | |
| size_t | size () const noexcept |
| Returns the size of the underlying array. More... | |
| T & | at (size_t index) |
| Access specified element. More... | |
| const T & | at (size_t index) const |
| Access specified element. More... | |
| T & | operator[] (size_t index) |
| Access specified element. More... | |
| const T & | operator[] (size_t index) const |
| Access specified element. More... | |
| std::pair< Iterator, Iterator > | metricsSliceForSource (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... | |
Protected Member Functions | |
| 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 | |
| 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< T > | data_ |
| 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... | |
Generic class to store and manage metrics.
| T | Type of stored metrics on the container |
Definition at line 40 of file MetricsArray.h.
| using MetroCollect::MetricsArray< T >::ConstIterator = typename std::vector<T>::const_iterator |
Const iterator type.
Definition at line 44 of file MetricsArray.h.
| using MetroCollect::MetricsArray< T >::Iterator = typename std::vector<T>::iterator |
Iterator type.
Definition at line 43 of file MetricsArray.h.
| using MetroCollect::MetricsArray< T >::ValueType = T |
Type of stored metrics on the container.
Definition at line 42 of file MetricsArray.h.
|
noexcept |
Construct a new Metrics Array object.
Definition at line 31 of file MetricsArray.cc.
|
explicitnoexcept |
Construct a new Metrics Array object.
| sourceInterests | boolean arrays to store source interests |
Definition at line 36 of file MetricsArray.cc.
|
noexcept |
Copy constructor.
| other | Metrics Array to copy from |
Definition at line 42 of file MetricsArray.cc.
|
noexcept |
Get details about all fields.
Definition at line 122 of file MetricsArray.cc.

| T & MetroCollect::MetricsArray< T >::at | ( | size_t | index | ) |
Access specified element.
| index | position of the element to return |
Definition at line 140 of file MetricsArray.cc.

| const T & MetroCollect::MetricsArray< T >::at | ( | size_t | index | ) | const |
Access specified element.
| index | position of the element to return |
Definition at line 145 of file MetricsArray.cc.
|
noexcept |
Returns an iterator to the first element of the container.
Definition at line 157 of file MetricsArray.cc.

|
noexcept |
Returns an iterator to the first element of the container.
Definition at line 162 of file MetricsArray.cc.
|
noexcept |
Returns an iterator to the element following the last element of the container.
Definition at line 167 of file MetricsArray.cc.

|
noexcept |
Returns an iterator to the element following the last element of the container.
Definition at line 172 of file MetricsArray.cc.
|
noexcept |
Returns the total number of available metrics.
It is the same as the size of the underlying array
Definition at line 74 of file MetricsArray.cc.

|
noexcept |
Get details about a specific metric field.
| index | Index of field to get details of |
Definition at line 103 of file MetricsArray.cc.

|
noexcept |
Finds indexes of a field from its name across sources.
| fieldName | name of the field to search |
| setInterest | whether to activate the corresponding source interests |
Definition at line 85 of file MetricsArray.cc.
| std::pair< typename MetricsArray< T >::Iterator, typename MetricsArray< T >::Iterator > MetroCollect::MetricsArray< T >::metricsSliceForSource | ( | size_t | sourceIndex | ) |
Returns the iterator pair associated with a source.
| sourceIndex | index of the source to get metric iterators |
Definition at line 151 of file MetricsArray.cc.
|
noexcept |
Assignment operator.
| other | Metrics Array to copy from |
Definition at line 47 of file MetricsArray.cc.
|
inline |
Access specified element.
| index | position of the element to return |
Definition at line 177 of file MetricsArray.h.
|
inline |
Access specified element.
| index | position of the element to return |
Definition at line 185 of file MetricsArray.h.
|
protectednoexcept |
Update internal iterators pairs.
Definition at line 185 of file MetricsArray.cc.
|
protectednoexcept |
Resize the underlying container to fit the total number of metrics.
Definition at line 178 of file MetricsArray.cc.
|
noexcept |
Set the source interests.
| sourceInterests | new source interests to copy |
Definition at line 62 of file MetricsArray.cc.
|
noexcept |
Returns the size of the underlying array.
It returns the same value as fieldCount().
Definition at line 135 of file MetricsArray.cc.

|
noexcept |
Returns the source interests.
Definition at line 57 of file MetricsArray.cc.

|
noexcept |
Returns the timestamp of stored metrics.
Definition at line 68 of file MetricsArray.cc.
|
protected |
Underlying data storage.
Definition at line 50 of file MetricsArray.h.
|
protected |
To allow internal access by subclass.
Definition at line 54 of file MetricsArray.h.
|
protected |
Boolean arrays to store source interests.
Definition at line 47 of file MetricsArray.h.
|
protected |
Iterators pairs associating metrics to a source.
Definition at line 52 of file MetricsArray.h.
|
protected |
Array of sources to fetch data from.
Definition at line 51 of file MetricsArray.h.
|
protected |
Time at which metrics were collected.
Definition at line 48 of file MetricsArray.h.