8#ifndef INCLUDED_BALM_METRICSAMPLE
9#define INCLUDED_BALM_METRICSAMPLE
170#include <balscm_version.h>
182#include <bsl_iosfwd.h>
183#include <bsl_vector.h>
302 bsl::ostream&
print(bsl::ostream& stream,
304 int spacesPerLevel = 4)
const;
492 bsl::ostream&
print(bsl::ostream& stream,
494 int spacesPerLevel = 4)
const;
538: d_records_p(records)
539, d_numRecords(numRecords)
540, d_elapsedTime(elapsedTime)
546: d_records_p(original.d_records_p)
547, d_numRecords(original.d_numRecords)
548, d_elapsedTime(original.d_elapsedTime)
556 d_records_p = rhs.d_records_p;
557 d_numRecords = rhs.d_numRecords;
558 d_elapsedTime = rhs.d_elapsedTime;
592 return d_elapsedTime;
604 return d_records_p + d_numRecords;
612 const MetricSampleGroup& rhs)
614 return lhs.records() == rhs.records()
615 && lhs.numRecords() == rhs.numRecords()
616 && lhs.elapsedTime() == rhs.elapsedTime();
621 const MetricSampleGroup& rhs)
628 const MetricSampleGroup& rhs)
630 return rhs.print(stream, 0, -1);
642, d_records(basicAllocator)
663 d_records.push_back(group);
690 return d_records[index];
702 return d_records.begin();
708 return d_records.end();
714 return static_cast<int>(d_records.size());
728 return lhs.d_timeStamp == rhs.d_timeStamp
729 && lhs.d_records == rhs.d_records;
739bsl::ostream&
balm::operator<<(bsl::ostream& stream,
const MetricSample& rhs)
741 return rhs.print(stream, 0, -1);
Definition balm_metricrecord.h:217
Definition balm_metricsample.h:199
const_iterator end() const
Definition balm_metricsample.h:602
const MetricRecord * const_iterator
Definition balm_metricsample.h:214
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
void setElapsedTime(const bsls::TimeInterval &elapsedTime)
Definition balm_metricsample.h:563
~MetricSampleGroup()=default
Destroy this object.
MetricSampleGroup & operator=(const MetricSampleGroup &rhs)
Definition balm_metricsample.h:554
const MetricRecord * records() const
Definition balm_metricsample.h:578
const bsls::TimeInterval & elapsedTime() const
Definition balm_metricsample.h:590
void setRecords(const MetricRecord *records, int numRecords)
Definition balm_metricsample.h:569
const_iterator begin() const
Definition balm_metricsample.h:596
MetricSampleGroup()
Definition balm_metricsample.h:527
int numRecords() const
Definition balm_metricsample.h:584
Definition balm_metricsample.h:347
bsl::ostream & print(bsl::ostream &stream, int level=0, int spacesPerLevel=4) const
BSLMF_NESTED_TRAIT_DECLARATION(MetricSample, bslma::UsesBslmaAllocator)
friend bool operator==(const MetricSample &lhs, const MetricSample &rhs)
void removeAllRecords()
Remove all metric records from this sample.
Definition balm_metricsample.h:680
const_iterator end() const
Definition balm_metricsample.h:706
void setTimeStamp(const bdlt::DatetimeTz &timeStamp)
Definition balm_metricsample.h:654
MetricSample & operator=(const MetricSample &rhs)
void appendGroup(const MetricSampleGroup &group)
Definition balm_metricsample.h:660
const_iterator begin() const
Definition balm_metricsample.h:700
const MetricSampleGroup & sampleGroup(int index) const
Definition balm_metricsample.h:688
const bdlt::DatetimeTz & timeStamp() const
Return a reference to the non-modifiable timestamp for this sample.
Definition balm_metricsample.h:694
~MetricSample()
Destroy this metric sample.
Definition balm_metricsample.h:648
MetricSample(const MetricSample &original, bslma::Allocator *basicAllocator=0)
int numGroups() const
Definition balm_metricsample.h:712
int numRecords() const
Definition balm_metricsample.h:718
bsl::vector< MetricSampleGroup >::const_iterator const_iterator
Definition balm_metricsample.h:369
MetricSample(bslma::Allocator *basicAllocator=0)
Definition balm_metricsample.h:640
Definition bdlt_datetimetz.h:308
Definition bslstl_vector.h:1120
VALUE_TYPE const * const_iterator
Definition bslstl_vector.h:1153
Definition bslma_allocator.h:545
Definition bsls_timeinterval.h:307
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition balm_bdlmmetricsadapter.h:142
bool operator==(const IntegerMetric &lhs, const IntegerMetric &rhs)
bsl::ostream & operator<<(bsl::ostream &stream, const Category &rhs)
bool operator!=(const IntegerMetric &lhs, const IntegerMetric &rhs)
ALLOCATOR const STRING_VIEW_LIKE_TYPE & rhs
Definition bslstl_string.h:3918
ALLOCATOR & lhs
Definition bslstl_string.h:3917
Definition bslma_usesbslmaallocator.h:344