You are here:

MonitorTools.com > Technical documentation > SNMP > MIB > Cisco > CISCO-WIRELESS-IF-MIB
ActiveXperts Network Monitor 2019##AdminFavorites

CISCO-WIRELESS-IF-MIB by vendor Cisco

CISCO-WIRELESS-IF-MIB file content

The SNMP protocol is used to for conveying information and commands between agents and managing entities. SNMP uses the User Datagram Protocol (UDP) as the transport protocol for passing data between managers and agents. The reasons for using UDP for SNMP are, firstly it has low overheads in comparison to TCP, which uses a 3-way hand shake for connection. Secondly, in congested networks, SNMP over TCP is a bad idea because TCP in order to maintain reliability will flood the network with retransmissions.

Management information (MIB) is represented as a collection of managed objects. These objects together form a virtual information base called MIB. An agent may implement many MIBs, but all agents must implement a particular MIB called MIB-II [16]. This standard defines variables for things such as interface statistics (interface speeds, MTU, octets sent, octets received, etc.) as well as various other things pertaining to the system itself (system location, system contact, etc.). The main goal of MIB-II is to provide general TCP/IP management information.

Use ActiveXperts Network Monitor 2019 to import vendor-specific MIB files, inclusing CISCO-WIRELESS-IF-MIB.


Vendor: Cisco
Mib: CISCO-WIRELESS-IF-MIB  [download]  [view objects]
Tool: ActiveXperts Network Monitor 2019 [download]    (ships with advanced SNMP/MIB tools)
-- ****************************************************************************
-- CISCO-WIRELESS-IF-MIB.my:  Cisco Wireless Radio Point to Point MIB.
--
-- January 2000, Joseph L Raja
--
-- Copyright (c) 1998-2000 by Cisco Systems, Inc.
-- All rights reserved.
-- 
-- ****************************************************************************
--
-- ****************************************************************************
--
-- 
-- I. Relationship of the Cisco Wireless Radio IF MIB to Interfaces MIB
-- ====================================================================
--  
-- One instance of the ifEntry exists for each wireless interface.
-- The ifType of each such interface will be propWirelessP2P(157). 
--
-- If (at least) one IP address is active on an interface with this
-- ifType without the use of any intervening (multiplexing) sub-layer,
-- then it will appear in exactly two ifStackTable entries: i.e.,
-- for an ifType=propWirelessP2P(157) interface with ifIndex 'x', the
-- ifStackTable will contain:
--
--         ifStackStatus.0.x=active
--         ifStackStatus.x.0=active
--
-- 
-- The ifTestTable and ifRcvAddressTable are  not supported by this ifType.
--  
--   
-- II. ifEntry for the Wireless MAC Layer
--  
-- The ifEntry for the wireless MAC Layer supports the following groups in 
-- the Interfaces MIB :
-- a. ifGeneralInformationGroup
-- b. ifHCPacketGroup
--
-- For all those objects where the behavior is as defined in the Interfaces
-- MIB, refer to Interfaces MIB for description. 
-- Special conditions or exceptions are explicitly documented here.
-- 
-- IfTable Attribute        Comments
-- =================        ===============================================
-- 
--
-- ifType,                 The IANA value of propWirelessP2P(157).
--  
-- ifMtu,                  Return 1500.
--  
-- ifSpeed,                Current configured bandwidth.  It can be
--			   1.5Mbits/sec to 12Mbits/sec.
--
-- ifPhysAddress,          Return 0 length octet string.
--  
-- ifAdminStatus,          The administrative status of this interface.
--  
-- ifOperStatus,           The current operational status of the wireless MAC
--                         layer interface.
--  
-- ifLastChange,           Refer to the Interfaces MIB.
--  
-- ifInMulticastPkts,      Returns 0.
--  
-- ifInBroadcastPkts,      Returns 0.
--  
-- ifOutMulticastPkts,     Returns 0.
--  
-- ifOutBroadcastPkts,     Returns 0.
--
-- ifHCInMulticastPkts,    Not supported.
--  
-- ifHCInBroadcastPkts,    Not supported.
--
-- ifHCOutMulticastPkts,   Not supported.
--  
-- ifHCOutBroadcastPkts,   Not supported.
-- 
-- 
--
--
-- 1.0 Glossary
-- 
-- The following terms are used in the MIB definitions below. 
--
-- Radio Interface: The interface that provides the wireless communication 
--                  features.
-- Radio Link:      The bi-directional wireless link that exists between two
--	            communicating radio.
-- Radio PHY:       Represents the transmission characteristics of the Radio 
--                  Link. 
-- RF Unit:         The Radio Frequency components and the associated antennas.
--
-- ARQ:             Automatic Repeat Query.
-- 
-- 
-- 2.0 Cisco Wireless MIB Organization
-- 
-- The Cisco Wireless Radio IF MIB provides the following management groups :
-- 
-- o.  Radio Base Group
--		 	This group contains common information about a radio
-- 			interface . It provides facilities to configure 
-- 			attributes such as self-test, acquisition mode, etc. 
--			It includes configuration information used to set up
--			a radio link.
--
-- o.  Radio PHY Quality Group
-- 			This group provides facilities to control/tune the
--			transmission and reception quality of the Radio Link.
--			The quality of the Radio Link is measured using the
--			metrics defined in radio Radio Link metrics group.
--
-- o.  Radio Frequency Resource Group
-- 			This contains information about the Radio frequency
-- 			transmission and reception resources available on the
-- 			system. This group determines the portions of the
-- 			radio spectrum at which the radio subsystem can
-- 			operate.
-- 			This group in conjunction with the radio PHY group
-- 			determine the acutal spectrum that gets used for
-- 			communications.
--
--
-- o.  Radio Link Metrics Group
-- 			This group contains metrics to measure the quality of
-- 			radio Link. This includes metrics such as total
--                      received codeword errors, resync count, errored
--			seconds etc.
-- 
-- o.  Radio Signal Group	
-- 			This group contains information about the radio
--                      signal(s) that were received or attributes of the radio
--                      signals computed from received signals.
-- 			This group models the real-time data that is collected.
-- 			
-- 			The key characteristics are:
-- 			1. The amount of information captured in these parameters
-- 			   is large and cannot be modeled as single values.
-- 
-- 			2. They represent real-time information, which cannot be
-- 			   polled for as well. 
-- 
-- 			3. Hardware captures this information.
-- 
-- 			All the radio signal characteristics are modeled in
-- 			three ways:
-- 			1. Histogram
--			2. Timelines
-- 			3. Snapshots
-- 
-- 			For management purposes radio signal characteristics
--			are made accessible via:
--			1. History Group
--			2. Timeline Group
--			3. Snapshot Group
--			These groups are described below.
-- 
-- o.  History Group 
-- 			This group contains information about the radio system 
-- 			characteristics which are inherently modeled as
--			historgrams.
-- 			Certain characteristics of the radio system may be
--			captured as histograms by the hardware.
-- 			The user may configure these histograms as needed.
-- 
-- 			It exists for the following reasons:
-- 			
-- 			1. The amount of information contained in these
--			   parameters is large and cannot be modeled as single
--			   values. 
-- 
-- 			2. They represent real-time information, which cannot be
-- 			   polled for as well. 
-- 
-- 			3. Key signal processing information cannot be captured
--			   by normal SNMP (say 1 sec poll interval) monitoring.
-- 
-- 			4. Hardware captures this information as histograms.
-- 
-- 			5. In wireless environments this is key information that
-- 			   can be captured for fault and performance management.
--
-- o.  Timeline Group
-- 			This group contains information about how raw radio
-- 			signal characteristics that may be captured.
--                      Timelines are normally associated with a threshold
--                      defined in the threshold group.
--
-- o.  Threshold Group	This provides provides facilities to define thresholds
--                      on the raw signal attributes that are processed by the
--                      hardware. Normally thresholds are used in conjunction
--                      with Timelines to capture specific radio signal
--                      behavior.
--
-- o.  Snapshot Group   This group provides facilities that may be
--			used to capture multiple radio signal attributes
--			keyed to a single user initiated trigger. Simultaneous
--			capture of multiple real-time attributes keyed to
--			a single trigger provides indepth information about
--			the behavior of the system.
--   
-- o.  Test Group	This provides facilities to establish loopback at
--			various points in the hardware for diagnostic
--			purposes.
-- 
-- o.  Antenna Group    This group provides information about the antenna 
--                      resources installed and available for use.
--
-- o.  Trap Group	It provides the list of traps that the wireless system
--                      will generate.
--
--
--
--  
-- 3.0   MIB Definitions
-- 
-- 

CISCO-WIRELESS-IF-MIB DEFINITIONS ::= BEGIN


	IMPORTS
	MODULE-IDENTITY, OBJECT-TYPE,
	Counter32, Integer32, Gauge32, Counter64,
	NOTIFICATION-TYPE
		FROM SNMPv2-SMI
	DisplayString, RowStatus, TruthValue,
	TimeInterval
		FROM SNMPv2-TC
	MODULE-COMPLIANCE, OBJECT-GROUP
		FROM SNMPv2-CONF
        ifIndex, OwnerString
		FROM IF-MIB
	CwrRFZeroIndex, CwrCwErrorFreeSecond,
	CwrCwErroredSecond, CwrCwSeverelyErroredSecond,
	CwrCwConsecutiveSevErrSecond, CwrCwDegradedSecond,
	CwrCwDegradedMinute, CwrCollectionAction,
	CwrCollectionStatus, CwrThreshLimitType,
	CwrRadioSignalAttribute, CwrOscState,
        WirelessGauge64
		FROM CISCO-WIRELESS-TC-MIB
	ciscoMgmt
		FROM CISCO-SMI
	Unsigned32
		FROM CISCO-TC;

	ciscoWirelessIfMIB MODULE-IDENTITY
           LAST-UPDATED "200025211500Z"
           ORGANIZATION "Cisco Systems Inc."
           CONTACT-INFO
	   "	Cisco Systems
		Customer Service

	   Postal: 170 W Tasman Drive
		   San Jose, CA  95134
		   USA

		   Tel: +1 800 553-NETS
	           E-mail: wireless-nms@cisco.com"
            DESCRIPTION
	        "This is the MIB Module for the Cisco Wireless Radio 
                 Point to Point interface specification."
        ::= { ciscoMgmt 136}

--
-- The Cisco Wireless Radio MIB Tree
-- 

cwrRadioMibObjects	OBJECT IDENTIFIER ::= { ciscoWirelessIfMIB 1 }
cwrRadioNotification	OBJECT IDENTIFIER ::= { ciscoWirelessIfMIB 2 }

cwrRadioInternal        OBJECT IDENTIFIER ::= { cwrRadioMibObjects 1 }
cwrRadioCommon		OBJECT IDENTIFIER ::= { cwrRadioMibObjects 2 }
cwrRadioBaseGroup	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 3 }
cwrRadioPhyQualityGroup	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 4 }
cwrRadioFreqResGroup	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 5 }
cwrRadioMetricsGroup	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 6 }
cwrRadioHistoryGroup  	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 7 }
cwrRadioTimelineGroup  	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 8 }
cwrRadioSnapshotGroup  	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 9 }
cwrRadioAntennaGroup  	OBJECT IDENTIFIER ::= { cwrRadioMibObjects 10 }

cwrRadioLatestTrap 	OBJECT IDENTIFIER ::= { cwrRadioNotification 1 }
cwrRadioDevTraps 	OBJECT IDENTIFIER ::= { cwrRadioNotification 2 }
cwrRadioThreshTraps 	OBJECT IDENTIFIER ::= { cwrRadioNotification 3 }


--
--  Radio Indices.
--
cwrRadioNextIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object should be used to generate unique indices when creating
        rows in the cwrRadioHistoryGroup, cwrRadioTimelineGroup, and the 
        cwrRadioSnapshotGroup. Every GET request will generate a new index.
	The index will not be unique across power cycles of the router."
        ::= { cwrRadioCommon 1 }

--
--	The Radio Base Group 
--
--	The RadioBaseTable represents the set of radio communication interfaces
--	and their configuration available on this system. 
--	It contains information that is common to the radio interface.
-- 

cwrRadioBaseTable OBJECT-TYPE
       SYNTAX  SEQUENCE OF CwrRadioBaseEntry
       MAX-ACCESS  not-accessible
       STATUS current
       DESCRIPTION
       "This table contains information about the radio common to both the
       transmit and receive sides."
       ::= { cwrRadioBaseGroup 1 }

cwrRadioBaseEntry OBJECT-TYPE
        SYNTAX    CwrRadioBaseEntry
        MAX-ACCESS    not-accessible
        STATUS    current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157).

        Each of these entries are indexed by the value of ifIndex as defined
	in RFC2233."
        INDEX { ifIndex }
        ::= { cwrRadioBaseTable 1 }

CwrRadioBaseEntry ::= SEQUENCE {
        cwrAcquisitionMode      INTEGER,
        cwrSelfTest             INTEGER, 
        cwrBasePrivacySupport   TruthValue,
        cwrTxRfIndex            CwrRFZeroIndex,
        cwrRx1RfIndex           CwrRFZeroIndex,
        cwrRx2RfIndex           CwrRFZeroIndex,
	cwrClockRefExt		TruthValue,
	cwrAntAlignment		TruthValue
        }

