// Copyright (c) 2009 DMTF.  All rights reserved.
   [Version ( "2.23.0" ), 
    UMLPackagePath ( "CIM::Device::CoolingAndPower" ), 
    Description ( 
       "PowerUtilizationManagementService represents the ability of a "
       "platform or component to perform autonomic management of its "
       "power utilization." )]
class CIM_PowerUtilizationManagementService : CIM_Service {

      [Description ( 
          "PowerUtilizationMode indicates the current power "
          "utilization mode implemented by the service. The mode "
          "selection is a generally made infrequently as part of "
          "element configuration. \n"
          "A value of \"None\" shall indicate that no effort is "
          "being made to reduce the power consumed by the system "
          "below nominal. \n"
          "A value of \"Dynamic\" shall indicate the "
          "PowerUtilizationManagementService is actively modifying "
          "the configuration of one or more system components in "
          "order to reduce the power consumed. \n"
          "A value of \"Static\" shall indicate the system whose "
          "power utilization functionality is represented by the "
          "PowerUtilizationManagementService is operating with a "
          "fixed configuration resulting in a lower level of power "
          "consumption than nominal. Static mode differs from "
          "dynamic in that the mode corresponds to a single fixed "
          "configuration, while dynamic mode implies frequent "
          "changes in system configuration." ), 
       ValueMap { "2", "3", "4", "..", "32768..65535" }, 
       Values { "None", "Dynamic", "Static", "DMTF Reserved", 
          "Vendor Reserved" }, 
       ModelCorrespondence { 
          "CIM_PowerUtilizationManagementCapabilities.PowerUtilizationModesSupported" }]
   uint16 PowerUtilizationMode = 2;


      [Description ( 
          "Applies the Power Allocation Settings that "
          "represents.the power aspect of the system. When applied "
          "to a system\'s Power Allocation settings, a system\'s "
          "power allocation settingsmay be modified.Upon "
          "successfull execution if the limit property of the power "
          "aspectis modified the power cap is modified" ), 
       ValueMap { "0", "1", "2", "4096", "..", "32768..65535" }, 
       Values { "Completed with No Error", "Not Supported", 
          "Failed", "Job Started", "DMTF Reserved", "Vendor Reserved" }]
   uint32 ApplyPowerAllocationSettings(
         [Required, In, Description ( 
             "An embedded instance of class "
             "CIM_PowerAllocationSettingData that describes "
             "modifications to the existing power allocation "
             "aspects of a computer system. The embedded "
             "instance must have a valid InstanceID in order to "
             "identify the power allocation setting to be "
             "modified." ), 
          EmbeddedInstance ( "CIM_PowerAllocationSettingData" )]
      string PowerAllocationSettings, 
         [In ( false ), Out, Description ( 
             "If the operation is long running, then optionally "
             "a job be returned." )]
      CIM_ConcreteJob REF Job);

};
