|
BDE 4.14.0 Production release
|
#include <balm_metricsample.h>
Public Types | |
| typedef const MetricRecord * | const_iterator |
Public Member Functions | |
| MetricSampleGroup () | |
| MetricSampleGroup (const MetricRecord *records, int numRecords, const bsls::TimeInterval &elapsedTime) | |
| MetricSampleGroup (const MetricSampleGroup &original) | |
| ~MetricSampleGroup ()=default | |
| Destroy this object. | |
| MetricSampleGroup & | operator= (const MetricSampleGroup &rhs) |
| void | setElapsedTime (const bsls::TimeInterval &elapsedTime) |
| void | setRecords (const MetricRecord *records, int numRecords) |
| const MetricRecord * | records () const |
| int | numRecords () const |
| const bsls::TimeInterval & | elapsedTime () const |
| const_iterator | begin () const |
| const_iterator | end () const |
| bsl::ostream & | print (bsl::ostream &stream, int level=0, int spacesPerLevel=4) const |
This class provides an in-core value-semantic representation of a group of metric record values. This class contains the address of an array of (externally managed) MetricRecord objects, the number of records in that array, and an elapsed time value (used to indicate the time span over which the metric values were aggregated).
| typedef const MetricRecord* balm::MetricSampleGroup::const_iterator |
A const_iterator is an alias for an iterator over the non-modifiable records referenced in a MetricSampleGroup.
|
inline |
Create an empty sample group. By default, the records() address is 0, numRecords() is 0, and the elapsedTime() is the default- constructed bsls::TimeInterval.
|
inline |
Create a sample group containing the specified sequence of records of specified length numRecords, recorded over a period whose duration is the specified elapsedTime. The behavior is undefined unless 0 <= numRecords and records points to a contiguous sequence of (at least) numRecords metric records. Note that the contents of records is not copied and the supplied array must remain valid for the productive lifetime of this object or until the records are set to a different sequence by calling the setRecords manipulator.
|
inline |
Create a sample group having the same (in-core) value as the specified original sample group.
|
default |
|
inline |
Return an iterator positioned at the beginning of the sequence of MetricRecord objects referenced by this object.
|
inline |
Return a reference to the non-modifiable elapsed time interval over which this object's metric records were aggregated.
|
inline |
Return an iterator positioned one past the final MetricRecord object in the sequence of records referenced by this object.
|
inline |
Return the number of records (referenced to by records()) in this object.
|
inline |
Assign to this sample group the value of the specified rhs sample group, and return a reference to this modifiable sample group. Note that only the pointer to the MetricRecord array and the length are copied, and not the records themselves.
| bsl::ostream & balm::MetricSampleGroup::print | ( | bsl::ostream & | stream, |
| int | level = 0, |
||
| int | spacesPerLevel = 4 |
||
| ) | const |
Format this object to the specified output stream at the (absolute value of) the optionally specified indentation level and return a reference to stream. If level is specified, optionally specify spacesPerLevel, the number of spaces per indentation level for this and all of its nested objects. If level is negative, suppress indentation of the first line. If spacesPerLevel is negative, format the entire output on one line, suppressing all but the initial indentation (as governed by level). If stream is not valid on entry, this operation has no effect.
|
inline |
Return the address of the contiguous sequence of non-modifiable records of length numRecords().
|
inline |
Set the elapsed time (used to indicate the time span over which this object's metric records were aggregated) to the specified elapsedTime.
|
inline |
Set the sequence of records referred to by this sample group to the specified sequence of records of specified length numRecords. The behavior is undefined unless 0 <= numRecords, and records refers to a contiguous sequence of (at least) numRecords. Note that the contents of records is not copied and the supplied array must remain valid for the productive lifetime of this object or until the records are set to a different sequence by calling the setRecords manipulator.