cwrAcquisitionMode  OBJECT-TYPE
        SYNTAX  INTEGER {
		master(1),
		slave(2)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies whether the radio should act as the
        master or as the slave. The slave radio tracks the master's frequency."
        ::= { cwrRadioBaseEntry 2 }

cwrSelfTest  OBJECT-TYPE
        SYNTAX INTEGER {
		off(1),
		once(2), 
		always(3) 
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the whether self test should be
	executed and if so whether to do it every time the radio link is
	started. Any changes made to this object will reflected the next time
	the radio link is started.

	off(1) - Self test never performed.
	once(2) - Self test will be performed the next time the radio link is
		  started.
	always(3) - Every time the radio link is started."
        ::= { cwrRadioBaseEntry 3 }

cwrBasePrivacySupport OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies whether the Baseline Privacy feature is
	available for use on this radio interface. If true then privacy is
	supported."
        ::= { cwrRadioBaseEntry 4 }

cwrTxRfIndex  OBJECT-TYPE
        SYNTAX CwrRFZeroIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies the index into the cwrRfTable identifying the
        antenna used for transmission. This index will be 0 if the associated
        transmit antenna is not present."
        ::= { cwrRadioBaseEntry 5 }

cwrRx1RfIndex  OBJECT-TYPE
        SYNTAX CwrRFZeroIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies the index of the first receive antenna identified
	by the cwrRfTable. This index will be 0 if the associated receive
	antenna is not present."
        ::= { cwrRadioBaseEntry 6 }

cwrRx2RfIndex  OBJECT-TYPE
        SYNTAX CwrRFZeroIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies the index of the second receive antenna in the
        cwrRfTable. This index will be 0 if the associated receive
        antenna is not present."
        ::= { cwrRadioBaseEntry 7 }

cwrClockRefExt OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "When this object is set to true(1), the wireless radio uses a
        10MHz external reference clock." 
        ::= { cwrRadioBaseEntry 8 }

cwrAntAlignment OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"For normal operation this should be set to false(2). If it set
	true(1), then the radio link is placed in antenna alignment mode.
	In this mode control signals are sent to the RF
	resource which enables the operator to monitor the signal
	received strength at the RF resource. This is mainly used
	for antenna steering i.e. positioning the antenna for the best
	possible signal reception.
	If set to true(1), the radio link's response to rapid changes
	in signal strength may potentially be affected."
        ::= { cwrRadioBaseEntry 9 }

--
--	The RadioPhyTable provides facilities to configure the physical
--	layer characteristics of the radio link.
-- 

cwrRadioPhyTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrRadioPhyEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about the currently configured
	physical layer.  These configuration paramters must match the 
        corresponding configuration parameter at the remote end for
        the wireless link to be established."
        ::= { cwrRadioBaseGroup 2 }

cwrRadioPhyEntry OBJECT-TYPE
        SYNTAX    CwrRadioPhyEntry
        MAX-ACCESS    not-accessible
        STATUS    current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157).

        Each of these entries are indexed by the value of ifIndex as defined 
        in RFC2233."
        INDEX     { ifIndex }
        ::= { cwrRadioPhyTable 1 }

CwrRadioPhyEntry ::= SEQUENCE {
	cwrNumRxAntenna		INTEGER,
        cwrBandwidth            INTEGER,
        cwrThroughput           INTEGER,
        cwrOperatingBand        INTEGER,
        cwrTxFrequency          INTEGER,
        cwrRxFrequency          INTEGER,
        cwrTxPower              INTEGER,
        cwrCableLoss            INTEGER,
	cwrOpStatus		INTEGER,
        cwrCableLossDiversity   INTEGER,
        cwrBurstSize            INTEGER
        }

cwrNumRxAntenna OBJECT-TYPE
        SYNTAX INTEGER (1..2)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the number of antennas to be used to receive 
        the wireless transmissions."
        ::= { cwrRadioPhyEntry 1 }

cwrBandwidth OBJECT-TYPE
        SYNTAX INTEGER (0..500000000)
        UNITS "Hz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the bandwidth to use.  Given bandwidth, the 
	actual throughput of the radio link is determined by the 
	cwrThroughput setting."
        ::= { cwrRadioPhyEntry 2 }

cwrThroughput OBJECT-TYPE
        SYNTAX INTEGER {
		 high(1),
		 medium(2),
		 low(3)
		 }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This represents an throughput expected of the identified radio link.
	There are 3 possible settings. The settings provide a tradeoff between
	bandwidth and the reliability of the radio link. The settings are:
        high(1): For a high throughput. The radio hardware will be
	         configured such that it, favors throughput over error
	         correction. It  may not be able to correct all received errors.
        medium(2): This is a balance between high and low.
        low(3): The radio hardware is configured such that it trades off
	        throughput for latency and error correction. It tries its very
                best to correct errors it detects."
        ::= { cwrRadioPhyEntry 3 }

cwrOperatingBand OBJECT-TYPE
        SYNTAX INTEGER {
		bandUNII(1),
		bandMMDS(2),
		bandOther(3)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object represents the portion of the frequency spectrum in which
        the radio PHY will operate.
	bandUNII(1) - The U-NII (Unlicensed National Information Infrastructure)
		      band represents the frequency range 5725.25 to 
		      5823.75 MHz.
	bandMMDS(2) - The MMDS (Multichannel Multipoint Distribution Service)
		      band represents the frequency range 2150.75 to
		      2688.25 MHz.
	bandOther(3)- For all other frequenciy ranges."
        ::= { cwrRadioPhyEntry 4 }

cwrTxFrequency OBJECT-TYPE
        SYNTAX INTEGER (0..6000000)
	UNITS "10Khz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object represents the center frequency that will be used to
	transmit data over the radio PHY. The specified transmit frequency must
	match the operating band and the capability of the RF resource connected
	to the radio."
        ::= { cwrRadioPhyEntry 5 }

cwrRxFrequency OBJECT-TYPE
        SYNTAX INTEGER (0..6000000)
	UNITS "10Khz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object represents the center frequency that will be used to
        receive transmissions over the radio PHY. The specified receive
        frequency must match the operating band and the capability of the
        RF resource connected to the radio. The transmit frequency at
        the local end must be identical to the receive frequency at the remote
        end for a wireless link	to be established."
        ::= { cwrRadioPhyEntry 6 }

cwrTxPower OBJECT-TYPE
        SYNTAX INTEGER (-80..50)
	UNITS "dBm - decibel milliwatts"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object represents the power that the antenna will transmit.
	The minimum average transmit power for the U-NII or MMDS band is
	0.01 microwatts	(-80 dBm). Maximum average transmit power:
        For the MMDS band is 2 Watts i.e. (+33dBm). 
	For the U-NII band is 100 milliwatts i.e. (+20dBm).
        The power is specified in dBm."
        ::= { cwrRadioPhyEntry 7 }

cwrCableLoss OBJECT-TYPE
        SYNTAX INTEGER (0..50)
	UNITS "dB - decibel"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object represents the measured loss in signal power in dB that is
        imposed by the cable connecting the radio to the antenna head.
        This value enables the hardware to compensate for the cable loss by
        adjusting the gain appropriately.
	A value of 0 represents no degradation in signal due to the cable.
	This cable loss applies to the transmit antenna identified by
	cwrTxRfIndex."
        ::= { cwrRadioPhyEntry 8 }

cwrOpStatus OBJECT-TYPE
        SYNTAX INTEGER {
		notOperational(1),
		selftest(2),
		download(3),
		txOnly(4),
		acquiring(5),
		receiveUp(6),
		transmitUp(7),
		linkOperational(8)
		}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This represents the current state of a radio Link.

	notOperational(1): The link is not operational.
	selftest(2) : Power on self test in progress
	download(3): Image download is in progress.
	txOnly(4): The radio link will switch to this state if
		   the radio link is configured for transmit only.
	acquiring(5): Attempting to sync up with the far end transmitter.
	receiveUp(6):  The receive side of the radio link has successfully
		      sync'ed up with remote end.
	transmitUp(7): Transmit side of the radio link is up and running.
	linkOperational(8): The radio link is ready for duplex communication."
	::= { cwrRadioPhyEntry 9 }

cwrCableLossDiversity OBJECT-TYPE
        SYNTAX INTEGER (0..50)
	UNITS "dB - decibel"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object represents the measured loss in signal power in dB that is
        imposed by the cable connecting the radio to the antenna head.
        This value enables the hardware to compensate for the cable loss by
        adjusting the gain appropriately.
	A value of 0 represents no degradation in signal due to the cable.
	This cable loss applies to the receive antenna identified by
	cwrRxRf2Index."
        ::= { cwrRadioPhyEntry 10 }

cwrBurstSize OBJECT-TYPE
        SYNTAX INTEGER {
                small(1),
                medium(2),
                large(3)
               }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object defines the time duration of the data burst sent over the 
        air.  The burst size is dependant on the capability of the ODU which 
        is represented by the cwrBurstSizeGroup variable in the cwrRfTable.
        The user must set this object based on the value of cwrBurstSizeGroup in
        the cwrRfTable.  

        The approximate time duration for each of the burst sizes are:
        small(1):  50 microseconds
        medium(2): 100 microseconds
        large(3):  200 microseconds"
        ::= { cwrRadioPhyEntry 11 }

--
--	The Radio PHY Quality Group
--
--      The PhyQualityTable provides facilities to control the quality of the
--      wireless link i.e. the physical link. The radio PHY layer must be
--      shutdown before any changes may be made to this table.
-- 

cwrPhyQualityTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrPhyQualityEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about the radio PHY quality control
	parameters. Note that the parameters in this table are automatically
	determined by the parameters configured in the cwrRadioPhyTable.
	These parameters may further be used to tune the characteristics when
	needed."
        ::= { cwrRadioPhyQualityGroup 1 }
        
cwrPhyQualityEntry OBJECT-TYPE
        SYNTAX CwrPhyQualityEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157).
 
        Each of these entries are indexed by the value of ifIndex as defined
        in RFC2233."
        INDEX  { ifIndex }
        ::= { cwrPhyQualityTable 1 }

CwrPhyQualityEntry ::= SEQUENCE {
	cwrArqPctBw			INTEGER,
	cwrArqVoiceLatency		Integer32,
	cwrArqDataLatency		Integer32,
	cwrArqBurstSize			Integer32,
	cwrArqTypicalBitRate		Integer32,
	cwrArqMinBitRate		Integer32,
	cwrArqMaxLatencyJitter		Integer32,
	cwrArqReset			TruthValue,
	cwrArqOn			TruthValue
        }

cwrArqPctBw  OBJECT-TYPE
        SYNTAX INTEGER (1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the percentage of the total radio PHY bandwidth
        available to the ARQ engine. Some or all of this allocated bandwidth is
	used to when detected errors are corrected. The percentage will be
	approximated to the closest value supported by the ARQ engine."
        ::= { cwrPhyQualityEntry 1 }

cwrArqVoiceLatency  OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "milliseconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the latency value for voice data."
        ::= { cwrPhyQualityEntry 2 }

cwrArqDataLatency  OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "milliseconds"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the expected latency values for data.
	Reducing the latency, provides the ARQ engine less time to correct
	codeword errors. So if latency is reduced sufficiently, the data
	throughput will get effected.
	Also note that the latency values on both ends of the link should
	be kept identical, else the data throughput will be effected."
        ::= { cwrPhyQualityEntry 3 }

cwrArqBurstSize  OBJECT-TYPE
        SYNTAX Integer32 (1..63)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the maximum number of consecutive ARQ codewords
	that will be transmitted. ARQ codewords are transmitted for error
	correction. When an ARQ codeword is transmitted, a data	codeword
	cannot be transmitted in that time slot, resulting jitter on the
	received data stream.
	Lower the value of the burst size, lower the peak jitter values."
        ::= { cwrPhyQualityEntry 4 }

cwrArqTypicalBitRate  OBJECT-TYPE
        SYNTAX Integer32 (0..45000000)
	UNITS "bits/sec"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies the typical error free bit rate that is possible
	on this	link given the current configuration as specified in the
	cwrRadioPhyTable. If the radio channel is excessively noisy then the
	bit rate will be lower than this value"
        ::= { cwrPhyQualityEntry 5 }

cwrArqMinBitRate  OBJECT-TYPE
        SYNTAX Integer32 (0..45000000)
	UNITS "bits/sec"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies the minimum error free bit rate that is supported
	on this	link given the current configuration as specified in the
	cwrRadioPhyTable and the settings in this table."
        ::= { cwrPhyQualityEntry 6 }

cwrArqMaxLatencyJitter  OBJECT-TYPE
        SYNTAX Integer32 (1..22000)
	UNITS "microseconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object specifies the maximum latency jitter introduced by the ARQ
	engine, based on the settings defined in this table."
        ::= { cwrPhyQualityEntry 7 }

cwrArqReset  OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object when set to true will force the PHY quality
	parameters to be reset from the cwrRadioPhyTable.
	Reading this object will always return false. This is useful
	when arbitrary changes to the ARQ parameters have to be reset
	to known consistent valid values." 
        ::= { cwrPhyQualityEntry 8 }

cwrArqOn  OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object when set to true will enable the Automatic Repeat Query
        subsystem. Disabling the ARQ subsystem disables a major error
	correction mechanism of the radio, due to which an operating
	radio PHY may suffer large performance degradation."
        ::= { cwrPhyQualityEntry 9 }

--
--      The Corrected Byte Errors Table
--
--	This table provides information on the number of consecutive 
--	byte errors detected and corrected by the ARQ engine.
--	The ARQ engine can correct up to 9 consecutive byte errors.
--      This table provides details on the byte error correction
--	distribution over time. 
-- 

cwrPhyCorrectedBytesTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrPhyCorrectedBytesEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This provides information on the number of byte 
	detected and corrected by the ARQ engine.
	The ARQ engine can correct up to 9 consecutive byte errors.
	This table keeps a count of the number of byte errors corrected
	over time.
	The values in this table are cumulated from link power up."
        ::= { cwrRadioPhyQualityGroup 2 }

cwrPhyCorrectedBytesEntry OBJECT-TYPE
        SYNTAX CwrPhyCorrectedBytesEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157).
 
        Each of these entries are indexed by the value of ifIndex as defined
        in RFC2233."
        INDEX  { ifIndex }
        ::= { cwrPhyCorrectedBytesTable 1 }

CwrPhyCorrectedBytesEntry ::= SEQUENCE {
	cwrArq1ByteErrs			Counter64,
	cwrArq2ByteErrs			Counter64,
	cwrArq3ByteErrs			Counter64,
	cwrArq4ByteErrs			Counter64,
	cwrArq5ByteErrs			Counter64,
	cwrArq6ByteErrs			Counter64,
	cwrArq7ByteErrs			Counter64,
	cwrArq8ByteErrs			Counter64,
	cwrArq9ByteErrs			Counter64
        }

cwrArq1ByteErrs  OBJECT-TYPE
        SYNTAX Counter64 
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of 1 byte errors that were corrected
	since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 1 }

cwrArq2ByteErrs  OBJECT-TYPE
        SYNTAX  Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 2 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 2 }

cwrArq3ByteErrs  OBJECT-TYPE
        SYNTAX  Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 3 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 3 }

cwrArq4ByteErrs  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 4 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 4 }

cwrArq5ByteErrs  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 5 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 5 }

cwrArq6ByteErrs  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 6 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 6 }

cwrArq7ByteErrs  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 7 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 7 }

cwrArq8ByteErrs  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 8 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 8 }

cwrArq9ByteErrs  OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object identifies the number of consecutive 9 byte errors that
	were corrected since the the radio link reached linkOperational state."
        ::= { cwrPhyCorrectedBytesEntry 9 }



--
--	The Radio Frequency Resource Group.
--
--      The RF Table. This table contains information about the state of the
--	Radio frequency	resources being used by this radio link.
-- 

cwrRfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrRfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about the state of the radio frequency
	resources used by the radio link."
        ::= { cwrRadioFreqResGroup 1 }

cwrRfEntry OBJECT-TYPE
        SYNTAX CwrRfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrRfTable. This table is largely
	a read only table which provides details on the state of radio
	frequency resources available on the system. 
	Physically each RF resource may be realized by one antenna
	and its associated control hardware. A single antenna and its 
        associated electronics may act as more than 1 RF resource.
	
	When an RF resource acts as both a transmit and receive resource, the
	transmit and receive frequency ranges may overlap.
	
	It is indexed by the ifIndex and cwrRfIndex."
        INDEX { ifIndex, cwrRfIndex }
        ::= { cwrRfTable 1 }

CwrRfEntry ::= SEQUENCE {
	cwrRfIndex		        Integer32,
	cwrRfResIndex			Integer32,
	cwrRFOpMode                     INTEGER,
	cwrTxFreqRangeMin	        INTEGER,
	cwrTxFreqRangeMax	        INTEGER,
	cwrRxFreqRangeMin	        INTEGER,
	cwrRxFreqRangeMax	        INTEGER,
	cwrMinTxPower                   Integer32,
        cwrMaxTxPower                   Integer32,
	cwrRfTxOscState		        CwrOscState,
	cwrRfAntIndex		        Integer32,
	cwrRfRxOscState		        CwrOscState,
	cwrRfTemperature		Integer32,
	cwrRfSupplyVoltageState		INTEGER,
	cwrRfStatus			INTEGER,
	cwrRfControlChannelStatus	INTEGER,
	cwrBurstSizeGroup               OCTET STRING 
        }

cwrRfIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object, along with ifIndex,  represents the index of this entry 
        in the cwrRfTable."
        ::= { cwrRfEntry 1 }

cwrRfResIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the index into CwrRfEntityTable. This index
	identifies the radio frequency resource."
        REFERENCE
        " Refer to CwrRfEntityTable in CISCO-WIRELESS-EXP-MIB"
        ::= { cwrRfEntry 2 }

