/***********************************************************************\
*
* NAME:	Ncs2Cm.mof	
*
* DESCRIPTION: Master MOF file with base class definitions from DMTF's 
*			   CIM 2.6.0 schema needed for Intel PRO Network Adapters
*			   WMI Provider 802.3 schema. 
*
* PREREQUISITE: cimwin32.mof
* 
*
* NOTE:	This file generates language neutral MOF for CIMV2 namespace. 
*		This file also generates ENU language specific MFL. 
*
\***********************************************************************/

#pragma namespace ("\\\\.\\Root\\CIMV2")
// ===================================================================
// EthernetAdapter
// ===================================================================
[Abstract, Version ("2.6.0"), Description (
   "Capabilities and management of an EthernetAdapter."): ToSubclass Amended,  LOCALE(0x409) ]
class CIM_EthernetAdapter : CIM_NetworkAdapter {

   [Override ("NetworkAddresses"), 
    Description (
       "Ethernet/802.3 MAC addresses formatted as twelve hexadecimal "
       "digits (e.g. \"010203040506\"), with each pair representing "
       "one of the six octets of the MAC address in \"canonical\" bit "
       "order.  (Thus, the Group address bit is found in the low "
       "order bit of the first character of the string.)"): ToSubclass Amended,
    ArrayType ("Indexed"): ToSubclass ]
    string NetworkAddresses[];

   [Description (
       "The maximum size of the INFO (non-MAC) field that will be "
       "received or transmitted."): ToSubclass Amended, 
    Mappingstrings {"MIB.IETF|BRIDGE-MIB.dot1dTpPortMaxInfo"}: ToSubclass ]
    uint32 MaxDataSize;

   [Description (
       "Capabilities of the EthernetAdapter. For example, the "
       "Device may support AlertOnLan, WakeOnLan, Load Balancing "
       "and/or FailOver. If failover or load balancing "
       "capabilities are listed, a SpareGroup (failover) or "
       "ExtraCapacityGroup (load balancing) should also be defined "
       "to completely describe the capability."): ToSubclass Amended, 
    ArrayType ("Indexed"), 
    ValueMap {"0", "1", "2", "3", "4", "5"}: Amended,  
    Values {"Unknown", "Other", "AlertOnLan", "WakeOnLan", 
       "FailOver", "LoadBalancing"}: Amended, 
    ModelCorrespondence {
       "CIM_EthernetAdapter.CapabilityDescriptions"}: ToSubclass ]
   uint16 Capabilities[];

   [Description (
       "An array of free-form strings providing more detailed "
       "explanations for any of the EthernetAdapter features "
       "indicated in the Capabilities array. Note, each entry of "
       "this array is related to the entry in the Capabilities "
       "array that is located at the same index."): ToSubclass Amended, 
    ArrayType ("Indexed"): ToSubclass, 
    ModelCorrespondence {"CIM_EthernetAdapter.Capabilities"}: ToSubclass ]
   string CapabilityDescriptions[];

   [Description (
       "Specifies which capabilities are enabled from the list "
       "of all supported ones, defined in the Capabilities array."): ToSubclass Amended, 
    ValueMap {"0", "1", "2", "3", "4", "5"}: ToSubclass Amended,  
    Values {"Unknown", "Other", "AlertOnLan", "WakeOnLan", 
       "FailOver", "LoadBalancing"}: ToSubclass Amended, 
    ModelCorrespondence {"CIM_EthernetAdapter.Capabilities"}: ToSubclass]
   uint16 EnabledCapabilities[];

   [Description (
       "The number of times there was an invalid data symbol when "
       "a valid carrier was present. The count is incremented at "
       "most once per carrier event, even if multiple symbol "
       "errors occur during the carrier event."): ToSubclass Amended, 
    MappingStrings {"MIB.IETF|EtherLike-MIB.dot3StatsSymbolErrors"}: ToSubclass, 
    Counter : ToSubclass] 
   uint32 SymbolErrors;

