// Copyright (c) 2005 DMTF.  All rights reserved.
   [Version ( "2.10.0" ), 
    UMLPackagePath ( "CIM::Device::Ports" ), 
    Description ( 
       "The abstraction of a port or connection point of a Device. "
       "This object should be instantiated when the Port has "
       "independent management characteristics from the Device that "
       "includes it. Examples are a Fibre Channel Port and a USB Port." )]
class CIM_LogicalPort : CIM_LogicalDevice {

      [Description ( "The bandwidth of the Port in Bits per Second." ), 
       Units ( "Bits per Second" ), 
       PUnit ( "bit / second" )]
   uint64 Speed;

      [Description ( 
          "The maximum bandwidth of the Port in Bits per Second." ), 
       Units ( "Bits per Second" ), 
       PUnit ( "bit / second" )]
   uint64 MaxSpeed;

      [Write, Description ( 
          "The requested bandwidth of the Port in Bits per Second. "
          "The actual bandwidth is reported in LogicalPort.Speed." ), 
       Units ( "Bits per Second" ), 
       ModelCorrespondence { "CIM_LogicalPort.Speed" }, 
       PUnit ( "bit / second" )]
   uint64 RequestedSpeed;

      [Description ( 
          "In some circumstances, a LogicalPort might be "
          "identifiable as a front end or back end port. An example "
          "of this situation would be a storage array that might "
          "have back end ports to communicate with disk drives and "
          "front end ports to communicate with hosts. If there is "
          "no restriction on the use of the port, then the value "
          "should be set to \'not restricted\'." ), 
       ValueMap { "0", "2", "3", "4" }, 
       Values { "Unknown", "Front-end only", "Back-end only", 
          "Not restricted" }]
   uint16 UsageRestriction;

      [Description ( 
          "PortType is defined to force consistent naming of the "
          "\'type\' property in subclasses and to guarantee unique "
          "enum values for all instances of NetworkPort. When set "
          "to 1 (\"Other\"), related property OtherPortType "
          "contains a string description of the type of port. A "
          "range of values, DMTF_Reserved, has been defined that "
          "allows subclasses to override and define their specific "
          "types of ports." ), 
       ValueMap { "0", "1", "2", "3..15999", "16000..65535" }, 
       Values { "Unknown", "Other", "Not Applicable", 
          "DMTF Reserved", "Vendor Reserved" }, 
       ModelCorrespondence { "CIM_NetworkPort.OtherNetworkPortType" }]
   uint16 PortType;

      [Description ( 
          "Describes the type of module, when PortType is set to 1 (\"Other\")."
           ), 
       ModelCorrespondence { "CIM_LogicalPort.PortType" }]
   string OtherPortType;


};