cwrRFOpMode OBJECT-TYPE
        SYNTAX INTEGER {
                 rxOnly(0),
                 txOnly(1),
                 rxAndTx(2)
               }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object indicates if this RF resource is being used to either
	receive, transmit, or both."
        ::= { cwrRfEntry 3 }

cwrTxFreqRangeMin OBJECT-TYPE
        SYNTAX INTEGER (215000..582500)
	UNITS "10 kHz"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the minimum frequency at which this RF resource
	can transmit."
        ::= { cwrRfEntry 4 }

cwrTxFreqRangeMax OBJECT-TYPE
        SYNTAX INTEGER (215000..582500)
	UNITS "10 kHz"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the maximum frequency at which this RF resource
	can transmit."
        ::= { cwrRfEntry 5 }

cwrRxFreqRangeMin OBJECT-TYPE
        SYNTAX INTEGER (215000..582500)
	UNITS "10 kHz"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the lowest transmission frequency this RF
	resource can receive. "
        ::= { cwrRfEntry 6 }

cwrRxFreqRangeMax OBJECT-TYPE
        SYNTAX INTEGER (215000..582500)
	UNITS "10 kHz"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the highest transmission frequency that this
	RF resource can receive."
        ::= { cwrRfEntry 7 }

cwrMinTxPower OBJECT-TYPE
        SYNTAX Integer32 (-80..33)
	UNITS "dBm Decibel milliwatts"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object represents the minimum power that the RF subsystem
	can supply the antenna. "
        ::= { cwrRfEntry 8 }

cwrMaxTxPower OBJECT-TYPE
        SYNTAX Integer32 (-80..33)
	UNITS "dBm Decibel milliwatts"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object represents the maximum power that the RF subsystem can
	supply the antenna."
        ::= { cwrRfEntry 9 }

cwrRfTxOscState OBJECT-TYPE
        SYNTAX CwrOscState
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the state of the transmit oscillator. The
	oscillator must be in oscillatorOk(1) state for the system to function
	properly."
        ::= { cwrRfEntry 10 }

cwrRfAntIndex OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the index into the cwrAntennaTable. This
	object may be 0 if the cwrAntennaTable is not available."
        ::= { cwrRfEntry 11 }

cwrRfRxOscState OBJECT-TYPE
        SYNTAX CwrOscState
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the state of the receive oscillator. The
	oscillator must be in oscillatorOk(1) state for the system to function
	properly."
        ::= { cwrRfEntry 12 }

cwrRfTemperature OBJECT-TYPE
        SYNTAX Integer32 (-40..100)
	UNITS "Degrees Centigrade"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object represents the current temperature of the RF unit."
        ::= { cwrRfEntry 13 }

cwrRfSupplyVoltageState OBJECT-TYPE
        SYNTAX INTEGER {
		withinSpecification(1),
		outsideSpecification(2)
		}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object specifies whether the voltage supply to the RF unit is
	within specifications or not."
        ::= { cwrRfEntry 14 }

cwrRfStatus OBJECT-TYPE
        SYNTAX INTEGER {
		online(1),
		offline(2)
		}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object specifies whether the RF resource is functioning properly
	or not. If it is functioning properly then it will be online(1),
	else offline(2)." 
        ::= { cwrRfEntry 15 }

cwrRfControlChannelStatus OBJECT-TYPE
        SYNTAX INTEGER {
		ok(1),
		notOk(2)
		}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"Each RF resource has an associated control channel.
	The control channel is used to send/receive control information to the
	RF resource. For the RF resouce to operate properly, the control
	channel must be established. 
	This object indicates the status of the control channel
	ok(1)    - RF resource may be controlled successfully
	notOk(2) - Cannot talk to the RF resource."
        ::= { cwrRfEntry 16 }

cwrBurstSizeGroup OBJECT-TYPE
--        SYNTAX BITS{
--                 small(0),
--                 medium(1),
--                 large(2)
--               }
        SYNTAX OCTET STRING(SIZE(2))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object indicates the range or burst sizes supported by the ODU.  
        This information is read from the ODU EEPROM.  The user may set the
        cwrBurstSize MIB object in the cwrRadioPhyTable based on the value
        of this object."
        ::= { cwrRfEntry 17 }

--
--      The Intermediate Frequency Resource table. This table contains
--      information about the Intermediate Frequency subsystem on the wireless
--      radio.
-- 

cwrIntFreqTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrIntFreqEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about the state of the intermediate
	frequency subsystem on the wireless radio."
        ::= { cwrRadioFreqResGroup 2 }

cwrIntFreqEntry OBJECT-TYPE
        SYNTAX CwrIntFreqEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrIntFreqTable. 
	This table is largely a read only table which provides details
	on the state of the intermediate frequency subsystem available on the
	wireless radio." 
        INDEX { ifIndex }
        ::= { cwrIntFreqTable 1 }

CwrIntFreqEntry ::= SEQUENCE {
	cwrIfTxOscState		        CwrOscState,
	cwrIfRxOscState		        CwrOscState,
	cwrIfRefOscState	        CwrOscState,
	cwrIfResIndex			Integer32,
	cwrIfInpFreq		        Integer32,
        cwrIfOutFreq		        Integer32
        }

cwrIfTxOscState OBJECT-TYPE
        SYNTAX CwrOscState
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the state of the IF transmit oscillator. The
	oscillator must be in oscillatorOk(1) state for the system to function
	properly."
        ::= { cwrIntFreqEntry 1 }

cwrIfRxOscState OBJECT-TYPE
        SYNTAX CwrOscState
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the state of the IF receive oscillator. The
	oscillator must be in oscillatorOk(1) state for the system to function
	properly."
        ::= { cwrIntFreqEntry 2 }

cwrIfRefOscState OBJECT-TYPE
        SYNTAX CwrOscState
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the state of the IF reference oscillator. The
	oscillator must be in oscillatorOk(1) state for the system to function
	properly."
        ::= { cwrIntFreqEntry 3 }

cwrIfResIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the index into CwrIntFreqEntityTable.
	It identifies the intermediate frequency resource."
        REFERENCE
        " Refer to CwrIntFreqEntityTable in CISCO-WIRELESS-EXP-MIB"
        ::= { cwrIntFreqEntry 4 }

cwrIfInpFreq OBJECT-TYPE
        SYNTAX Integer32 (100..10000)
	UNITS "10 kHz"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object represents the IF input frequency."
        ::= { cwrIntFreqEntry  5 }

cwrIfOutFreq OBJECT-TYPE
        SYNTAX Integer32 (20000..50000)
	UNITS "10 kHz"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "This object represents the IF output frequency."
        ::= { cwrIntFreqEntry 6 }


--
--	The Radio Link Metrics Group
--

--
-- The Link Metrics Group contains information about the quality of the
-- radio link identified by the ifIndex. 
--
-- The the diagram below may be used cross refer to the definitions.
-- (Note the diagram is just an example):
--
--
--  Link Admin-Up                                               Link Admin-Down
--  |<===================== Link Admin Up Secs ======================>|
--  |                                                                 |
--  |                                                                 |
--  V=================================================================V
--  |<=Sync Loss Secs=>|<=====EFS========>|<=========ES==============>|
--                     |                  |<=Errs=>|<==DS==>|<==SES==>|
--                     |<======== Avail Secs ==============>|
--
--
-- Definitions:
--
-- Link Admin Up Seconds :
--	Interval in seconds, between the time the link was
--      administratively configured up and when it was
--      administratively configured down. It is equal to:
--	Available Seconds + Unavailable Seconds.
--
-- An Operational Second :
--	Is defined to be 1 second during which the ends of a radio link are
--	synchronized and ready for duplex communication.
--	At this point effective communication may not be possible due to 
--      unacceptably high errors on the link.
--
-- An Operational Hour :
--	Is 3600 operational seconds.
--
-- Post ARQ Codeword Error:
--	Also referred to as codeword error in this MIB.
--	A codeword with errors in it, that could NOT be corrected at all.
--      A codeword that cannot be corrected is dropped so reducing the
--      total data throughput.
--
-- Sync Loss Seconds:
--	The duration in seconds after the link was configured administratively
--	up but the two ends of the link were not synchronized.
--
-- Error Free Second (CwrCwErrorFreeSecond):
--      An Codeword Error Free Second (EFS) is defined as 1 second when the
--	radio link was synchronized and no codeword errors detected on
--	the link.
--
-- Errored Second (CwrCwErroredSecond):
--      A Codeword Errored Second (ES) is defined as 1 second when the radio
--	link was synchronized and 1 or more codeword errors were detected on the
--	link.
-- 
-- Degraded Second (CwrCwDegradedSecond):
--      A Codeword Degraded Second (DS) is defined as a 1 second interval
--	during which the number of codeword errors was between
--	cwrLinkLowCwErrThresh and cwrLinkHighCwErrThresh.
--
-- Degraded Minute (CwrCwDegradedMinute):
--      A Codeword Degraded Minute (DM) is defined as a 60 Codeword Degraded
--	Seconds.
-- 
-- Severely Errored Second (CwrCwSeverelyErroredSecond):
--      A Codeword Severely Errored Second (SES) is defined as 1 second when
--	the radio link was synchronized and the number of codeword errors
--	received was greater than the threshold specified by
--	cwrLinkHighCwErrThresh.
--
-- Consecutively Severely Errored Second (CwrCwConsecutiveSevErrSecond):
--      A Codeword Consecutively Severely Errored Seconds (CSES) is defined as
--	the metric that measures the number of times a sequence of Codeword
--	Severely Errored Seconds(SES) crosses the cwrLinkCSESThresh value.
--	It is independent of the length of the SES sequence.
--	In other words this counter is incremented by one and only one
--	for every such occurrence.
--	This metric measures the stability of the link i.e. if this count
--	is high, it implies that the link is oscillating between
--	usable v/s unusable extremes.
--
-- An Available second:
--	Is defined to be 1 second during which the link was available for
--	data transmission. It is equal to:
--	Error Free Seconds + Errored Seconds - Severely Errored Seconds.
--
-- Unavailable Seconds:
--	Represent the number of seconds that the user wanted the link to be
--	availble but was not. It is equal to:
--	Severely Errored Seconds + Sync Loss Seconds.
--
--
-- This group contains the following groups of information:
--
--	o) Link Metric Thresholds. This table provides facilities to establish
--         thresholds that control the collection of the link metrics.
--
--      o) Cumulative link metrics. This table provides cumulative metrics
--         about the link since the last reboot of the radio interface.
--
--	o) 24 Hour Metrics. This includes cumulative values of the metrics for
--         every 24 hours (day) for a duration of atleast 32 days.
--	   The information in table is identical to the information in the
--	   1 Hour Metrics except that the data has been aggregated over
--	   24 hours.
--
--	o) 1 Hour Metrics. This includes cumulative values of the metrics for
--         every hour for a duration of atleast 24 hours. The information in
--         table is identical to the information in the 1 Minute Metrics except
--         that the data has been aggregated over 1 hour.
--
--      o) 1 Minute Metrics. This includes cumulative values of the metrics
--         for every minute for the atleast 60 minutes.
--
--      o) 1 Second Metrics. This table includes updates received from
--         hardware over the last 1 second. This contains hardware reported
--         information cumulated over 1 second.
--

--
--   Link Metric Thresholds
--

cwrLinkMetricsThresholdTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrLinkMetricsThreshEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains threshold values that are the trigger points for
	controlling the collection of the Link Metrics such as Codeword Errored
	Seconds	and others."
        ::= { cwrRadioMetricsGroup 1 }

cwrLinkMetricsThreshEntry OBJECT-TYPE
        SYNTAX CwrLinkMetricsThreshEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157).
 
        Each of these entries are indexed by the value of ifIndex as defined
        in RFC2233."
        INDEX  { ifIndex }
        ::= { cwrLinkMetricsThresholdTable 1 }

CwrLinkMetricsThreshEntry ::= SEQUENCE {
	cwrLinkCwESThresh     	        Unsigned32,
	cwrLinkLowCwDSThresh     	Unsigned32,
	cwrLinkHighCwDSThresh		Unsigned32,
	cwrLinkCSESThresh		Unsigned32,
	cwrLink1HrESAlarmThresh		Unsigned32,
	cwrLink1HrSESAlarmThresh	Unsigned32,
	cwrLink1HrCSESAlarmThresh	Unsigned32,
	cwrLink1HrDCMAlarmThresh	Unsigned32,
	cwrLink24HrESAlarmThresh	Unsigned32,
	cwrLink24HrSESAlarmThresh	Unsigned32,
	cwrLink24HrCSESAlarmThresh	Unsigned32,
	cwrLink24HrDCMAlarmThresh	Unsigned32
	}

cwrLinkCwESThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "If the number of Codeword Errors detected in a duration of 1
	Operational second, is greater than this value then that second is
	counted as an Errored Second."
        ::= { cwrLinkMetricsThreshEntry 1 }

cwrLinkLowCwDSThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies low degraded second threshold. 
	When the number of codeword errors detected are greater or equal 
	than this value and less than cwrLinkHighCwDSThresh
	then that second is counted as a Codeword Degraded Second."
        ::= { cwrLinkMetricsThreshEntry 2 }

cwrLinkHighCwDSThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies high degraded second threshold. 
	When then number of codeword errors detected are greater than
	this value then that second is counted as a Codeword Severely Errored
	Second."
        ::= { cwrLinkMetricsThreshEntry 3 }

cwrLinkCSESThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "When the number of severely errored codewords detected consecutively
        in one second equals this threshold value, the second is counted
        as a Consecutively Severely Errored Second."
        ::= { cwrLinkMetricsThreshEntry 4 }

cwrLink1HrESAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Codeword Error Second threshold. 
	When the number of Codeword Error Seconds in a 1 Operational Hour
	period exceeds this limit cwrTrapLink1HrThresh trap will be generated.
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 5 }

cwrLink1HrSESAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Codeword Severely Errored Seconds
	threshold. When the number of Codeword Severely Errored Seconds in a
	1 Operational Hour period exceeds this limit cwrTrapLink1HrThresh trap
	will be	generated. Time measurement starts after the first operational
	second."
        ::= { cwrLinkMetricsThreshEntry 6 }

cwrLink1HrCSESAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Codeword Consecutively Severely
	Errored Seconds	threshold. When the number of Codeword Severely Errored
	Seconds in a 1 Operational Hour period exceeds this limit
	cwrTrapLink1HrThresh trap will be generated.
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 7 }

cwrLink1HrDCMAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Degraded Codeword Minute
	threshold. When the number of Degraded Codeword Minutes in a 1
	Operational Hour period exceeds this limit cwrTrapLink1HrThresh trap
	will be generated. 
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 8 }

cwrLink24HrESAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the 24 hour Codeword Error Second threshold. 
	When the number of Codeword Error Seconds in a 24 Operational Hour
	period exceeds this limit cwrTrapLink24HrThresh trap will be generated.
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 9 }

cwrLink24HrSESAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Codeword Severely Errored Seconds
	threshold. When the number of Codeword Severely Errored Seconds in a
	1 Operational Hour period exceeds this limit cwrTrapLink24HrThresh trap
	will be	generated. 
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 10 }

cwrLink24HrCSESAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Codeword Consecutively Severely 
	Errored Seconds	threshold. When the number of Codeword Severely Errored
	Seconds in a 1 Operational Hour period exceeds this limit
	cwrTrapLink24HrThresh trap will be generated.
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 11 }

