arm4::ArmMetric Class Reference
[ARM 4.0 Metrics]

The base class for all the metric interfaces. More...

Inheritance diagram for arm4::ArmMetric:
arm4::ArmInterface arm4::ArmMetricCounter32 arm4::ArmMetricCounter64 arm4::ArmMetricCounterFloat32 arm4::ArmMetricGauge32 arm4::ArmMetricGauge64 arm4::ArmMetricGaugeFloat32 arm4::ArmMetricNumericId32 arm4::ArmMetricNumericId64 arm4::ArmMetricString32

List of all members.

Public Member Functions

const ArmMetricDefinitiongetDefinition ()

Detailed Description

The base class for all the metric interfaces.

The common behavior of all metric subclasses is:

  • getDefinition() returns the descriptive metadata (name, units, usage, ID) about the metric. The returned object will be the appropriate subclass of ArmMetricDefinition
  • Each subclass is also expected to implement get() and set() methods that take and/or return data of the appropriate type for the subclass. These methods are not defined in this interface because they have different signatures, depending on the type of metric.

Objects that implement a subclass of ArmMetric are used with ArmTransactionWithMetrics and / or ArmTranReportWithMetrics. They are bound via ArmMetricGroup when the ArmTransactionWithMetrics or ArmTranReportWithMetrics instance is created. Each ArmMetric instance can be bound to any number of transaction instances.

Setting the value of the ArmMetric instance effectively sets the value for all the transaction instances to which it is bound. The value affects each ArmTransactionWithMetrics instance the next time a ArmTransaction::start(), ArmTransaction::update(), or ArmTransaction::stop() is executed on the instance. The value affects each ArmTranReportWithMetrics instance the next time a ArmTranReport::report() is executed on the instance.

This class cannot be instantiated.

Author:
ARM Working Group of The Open Group, MyARM GmbH

Member Function Documentation

const ArmMetricDefinition& arm4::ArmMetric::getDefinition (  ) 
Returns:
the descriptive metadata (name, units, usage, ID) about the metric.

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