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

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

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


feedPtpPmMIB MODULE-IDENTITY
    LAST-UPDATED  "201310080000Z"
    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      "201310080000Z" 
    DESCRIPTION
        "First Version"
    ::= { perfMon 46 }


feedPtpPmTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF FeedPtpPmEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A list of FeedPtpPm entries. Each entry is uniquely identified by the value of ifIndex."
    ::= { feedPtpPmMIB 2 } 

feedPtpPmEntry  OBJECT-TYPE
    SYNTAX      FeedPtpPmEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A FeedPtp entry containing historical performance information pertaining to Infinera .
        This table is a subclass of IfCommon. Entries will exist in this table only for interfaces
        of type ."
    INDEX { ifIndex, feedPtpPmSampleDuration, feedPtpPmTimestamp}
    ::= { feedPtpPmTable 1 }


FeedPtpPmEntry  ::= SEQUENCE {
   feedPtpPmTimestamp                Integer32,
   feedPtpPmSampleDuration           INTEGER,
   feedPtpPmValidity                 TruthValue,
   feedPtpPmInputVoltageMin          FloatHundredths,
   feedPtpPmInputVoltageMax          FloatHundredths,
   feedPtpPmInputVoltageAve          FloatHundredths,
   feedPtpPmInputCurrentMin          FloatHundredths,
   feedPtpPmInputCurrentMax          FloatHundredths,
   feedPtpPmInputCurrentAve          FloatHundredths
}
feedPtpPmTimestamp 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."
    ::= { feedPtpPmEntry  1 }


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


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

feedPtpPmInputVoltageMin OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmEntry 4 }

feedPtpPmInputVoltageMax OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmEntry 5 }

feedPtpPmInputVoltageAve OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmEntry 6 }

feedPtpPmInputCurrentMin OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmEntry 7 }

feedPtpPmInputCurrentMax OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmEntry 8 }

feedPtpPmInputCurrentAve OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmEntry 9 }

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

feedPtpPmRealEntry  OBJECT-TYPE
    SYNTAX      FeedPtpPmRealEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A  feedPtp entry containing real-time performance information pertaining to Infinera
         feedPtp interfaces. This table is a subclass of IfCommon."
    INDEX { ifIndex }
    ::= { feedPtpPmRealTable 1 }


FeedPtpPmRealEntry  ::= SEQUENCE {
    feedPtpPmRealInputVoltage     FloatHundredths,
    feedPtpPmRealInputCurrent     FloatHundredths
}

feedPtpPmRealInputVoltage OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmRealEntry 1 }

feedPtpPmRealInputCurrent OBJECT-TYPE
    SYNTAX      FloatHundredths
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { feedPtpPmRealEntry 2 }


-- Conformance Statements
feedPtpPmConformance    OBJECT IDENTIFIER ::= { feedPtpPmMIB 3 }
feedPtpPmCompliances    OBJECT IDENTIFIER ::= { feedPtpPmConformance 1 }
feedPtpPmGroups         OBJECT IDENTIFIER ::= { feedPtpPmConformance 2 }

feedPtpPmCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the  feedPtp-MIB"
    MODULE
        MANDATORY-GROUPS { feedPtpPmGroup }
    ::= { feedPtpPmCompliances 1 }

feedPtpPmRealCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the FeedPtpPmReal-MIB"
    MODULE
        MANDATORY-GROUPS { feedPtpPmRealGroup }
    ::= { feedPtpPmCompliances 2 }

feedPtpPmGroup OBJECT-GROUP
    OBJECTS {
        feedPtpPmValidity,     
        feedPtpPmInputVoltageMin, 
        feedPtpPmInputVoltageMax, 
        feedPtpPmInputVoltageAve,
        feedPtpPmInputCurrentMin, 
        feedPtpPmInputCurrentMax, 
        feedPtpPmInputCurrentAve 
    }
    STATUS current
    DESCRIPTION
        " A collection of objects for reading the historical performance of the  feedPtp."
    ::= { feedPtpPmGroups 1 }

feedPtpPmRealGroup OBJECT-GROUP
    OBJECTS {
        feedPtpPmRealInputVoltage,
        feedPtpPmRealInputCurrent
    }
    STATUS current
    DESCRIPTION
        " A collection of objects for reading the real-time performance of the  feedPtp."
    ::= { feedPtpPmGroups 2 }

END


