HCNUM-TC DEFINITIONS ::= BEGIN

IMPORTS
  MODULE-IDENTITY, mib-2, Counter64
      FROM SNMPv2-SMI
  TEXTUAL-CONVENTION
      FROM SNMPv2-TC;

hcnumTC MODULE-IDENTITY
  LAST-UPDATED "200006080000Z"
  ORGANIZATION "IETF OPS Area"
  CONTACT-INFO
        "        E-mail: mibs@ops.ietf.org
                 Subscribe: majordomo@psg.com
                   with msg body: subscribe mibs

                 Andy Bierman
                 Cisco Systems Inc.
                 170 West Tasman Drive
                 San Jose, CA 95134 USA
                 +1 408-527-3711
                 abierman@cisco.com

                 Keith McCloghrie
                 Cisco Systems Inc.
                 170 West Tasman Drive
                 San Jose, CA 95134 USA
                 +1 408-526-5260
                 kzm@cisco.com

                 Randy Presuhn
                 BMC Software, Inc.
                 Office 1-3141
                 2141 North First Street
                 San Jose,  California 95131 USA
                 +1 408 546-1006
                 rpresuhn@bmc.com"
  DESCRIPTION
        "A MIB module containing textual conventions
         for high capacity data types. This module
         addresses an immediate need for data types not directly
         supported in the SMIv2. This short-term solution
         is meant to be deprecated as a long-term solution
         is deployed."
  REVISION        "200006080000Z"
  DESCRIPTION
        "Initial Version of the High Capacity Numbers
         MIB module, published as RFC 2856."
  ::= { mib-2 78 }

CounterBasedGauge64 ::= TEXTUAL-CONVENTION
  STATUS       current
  DESCRIPTION
        "The CounterBasedGauge64 type represents a non-negative
        integer, which may increase or decrease, but shall never
        exceed a maximum value, nor fall below a minimum value. The
        maximum value can not be greater than 2^64-1
        (18446744073709551615 decimal), and the minimum value can
        not be smaller than 0.  The value of a CounterBasedGauge64
        has its maximum value whenever the information being modeled
        is greater than or equal to its maximum value, and has its
        minimum value whenever the information being modeled is
        smaller than or equal to its minimum value.  If the
        information being modeled subsequently decreases below
        (increases above) the maximum (minimum) value, the
        CounterBasedGauge64 also decreases (increases).

        Note that this TC is not strictly supported in SMIv2,
        because the 'always increasing' and 'counter wrap' semantics
        associated with the Counter64 base type are not preserved.
        It is possible that management applications which rely
        solely upon the (Counter64) ASN.1 tag to determine object
        semantics will mistakenly operate upon objects of this type
        as they would for Counter64 objects.

        This textual convention represents a limited and short-term
        solution, and may be deprecated as a long term solution is
        defined and deployed to replace it."
  SYNTAX Counter64


ZeroBasedCounter64 ::= TEXTUAL-CONVENTION
  STATUS current
  DESCRIPTION
        "This TC describes an object which counts events with the
        following semantics: objects of this type will be set to
        zero(0) on creation and will thereafter count appropriate
        events, wrapping back to zero(0) when the value 2^64 is
        reached.

        Provided that an application discovers the new object within
        the minimum time to wrap it can use the initial value as a
        delta since it last polled the table of which this object is
        part.  It is important for a management station to be aware
        of this minimum time and the actual time between polls, and
        to discard data if the actual time is too long or there is
        no defined minimum time.

        Typically this TC is used in tables where the INDEX space is
        constantly changing and/or the TimeFilter mechanism is in
        use.

        Note that this textual convention does not retain all the
        semantics of the Counter64 base type. Specifically, a
        Counter64 has an arbitrary initial value, but objects
        defined with this TC are required to start at the value
        zero.  This behavior is not likely to have any adverse
        effects on management applications which are expecting
        Counter64 semantics.

        This textual convention represents a limited and short-term
        solution, and may be deprecated as a long term solution is
        defined and deployed to replace it."
  SYNTAX Counter64

END
