// Copyright (c) 2005 DMTF.  All rights reserved.
   [Abstract, Version ( "2.10.0" ), 
    UMLPackagePath ( "CIM::Device::Controller" ), 
    Description ( 
       "Controller is a superclass for grouping the miscellaneous "
       "control-related Devices that provide a classic bus master "
       "interface. Examples of Controllers are USBControllers, "
       "SerialControllers, and so on. The Controller class is an "
       "abstraction for Devices with a single protocol stack, which "
       "exist to control communications (data, control, and reset) to "
       "downstream devices. Note that a new abstract class "
       "(ProtocolController) has been created to model more complex "
       "interface controllers such as SCSI." )]
class CIM_Controller : CIM_LogicalDevice {

      [Description ( "Time of last reset of the Controller." )]
   datetime TimeOfLastReset;

      [Description ( 
          "The protocol used by the Controller to access controlled Devices."
           ), 
       ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", 
          "11", "12", "13", "14", "15", "16", "17", "18", "19", 
          "20", "21", "22", "23", "24", "25", "26", "27", "28", 
          "29", "30", "31", "32", "33", "34", "35", "36", "37", 
          "38", "39", "40", "41", "42", "43", "44", "45", "46", 
          "47", "48" }, 
       Values { "Other", "Unknown", "EISA", "ISA", "PCI", 
          "ATA/ATAPI", "Flexible Diskette", "1496", 
          "SCSI Parallel Interface", 
          // 10               
          "SCSI Fibre Channel Protocol", 
          "SCSI Serial Bus Protocol", 
          "SCSI Serial Bus Protocol-2 (1394)", 
          "SCSI Serial Storage Architecture", "VESA", "PCMCIA", 
          "Universal Serial Bus", "Parallel Protocol", "ESCON", 
          "Diagnostic", // 20               
          "I2C", 
          "Power", "HIPPI", "MultiBus", "VME", "IPI", "IEEE-488", 
          "RS232", "IEEE 802.3 10BASE5", "IEEE 802.3 10BASE2", 
          // 30               
          "IEEE 802.3 1BASE5", 
          "IEEE 802.3 10BROAD36", "IEEE 802.3 100BASEVG", 
          "IEEE 802.5 Token-Ring", "ANSI X3T9.5 FDDI", "MCA", 
          "ESDI", "IDE", "CMD", "ST506", 
          // 40               
          "DSSI", "QIC2", 
          "Enhanced ATA/IDE", "AGP", "TWIRP (two-way infrared)", 
          "FIR (fast infrared)", "SIR (serial infrared)", "IrBus", 
          "Serial ATA" }, 
       MappingStrings { "MIF.DMTF|Bus Port|004.2", 
          "MIF.DMTF|Disks|003.3" }, 
       ModelCorrespondence { "CIM_Controller.ProtocolDescription" }]
   uint16 ProtocolSupported;

      [Description ( 
          "Maximum number of directly addressable entities that are "
          "supported by this Controller. A value of 0 should be "
          "used if the number is unknown or unlimited." ), 
       MappingStrings { "MIF.DMTF|Bus Port|004.9" }]
   uint32 MaxNumberControlled;

      [Description ( 
          "A free-form string that provides more information that "
          "is related to the ProtocolSupported by the Controller." ), 
       MappingStrings { "MIF.DMTF|Bus Port|004.3" }, 
       ModelCorrespondence { "CIM_Controller.ProtocolSupported" }]
   string ProtocolDescription;


};