cwrLink24HrDCMAlarmThresh OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "This object specifies the one hour Degraded Codeword Minute
	threshold. When the number of Degraded Codeword Minutes in a 1
	Operational Hour period exceeds this limit cwrTrapLink24HrThresh
	trap will be generated.
	Time measurement starts	after the first operational second."
        ::= { cwrLinkMetricsThreshEntry 12 }

--
--  Cumulative Link Metrics Table.
--  This table provides overall metrics on the performance of the link since
--  the last reboot of the radio interface.
--

cwrCumulativeMetricsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrCumulativeMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains metrics used to measure the quality of the radio
	link identified by the ifIndex. The metrics in this table are cumulated
	since the last time the system powered up."
        ::= { cwrRadioMetricsGroup 2 }

cwrCumulativeMetricsEntry OBJECT-TYPE
        SYNTAX CwrCumulativeMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157).
 
        Each of these entries are indexed by the value of ifIndex as defined
        in RFC2233."
        INDEX  { ifIndex }
        ::= { cwrCumulativeMetricsTable 1 }

CwrCumulativeMetricsEntry ::= SEQUENCE {
	cwrAvailableSeconds             Counter32,
	cwrUnAvailableSeconds           Counter32,
	cwrSyncLossSeconds              Counter32,
	cwrPctErrorFreeSeconds  	Gauge32,
	cwrPctErroredSeconds 		Gauge32,
	cwrPctSeverelyErroredSeconds 	Gauge32,
	cwrPctAvailSeconds		Gauge32,
	cwrPctCwDegradedMinutes 	Gauge32,
	cwrSyncSuccessCount		Counter32,
	cwrSyncFailureCount		Counter32,
	cwrManagedSyncLoss		Counter32,
	cwrAutomaticSyncLoss		Counter32,
	cwrLastSyncSuccessTime		TimeInterval,
	cwrLastSyncFailTime		TimeInterval,
	cwrEffectivePhyDataRate         Gauge32,
	cwrPctEffectivePhyDataRate      Gauge32
	}

cwrAvailableSeconds OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of Available Seconds cumulated
	since the link was powered up. It is equal to:
	Error Free Seconds + Errored Seconds - Severely Errored Seconds."
        ::= { cwrCumulativeMetricsEntry 1 }

cwrUnAvailableSeconds OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of seconds that the link was
	not available for use. It is equal to:
	Severely Errored Seconds + Sync Loss Seconds."
        ::= { cwrCumulativeMetricsEntry 2 }

cwrSyncLossSeconds OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of Link Admin Up Seconds during 
	which the radio link was out of sync with the remote end."
        ::= { cwrCumulativeMetricsEntry 3 }

cwrPctErrorFreeSeconds OBJECT-TYPE
        SYNTAX Gauge32(1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the ratio of cumulative Codeword Error Free
	Seconds (EFS) to Link Admin Up seconds, expressed as a percentage."
        ::= { cwrCumulativeMetricsEntry 4 }

cwrPctErroredSeconds OBJECT-TYPE
        SYNTAX Gauge32 (1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the ratio of cumulative Codeword Errored
	Seconds (ES) to Link Admin Up seconds, expressed as a percentage."
        ::= { cwrCumulativeMetricsEntry 5 }

cwrPctSeverelyErroredSeconds OBJECT-TYPE
        SYNTAX Gauge32 (1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the ratio of cumulative Codeword Severely
	Errored Seconds (SES) to Link Admin Up seconds, expressed as a 
        percentage."
        ::= { cwrCumulativeMetricsEntry 6 }

cwrPctAvailSeconds OBJECT-TYPE
        SYNTAX Gauge32 (1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the ratio of cumulative Available seconds to
	Link Admin Up seconds, expressed as a percentage."
        ::= { cwrCumulativeMetricsEntry 7 }

cwrPctCwDegradedMinutes OBJECT-TYPE
        SYNTAX Gauge32 (1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the ratio of cumulative Codeword Degraded
	Minutes to Link Admin Up seconds, expressed as a percentage."
        ::= { cwrCumulativeMetricsEntry 8 }

cwrSyncSuccessCount OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents number of times the radio link successfully
	synchronized with the far end."
        ::= { cwrCumulativeMetricsEntry 9 }

cwrSyncFailureCount OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents number of times the link attempted to
	synchronize with the far end but failed to."
        ::= { cwrCumulativeMetricsEntry 10 }

cwrManagedSyncLoss OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents number of times the radio link layer was
	shutdown by operator intervention or a higher layer protocol."
        ::= { cwrCumulativeMetricsEntry 11 }

cwrAutomaticSyncLoss OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents number of times the radio link was synchronized
	but lost synchronization with the remote end without manual or
	higher layer protocol layer intervention."
        ::= { cwrCumulativeMetricsEntry 12 }

cwrLastSyncSuccessTime OBJECT-TYPE
        SYNTAX TimeInterval
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents elapsed time since the radio link
	successfully synchronized with the remote end."
        ::= { cwrCumulativeMetricsEntry 13 }

cwrLastSyncFailTime OBJECT-TYPE
        SYNTAX TimeInterval
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents elapsed time since the radio link
	lost synchronization with the remote end."
        ::= { cwrCumulativeMetricsEntry 14 }

cwrEffectivePhyDataRate OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the effective data throughput of this link
	while the link was synchronized."
        ::= { cwrCumulativeMetricsEntry 15 }

cwrPctEffectivePhyDataRate OBJECT-TYPE
        SYNTAX Gauge32 (1..10000)
	UNITS "0.01 percent"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the ratio of total error free codewords received
	to the total codewords received as a percentage."
        ::= { cwrCumulativeMetricsEntry 16 }

--
--  Most Recent 24 Hour Link Metrics Table.
--
--  This table provides metrics on the performance of the link over the
--  the last 24 Operational Hours.
--

cwr24HrMetricsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF Cwr24HrMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains metrics collected over the duration of 24 hours.

	This table is updated once every day for 32 days.   Therefore, this
        table will have a maximum of 32 entries that provide cumulative status
	of the link, identified by ifIndex."
        ::= { cwrRadioMetricsGroup 3 }

cwr24HrMetricsEntry OBJECT-TYPE
        SYNTAX Cwr24HrMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwr24HrMetricsTable indexed by ifIndex
        and cwr24HrMetricsIndex.

	The first entry in the table (cwr24HrMetricsIndex = 1) represents the 
        chronologically oldest data available."
        INDEX  { ifIndex, cwr24HrMetricsIndex }
        ::= { cwr24HrMetricsTable 1 }

Cwr24HrMetricsEntry ::= SEQUENCE {
	cwr24HrMetricsIndex		Integer32,
	cwr24HrUpdateTime		Integer32,
	cwr24HrErrorFreeSeconds     	CwrCwErrorFreeSecond,
	cwr24HrErroredSeconds		CwrCwErroredSecond,
	cwr24HrSevErroredSeconds 	CwrCwSeverelyErroredSecond,
	cwr24HrConsecSvErrSeconds 	CwrCwConsecutiveSevErrSecond,
	cwr24HrDegradedMinutes 		CwrCwDegradedMinute,
	cwr24HrTotalErroredCodewords	WirelessGauge64,
	cwr24HrTotalCodewords		WirelessGauge64
	}

cwr24HrMetricsIndex OBJECT-TYPE
        SYNTAX Integer32 (1..32)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"Each entry represents the sum of the metrics from the previous 24 
        hour entry + the 24 hour period immdeiately prior to the most recent 
        update."
        ::= { cwr24HrMetricsEntry 1 }

cwr24HrUpdateTime OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents time in seconds since system power up at which
	time this entry was updated."
        ::= { cwr24HrMetricsEntry 2 }

cwr24HrErrorFreeSeconds OBJECT-TYPE
        SYNTAX CwrCwErrorFreeSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Error Free Seconds (EFS)
	detected since link power up, captured at cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 3 }

cwr24HrErroredSeconds OBJECT-TYPE
        SYNTAX CwrCwErroredSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of Codeword Error Seconds (ES)
	detected since link power up, captured at cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 4 }

cwr24HrSevErroredSeconds OBJECT-TYPE
        SYNTAX CwrCwSeverelyErroredSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of Codeword Severely Error Seconds
	(SES) detected since link power up, captured at cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 5 }

cwr24HrConsecSvErrSeconds OBJECT-TYPE
        SYNTAX CwrCwConsecutiveSevErrSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of Codeword Consecutively Severely
	Error Seconds (CSES) detected since link power up, captured at
	cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 6 }

cwr24HrDegradedMinutes OBJECT-TYPE
        SYNTAX CwrCwDegradedMinute
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of Codeword Degraded Minutes (DM)
	detected since link power up, captured at cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 7 }

cwr24HrTotalErroredCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the total number of errored codewords
	detected since link power up, captured at cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 8 }

cwr24HrTotalCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the total number of codewords
	received on this link since link power up, captured at
	cwr24HrUpdateTime."
        ::= { cwr24HrMetricsEntry 9 }

--
--   One Hour Link Metrics Table.
--

cwr1HrMetricsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF Cwr1HrMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION 
        "This table contains metrics collected over the duration of one hour.

	This table will have a maximum of 24 entries providing cumulative 
	status of the link, identified by ifIndex, over the past 24 hours.

	This table is updated once every hour."
        ::= { cwrRadioMetricsGroup 4 }

cwr1HrMetricsEntry OBJECT-TYPE
        SYNTAX Cwr1HrMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwr1HrMetricsTable indexed by ifIndex
        and cwr1HrMetricsIndex.

	The first entry in the table (cwr1HrMetricsIndex = 1) represents the 
        chronologically oldest data available."
        INDEX     { ifIndex, cwr1HrMetricsIndex }
        ::= { cwr1HrMetricsTable 1 }

Cwr1HrMetricsEntry ::= SEQUENCE {
	cwr1HrMetricsIndex              Integer32,
	cwr1HrUpdateTime		Integer32,
	cwr1HrErrorFreeSeconds     	CwrCwErrorFreeSecond,
	cwr1HrErroredSeconds		CwrCwErroredSecond,
	cwr1HrSevErroredSeconds 	CwrCwSeverelyErroredSecond,
	cwr1HrConsecSvErrSeconds 	CwrCwConsecutiveSevErrSecond,
	cwr1HrDegradedMinutes 		CwrCwDegradedMinute,
	cwr1HrErroredCodewords		WirelessGauge64,
	cwr1HrTotalCodewords	        WirelessGauge64	
	}

cwr1HrMetricsIndex OBJECT-TYPE
        SYNTAX Integer32 (1..24)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"Each entry represents the sum of the metrics from the previous 1 hour 
        entry + the 1 hour period immdeiately prior to the most recent update."

        ::= { cwr1HrMetricsEntry 1 }

cwr1HrUpdateTime OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents time in seconds since system power up at which
	time this entry was updated."
        ::= { cwr1HrMetricsEntry 2 }

cwr1HrErrorFreeSeconds OBJECT-TYPE
        SYNTAX CwrCwErrorFreeSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Error Free Seconds (EFS)
	detected since link power up, captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 3 }

cwr1HrErroredSeconds OBJECT-TYPE
        SYNTAX CwrCwErroredSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Errored Seconds
	(ES) detected since link power up, captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 4 }

cwr1HrSevErroredSeconds OBJECT-TYPE
        SYNTAX CwrCwSeverelyErroredSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Severely Errored Seconds
	(SES) detected since link power up, captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 5 }

cwr1HrConsecSvErrSeconds OBJECT-TYPE
        SYNTAX CwrCwConsecutiveSevErrSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Consecutive Severely
	Errored	Seconds (CSES) detected since link power up, 
	captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 6 }

cwr1HrDegradedMinutes OBJECT-TYPE
        SYNTAX CwrCwDegradedMinute
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Degraded Minutes
	detected since link power up, captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 7 }

cwr1HrErroredCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative errored codewords detected
	since link power up, captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 8 }

cwr1HrTotalCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative total received codewords
	detected since link power up, captured at cwr1HrUpdateTime."
        ::= { cwr1HrMetricsEntry 9 }

--
--   One Minute Link Metrics Table
--

cwr1MinMetricsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF Cwr1MinMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains metrics collected over the duration of one minute.

	This table will have a maximum of 60 entries providing cumulative 
	status of the link, identified by ifIndex, over the past 60 minutes.

	This table is updated once every minute."
        ::= { cwrRadioMetricsGroup 5 }
        
cwr1MinMetricsEntry OBJECT-TYPE
        SYNTAX Cwr1MinMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwr1MinMetricsTable indexed by ifIndex
        and cwr1MinMetricsIndex.

	The first entry in the table (cwr1MinMetricsIndex = 1) represents the 
        chronologically oldest data available."
        INDEX     { ifIndex, cwr1MinMetricsIndex }
        ::= { cwr1MinMetricsTable 1 }

Cwr1MinMetricsEntry ::= SEQUENCE {
	cwr1MinMetricsIndex             Integer32,
	cwr1MinUpdateTime		Integer32,
	cwr1MinErrorFreeSeconds     	CwrCwErrorFreeSecond,
	cwr1MinErroredSeconds		CwrCwErroredSecond,
	cwr1MinSevErroredSeconds 	CwrCwSeverelyErroredSecond,
	cwr1MinConsecSvCwErrSeconds 	CwrCwConsecutiveSevErrSecond,
	cwr1MinDegradedSeconds 		CwrCwDegradedSecond,
	cwr1MinErroredCodewords		WirelessGauge64,
	cwr1MinCodewords		WirelessGauge64
	}

cwr1MinMetricsIndex OBJECT-TYPE
        SYNTAX Integer32 (1..60)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"Each entry represents the sum of the metrics from the previous 1 
        minute entry + the 1 minute period immdeiately prior to the most recent
        update."
        ::= { cwr1MinMetricsEntry 1 }

cwr1MinUpdateTime OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents time in seconds since system power up at which
	time this entry was updated."
        ::= { cwr1MinMetricsEntry 2 }

cwr1MinErrorFreeSeconds OBJECT-TYPE
        SYNTAX CwrCwErrorFreeSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Error Free Seconds (EFS)
	detected since link power up, captured at cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 3 }
	
cwr1MinErroredSeconds OBJECT-TYPE
        SYNTAX CwrCwErroredSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Errored Seconds
	(ES) detected since link power up, captured at cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 4 }

cwr1MinSevErroredSeconds OBJECT-TYPE
        SYNTAX CwrCwSeverelyErroredSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Severely Errored Seconds
	(SES) detected since link power up, captured at cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 5 }

cwr1MinConsecSvCwErrSeconds OBJECT-TYPE
        SYNTAX CwrCwConsecutiveSevErrSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Consecutively Severely
	Errored Seconds	(CSES) detected since link power up, captured at
	cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 6 }

cwr1MinDegradedSeconds OBJECT-TYPE
        SYNTAX CwrCwDegradedSecond
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative Codeword Degraded Seconds (DS)
	detected since link power up, captured at cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 7 }

cwr1MinErroredCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative errored codewords detected
	since link power up, captured at cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 8 }

cwr1MinCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative total received codewords
	detected since link power up, captured at cwr1MinUpdateTime."
        ::= { cwr1MinMetricsEntry 9 }

--
--  One Second Link Metrics
--

cwr1SecMetricsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF Cwr1SecMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains metrics collected over a duration of 1 second.
	The data in this table is derived directly from the hardware.

	This table will have a maximum of 60 entries providing cumulative 
	status of the link, identified by ifIndex, over the past 60 seconds.

	This table is updated once every second."
        ::= { cwrRadioMetricsGroup 6 }

