// Copyright (c) 2008 DMTF.  All rights reserved.
   [Version ( "2.18.0" ), 
    UMLPackagePath ( "CIM::Physical::Connector" ), 
    Description ( 
       "The Slot class represents Connectors into which Packages are "
       "inserted. For example, a PhysicalPackage that is a DiskDrive "
       "may be inserted into an SCA \'Slot\'. As another example, a "
       "Card (subclass of PhysicalPackage) may be inserted into a 16-, "
       "32-, or 64-bit expansion \'Slot\' on a HostingBoard. PCI or "
       "PCMCIA Type III Slots are examples of the latter." )]
class CIM_Slot : CIM_PhysicalConnector {

      [Override ( "ConnectorType" ), 
       MappingStrings { "MIF.DMTF|System Slot|005.2" }]
   uint16 ConnectorType[];

      [Override ( "PoweredOn" ), 
       MappingStrings { "MIF.DMTF|System Slot|005.13" }]
   boolean PoweredOn;

      [Description ( 
          "Boolean indicating whether the Slot supports hot-plug of "
          "adapter Cards." )]
   boolean SupportsHotPlug;

      [Description ( 
          "Maximum height of an adapter Card that can be inserted "
          "into the Slot, in inches." ), 
       Units ( "Inches" ), 
       PUnit ( "inch" )]
   real32 HeightAllowed;

      [Description ( 
          "Maximum length of an adapter Card that can be inserted "
          "into the Slot, in inches." ), 
       Units ( "Inches" ), 
       PUnit ( "inch" )]
   real32 LengthAllowed;

      [Description ( 
          "Maximum bus width of adapter Cards that can be inserted "
          "into this Slot, in bits. If the value is \'unknown\', "
          "enter 0. If the value is other than 8, 16, 32, 64 or "
          "128, enter 1." ), 
       Units ( "Bits" ), 
       ValueMap { "0", "1", "8", "16", "32", "64", "128" }, 
       MappingStrings { "MIF.DMTF|System Slot|005.3" }, 
       PUnit ( "bit" )]
   uint16 MaxDataWidth;

      [Description ( 
          "An array of enumerated integers indicating the Vcc "
          "voltage supported by this Slot." ), 
       ValueMap { "0", "1", "2", "3" }, 
       Values { "Unknown", "Other", "3.3V", "5V" }, 
       MappingStrings { "MIF.DMTF|System Slot|005.9" }]
   uint16 VccMixedVoltageSupport[];

      [Description ( 
          "An array of enumerated integers indicating the Vpp "
          "voltage supported by this Slot." ), 
       ValueMap { "0", "1", "2", "3", "4" }, 
       Values { "Unknown", "Other", "3.3V", "5V", "12V" }, 
       MappingStrings { "MIF.DMTF|System Slot|005.10" }]
   uint16 VppMixedVoltageSupport[];

      [Description ( 
          "Maximum thermal dissipation of the Slot in milliwatts." ), 
       Units ( "MilliWatts" ), 
       MappingStrings { "MIF.DMTF|System Slot|005.11" }, 
       PUnit ( "watt * 10^-3" )]
   uint32 ThermalRating;

      [Description ( 
          "Boolean indicating that this Slot is physically unique "
          "and may hold special types of hardware, e.g. a graphics "
          "processor slot. If set to TRUE, then the property, "
          "Special PurposeDescription (a string), should specify "
          "the nature of the uniqueness or purpose of the Slot." ), 
       ModelCorrespondence { "CIM_Slot.PurposeDescription" }]
   boolean SpecialPurpose;

      [Description ( 
          "A free-form string describing that this Slot is "
          "physically unique and may hold special types of "
          "hardware. This property only has meaning when the "
          "corresponding boolean property, SpecialPurpose, is set "
          "to TRUE." ), 
       ModelCorrespondence { "CIM_Slot.SpecialPurpose" }]
   string PurposeDescription;

      [Description ( 
          "The Number property indicates the physical slot number, "
          "which can be used as an index into a system slot table, "
          "whether or not that slot is physically occupied." ), 
       MappingStrings { "MIF.DMTF|System Slot|005.1" }]
   uint16 Number;

      [Deprecated { "CIM_PhysicalElement.PoweredOn" }, 
       Description ( 
          "A boolean indicating whether the Slot is currently "
          "powered (TRUE) or not (FALSE)." ), 
       MappingStrings { "MIF.DMTF|System Slot|005.13" }]
   boolean Powered;

      [Description ( 
          "A boolean indicating whether the switch state of the "
          "Slot is currently open (TRUE) or closed (FALSE). This "
          "switch state determines whether the contents of the Slot "
          "can be hot-plugged." ), 
       MappingStrings { "MIF.DMTF|System Slot|005.15" }]
   boolean OpenSwitch;

      [Description ( 
          "Maximum link width of a switching bus type, such as "
          "Infiniband and PCI Express. The width is expressed in "
          "number of communication lines, or lanes, between port "
          "and devices. This property dictates the maximum link "
          "width, in lanes, of adapter Cards that can be inserted "
          "into this Slot. If the value is \'unknown\', enter 0." ), 
       ValueMap { "0", "2", "3", "4", "5", "6", "7", "8", "9.." }, 
       Values { "Unknown", "x1", "x2", "x4", "x8", "x12", "x16", 
          "x32", "DMTF Reserved" }]
   uint16 MaxLinkWidth;

      [Description ( 
          "An array of strings that identify the components that "
          "are compatible and can be inserted in a slot. This "
          "allows vendors to provide clues to the system "
          "administrators by providing sufficient information to "
          "request the appropriate hardware that can populate the "
          "slot. In order to ensure uniqueness within the "
          "NameSpace, each value defined by the vendor for use in "
          "the VendorCompatibilityStrings property SHOULD be "
          "constructed using the following \'preferred\' algorithm: \n"
          "<OrgID>:<LocalID> \n"
          "Where <OrgID> and <LocalID> are separated by a colon "
          "\':\', and where <OrgID> MUST include a copyrighted, "
          "trademarked or otherwise unique name that is owned by "
          "the business entity creating/defining the InstanceID, or "
          "is a registered ID that is assigned to the business "
          "entity by a recognized global authority (This is similar "
          "to the <Schema Name>_<Class Name> structure of Schema "
          "class names.) In addition, to ensure uniqueness <OrgID> "
          "MUST NOT contain a colon (\':\'). When using this "
          "algorithm, the first colon to appear in InstanceID MUST "
          "appear between <OrgID> and <LocalID>. \n"
          "<LocalID> is chosen by the business entity and SHOULD "
          "not be re-used to identify different underlying "
          "(real-world) elements." ), 
       ModelCorrespondence { 
          "CIM_PhysicalPackage.VendorCompatibilityStrings" }]
   string VendorCompatibilityStrings[];


};
