-- *****************************************************************
-- INFINERA-TP-DWCTP-MIB
-- Copyright (c) 2013-2014 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-TP-DWCTP-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE                FROM SNMPv2-SMI
    MODULE-COMPLIANCE, OBJECT-GROUP             FROM SNMPv2-CONF
    Unsigned32                                  FROM SNMPv2-SMI
    DisplayString                               FROM SNMPv2-TC
    ifIndex                                     FROM IF-MIB
    terminationPoint                            FROM INFINERA-REG-MIB
    FloatArbitraryPrecision                     FROM INFINERA-TC-MIB;

dwCtpMIB MODULE-IDENTITY
    LAST-UPDATED  "201701130000Z"
    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  "201701130000Z"
    DESCRIPTION
        "First Version"
    ::= { terminationPoint 64 }

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

dwCtpEntry  OBJECT-TYPE
    SYNTAX      DwCtpEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A DigitalWrapperCTP entry containing information pertaining to Infinera DigitalWrapperCTP Interfaces.
        This table is a subclass of IfCommon. Entries will exist in this table only for
        interfaces of type DigitalWrapper CTP."
    INDEX { ifIndex }
    ::= { dwCtpTable 1 }

DwCtpEntry  ::= SEQUENCE {
    dwCtpMoID                  DisplayString,
    dwCtpCarrierCtpList        DisplayString,
    dwCtpTxTTI                 DisplayString,
    dwCtpExpTTI                DisplayString,
    dwCtpRxTTI                 DisplayString,
    dwCtpTotalBW               Unsigned32,
    dwCtpPropagationDelay      FloatArbitraryPrecision,
    dwCtpOprCarrierCtpList     DisplayString
}

dwCtpMoID  OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION ""
    ::= { dwCtpEntry 1 }

dwCtpCarrierCtpList OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 2 }

dwCtpTxTTI    OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 3 }

dwCtpExpTTI    OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 4 }

dwCtpRxTTI    OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 5 }

dwCtpTotalBW    OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 6 }

dwCtpPropagationDelay    OBJECT-TYPE
    SYNTAX      FloatArbitraryPrecision
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 7 }

dwCtpOprCarrierCtpList OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { dwCtpEntry 8 }

-- Conformance Statements
dwCtpConformance       OBJECT IDENTIFIER ::= { dwCtpMIB 3 }
dwCtpCompliances       OBJECT IDENTIFIER ::= { dwCtpConformance 1 }
dwCtpGroups            OBJECT IDENTIFIER ::= { dwCtpConformance 2 }

dwCtpCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the TP-DW-CTP"
    MODULE
        MANDATORY-GROUPS { dwCtpGroup }
    ::= { dwCtpCompliances 1 }

dwCtpGroup OBJECT-GROUP
    OBJECTS {
        dwCtpMoID,
        dwCtpCarrierCtpList,
        dwCtpTxTTI,
        dwCtpExpTTI,
        dwCtpRxTTI,
        dwCtpTotalBW,
        dwCtpPropagationDelay,
        dwCtpOprCarrierCtpList
    }
    STATUS current
    DESCRIPTION
        " A collection of objects for reading the digitalWrapperCTP TP."
    ::= { dwCtpGroups 1 }

END
