-- *****************************************************************
-- INFINERA-PM-CMMOCGPTP-MIB
-- Copyright (c) 2008-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-PM-CMMOCGPTP-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32                                   FROM SNMPv2-SMI
    MODULE-COMPLIANCE, OBJECT-GROUP             FROM SNMPv2-CONF
    TruthValue                                  FROM SNMPv2-TC
    ifIndex                                     FROM IF-MIB
    FloatHundredths                             FROM INFINERA-TC-MIB
    perfMon                                     FROM INFINERA-REG-MIB;


cmmOcgPtpPmMIB MODULE-IDENTITY
    LAST-UPDATED  "201105230000Z"
    ORGANIZATION  "Infinera"
    CONTACT-INFO
        "Infinera
        1322 Bordeaux Drive
        Sunnyvale, CA - 94089

        Contact : Technical Support
        Email   : support@infinera.com
        Phone   : 1-877-INF-5288"
    DESCRIPTION
        " "
    REVISION      "201105230000Z" 
    DESCRIPTION
        "First Version"
    ::= { perfMon 25 }



cmmOcgPtpPmTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CmmOcgPtpPmEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A list of CmmOcgPtpPm entries. Each entry is uniquely identified by the value of ifIndex, Sample Duration and cmmOcgPtpPmTimestamp."
    ::= { cmmOcgPtpPmMIB 2 } 

cmmOcgPtpPmEntry  OBJECT-TYPE
    SYNTAX      CmmOcgPtpPmEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A CmmOcgPtp entry containing historical performance information pertaining to Infinera CMM OCG PTP interfaces.
        This table is a subclass of IfCommon. Entries will exist in this table only for interfaces
        of type CMM OCG PTP.
        Each interface may have a number of entries in this table, each with a different combination of timestamp
        and sample duration."
    INDEX { ifIndex, cmmOcgPtpPmSampleDuration, cmmOcgPtpPmTimestamp }
    ::= { cmmOcgPtpPmTable 1 }


CmmOcgPtpPmEntry  ::= SEQUENCE {
    cmmOcgPtpPmTimestamp        Integer32,
    cmmOcgPtpPmSampleDuration   INTEGER,
    cmmOcgPtpPmValidity         TruthValue,
    cmmOcgPtpPmCmmOcgOptMin     FloatHundredths,
    cmmOcgPtpPmCmmOcgOptMax     FloatHundredths,
    cmmOcgPtpPmCmmOcgOptAve     FloatHundredths ,
    cmmOcgPtpPmCmmOcgOprMin     FloatHundredths,
    cmmOcgPtpPmCmmOcgOprMax     FloatHundredths,
    cmmOcgPtpPmCmmOcgOprAve     FloatHundredths,
    cmmOcgPtpPmCmmEdfaLbcTxMin     FloatHundredths,
    cmmOcgPtpPmCmmEdfaLbcTxMax     FloatHundredths,
    cmmOcgPtpPmCmmEdfaLbcTxAve     FloatHundredths 
}

cmmOcgPtpPmTimestamp OBJECT-TYPE
    SYNTAX      Integer32 (0..2147483647)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "End Time stamp for this interval. If this time is later than the current time,
        then the data for this bucket is currently being collected."
    ::= { cmmOcgPtpPmEntry  1 }


cmmOcgPtpPmSampleDuration OBJECT-TYPE
    SYNTAX      INTEGER {
                    fifteenMinutes(1),
                    day(2)
                }
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The duration of this sample."
    ::= { cmmOcgPtpPmEntry  2 }


cmmOcgPtpPmValidity OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Flag indicating if data was valid for the entire interval"
    ::= { cmmOcgPtpPmEntry  3 }


cmmOcgPtpPmCmmOcgOptMin OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Minimum OCG optical power leaving the CMM towards its attached LM-80 ."
    ::= { cmmOcgPtpPmEntry  4 }


cmmOcgPtpPmCmmOcgOptMax OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum OCG optical power leaving the CMM towards its attached LM-80"
    ::= { cmmOcgPtpPmEntry  5 }


cmmOcgPtpPmCmmOcgOptAve OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Average OCG optical power leaving the CMM towards its attached LM-80."
    ::= { cmmOcgPtpPmEntry  6 }

 cmmOcgPtpPmCmmOcgOprMin OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Minimum OCG optical power arriving at CMM from the attached LM-80 ."
    ::= { cmmOcgPtpPmEntry  7 }


 cmmOcgPtpPmCmmOcgOprMax OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum OCG optical power arriving at CMM from the attached LM-80. "
    ::= { cmmOcgPtpPmEntry  8 }


