# ARM 4.0 Metric Counters

[ARM 4.0 Metrics]

A counter is a monotonically increasing non-negative value up to its maximum possible value, at which point it wraps around to zero and starts again. More...

## Classes | |

interface | org.opengroup.arm40.metric.ArmMetricCounter32 |

Implements a 32-bit integer counter. More... | |

interface | org.opengroup.arm40.metric.ArmMetricCounter32Definition |

Marks a metadata binding. More... | |

interface | org.opengroup.arm40.metric.ArmMetricCounter64 |

Implements a 64-bit integer counter. More... | |

interface | org.opengroup.arm40.metric.ArmMetricCounter64Definition |

Marks a metadata binding. More... | |

interface | org.opengroup.arm40.metric.ArmMetricCounterFloat32 |

Implements a 32-bit floating-point counter. More... | |

interface | org.opengroup.arm40.metric.ArmMetricCounterFloat32Definition |

Marks a metadata binding. More... |

## Detailed Description

A counter is a monotonically increasing non-negative value up to its maximum possible value, at which point it wraps around to zero and starts again.

This is the IETF (Internet Engineering Task Force) RFC 1155 definition of a counter. A counter should be used when it makes sense to sum up the values over an interval. Examples are bytes printed and records written. The values can also be averaged, maximums and minimums (per transaction) can be calculated, and other kinds of statistical calculations can be performed.

ARM supports three counter types:

- 32-bit integer: org.opengroup.arm40.metric.ArmMetricCounter32
- 64-bit integer: org.opengroup.arm40.metric.ArmMetricCounter64
- 32-bit floating-point: org.opengroup.arm40.metric.ArmMetricCounterFloat32 The floating-point standard is IEEE 754 (the same as the Java language).