NEWTEC-MPEENCAPS-MIB DEFINITIONS ::= BEGIN

IMPORTS
    Unsigned32,
    MODULE-IDENTITY,
    OBJECT-IDENTITY,
    OBJECT-TYPE
        FROM SNMPv2-SMI

    MODULE-COMPLIANCE,
    OBJECT-GROUP
        FROM SNMPv2-CONF
    
    NtcEnable
        FROM NEWTEC-TC-MIB

    DisplayString,
    MacAddress
        FROM SNMPv2-TC

    ntcFunction
        FROM NEWTEC-MAIN-MIB;


--
--  Module Identification
--

ntcMpeEncaps   MODULE-IDENTITY
    LAST-UPDATED "201707101200Z"
    ORGANIZATION "Newtec Cy"
    CONTACT-INFO
        "Newtec Cy
         Postal: Newtec Cy
                 Laarstraat 5
                 B-9100 Sint-Niklaas
                 Belgium

                Tel: +32 3 780 65 00
                Fax: +32 3 780 65 49
                Web: www.newtec.be
                E-mail: techsupport@newtec.be"
    DESCRIPTION
        "Newtec modular MPEENCAPS input MIB containing definitions for MPE
        Encapsulation functionality."

    REVISION  "201707101200Z"
    DESCRIPTION
        "Descriptions updated with regex"
    REVISION  "201303271000Z"
    DESCRIPTION
        "Release for M6100 R1.3"
    REVISION  "201206281200Z"
    DESCRIPTION
        "Release for M6100 R1.2"
    ::= { ntcFunction  1900 }
    

--
-- Top-Level Structure
--

-- ntcMpeEncaps content

ntcMpeEncObjects                 OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Container holding ntcMpeEncObjects definitions."
    ::= { ntcMpeEncaps 1 }
    
ntcMpeEncConformance             OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Conformance requirements."
    ::= { ntcMpeEncaps 2 }
    
-- ntcMpeEncConformance content

ntcMpeEncConfCompliance          OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Device compliance statements."
    ::= { ntcMpeEncConformance 1 }
    
ntcMpeEncConfGroup               OBJECT-IDENTITY
    STATUS        current
    DESCRIPTION   "Groups used by device compliance statements."
    ::= { ntcMpeEncConformance 2 }
    

--
-- Managed Objects
--

ntcMpeEncEnable                  OBJECT-TYPE
    SYNTAX      NtcEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Enable or disable the MPE encapsulator functionality."
    DEFVAL { off }
    ::= { ntcMpeEncObjects 1 }
    
ntcMpeEncDataPid                 OBJECT-TYPE
    SYNTAX      Unsigned32 (32..8190)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The MPEG2 TS Packet Identifier (PID) used for the MPE encapsulated data."
    DEFVAL { 3000 }
    ::= { ntcMpeEncObjects 2 }
    
ntcMpeEncSignEnable              OBJECT-TYPE
    SYNTAX      NtcEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Enable or disable the MPE PSI-SI insertion."
    DEFVAL { off }
    ::= { ntcMpeEncObjects 3 }
    
ntcMpeEncSignProgramNumber       OBJECT-TYPE
    SYNTAX      Unsigned32 (0..65535)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The MPE program number used in the PAT signalling table to find the necesary
        information of the MPE service."
    DEFVAL { 1 }
    ::= { ntcMpeEncObjects 4 }
    
ntcMpeEncSignPmtPid              OBJECT-TYPE
    SYNTAX      Unsigned32 (32..8190)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The MPEG2 TS Packet Identifier (PID) used for the MPE specific PMT signalling."
    DEFVAL { 4000 }
    ::= { ntcMpeEncObjects 5 }
    
ntcMpeEncChannelsTable           OBJECT-TYPE
    SYNTAX      SEQUENCE OF NtcMpeEncChannelsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table containing the ntcMpeEncChannels"
    ::= { ntcMpeEncObjects 6 }

ntcMpeEncChannelsEntry           OBJECT-TYPE
    SYNTAX      NtcMpeEncChannelsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A conceptual row of the ntcMpeEncChannelsTable."
    INDEX   { ntcMpeEncChannelsInx  }
    ::= { ntcMpeEncChannelsTable 1 }

NtcMpeEncChannelsEntry           ::= SEQUENCE {
    ntcMpeEncChannelsInx    Unsigned32,
    ntcMpeChanName          DisplayString,
    ntcMpeChanEnable        NtcEnable,
    ntcMpeChanMacAddr       MacAddress
    }
    
ntcMpeEncChannelsInx             OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The index of the channel (temporary until we have dynamic tables)"
    ::= { ntcMpeEncChannelsEntry 1 }
    
ntcMpeChanName                   OBJECT-TYPE
    SYNTAX      DisplayString (SIZE(0..100))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The name of the channel"
    DEFVAL { "" }
    ::= { ntcMpeEncChannelsEntry 2 }
    
ntcMpeChanEnable                 OBJECT-TYPE
    SYNTAX      NtcEnable
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Enable or disable the corresponding destination channel."
    DEFVAL { off }
    ::= { ntcMpeEncChannelsEntry 3 }
    
ntcMpeChanMacAddr                OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Mac address of the destination channel. Regular expression :
        (?-mix:^([\da-fA-F]{2}:){5}[\da-fA-F]{2}$)"
    DEFVAL { "00:00:00:00:00:00" }
    ::= { ntcMpeEncChannelsEntry 4 }
    

--
--  Module Conformance
--

ntcMpeEncConfGrpV1Standard       OBJECT-GROUP
    OBJECTS    {
                   ntcMpeEncEnable,
                   ntcMpeEncDataPid,
                   ntcMpeEncSignEnable,
                   ntcMpeEncSignProgramNumber,
                   ntcMpeEncSignPmtPid,
                   ntcMpeChanName,
                   ntcMpeChanEnable,
                   ntcMpeChanMacAddr
               }
    STATUS      current
    DESCRIPTION
        "Managed objects that constitute version 1 of a system device with standard capabilities."
    ::= { ntcMpeEncConfGroup 1}
    
ntcMpeEncConfCompV1Standard      MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "Compliance statement for Newtec device MIB implementations."
    MODULE  -- this module
    MANDATORY-GROUPS
                  {
                      ntcMpeEncConfGrpV1Standard
                  }
    ::= { ntcMpeEncConfCompliance  1 }
    

END