cwr1SecMetricsEntry OBJECT-TYPE
        SYNTAX Cwr1SecMetricsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwr1SecMetricsTable indexed by ifIndex
        and cwr1SecMetricsIndex.

	The first entry in the table (cwr1SecIndex = 1) represents the 
        chronologically oldest data available."
        INDEX     { ifIndex, cwr1SecIndex }
        ::= { cwr1SecMetricsTable 1 }

Cwr1SecMetricsEntry ::= SEQUENCE {
	cwr1SecIndex                    Integer32,
	cwr1SecUpdateTime		Integer32,
	cwr1SecRxCodewords		WirelessGauge64,
	cwr1SecRSCodewordErrors		WirelessGauge64,
	cwr1SecArqCodewordErrors	Gauge32,
	cwr1SecRxRrCount		Gauge32,
	cwr1SecRxRrEventCount		Gauge32,
	cwr1SecTxArqCount		Gauge32,
	cwr1SecTxArqEventCount		Gauge32,
	cwr1SecCorrectedSyncByteErrs	Gauge32,
	cwr1SecConsecutiveCwErrs    	Gauge32,
	cwr1SecPostARQGoodCodewords    	WirelessGauge64
	}

cwr1SecIndex OBJECT-TYPE
        SYNTAX Integer32 (1..60)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"Each entry represents the sum of the metrics from the previous 
	1 second entry + the 1 second period immdeiately prior to the
        most recent update."
        ::= { cwr1SecMetricsEntry 1 }

cwr1SecUpdateTime OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents time in seconds since system power up at which
	time this entry was updated."
        ::= { cwr1SecMetricsEntry 2 }

cwr1SecRxCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative total number of codewords
	received by this radio link at the time this entry was updated."
        ::= { cwr1SecMetricsEntry 3 }

cwr1SecRSCodewordErrors OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative uncorrectable codewords
	emitted by the Reed-Solomon error correction engine at the time
	this entry was updated. This is also called Pre ARQ codeword error."
        ::= { cwr1SecMetricsEntry 4 }

cwr1SecArqCodewordErrors OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative number of uncorrectable
	codewords consumed by the Automatic Repeat Query error correction
	engine at the time this entry was updated. This is also called as
	Post ARQ codeword error."
        ::= { cwr1SecMetricsEntry 5 }

cwr1SecRxRrCount OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This represents the cumulative number of unique RR's (Retransmit 
	Requests) received (from the remote end) at the time this entry was
	updated.
	The remote end issues a Retransmit Request if it receives an
	uncorrectable codeword."
        ::= { cwr1SecMetricsEntry 6 }

cwr1SecRxRrEventCount OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative number of RRs
	(Retransmit Requests) that were serviced at the time this entry was
	updated."
        ::= { cwr1SecMetricsEntry 7 }

cwr1SecTxArqCount OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents cumulative number of unique ARQ's that
	were received by the transmit side of the local end at the time
	this entry was updated.

	This provides an indication of how error free the transmisisons of
	the local end of the link are from the the remote end's perspective."
        ::= { cwr1SecMetricsEntry 8 }

cwr1SecTxArqEventCount OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents cumulative number of ARQ's that were serviced
	at the time this entry was updated.

	A serviced ARQ results in a re-transmitted codeword."
        ::= { cwr1SecMetricsEntry 9 }

cwr1SecCorrectedSyncByteErrs OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative number of corrected sync byte
	errors, at the time this entry was updated."
        ::= { cwr1SecMetricsEntry 10 }

cwr1SecConsecutiveCwErrs OBJECT-TYPE
        SYNTAX Gauge32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the size of the larget block of consecutive
	codeword errors received since this entry was last updated."
        ::= { cwr1SecMetricsEntry 11 }

cwr1SecPostARQGoodCodewords OBJECT-TYPE
        SYNTAX WirelessGauge64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the cumulative number of error free codewords
	emitted by the Automatic Repeat Query error correction engine at
	the time this entry was updated. Also called as	Post ARQ 
	good codewords."
        ::= { cwr1SecMetricsEntry 12 }

--
-- Radio History Group. This group is optional.
--
--
-- The Histogram Table. This table contains information about the set of
-- histograms that the hardware can be programmed to maintain.
--
-- These histograms are generated as follows :
-- Radio signal data is sampled.
-- Occurrences of values of the radio signal data is counted.
-- This count is maintained as discrete sets. Each set represented by one bin.
--
-- Note that the raw radio signal data is not stored in the bins. It is the
-- count of the occurrence of the radio signal sample that gets stored.
--

cwrHistCtrlTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrHistCtrlEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about histograms configured in
	hardware. When data is collected it will be stored in histogram
	bins as follows:
	All values (X < cwrStartBinValue) will be kept in the first
	histogram bin.
	Subsequent values will be distributed in the bins based on the
	cwrBinDelta. Last bin, will contain all values
	(X > (cwrStartBinValue + (cwrNumBins - 2) * cwrBinDelta)),
	i.e. any value that is greater than that may be stored in the
	last bin."
        ::= { cwrRadioHistoryGroup 1 }

cwrHistCtrlEntry OBJECT-TYPE
        SYNTAX CwrHistCtrlEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrHistogramTable. 
	It is indexed by the ifIndex, cwrHistIndex."
        INDEX { ifIndex, cwrHistIndex }
        ::= { cwrHistCtrlTable 1 }

CwrHistCtrlEntry ::= SEQUENCE {
	cwrHistIndex	        Integer32,
	cwrHistClass		CwrRadioSignalAttribute,
	cwrRfResourceId		CwrRFZeroIndex,
	cwrDspNumber	        INTEGER,
	cwrStartBinValue	Integer32,
	cwrBinDelta		Integer32,
	cwrNumHistBins		Integer32,
	cwrUpdateRate		Integer32,
	cwrCollDuration		Integer32,
	cwrOwnerId		OwnerString,
	cwrHistBitShift		INTEGER,
	cwrHistToneSelection    INTEGER,
	cwrHistToneValue        Integer32,
	cwrHistAction        	CwrCollectionAction,
	cwrHistStatus		CwrCollectionStatus,
	cwrHistRowStatus	RowStatus,
	cwrHistPeriodicSum      TruthValue
        }

cwrHistIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object, along with ifIndex, is the index into this table 
	and represents one entry in the table. The entry in this table 
        for which cwrHistIndex = x is associated with the entry in
        cwrHistSummaryTable and the entry in cwrHistDataTable for 
        which the index variable in those tables has the same value, x."
        ::= { cwrHistCtrlEntry 1 }

cwrHistClass OBJECT-TYPE
        SYNTAX CwrRadioSignalAttribute
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the attribute that is being histogrammed."
        ::= { cwrHistCtrlEntry 2 }

cwrRfResourceId OBJECT-TYPE
        SYNTAX CwrRFZeroIndex
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies the RF resource for which this histogram
	specification applies. If this is 0, the agent will automatically
	use the most logical value for the specified cwrHistClass. If 0 has
	been specified then on reading this object the agent will return the
	RF resource id for which the histogram is being captured."
        ::= { cwrHistCtrlEntry 3 }

cwrDspNumber OBJECT-TYPE
        SYNTAX INTEGER (0..8)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies the DSP on which to create the histogram.
	If 0 is specified then the agent will automatically use the most
	logical DSP for the specified cwrHistClass parameter.
	If 0 has been specified then on reading this object the agent will
	return the DSP number that is being used to capture this histogram."
        ::= { cwrHistCtrlEntry 4 }

cwrStartBinValue OBJECT-TYPE
        SYNTAX Integer32 (-2147483647..2147483647)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the maximum of the values that will be
	collected in the first bin of the histogram.
	All values < cwrStartBinValue will be kept in the first histogram bin."
        ::= { cwrHistCtrlEntry 5 }

cwrBinDelta OBJECT-TYPE
        SYNTAX Integer32 (2..2147483647)
	UNITS "Powers of 2"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the range of values of the sampled data that
	should be accounted for in one histogram bin. For example all data
	samples between x..y (where y = x + cwrBinDelta - 1), will be
	counted and placed in the same bin."
        ::= { cwrHistCtrlEntry 6 }

cwrNumHistBins OBJECT-TYPE
        SYNTAX Integer32 (1..508)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents total number of bins to be created for the
	histogram."
        ::= { cwrHistCtrlEntry 7 }

cwrUpdateRate OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents rate at which snapshots of the histogram will be
	available." 
        ::= { cwrHistCtrlEntry 8 }

cwrCollDuration OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object specifies the duration for which this histogram must
	be accumulated. After successfully accumulating data for this amount
	of time the collection stops and the cwrHistStatus changes
	to statusCaptured."
        ::= { cwrHistCtrlEntry 9 }

cwrOwnerId OBJECT-TYPE
        SYNTAX OwnerString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies management station that created this
	histogram specification."
        ::= { cwrHistCtrlEntry 10 }

cwrHistBitShift OBJECT-TYPE
        SYNTAX INTEGER(0..32)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the number of bits by which the signal count 
	is right shifted before it is stored in the histogram bin.
	This provides a mechanism to uniformly scale the collected histogram
	to account for overflows."
        ::= { cwrHistCtrlEntry 11 }