cmmOcgPtpPmCmmOcgOprAve OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Average OCG optical power arriving at CMM from the attached LM-80 ."
    ::= { cmmOcgPtpPmEntry  9 }

cmmOcgPtpPmCmmEdfaLbcTxMin OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Minimum EDFA Laser Bias Current."
    ::= { cmmOcgPtpPmEntry  10 }


cmmOcgPtpPmCmmEdfaLbcTxMax OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Maximum EDFA Laser Bias Current."
    ::= { cmmOcgPtpPmEntry  11 }


cmmOcgPtpPmCmmEdfaLbcTxAve OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Average EDFA Laser Bias Current."
    ::= { cmmOcgPtpPmEntry  12 }




cmmOcgPtpPmRealTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CmmOcgPtpPmRealEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A list of CmmOcgPtpPmReal entries. Each entry is uniquely identified by the value of ifIndex."
    ::= { cmmOcgPtpPmMIB 1 } 

cmmOcgPtpPmRealEntry  OBJECT-TYPE
    SYNTAX      CmmOcgPtpPmRealEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A CmmOcgPtp entry containing real-time performance information pertaining to Infinera
        CMM OCG PTP interfaces. This table is a subclass of IfCommon. Entries will exist in this
        table only for interfaces of type CMM OCG PTP."
    INDEX { ifIndex }
    ::= { cmmOcgPtpPmRealTable 1 }


CmmOcgPtpPmRealEntry  ::= SEQUENCE {
    cmmOcgPtpPmRealCmmOcgOpt               FloatHundredths,
    cmmOcgPtpPmRealCmmOcgOpr               FloatHundredths,
    cmmOcgPtpPmRealCmmEdfaLbcTx               FloatHundredths
}

cmmOcgPtpPmRealCmmOcgOpt OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Total OCG optical power leaving the CMM towards its attached LM-80. One attribute for each OCG."
    ::= { cmmOcgPtpPmRealEntry  1 }


cmmOcgPtpPmRealCmmOcgOpr OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Total OCG optical power arriving at the CMM from the local LM-80. One attribute for each OCG."
    ::= { cmmOcgPtpPmRealEntry  2 }

    cmmOcgPtpPmRealCmmEdfaLbcTx OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION "Edfa Laser Bias Current. One attribute for each OCG."
    ::= { cmmOcgPtpPmRealEntry  3 }

-- Conformance Statements
cmmOcgPtpPmConformance    OBJECT IDENTIFIER ::= { cmmOcgPtpPmMIB 3 }
cmmOcgPtpPmCompliances    OBJECT IDENTIFIER ::= { cmmOcgPtpPmConformance 1 }
cmmOcgPtpPmGroups         OBJECT IDENTIFIER ::= { cmmOcgPtpPmConformance 2 }


cmmOcgPtpPmCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the CMMOCGPTP-MIB"
    MODULE
        MANDATORY-GROUPS { cmmOcgPtpPmGroup }
    ::= { cmmOcgPtpPmCompliances 1 }

cmmOcgPtpPmRealCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the cmmOcgPtpPmReal-MIB"
    MODULE
        MANDATORY-GROUPS { cmmOcgPtpPmRealGroup }
    ::= { cmmOcgPtpPmCompliances 2 }

cmmOcgPtpPmGroup OBJECT-GROUP
    OBJECTS {
        cmmOcgPtpPmValidity,
        cmmOcgPtpPmCmmOcgOptMin,
        cmmOcgPtpPmCmmOcgOptMax,
        cmmOcgPtpPmCmmOcgOptAve,
        cmmOcgPtpPmCmmOcgOprMin,
        cmmOcgPtpPmCmmOcgOprMax,
        cmmOcgPtpPmCmmOcgOprAve,
        cmmOcgPtpPmCmmEdfaLbcTxMin,
        cmmOcgPtpPmCmmEdfaLbcTxMax,
        cmmOcgPtpPmCmmEdfaLbcTxAve
        }
    STATUS current
    DESCRIPTION
        " A collection of objects for reading the historical performance of the cmmOcgPtp."
    ::= { cmmOcgPtpPmGroups 1 }

cmmOcgPtpPmRealGroup OBJECT-GROUP
    OBJECTS {
        cmmOcgPtpPmRealCmmOcgOpt,
        cmmOcgPtpPmRealCmmOcgOpr,
        cmmOcgPtpPmRealCmmEdfaLbcTx
    }
    STATUS current
    DESCRIPTION
        " A collection of objects for reading the real-time performance of the cmmOcgPtp."
    ::= { cmmOcgPtpPmGroups 2 }


END
