POWERFANS-MIB DEFINITIONS ::= BEGIN

IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Counter32, Gauge32,
    Integer32, TimeTicks, Counter64,
    NOTIFICATION-TYPE,
    enterprises                      FROM SNMPv2-SMI
    mgmt, NetworkAddress, IpAddress, Counter, Gauge
    FROM RFC1155-SMI
    TRAP-TYPE              FROM RFC-1215;

    zte OBJECT IDENTIFIER ::= { enterprises 3902 }
    zxr10 OBJECT IDENTIFIER ::= { zte 3}

FanStatus ::= INTEGER
{
    fan-online(0),
    fan-offline(1)
}   

PowerStatus ::= INTEGER
{
    power-work(0),
    power-online(1),
    power-offline(2)
}   


--  textual conventions

DisplayString ::= OCTET STRING
--  This data type is used to model textual information taken
--  from the NVT ASCII character set.  By convention, objects
--  with this syntax are declared as having
--
--       SIZE (0..255)



zxr10systemconfig OBJECT IDENTIFIER ::= { zxr10 1 }
enviorment OBJECT IDENTIFIER ::= { zxr10 200 }
-- temperature  OBJECT IDENTIFIER ::= { enviorment 3 }

fanTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF FanEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "the description of fans infomation
        "
    ::= { enviorment 1 }

fanEntry  OBJECT-TYPE
    SYNTAX  FanEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "A fans entry containing objects that
        descript the fans infomation."
    INDEX  { fanNo }
    ::= { fanTable 1 }

FanEntry ::=
    SEQUENCE {
        fanNo
            INTEGER,
        fanStat
            FanStatus,
        fanRotateSpeed
            INTEGER
    }

fanNo   OBJECT-TYPE
    SYNTAX  INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
    "The no. of the fan."
    ::= { fanEntry 1 }

fanStat  OBJECT-TYPE
    SYNTAX  FanStatus
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "The status of fan"
::= { fanEntry 2 }

fanRotateSpeed  OBJECT-TYPE
        SYNTAX   INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "the Rotate Speed of fan"
        ::= { fanEntry 3 }  

powerTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF PowerEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
    "the description of power infomation
    "
    ::= { enviorment  2 }

powerEntry  OBJECT-TYPE
    SYNTAX  PowerEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
    "A power entry containing objects that
    descript the power infomation."
    INDEX  { powerNo }
    ::= { powerTable 1 }

PowerEntry ::=
    SEQUENCE {
        powerNo
            INTEGER,
        powerStat
            PowerStatus,
        powerTemperature
            INTEGER
    }

powerNo     OBJECT-TYPE
    SYNTAX  INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "The no. of the power."
    ::= { powerEntry 1 }

powerStat  OBJECT-TYPE
    SYNTAX  PowerStatus
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "The status of the power"
    ::= { powerEntry 2 }

powerTemperature  OBJECT-TYPE
        SYNTAX   INTEGER
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Power Temperature"
        ::= { powerEntry 3 }

-- systemTemperature OBJECT-TYPE
--     SYNTAX INTEGER
--     MAX-ACCESS read-only
--     STATUS  current
--     DESCRIPTION
--         "The system temperatrue"
--    ::= { temperature 1 }   
        
END