cwrHistToneSelection OBJECT-TYPE
        SYNTAX INTEGER {
		cwrCirculate(1),
		cwrAverage(2),
		cwrSpecific(3)
	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies which tone in a burst should be sampled for 
	capturing the data.
	cwrCirculate(1):
		The successive tones will be used for every successive burst.
	cwrAverage(2):
		The value of every tone in a burst will be averaged.
	cwrspecific(3):
		The identified tone is used."
        DEFVAL { cwrAverage }
        ::= { cwrHistCtrlEntry 12 }

cwrHistToneValue OBJECT-TYPE
        SYNTAX Integer32 (0..216)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"If cwrHistToneSelection is cwrSpecificTone then this object 
	identifies tone that should be used for sampling."
        ::= { cwrHistCtrlEntry 13 }

cwrHistAction OBJECT-TYPE
        SYNTAX CwrCollectionAction
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the action to be carried out on this 
	histogram specification. If a histogram has been successfully
	captured then it must be cleared before an other capture
	may be initiated."
        ::= { cwrHistCtrlEntry 14 }

cwrHistStatus OBJECT-TYPE
        SYNTAX CwrCollectionStatus
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the current state of this histogram collection
	Once the histogram collection is complete the status changes
	statusCaptured and the data is available for use.
	None of the parameters of a histogram specification may be modified when
	the specification is in statusInProgress.
	A statusCaptured or statusStopped histogram must be actionClear'ed
	before another histogram specification may be started.
	The histogram may be read accurately between the cwrUpdateRate
	intervals. If the read spans across the update time data from the
	previous and current updates can be mingled."
        ::= { cwrHistCtrlEntry 15 }

cwrHistRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object may be used to create or delete a histogram control
	specification."
        ::= { cwrHistCtrlEntry 16 }

cwrHistPeriodicSum OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "The histogram data is updated every cwrUpdateRate seconds.
        When this object is set to true(1), the latest histogram data set 
        is summed with the previous histogram data set and the 
        cwrHistSummaryTable will reflect cumulative values.
        When set to false(2), only the latest data set is made available
        and the cwrHistSummarytable will reflect the latest values."
        ::= { cwrHistCtrlEntry 17 }
 
--
--      The Histogram Summary Table. This table contains summary Data
--	about the histograms collected as per the specifications in the
--	cwrHistCtrlTable.
-- 

cwrHistSummaryTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrHistSummaryEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains histogram Summary collected based on the
	specifications in the cwrHistCtrlTable."
        ::= { cwrRadioHistoryGroup 2 }

cwrHistSummaryEntry OBJECT-TYPE
        SYNTAX CwrHistSummaryEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrHistSummaryTable.
	It is indexed by the ifIndex and cwrHistIndex."
        INDEX { ifIndex, cwrHistIndex }
        ::= { cwrHistSummaryTable 1 }

CwrHistSummaryEntry ::= SEQUENCE {
	cwrHistUpdateTime       Integer32,
	cwrHistMin		Integer32,
	cwrHistMax		Integer32,
	cwrHistMean		Integer32
        }

cwrHistUpdateTime OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the time in seconds since power up when 
	this histogram snapshot was retrieved from the hardware."
        ::= { cwrHistSummaryEntry 1 }

cwrHistMin OBJECT-TYPE
        SYNTAX Integer32 (-2147483648..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the minimum value of the data sample seen for 
        this histogram."
        ::= { cwrHistSummaryEntry 2 }

cwrHistMax OBJECT-TYPE
        SYNTAX Integer32 (-2147483648..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the maximum value of the data sample seen for
        this histogram."
        ::= { cwrHistSummaryEntry 3 }

cwrHistMean OBJECT-TYPE
        SYNTAX Integer32 (-2147483648..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the arithemetic mean of the data sample values for
        this histogram."
        ::= { cwrHistSummaryEntry 4 }

--
--      The Histogram Data Table. This table contains the Data
--	about the histograms collected as per the specifications in the
--	cwrHistCtrlTable.
-- 

cwrHistDataTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrHistDataEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains histogram values collected based on the
	specifications in the cwrHistCtrlTable."
        ::= { cwrRadioHistoryGroup 3 }

cwrHistDataEntry OBJECT-TYPE
        SYNTAX CwrHistDataEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrHistDataTable. It is indexed by the
	ifIndex and cwrHistIndex and cwrHistBinIndex."
        INDEX { ifIndex, cwrHistIndex, cwrHistBinIndex }
        ::= { cwrHistDataTable 1 }

CwrHistDataEntry ::= SEQUENCE {
	cwrHistBinIndex		INTEGER,
	cwrValue		Integer32
        }

cwrHistBinIndex OBJECT-TYPE
        SYNTAX INTEGER (1..508)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object represents the histogram bin number for the value
	in cwrValue."
        ::= { cwrHistDataEntry 1 }

cwrValue OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the value in the histogram bin
	cwrHistBinIndex."
        ::= { cwrHistDataEntry 2 }

--
-- The Radio Timeline Group. This group is optional.
--
-- This group includes the following tables:
-- cwrThresholdTable, cwrTlCtrlTable, cwrTlSummaryTable and cwrTlDataTable.
--
-- This group provides facilities to define thresholds and capture raw
-- radio signal data.
--

--
-- The Threshold table. 
-- 

cwrThresholdTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrThresholdEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table provides facilities to establish thresholds for the radio
	signals analyzed on the radio interface. A threshold identified in this
	table may be used to trigger a timeline capture in the cwrTlTable."
        ::= { cwrRadioTimelineGroup 1 }

cwrThresholdEntry OBJECT-TYPE
        SYNTAX CwrThresholdEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrThresholdTable."
        INDEX { ifIndex, cwrThreshIndex }
        ::= { cwrThresholdTable 1 }

CwrThresholdEntry ::= SEQUENCE {
	cwrThreshIndex		Integer32,
	cwrThreshAttribute	CwrRadioSignalAttribute,
	cwrThreshType		CwrThreshLimitType,
	cwrThreshAntId		CwrRFZeroIndex,
	cwrThreshValue		Integer32,
	cwrThreshHysteresisTime TimeInterval,
	cwrThreshLimitTime	TimeInterval,
	cwrThreshDspNum         INTEGER,
	cwrThreshRowStatus	RowStatus
        }

cwrThreshIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object, along with ifIndex, identifies this entry."
        ::= { cwrThresholdEntry 1 }

cwrThreshAttribute OBJECT-TYPE
        SYNTAX  CwrRadioSignalAttribute
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "This represents the attribute of a radio link which needs to be
	thresholded. For each of these attributes, the cwrThreshType identifies
	the type of change to monitor. When that threshold is exceeded a
	Trap with appropriate parameters will be generated."
        ::= { cwrThresholdEntry 2 }

cwrThreshType OBJECT-TYPE
	SYNTAX CwrThreshLimitType
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the kind of change that needs to be monitored
	for the cwrThreshAttribute. An event is generated when the following
	condition is met."
        ::= { cwrThresholdEntry 3 }

cwrThreshAntId OBJECT-TYPE
        SYNTAX CwrRFZeroIndex
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies the RF resource for which this threshold
	should be defined."
        ::= { cwrThresholdEntry 4 }

cwrThreshValue OBJECT-TYPE
        SYNTAX Integer32 (-2147483647..2147483647)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the value to be compared against. The
	cwrThreshType determines the way in which it is used.
	It is used as follows:
	if cwrThreshType is ..
	highThresh : Notify if data sample exceeds the cwrThreshValue.
	lowThresh  : Notify if data sample recedes below the cwrThreshValue.
	upChange   : Notify if data sample increases by more than
		     cwrThreshValue.
	downChange : Notify if data sample decreases by more than
		     cwrThreshValue.
	upLimit    : Notify if data sample crosses cwrThreshValue while
		     increasing in value.
	lowLimit   : Notify if data sample crosses cwrThreshValue while
		     decreasing in value."
        ::= { cwrThresholdEntry 5 }

cwrThreshHysteresisTime OBJECT-TYPE
        SYNTAX TimeInterval
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"When radio signals oscillate around threshold values, they potentially
	flood the system with notifications. This object specifies the amount
	of time to wait before sending an identical notification if the
	oscillations continue.  Notifications are not generated due to any
        threshold value which is reached/exceeded/crossed/etc. during this
        wait time"  
        ::= { cwrThresholdEntry 6 }

cwrThreshLimitTime OBJECT-TYPE
        SYNTAX TimeInterval
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "This object specifies the amount of time for which the radio signal
        should stabilize before a trap is sent to indicate that the radio
        signal has stabilized."
        ::= { cwrThresholdEntry 7 }

cwrThreshDspNum OBJECT-TYPE
        SYNTAX INTEGER (1..8)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object indicates the DSP used to monitor this threshold."
        ::= { cwrThresholdEntry 8 }

cwrThreshRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the status of this threshold entry. It may be
	used to create a new threshold specification.
	For every cwrThreshAttrClass one threshold of cwrThreshType on one
	DSP may be created."
        ::= { cwrThresholdEntry 9 }


--
-- Radio Timeline.
-- A radio timeline is raw radio signal data, that is captured based on the
-- specifications. 
--

cwrTlCtrlTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrTlCtrlEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about timelines configured in
	hardware. The number of data values captured for each timeline
        is configured by setting the variable cwrTlNumDataValues. The captured 
        data values can be retreived by reading the cwrTlDataTable."
        ::= { cwrRadioTimelineGroup 2 }

cwrTlCtrlEntry OBJECT-TYPE
        SYNTAX CwrTlCtrlEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrTlCtrlTable.
	It is indexed by the ifIndex, cwrTlClass, cwrRfResourceId,
	cwrTlDspNum."
        INDEX { ifIndex, cwrTlIndex }
        ::= { cwrTlCtrlTable 1 }

CwrTlCtrlEntry ::= SEQUENCE {
	cwrTlIndex              Integer32,
	cwrTlClass		CwrRadioSignalAttribute,
	cwrTlRfResourceId	CwrRFZeroIndex,
	cwrTlDspNum             INTEGER,
	cwrTlNumDataValues      INTEGER,
	cwrTlDecimationFactor   Integer32,
	cwrTlPreSumShift	Integer32,
	cwrTlToneSelection      INTEGER,
	cwrTlToneValue          Integer32,
	cwrTlThreshIndex	Integer32,
	cwrTlAction 		CwrCollectionAction,
	cwrTlStatus		CwrCollectionStatus,
	cwrTlPostTrigBufMgmt    INTEGER,
	cwrTlRowStatus		RowStatus
        }

cwrTlIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This object, along with ifIndex, is the index into this table
        and represents one entry in the table. The entry in this table 
        for which cwrTlIndex = x is associated with the entry in
        cwrTlSummaryTable and the entry in cwrTlDataTable for 
        which the index variable in those tables has the same value, x."
        ::= { cwrTlCtrlEntry 1 }

cwrTlClass OBJECT-TYPE
        SYNTAX CwrRadioSignalAttribute
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the attribute for which a timline capture
	is requested. 
	When a timeline is requested, cwrTlNumDataValues worth of data will be
	captured."
        ::= { cwrTlCtrlEntry 2 }

cwrTlRfResourceId OBJECT-TYPE
        SYNTAX CwrRFZeroIndex
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies the RF resource for which this timeline
	specification applies. 
	If this is 0 then the agent will automatically the most logical
	value for the specified cwrHistClass. If 0 has been specified
	then on reading this object the agent will return the
	RF resource id for which the timeline is being captured."
        ::= { cwrTlCtrlEntry 3 }

cwrTlDspNum OBJECT-TYPE
        SYNTAX INTEGER (0..8)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies the DSP on which this timeline needs to be
	captures.
	If 0 is specified then the agent will automatically use the most
	logical DSP for the specified cwrTlClass parameter.
	If 0 has been specified on create then on reading this object the
	agent will return the DSP number that is being used to capture
	this timeline."
        ::= { cwrTlCtrlEntry 4 }

cwrTlNumDataValues OBJECT-TYPE
        SYNTAX INTEGER (1..2147483647)
	UNITS "number of data values"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object indicates the number of data values to be captured for
        this timeline.  The captured data can be viewed by reading the 
        cwrTlDataTable."
        ::= { cwrTlCtrlEntry 5 }

cwrTlDecimationFactor OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the number of successive data samples to be
	added and returned. This enables larger data sets to be captured even
	with limited cwrTlNumDataValues."
        ::= { cwrTlCtrlEntry 6 }

cwrTlPreSumShift OBJECT-TYPE
        SYNTAX Integer32 (0..32)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the number of bits by which the raw data
	data should be right shifted before applying cwrTlDecimationFactor.
	This provides a mechanims of controlling overflow due to summation."
        ::= { cwrTlCtrlEntry 7 }

cwrTlToneSelection OBJECT-TYPE
        SYNTAX INTEGER {
		cwrCirculate(1),
		cwrAverage(2),
		cwrSpecific(3)
	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object identifies which tone in a burst should be used to
	sample data for the timeline. 
	cwrCirculate(1):
		The successive tone will be used for every successive burst.
	cwrAverage(2):
		The value of every tone in a burst will be averaged.
	cwrspecific(3):
		The identified tone is used.
        DEFVAL { cwrAverage }"
        ::= { cwrTlCtrlEntry 8 }

cwrTlToneValue OBJECT-TYPE
        SYNTAX Integer32 (0..216)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"If cwrTlToneSelection is cwrSpecificTone then this object 
	identifies the tone that should be used for sampling."
        ::= { cwrTlCtrlEntry 9 }

cwrTlThreshIndex OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object specifies the index of the threshold that when triggered
	will start the data capture for this timeline.

	For a timeline data capture to be triggered by a threshold,
	the threshold must be defined on the same DSP as the timeline.

	If cwrTlThreshIndex is 0 then there is no threshold associated
	with this timeline and the data samples are captured and returned
	immediately. If cwrTlThresIndex is not 0, then the data samples
	are captured when the threshold fires."
        ::= { cwrTlCtrlEntry 10 }

cwrTlAction OBJECT-TYPE
        SYNTAX CwrCollectionAction
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the action to be carried out on this 
	timeline specification. If a timeline has been successfully
	captured then it must be cleared before an other capture
	may be initiated."
        ::= { cwrTlCtrlEntry 11 }

cwrTlStatus OBJECT-TYPE
        SYNTAX CwrCollectionStatus
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the current state of this timeline collection
	Once the timeline collection is complete the status changes
	statusCaptured and the data is available for use.
	None of the parameters of a timeline specification may be modified when
	the specification is in statusInProgress.
	A statusCaptured or statusStopped histogram must be actionClear'ed
	before another timeline specification may be started."
        ::= { cwrTlCtrlEntry 12 }

cwrTlPostTrigBufMgmt OBJECT-TYPE
        SYNTAX INTEGER {
		preTrigger(1),
		postTrigger(2)
	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"Once a trigger fires, this object determines which portion of the
	collected data to capture for use. If it is:
	preTrigger(1) : Then most of the data collected prior to trigger
			is captured.
	postTrigger(2): Then most of the data collected after the trigger
			is captured."
        ::= { cwrTlCtrlEntry 13 }

cwrTlRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object may be used to create or delete a timeline control
	specification.

	Once created data sampling starts based on the value of 
	cwrTlAction. The data capture depends on the value of
	cwrTlThreshIndex.
	The actual data is collected based on the cwrTlThreshIndex,
	if cwrTlThreshIndex is 0 then there is no stop trigger associated
	with this timeline and the data samples are captured and returned
	immediately. If cwrTlThresIndex is not 0, then the data samples
	are captured when the threshold fires."
        ::= { cwrTlCtrlEntry 14 }

--
--      The Timeline Summary Table. This table contains summary Data
--	about the timeline collected as per the specifications in the
--	cwrTlCtrlTable.
-- 

cwrTlSummaryTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrTlSummaryEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains Timeline Summary collected based on the
	specifications in the cwrTlCtrlTable."
        ::= { cwrRadioTimelineGroup 3 }

cwrTlSummaryEntry OBJECT-TYPE
        SYNTAX CwrTlSummaryEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrTlSummaryTable.
	It is indexed by the ifIndex and cwrTlIndex."
        INDEX { ifIndex, cwrTlIndex }
        ::= { cwrTlSummaryTable 1 }

CwrTlSummaryEntry ::= SEQUENCE {
	cwrTlUpdateTime		Integer32,
	cwrTlNumValues		Integer32,
	cwrTlTriggerLoc		Integer32
        }

cwrTlUpdateTime OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
	UNITS "seconds"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the time in seconds since power up when
	this timeline capture was completed."
        ::= { cwrTlSummaryEntry 1 }

cwrTlNumValues OBJECT-TYPE
        SYNTAX Integer32 (0..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of values available in the timeline."
        ::= { cwrTlSummaryEntry 2 }

cwrTlTriggerLoc OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object contains the value of cwrTlValueIndex which represents
        the entry in the cwrTlDataTable that caused the stop trigger to fire, 
        thereby resulting in this timeline to be collected."
        ::= { cwrTlSummaryEntry 3 }

--
--      The Timeline Data Table. This table contains the Data
--	about the timelines collected as per the specifications in the
--	cwrTlCtrlTable.
-- 

cwrTlDataTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrTlDataEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains data values collected for the timelines 
	specified in the cwrTlCtrlTable.  The number of data values 
        displayed for each timeline is determined by the value specified
        for cwrTlNumDataValues in cwrTlCtrlTable."
        ::= { cwrRadioTimelineGroup 4 }

cwrTlDataEntry OBJECT-TYPE
        SYNTAX CwrTlDataEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrTlDataTable. It is indexed by 
	ifIndex, cwrTlIndex, and cwrTlValueIndex."
        INDEX { ifIndex, cwrTlIndex, cwrTlValueIndex }
        ::= { cwrTlDataTable 1 }

CwrTlDataEntry ::= SEQUENCE {
	cwrTlValueIndex		INTEGER,
	cwrTlValue		Integer32
        }

cwrTlValueIndex OBJECT-TYPE
        SYNTAX INTEGER (1..2147483647)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object, along with ifIndex and cwrTlIndex,  is the index 
        into the timeline data table."
        ::= { cwrTlDataEntry 1 }

cwrTlValue OBJECT-TYPE
        SYNTAX Integer32 (-2147483648..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the radio signal data sampled."
        ::= { cwrTlDataEntry 2 }

--
--  Snapshot Group: This group is optional.
--
--  This group provides facilities to capture raw radio signal attributes.
--  The key difference between this group and the Timeline Group is that
--  this group provides facilities to capture up to 4 synchronized 
--  signal attributes simultaneously. The capture initiated by a single
--  user controlled trigger.
--
--  In this group many of the attributes are represented by complex numbers
--  Each such attribute is indicated as value(I, q).
--

cwrSnapshotCtrlTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrSnapshotCtrlEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about the snapshots configured in
	hardware. When data is collected it will be stored in
	cwrSnapDataTable."
        ::= { cwrRadioSnapshotGroup 1 }

cwrSnapshotCtrlEntry OBJECT-TYPE
        SYNTAX CwrSnapshotCtrlEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrSnapshotCtrlTable
	It is indexed by the ifIndex and cwrSnapshotDspNum."
        INDEX { ifIndex, cwrSnapshotDspNum }
        ::= { cwrSnapshotCtrlTable 1 }

CwrSnapshotCtrlEntry ::= SEQUENCE {
	cwrSnapshotDspNum       INTEGER,
	cwrSnapshotType		Integer32,
	cwrSnapshotAction	CwrCollectionAction,
	cwrSnapshotStatus	CwrCollectionStatus,
	cwrSnapshotRowStatus    RowStatus
        }

cwrSnapshotDspNum OBJECT-TYPE
        SYNTAX INTEGER(1..8)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object represents the DSP at which the snapshot needs to
	be collected."
        ::= { cwrSnapshotCtrlEntry 1 }

cwrSnapshotType OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the attribute that is being snapshoted by
	the hardware. When a snapshot request is issued up to 4 simultaneous
	radio signal attribute may be captured at once. 
	The 4 attributes are specified by bit OR'ing the snapshot types
	identified below. When a snapshot specification
	is started all the specified attributes are captured simultaneously.

	The TX and RX types cannot be mixed. RX, Sync types can be mixed.

	When a snapshot request is issued up to four radio signal attributes
	may be requested at once, one from each set:
	===============================================
	Type   Set1               Set2              
	===============================================
	RX     y1n(x1)            y2n(x2)           
	       H2k(x80)           H1k(x40)          
	       -                  -                 
	Sync   -                  FreqCorr(x8000)   
	       -                  FLL_FFT_Sp(x20000)
	TX     CodecIn(x200)      IFFTIn(x400)      
	===============================================

	===============================================
	Type   Set3                Set4
	===============================================
	RX     Y2k(x8)             Y1k(x4)
	       h1n(x10)            h2n(x20)
	       zhat(x100)          -
	Sync   FreqOffCF(x2000)(*) BrstTimeCF(x1000)(*)
	       -                   TT_FCorr(x10000)
	TX     -                   RoundOut(x800)
	===============================================

	(*)  BrstTimeCF cannot be mixed with Set2
	(*)  FreqOffCF  cannot be mixed with Set1

	Note that only the Tx* attributes may be captured on DSP's 1, 2.	

	The attributes are:
	RxRawBurstAnt1Y1n(0x01):
		This represents a snapshot of the received signal for RF
		resource 1. For every sample the real and imaginary components
		are captured.
		Units: (I, q)
		Value: 32 bit quantities.
	
	RxRawBurstAnt2Y2n(0x02):
		This represents a snapshot of the received signal for RF
		resource 2. For every sample the real and imaginary components
		are captured.
		Units: (I, q)
		Value: 32 bit quantities.
	
	RxSpectrumAnt1Y1k(0x04):
		This represents a snapshot of the spectrum of the received
		signal for RF resource 1. For every sample the real and
		imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
	
	RxSpectrumAnt2Y2k(0x08):
		This represents a snapshot of the spectrum of the received
		signal for RF resource 2. For every sample the real and
		imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
	
	RxTimeDomainChannelAnt1H1n(0x10):
		This represents a snapshot of the time domain channel
		for RF resource 1. For every sample the real and
		imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
		
	RxTimeDomainChannelAnt2H2n(0x20):
		This represents a snapshot of the time domain channel
		for RF resource 2. For every sample the real and
		imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
		
	RxFreqDomainChannelAnt1H1k(0x40):
		This represents a snapshot of the frequency domain channel
		for RF resource 1. For every sample the real and
		imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.

	RxFreqDomainChannelAnt2H2k(0x80),
		This represents a snapshot of the frequency domain channel
		for RF resource 2. For every sample the real and
		imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.

	RxConstellationZHatk(0x100):
		This represents a snapshot of the soft decisions.
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
		
	TxCodecInput(0x200):
		This represents a snapshot of input values to the Tx Code.
		Units: Real values.
		Value: 32 bit quantities.
			
	TxIFFTInput(0x400):
		This represents a snapshot of the IFFT signal for the
		Transmitted data. 
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.

	TxRoundOutput(0x800):
		This represents a snapshot of the Rounded Constellation signal
		for the Transmitted data. 
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
		
	SyncBurstTimeCostFunc(0x1000):
		This represents the timing cost function for Sync bursts. 
		Units: Real values.
		Value: 32 bit quantities.
	
	SynFreqOffsetCostFunc(0x2000):
		This represents a snapshot of the frequeny offsets.
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.

	SyncFllFreqCorrelation(0x8000):
		This represents a snapshot of Frequency correlation.
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.

	SyncFllTrainToneCorrelation(0x10000):
		This represents a snapshot of Frequency locked loop's Training
		tone correlation.
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities.
		
	SyncFllFFTSpectrum(0x20000):
		This represents a snapshot of Frequency locked loop, FFT
		Spectrum.
		For every sample the real and imaginary components are captured.
		Units: (I, q)
		Value: 32 bit quantities."
        ::= { cwrSnapshotCtrlEntry 2 }

cwrSnapshotAction OBJECT-TYPE
        SYNTAX CwrCollectionAction
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object represents the action to be carried out on this 
	snapshot specification. If a snapshot has been successfully
	captured then it must be cleared before an other capture
	may be initiated."
        ::= { cwrSnapshotCtrlEntry 3 }

cwrSnapshotStatus OBJECT-TYPE
        SYNTAX CwrCollectionStatus
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the current status of this snapshot
	specification. When the status in statusInProgress none of the
	snapshot parameters can be configured. When the status is 
	statusCaptured then data is available for use."
        ::= { cwrSnapshotCtrlEntry 4 }

cwrSnapshotRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
	"This object may be used to create or delete this snapshot
	specification."
        ::= { cwrSnapshotCtrlEntry 5 }

--
--      The Snapshot Summary Table. This table contains summary information
--      for the data captured by a snapshot specification 
--	about the snapshots collected as per the specifications in the
--	cwrSnapshotCtrlTable.
-- 

cwrSnapSummaryTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrSnapSummaryEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains summary information for captured snapshots
	defined in cwrSnapshotCtrlTable."
        ::= { cwrRadioSnapshotGroup 2 }

cwrSnapSummaryEntry OBJECT-TYPE
        SYNTAX CwrSnapSummaryEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrSnapSummaryTable. It is indexed
        by the ifIndex and cwrSnapDspNum."
        INDEX { ifIndex, cwrSnapshotDspNum }
        ::= { cwrSnapSummaryTable 1 }

CwrSnapSummaryEntry ::= SEQUENCE {
	cwrSnapAttr1Id        	Integer32,
	cwrSnapAttr1Size	Integer32,
	cwrSnapAttr2Id        	Integer32,
	cwrSnapAttr2Size	Integer32,
	cwrSnapAttr3Id        	Integer32,
	cwrSnapAttr3Size	Integer32,
	cwrSnapAttr4Id        	Integer32,
	cwrSnapAttr4Size	Integer32
        }

cwrSnapAttr1Id OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the first snapshot attribute value."
        ::= { cwrSnapSummaryEntry 2 }

cwrSnapAttr1Size OBJECT-TYPE
        SYNTAX Integer32 (0..4096)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of values captured for the snapshot
	cwrSnapAttr1Id."
        ::= { cwrSnapSummaryEntry 3 }

cwrSnapAttr2Id OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the second snapshot attribute value."
        ::= { cwrSnapSummaryEntry 4 }

cwrSnapAttr2Size OBJECT-TYPE
        SYNTAX Integer32 (0..4096)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of values captured for the snapshot
	cwrSnapAttr2Id."
        ::= { cwrSnapSummaryEntry 5 }

cwrSnapAttr3Id OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the third snapshot attribute value."
        ::= { cwrSnapSummaryEntry 6 }

cwrSnapAttr3Size OBJECT-TYPE
        SYNTAX Integer32 (0..4096)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of values captured for the snapshot
	cwrSnapAttr3Id."
        ::= { cwrSnapSummaryEntry 7 }

cwrSnapAttr4Id OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the third snapshot attribute value."
        ::= { cwrSnapSummaryEntry 8 }

cwrSnapAttr4Size OBJECT-TYPE
        SYNTAX Integer32 (0..4096)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"This object represents the number of values captured for the snapshot
	cwrSnapAttr4Id."
        ::= { cwrSnapSummaryEntry 9 }

--
--      The Snapshot Data Table. This table contains the Data
--	about the snapshots collected as per the specifications in the
--	cwrSnapshotCtrlTable.
-- 

cwrSnapDataTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrSnapDataEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains snapshot values collected based on the
	specifications in the cwrSnapshotCtrlTable."
        ::= { cwrRadioSnapshotGroup 3 }

cwrSnapDataEntry OBJECT-TYPE
        SYNTAX CwrSnapDataEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrSnapDataTable. It is indexed by the
	ifIndex and cwrSnapValueIndex. 

	The values in this table represent real numbers or complex numbers.
	If they are real numbers then cwrRealPart contains the data and
	cwrImaginaryPart is zero."
        INDEX { ifIndex, cwrSnapshotDspNum, cwrSnapValueIndex }
        ::= { cwrSnapDataTable 1 }

CwrSnapDataEntry ::= SEQUENCE {
	cwrSnapValueIndex       INTEGER,
	cwrRealPart		Integer32,
	cwrImaginaryPart       Integer32
        }

cwrSnapValueIndex OBJECT-TYPE
        SYNTAX INTEGER (1..4096)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object represents the snapshot entry index number."
        ::= { cwrSnapDataEntry 1 }

cwrRealPart OBJECT-TYPE
        SYNTAX Integer32 (-2147483648..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"The data sample value. Real part."
        ::= { cwrSnapDataEntry 2 }

cwrImaginaryPart OBJECT-TYPE
        SYNTAX Integer32 (-2147483648..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"The data sample value. Imaginary part if the attribute is represented
	by a complex number."
        ::= { cwrSnapDataEntry 3 }

--
-- The Antenna Group - This group is optional.
--

--
--      The Antenna Table. This table contains information about the
--      antennas available in the router.
-- 

cwrAntennaTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrAntennaEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table contains information about the antenns available for
	use."
        ::= { cwrRadioAntennaGroup 1 }

cwrAntennaEntry OBJECT-TYPE
        SYNTAX CwrAntennaEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in the cwrAntennaTable. This table provides 
        details on the antennas available for use on the local system. It is 
        indexed by cwrAntennaIndex."
        INDEX { cwrAntennaIndex }
        ::= { cwrAntennaTable 1 }

CwrAntennaEntry ::= SEQUENCE {
	cwrAntennaIndex		Integer32,
	cwrAntennaXDim		Integer32,
	cwrAntennaYDim          Integer32,
	cwrAntennaType		DisplayString, 
        cwrAntennaDescr         DisplayString,
	cwrAntennaGain		Integer32,
	cwrAntennaPolarization  INTEGER
        }

cwrAntennaIndex OBJECT-TYPE
        SYNTAX Integer32 (1..16)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"This object represents the index of this entry in the cwrAntennaTable."
        ::= { cwrAntennaEntry 1 }

cwrAntennaXDim OBJECT-TYPE
        SYNTAX Integer32 (1..96)
	UNITS "Inches"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object represents the dimension of the antenna in the
        X direction."
        ::= { cwrAntennaEntry 2 }

cwrAntennaYDim OBJECT-TYPE
        SYNTAX Integer32 (1..96)
	UNITS "Inches"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object represents the dimension of the antenna in the
        Y direction."
        ::= { cwrAntennaEntry 3 }

cwrAntennaType OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..64))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object represents antenna type for example 'dish-antenna'."
        ::= { cwrAntennaEntry 4 }

cwrAntennaDescr OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..64))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object describes the antenna."
        ::= { cwrAntennaEntry 5 }

cwrAntennaGain OBJECT-TYPE
        SYNTAX Integer32 (0..60)
	UNITS "dBi : decibel Isotropic"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object represents the gain of this antenna."
        ::= { cwrAntennaEntry 6 }

cwrAntennaPolarization OBJECT-TYPE
        SYNTAX INTEGER {
		vertical(1),
		horizontal(2)
	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object represents the electrirc polarization of the antanna."
        ::= { cwrAntennaEntry 7 }



--
-- The Test table.
-- This table provides facilities to test the wireless hardware.
-- 

cwrTestGroup   OBJECT IDENTIFIER ::= { cwrRadioInternal 1 }

cwrLoopbackTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrLoopbackEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table provides facilities to establish loopback points in the
        radio hardware to exercise various sections of the hardware."
        ::= { cwrTestGroup 1 }
 
cwrLoopbackEntry OBJECT-TYPE
        SYNTAX CwrLoopbackEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157)."
        INDEX { ifIndex }
        ::= { cwrLoopbackTable 1 }
 
CwrLoopbackEntry ::= SEQUENCE {
        cwrLocalLoopbackPoint INTEGER 
        }

cwrLocalLoopbackPoint OBJECT-TYPE
        SYNTAX INTEGER {
	          none(0),          
                  codec(1),     
		  framer(2),
		  fir(3),
		  if(4),
		  rf(5),
		  rfDiversity(6),
		  ifMain(7),
		  ifDiversity(8)
               }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This object represents the point in the system where the data signal
        is looped back.
        
        none(0)         - no loopback
        codec(1)        - loopback at the Encoder/Decoder module. This exercises
                          the framer, and codec modules
        framer(2)       - loopback at the 'framer' module.
        fir(3)          - loopback at the 'Finite Impulse Response' module. This
                          exercises the framer, codec, and FIR modules.
        if(4)           - loopback at the 'Internal Frequency' module using both
                          the main and the diversity receive paths.  This 
                          exercises the framer, codec, FIR, and IF modules.
        rf(5)           - loopback at the main RF unit via the main receive path
                          in the IF module. This exercises the framer, codec, 
                          FIR, IF, and RF modules.
        rfDiversity(6)  - loopback at the main RF unit but route it through the
                          diversity receive path in the IF module. This 
                          exercises the framer, codec, FIR, IF, and RF modules.
        ifMain(7)       - loopack at the IF module using only the Main receive 
                          path.  This exercises the framer, codec, FIR, and 
                          IF modules.
        ifDiversity(8)  - loopack at the IF module using only the diversity
                          receive path.  This exercises the framer, codec, FIR,
                          and IF modules."
        ::= { cwrLoopbackEntry 1 }
 
cwrScopePortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrScopePortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table provides facilities to redirect a portion of the signal
        being processed by a DSP to a scope port on the radio. An
	oscilloscope may be connected to the scope port to analyze the 
	signal."
        ::= { cwrTestGroup 2 }
 
cwrScopePortEntry OBJECT-TYPE
        SYNTAX CwrScopePortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "There exists one such entry for every interface in the ifTable which
        has an ifType of propWirelessP2P(157)."
        INDEX { ifIndex }
        ::= { cwrScopePortTable 1 }
 
CwrScopePortEntry ::= SEQUENCE {
	cwrScopePortOn		TruthValue,
	cwrScopePortDsp		INTEGER,
	cwrScopePortAttribute	Integer32
        }

cwrScopePortOn OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"If set to true(1), then the DSP identified by cwrScopePortDsp, will
	redirect a portion of the output signal for the attribute identified
	by cwrScopeAttribute to the scope port."
        ::= { cwrScopePortEntry 1 }

cwrScopePortDsp OBJECT-TYPE
        SYNTAX INTEGER(1..8)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This identifies the DSP that should redirect a portion of the
	signal data to the scope port."
        ::= { cwrScopePortEntry 2 }

cwrScopePortAttribute OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
	"This represents the attribute to be redirected to the scope port.
	The attributes that may be redirected to scope port is the same
	as that identified in cwrSnapshotType."
        ::= { cwrScopePortEntry 3 }

--
--      Trap Group
-- 

cwrRadioTrapTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CwrRadioTrapEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This table provides information about the last trap that was
	generated on this interface."
        ::= { cwrRadioLatestTrap 1 }

cwrRadioTrapEntry OBJECT-TYPE
        SYNTAX CwrRadioTrapEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "This represents one entry in this table."
        INDEX { ifIndex }
        ::= { cwrRadioTrapTable 1 }

CwrRadioTrapEntry ::= SEQUENCE {
	cwrTrapReason           DisplayString 
        }

cwrTrapReason OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..255))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
	"The explanation string for the event trap cwrEventId."
        ::= { cwrRadioTrapEntry 1 }

--
-- The following traps are generated by the radio system. These traps are not
-- in response to any threshold specification that might have been defined.
--

cwrTrapConfigMismatch NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrTrapReason }
	STATUS current
	DESCRIPTION
	"The radio subsystem has detected that the combination of the 
	configuration parameters that has been requested is inconsistent
	and cannot be supported.
	The cwrTrapReason is the textual description of what parameter causes
	the mismatch."
        ::= { cwrRadioDevTraps 1 }

cwrTrapInitFailure NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrTrapReason }
	STATUS current
	DESCRIPTION
	"The radio subsystem has failed to initialize the hardware successfully.
	This implies that there is a critical error condition in the associated
	hardware. The cwrTrapReason specifies the reason the init failed."
        ::= { cwrRadioDevTraps 2 }

cwrTrapLinkQuality NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrTrapReason }
	STATUS current
	DESCRIPTION
	"The radio subsystem has detected a significant change in 
	the radio link quality. The cwrTrapReason will describe
	the quality."
        ::= { cwrRadioDevTraps 3 }

cwrTrapLinkSyncLost NOTIFICATION-TYPE
	OBJECTS { ifIndex }
	STATUS current
	DESCRIPTION
	"The radio link has lost synchronization with the remote end."
        ::= { cwrRadioDevTraps 4 }

cwrTrapLinkSyncAcquired NOTIFICATION-TYPE
	OBJECTS { ifIndex }
	STATUS current
	DESCRIPTION
	"The radio link has acquired synchronization with the remote end."
        ::= { cwrRadioDevTraps 5 }

cwrTrapIfRxOsc NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrIfRxOscState }
	STATUS current
	DESCRIPTION
	"The IF receive frequency oscillator has changed state."
        ::= { cwrRadioDevTraps 6 }

