# Enum AggregateMetric

java.lang.Object
java.lang.Enum<AggregateMetric>
com.codename1.health.AggregateMetric

All Implemented Interfaces:
  `Comparable<AggregateMetric>`

public enum AggregateMetric extends Enum<AggregateMetric>
What to compute over an aggregation bucket. Which metrics are meaningful depends on the type's `HealthAggregationStyle`; asking for a nonsensical combination -- the total of a body-mass series, say -- fails with `HealthError.INVALID_ARGUMENT` rather than returning a number nobody should trust.

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `AVERAGE`
  The mean across the bucket.
  `COUNT`
  How many samples fell in the bucket.
  `DURATION`
  The total time covered by samples in the bucket, in milliseconds.
  `LATEST`
  The most recent value in the bucket.
  `MAXIMUM`
  The largest value in the bucket.
  `MINIMUM`
  The smallest value in the bucket.
  `TOTAL`
  The sum across the bucket.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static AggregateMetric`
  `valueOf(String name)`
  Returns the enum constant of this type with the specified name.
  `static AggregateMetric[]`
  `values()`
  Returns an array containing the constants of this enum type, in the order they are declared.

  ### Methods inherited from class Enum

  `clone, compareTo, equals, getDeclaringClass, getEnumValues, hashCode, name, ordinal, setEnumValues, toString, valueOf`

  ### Methods inherited from class Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### TOTAL

    public static final AggregateMetric TOTAL
    The sum across the bucket. Meaningful for `HealthAggregationStyle.CUMULATIVE` types only.

  - ### AVERAGE

    public static final AggregateMetric AVERAGE

    The mean across the bucket. Meaningful for `HealthAggregationStyle.DISCRETE` types.

    Interval samples are weighted by duration and instantaneous samples are weighted equally, so a heart rate held for ten minutes counts for more than a single spot reading.

  - ### MINIMUM

    public static final AggregateMetric MINIMUM
    The smallest value in the bucket. `HealthAggregationStyle.DISCRETE` types.

  - ### MAXIMUM

    public static final AggregateMetric MAXIMUM
    The largest value in the bucket. `HealthAggregationStyle.DISCRETE` types.

  - ### COUNT

    public static final AggregateMetric COUNT
    How many samples fell in the bucket. Meaningful for every type.

  - ### DURATION

    public static final AggregateMetric DURATION
    The total time covered by samples in the bucket, in milliseconds. Meaningful for every type; the natural metric for sessions.

  - ### LATEST

    public static final AggregateMetric LATEST
    The most recent value in the bucket. `HealthAggregationStyle.DISCRETE` types.

- ## Method Details

  - ### values

    public static AggregateMetric[] values()
    Returns an array containing the constants of this enum type, in the order they are declared.
    Returns:
      an array containing the constants of this enum type, in the order they are declared

  - ### valueOf

    public static AggregateMetric valueOf(String name)
    Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum type has no constant with the specified name
      `NullPointerException` - if the argument is null