   [Description ("The total number of packets transmitted."): ToSubclass Amended, 
    MappingStrings {"MIF.DMTF|Network Adapter 802 Port|001.6"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint64 TotalPacketsTransmitted;

   [Description ("The total number of packets received."): ToSubclass Amended, 
    MappingStrings {"MIF.DMTF|Network Adapter 802 Port|001.8"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint64 TotalPacketsReceived;

   [Description (
       "A count of frames received on a particular interface "
       "that are not an integral number of octets in length and do "
       "not pass the FCS check. The count represented by an "
       "instance of this object is incremented when the alignment"
       "Error status is returned by the MAC layer to the LLC (or "
       "other MAC user). Received frames for which multiple error "
       "conditions obtain are, according to the conventions of IEEE "
       "802.3 Layer Management, counted exclusively according to "
       "the error status presented to the LLC."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsAlignmentErrors"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 AlignmentErrors;

   [Description (
       "A count of frames received on a particular interface "
       "that are an integral number of octets in length but do "
       "not pass the FCS check. The count represented by an "
       "instance of this object is incremented when the Frame"
       "CheckError status is returned by the MAC layer to the "
       "LLC (or other MAC user). Received frames for which "
       "multiple error conditions obtaine are, according to the "
       "conventions of IEEE 802.3 Layer Management, counted "
       "exclusively according to the error status presented to "
       "the LLC."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsFCSErrors"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 FCSErrors;

   [Description (
       "A count of successfully transmitted frames on a particular "
       "interface for which transmission is inhibited by exactly "
       "one collision. A frame that is counted by an instance of "
       "this object is not counted by the corresponding instance "
       "of the MultipleCollisionFrames property.") : ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsSingleCollisionFrames"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 SingleCollisionFrames;

   [Description (
       "A count of successfully transmitted frames on a particular "
       "interface for which transmission is inhibited by more than "
       "one collision. A frame that is counted by an instance of "
       "this object is not counted by the corresponding instance "
       "of the SingleCollisionFrames property.") : ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsMultipleCollisionFrames"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 MultipleCollisionFrames;

   [Description (
       "A count of times that the SQE TEST ERROR message is "
       "generated by the PLS sublayer for a particular interface. "
       "The SQE TEST ERROR message is defined in section "
       "7.2.2.2.4 of ANSI/IEEE 802.3-1985 and its generation is "
       "described in section 7.2.4.6 of the same document."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsSQETestErrors"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 SQETestErrors;

   [Description (
       "A count of frames for which the first transmission "
       "attempt on a particular interface is delayed because the "
       "medium is busy. The count represented by an instance of "
       "this object does not include frames involved in collisions."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsDeferredTransmissions"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 DeferredTransmissions;

   [Description (
       "The number of times that a collision is detected on a "
       "particular interface later than 512 bit-times into the "
       "transmission of a packet. Five hundred and twelve bit-"
       "times corresponds to 51.2 microseconds on a 10 Mbit/s "
       "system. A (late) collision included in a count "
       "represented by an instance of this object is also "
       "considered as a (generic) collision for purposes of "
       "other collision-related statistics."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsLateCollisions"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 LateCollisions;

   [Description (
       "A count of frames for which transmission on a particular "
       "interface fails due to excessive collisions."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsExcessiveCollisions"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 ExcessiveCollisions;

   [Description (
       "A count of frames for which transmission on a particular "
       "interface fails due to an internal MAC sublayer transmit "
       "error. A frame is only counted by an instance of this "
       "object if it is not counted by the corresponding instance "
       "of either the LateCollisions property, the Excessive"
       "Collisions property, or the CarrierSenseErrors property. "
       "The precise meaning of the count represented by an instance "
       "of this object is implementation-specific.  In particular, "
       "an instance of this object may represent a count of "
       "transmission errors on a particular interface that are "
       "not otherwise counted."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsInternalMacTransmitErrors"}: ToSubclass, 
    Counter: ToSubclass  ] 
   uint32 InternalMACTransmitErrors;

   [Description (
       "A count of frames for which reception on a particular "
       "interface fails due to an internal MAC sublayer receive "
       "error. A frame is only counted by an instance of this "
       "object if it is not counted by the corresponding instance "
       "of either the FrameTooLongs property, the AlignmentErrors "
       "property, or the FCSErrors property. The precise meaning "
       "of the count represented by an instance of this object is "
       "implementation-specific.  In particular, an instance of "
       "this object may represent a count of receive errors on a "
       "particular interface that are not otherwise counted."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsInternalMacReceiveErrors"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 InternalMACReceiveErrors;

   [Description (
       "The number of times that the carrier sense condition was "
       "lost or never asserted when attempting to transmit a frame "
       "on a particular interface. The count represented by an "
       "instance of this object is incremented at most once per "
       "transmission attempt, even if the carrier sense condition "
       "fluctuates during a transmission attempt."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsCarrierSenseErrors"}: ToSubclass, 
    Counter: ToSubclass ] 
   uint32 CarrierSenseErrors;

   [Description (
       "A count of frames received on a particular interface that "
       "exceed the maximum permitted frame size. The count "
       "represented by an instance of this object is incremented "
       "when the FrameTooLong status is returned by the MAC layer "
       "to the LLC (or other MAC user). Received frames for which "
       "multiple error conditions obtain are, according to the "
       "conventions of IEEE 802.3 Layer Management, counted "
       "exclusively according to the error status presented to "
       "the LLC."): ToSubclass Amended,
    Mappingstrings {
       "MIB.IETF|EtherLike-MIB.dot3StatsFrameTooLongs"}: ToSubclass, 
    Counter: ToSubclass  ] 
   uint32 FrameTooLongs;
};


// ==================================================================
//    ProvidesServiceToElement
// ==================================================================
   [Abstract, Version ("2.6.0"), Description (
     "CIM_ProvidesServiceToElement is used to describe that "
     "ManagedElements may be dependent on the functionality "
     "of one or more Services. An example is that a Processor "
     "and an Enclosure (PhysicalElement) are dependent on AlertOn"
     "LAN Services to signal an incomplete or erroneous boot, and "
     "hardware-related errors."): ToSubclass Amended,  LOCALE(0x409) ]
class CIM_ProvidesServiceToElement : CIM_Dependency {
      [Override ("Antecedent"), Description (
        "The Service provided."): ToSubclass Amended ]
   CIM_Service ref Antecedent;
      [Override ("Dependent"), Description (
        "The ManagedElement dependent on the Service."): ToSubclass Amended ]
   CIM_ManagedElement ref Dependent;
};