cwrTrapIfTxOsc NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrIfTxOscState }
	STATUS current
	DESCRIPTION
	"The IF transmit frequency oscillator has changed state."
        ::= { cwrRadioDevTraps 7 }

cwrTrapIfRefOsc NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrIfRefOscState }
	STATUS current
	DESCRIPTION
	"The IF Reference Frequency oscillator has changed state."
        ::= { cwrRadioDevTraps 8 }

cwrTrapRfSupplyVoltage NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrRfSupplyVoltageState }
	STATUS current
	DESCRIPTION
	"The supply voltage to the RF resource has changed. 
	The cwrRfSupplyVoltageState specifies whether the supply voltage is
	in spec or not."
        ::= { cwrRadioDevTraps 9 }

cwrTrapRfRxOsc NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrRfRxOscState }
	STATUS current
	DESCRIPTION
	"The RF receive frequency oscillator has changed state.
	The cwrRfIndex identifies the RF resource that is the cause
	of this trap. The cwrRfRxOscState specifies the
	state of the oscilator."
        ::= { cwrRadioDevTraps 10 }

cwrTrapRfTxOsc NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrRfTxOscState }
	STATUS current
	DESCRIPTION
	"The RF transmit frequency oscillator has changed state.
	The cwrRfIndex identifies the RF resource	that is the cause
	of this trap. The cwrRfRxOscState specifies the
	state of the oscilator."
        ::= { cwrRadioDevTraps 11 }

cwrTrapRfTemp NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrRfTemperature }
	STATUS current
	DESCRIPTION
	"The temperature of the RF module identified by cwrRfIndex
	has exceeded a defined reference."
        ::= { cwrRadioDevTraps 12 }

cwrTrapRfStatusChange NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrRfStatus }
	STATUS current
	DESCRIPTION
	"This trap indicates that the RF resource either
	came online(1) or went offline(2). 
	The cwrRfIndex will identify which resource changed state
	and cwrRfStatus will identify what state it is in."
        ::= { cwrRadioDevTraps 13 }

cwrTrapLink1HrThresh NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrTrapReason }
	STATUS current
	DESCRIPTION
	"One of cwrLink1HrESAlarmThresh, cwrLink1HrSESAlarmThresh,
	 cwrLink1HrCSESAlarmThresh, cwrLink1HrDCMAlarmThresh was
	was exceeded. The cwrTrapReason will identify which
	threshold was exceeded."
        ::= { cwrRadioDevTraps 14 }

cwrTrapLink24HrThresh NOTIFICATION-TYPE
	OBJECTS { ifIndex, cwrTrapReason }
	STATUS current
	DESCRIPTION
	"One of cwrLink24HrESAlarmThresh, cwrLink24HrSESAlarmThresh,
	 cwrLink24HrCSESAlarmThresh, cwrLink24HrDCMAlarmThresh was
	was exceeded. The cwrTrapReason will identify which
	threshold was exceeded."
        ::= { cwrRadioDevTraps 15 }

--
-- The following trap is generated in response to a threshold defined
-- in cwrThreshTable.
--

cwrTrapThresh NOTIFICATION-TYPE
	OBJECTS { cwrThreshValue, cwrThreshHysteresisTime, cwrThreshLimitTime }
	STATUS current
	DESCRIPTION
	"The radio subsystem generates this trap when a threshold crosses
	its specified limit. The parameters identify the following
	cwrThreshValue          - The value that was crossed.
	cwrThreshHysteresisTime - The Hysteresis time that was specified.
	cwrThreshLimitTime      - The Limit time that was specified."
        ::= { cwrRadioThreshTraps 1 }

-- ============================================================================
--
-- Compliance Statements
--

cwrRadioIfConformance  OBJECT IDENTIFIER ::= { ciscoWirelessIfMIB 3 }
cwrRadioIfCompliances  OBJECT IDENTIFIER ::= { cwrRadioIfConformance 1 }
cwrRadioIfGroups       OBJECT IDENTIFIER ::= { cwrRadioIfConformance 2 }

cwrRadioBasicCompliance MODULE-COMPLIANCE
        STATUS     current
        DESCRIPTION
            "The compliance statement for devices that Point to Point
	    wireless interface compliant to Cisco Systems Inc.
	    specification."

        MODULE  -- ciscoWirelessIfMIB

        -- unconditionally mandatory groups
        MANDATORY-GROUPS {
	cwrComplianceRadioGroup,
	cwrComplianceRadioPhyQualityGroup,
	cwrComplianceRadioRfGroup,
	cwrComplianceReqLinkMetrics,
	cwrComplianceRadioTestGroup
        }

        GROUP cwrComplianceHistoryGroup
	DESCRIPTION
	"The History group may be implemented on both the Radio Master and
	Radio Slave. It is optional."

        GROUP cwrComplianceRadioTlGroup
	DESCRIPTION
	"The Timeline group may be implemented on both the Radio Master and
	Radio Slave. It is optional."

        GROUP cwrComplianceRadioSnapshotGroup
	DESCRIPTION
	"The Snapshot group may be implemented on both the Radio Master and
	Radio Slave. It is optional."

        GROUP cwrComplianceRadioAntennaGroup
	DESCRIPTION
	"This group may be implemented on both the Radio Master and Radio
	Slave. It is optional."

        GROUP cwrComplianceRadioPhyByteErrGroup
	DESCRIPTION
	"This group may be implemented on both the Radio Master and Radio
	Slave. It is optional."

        ::= { cwrRadioIfCompliances 1 }

--
-- The Basic Radio Group.
--

cwrComplianceRadioGroup OBJECT-GROUP
        OBJECTS {
		cwrRadioNextIndex,
		cwrAcquisitionMode,
		cwrSelfTest,
		cwrBasePrivacySupport,
		cwrTxRfIndex,
		cwrRx1RfIndex,
		cwrRx2RfIndex,
		cwrClockRefExt,
		cwrAntAlignment,
		cwrNumRxAntenna,
		cwrBandwidth,
		cwrThroughput,
		cwrOperatingBand,
		cwrTxFrequency,
		cwrRxFrequency,
		cwrTxPower,
		cwrCableLoss,
		cwrOpStatus,
		cwrCableLossDiversity,
		cwrBurstSize
		}
	STATUS     current
        DESCRIPTION
	"Group of objects implemented to configure a point to point wireless
	 radio.  This includes the cwrBurstSize object."
	::= { cwrRadioIfGroups 1 }

cwrComplianceRadioPhyQualityGroup OBJECT-GROUP
        OBJECTS {
		cwrArqPctBw,
		cwrArqVoiceLatency,
		cwrArqDataLatency,
		cwrArqBurstSize,
		cwrArqTypicalBitRate,
		cwrArqMinBitRate,
		cwrArqMaxLatencyJitter,
		cwrArqReset,
		cwrArqOn,
		cwrTrapReason
		}
	STATUS      current
	DESCRIPTION
	"Group of objects implemented to tune phy quality in the point to
	point wireless  systems."
	::= { cwrRadioIfGroups 2 }


cwrComplianceRadioRfGroup OBJECT-GROUP
        OBJECTS {
		cwrRfResIndex,
		cwrRFOpMode,
		cwrTxFreqRangeMin,
		cwrTxFreqRangeMax,
		cwrRxFreqRangeMin,
		cwrRxFreqRangeMax,
		cwrMinTxPower,
	        cwrMaxTxPower,
		cwrRfTxOscState,
		cwrRfAntIndex,
		cwrRfRxOscState,
		cwrRfTemperature,
		cwrRfSupplyVoltageState,
		cwrRfStatus,
		cwrRfControlChannelStatus,
		cwrBurstSizeGroup,
		cwrIfTxOscState,
		cwrIfRxOscState,
		cwrIfRefOscState,
		cwrIfResIndex,
		cwrIfInpFreq,
	        cwrIfOutFreq
		}
	STATUS     current
        DESCRIPTION
	"Group of objects implemented to tune phy quality in the point to
	point wireless  systems.  This group includes cwrBurstSizeGroup."
	::= { cwrRadioIfGroups 3 }

--
-- Required Link Metrics Group.
--
cwrComplianceReqLinkMetrics OBJECT-GROUP
        OBJECTS {
		cwrLinkCwESThresh,
		cwrLinkLowCwDSThresh,
		cwrLinkHighCwDSThresh,
		cwrLinkCSESThresh,
		cwrLink1HrESAlarmThresh,
		cwrLink1HrSESAlarmThresh,
		cwrLink1HrCSESAlarmThresh,
		cwrLink1HrDCMAlarmThresh,
		cwrLink24HrESAlarmThresh,
		cwrLink24HrSESAlarmThresh,
		cwrLink24HrCSESAlarmThresh,
		cwrLink24HrDCMAlarmThresh,
		cwrAvailableSeconds,
		cwrUnAvailableSeconds,
		cwrSyncLossSeconds,
		cwrPctErrorFreeSeconds,
		cwrPctErroredSeconds,
		cwrPctSeverelyErroredSeconds,
		cwrPctAvailSeconds,
		cwrPctCwDegradedMinutes,
		cwrSyncSuccessCount,
		cwrSyncFailureCount,
		cwrManagedSyncLoss,
		cwrAutomaticSyncLoss,
		cwrLastSyncSuccessTime,
		cwrLastSyncFailTime,
		cwrEffectivePhyDataRate,
		cwrPctEffectivePhyDataRate,
		cwr24HrUpdateTime,
		cwr24HrErrorFreeSeconds,
		cwr24HrErroredSeconds,
		cwr24HrSevErroredSeconds,
		cwr24HrConsecSvErrSeconds,
		cwr24HrDegradedMinutes,
		cwr24HrTotalErroredCodewords,
		cwr24HrTotalCodewords,
		cwr1HrUpdateTime,
		cwr1HrErrorFreeSeconds,
		cwr1HrErroredSeconds,
		cwr1HrSevErroredSeconds,
		cwr1HrConsecSvErrSeconds,
		cwr1HrDegradedMinutes,
		cwr1HrErroredCodewords,
		cwr1HrTotalCodewords,
		cwr1MinUpdateTime,
		cwr1MinErrorFreeSeconds,
		cwr1MinErroredSeconds,
		cwr1MinSevErroredSeconds,
		cwr1MinConsecSvCwErrSeconds,
		cwr1MinDegradedSeconds,
		cwr1MinErroredCodewords,
		cwr1MinCodewords,
		cwr1SecUpdateTime,
		cwr1SecRxCodewords,
		cwr1SecRSCodewordErrors,
		cwr1SecArqCodewordErrors,
		cwr1SecRxRrCount,
		cwr1SecRxRrEventCount,
		cwr1SecTxArqCount,
		cwr1SecTxArqEventCount,
		cwr1SecCorrectedSyncByteErrs,
		cwr1SecConsecutiveCwErrs,
		cwr1SecPostARQGoodCodewords
		}
	STATUS      current
	DESCRIPTION
	"Required Radio link metrics objects for the point to point wireless
	 systems."
	::= { cwrRadioIfGroups 4 }

--
-- Required Test Group
--
cwrComplianceRadioTestGroup OBJECT-GROUP
        OBJECTS {
		cwrLocalLoopbackPoint,
		cwrScopePortOn,
		cwrScopePortDsp,
		cwrScopePortAttribute
		}
	STATUS      current
	DESCRIPTION
	"Group of objects implemented in the point to point wireless
	 system for Testing the link."
	::= { cwrRadioIfGroups 5 }


--
-- Optional History Gruop
--
cwrComplianceHistoryGroup OBJECT-GROUP
        OBJECTS {
		cwrHistClass,
		cwrRfResourceId,
		cwrDspNumber,
		cwrStartBinValue,
		cwrBinDelta,
		cwrNumHistBins,
		cwrUpdateRate,
		cwrCollDuration,
		cwrOwnerId,
		cwrHistStatus,
		cwrHistBitShift,
		cwrHistToneSelection,
		cwrHistToneValue,
		cwrHistAction,
		cwrHistRowStatus,
		cwrHistPeriodicSum,
		cwrHistUpdateTime,
		cwrHistMin,
		cwrHistMax,
		cwrHistMean,
		cwrValue
	        }
	STATUS     current
        DESCRIPTION
	"Group of objects implemented in the point to point wireless
	 system for capturing histograms of radio signal parameters on the radio
	interface."
	::= { cwrRadioIfGroups 6 }

--
-- Optional Radio Timeline group.
--
cwrComplianceRadioTlGroup OBJECT-GROUP
        OBJECTS {
		cwrThreshAttribute,
		cwrThreshType,
		cwrThreshAntId,
		cwrThreshValue,
		cwrThreshHysteresisTime,
		cwrThreshLimitTime,
		cwrThreshRowStatus,
		cwrThreshDspNum,
		cwrTlClass,
		cwrTlRfResourceId,
		cwrTlDspNum,
		cwrTlNumDataValues,
		cwrTlDecimationFactor,
		cwrTlPreSumShift,
		cwrTlToneSelection,
		cwrTlToneValue,
		cwrTlThreshIndex,
		cwrTlAction,
		cwrTlStatus,
		cwrTlPostTrigBufMgmt,
		cwrTlRowStatus,
		cwrTlUpdateTime,
		cwrTlNumValues,
		cwrTlTriggerLoc,
		cwrTlValue
	        }
	STATUS      current
	DESCRIPTION
	"Group of objects implemented in the point to point wireless
	system for establishing thresholds and capturing timeline data."
	::= { cwrRadioIfGroups 7 }

--
-- Optional Snapshot group
--
cwrComplianceRadioSnapshotGroup OBJECT-GROUP
        OBJECTS {
		cwrSnapshotType,
		cwrSnapshotAction,
		cwrSnapshotStatus,
		cwrSnapshotRowStatus,
		cwrSnapAttr1Id,
		cwrSnapAttr1Size,
		cwrSnapAttr2Id,
		cwrSnapAttr2Size,
		cwrSnapAttr3Id,
		cwrSnapAttr3Size,
		cwrSnapAttr4Id,
		cwrSnapAttr4Size,
		cwrRealPart,
		cwrImaginaryPart
	        }
	STATUS      current
	DESCRIPTION
	"Group of objects implemented in the point to point wireless
	 system for capturing snapshots of various parameters on the radio
	interface."
	::= { cwrRadioIfGroups 8 }

--
-- Optional Antenna Group.
--
cwrComplianceRadioAntennaGroup OBJECT-GROUP
        OBJECTS {
		cwrAntennaXDim,
		cwrAntennaYDim,
		cwrAntennaType, 
	        cwrAntennaDescr,
		cwrAntennaGain,
		cwrAntennaPolarization
	        }
	STATUS      current
	DESCRIPTION
	"Group of objects implemented in the point to point wireless
	 system for managing the antennas available in the system."
	::= { cwrRadioIfGroups 9 }

--
-- Optional Corrected Byte Error Group.
--
cwrComplianceRadioPhyByteErrGroup OBJECT-GROUP
        OBJECTS {
		cwrArq1ByteErrs,
		cwrArq2ByteErrs,
		cwrArq3ByteErrs,
		cwrArq4ByteErrs,
		cwrArq5ByteErrs,
		cwrArq6ByteErrs,
		cwrArq7ByteErrs,
		cwrArq8ByteErrs,
		cwrArq9ByteErrs
	        }
	STATUS      current
	DESCRIPTION
	"Group of objects implemented in the point to point wireless
	 system for tracking the number of errored bytes that were
	automatically corrected."
	::= { cwrRadioIfGroups 10 }

END