// Copyright (c) 1997-2008 Microsoft Corporation, All Rights Reserved

#pragma autorecover
#pragma classflags(64)
#pragma namespace("\\\\.\\root\\interop")

Instance of __Win32Provider as $InteropProvider
{
  Name = "ProfileAssociationProviderInterop";
  HostingModel = "LocalSystemHost:UmpoWmi";
  ImpersonationLevel = 1;
  CLSID = "{4B314A47-12E0-4d52-95FE-084B9224DD4F}";
};

Instance of __InstanceProviderRegistration
{
  Provider = $InteropProvider;
  SupportsGet = FALSE;
  SupportsPut = FALSE;
  SupportsDelete = FALSE;
  SupportsEnumeration = TRUE;
};

[Locale(1033) : ToInstance,UUID("{8116a35d-671e-47b2-bcf6-1a43b7ec8b4a}") : ToInstance] 
class Win32_PowerSupplyProfile : CIM_RegisteredProfile
{
};

Instance of Win32_PowerSupplyProfile as $PowerSupplyProfile
{
  InstanceID = "Power Supply";
  RegisteredName = "Power Supply Profile";
  RegisteredOrganization = 1;
  OtherRegisteredOrganization = "Microsoft";
  RegisteredVersion = "1.0";
};

[Locale(1033) : ToInstance,UUID("{ac1de07e-50bd-49ec-a849-c1b7e089e3c0}") : ToInstance] 
class Win32_PowerSupplyConformsToProfile : CIM_ElementConformsToProfile
{
  [read] CIM_RegisteredProfile Ref ConformantStandard = $PowerSupplyProfile;
  [read,MSFT_TargetNamespace("root\\cimv2\\power")] Win32_PowerSupply Ref ManagedElement;
};

Instance of Win32_PowerSupplyConformsToProfile as $PowerSupplyConformantInterop
{
  ManagedElement = $PowerSupply;
};

[Dynamic,Provider("ProfileAssociationProviderInterop") : ToInstance ToSubclass,Locale(1033) : ToInstance,UUID("{fa20a145-baea-4d8a-bacd-a952e926fe8f}") : ToInstance] 
class Win32_PowerMeterConformsToProfile : CIM_ElementConformsToProfile
{
  [read] CIM_RegisteredProfile Ref ConformantStandard = $PowerSupplyProfile;
  [read,MSFT_TargetNamespace("root\\cimv2\\power")] Win32_PowerMeter Ref ManagedElement;
};
#pragma namespace("\\\\.\\root\\cimv2\\power")

Instance of __Win32Provider as $CimV2Provider
{
  Name = "ProfileAssociationProviderCimV2";
  HostingModel = "LocalSystemHost:UmpoWmi";
  ImpersonationLevel = 1;
  CLSID = "{8F22970F-2910-4baf-9B34-396F18318C17}";
};

Instance of __InstanceProviderRegistration
{
  Provider = $CimV2Provider;
  SupportsGet = FALSE;
  SupportsPut = FALSE;
  SupportsDelete = FALSE;
  SupportsEnumeration = TRUE;
};

[Locale(1033) : ToInstance,UUID("ce665784-cdbf-4df5-aa8d-646b9cef02ab") : ToInstance] 
class Win32_PowerSupply : CIM_PowerSupply
{
  [read] string Name;
  [read,key] string DeviceID;
};

Instance of Win32_PowerSupply as $PowerSupply
{
  DeviceID = "Power Supply 0";
  Name = "Microsoft Power Supply Device";
  Description = "This class represents a static power supply on the system";
  Status = "OK";
};

[Dynamic,Provider("ProfileAssociationProviderCimV2") : ToInstance ToSubclass,Locale(1033) : ToInstance,UUID("{fa20a145-baea-4d8a-bacd-a952e926fe8f}") : ToInstance] 
class Win32_PowerMeterConformsToProfile : CIM_ElementConformsToProfile
{
  [read,MSFT_TargetNamespace("root\\interop")] CIM_RegisteredProfile Ref ConformantStandard = $PowerSupplyProfile;
  [read] Win32_PowerMeter Ref ManagedElement;
};
#pragma autorecover
#pragma classflags(64)
#pragma namespace("\\\\.\\root\\interop")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\root\\interop\\ms_409")

[DisplayName("Power Supply Profile") : Amended ToSubclass,Description("A power supply profile as defined by the DMTF specification") : Amended ToSubclass,AMENDMENT, LOCALE("ms_409") : ToInstance] 
class Win32_PowerSupplyProfile : CIM_RegisteredProfile
{
};

[DisplayName("Power Supply Conforms To Profile") : Amended ToSubclass,Description("An association between a power supply and the registered power supply profile.") : Amended ToSubclass,AMENDMENT, LOCALE("ms_409") : ToInstance] 
class Win32_PowerSupplyConformsToProfile : CIM_ElementConformsToProfile
{
  [DisplayName("Conformant Standard") : Amended ToSubclass,Description("The standard profile that is associated to the managed element in ManagedElement.") : Amended ToSubclass] CIM_RegisteredProfile Ref ConformantStandard;
  [DisplayName("Managed Element") : Amended ToSubclass,Description("The power supply that is associated to the power supply profile in ConformantStandard.") : Amended ToSubclass] Win32_PowerSupply Ref ManagedElement;
};

[DisplayName("Power Meter Conforms To Profile") : Amended ToSubclass,Description("An association between a power meter and the registered power supply profile.") : Amended ToSubclass,AMENDMENT, LOCALE("ms_409") : ToInstance] 
class Win32_PowerMeterConformsToProfile : CIM_ElementConformsToProfile
{
  [DisplayName("Conformant Standard") : Amended ToSubclass,Description("The standard profile that is associated to the managed element in ManagedElement.") : Amended ToSubclass] CIM_RegisteredProfile Ref ConformantStandard;
  [DisplayName("Managed Element") : Amended ToSubclass,Description("The power meter that is associated to the power supply profile in ConformantStandard.") : Amended ToSubclass] Win32_PowerMeter Ref ManagedElement;
};
#pragma namespace("\\\\.\\root\\cimv2\\power")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\root\\cimv2\\power\\ms_409")

[DisplayName("Power Supply") : Amended ToSubclass,Description("A power supply device") : Amended ToSubclass,AMENDMENT, LOCALE("ms_409") : ToInstance] 
class Win32_PowerSupply : CIM_PowerSupply
{
  [DisplayName("Name") : Amended ToSubclass,Description("The friendly name of the power supply device.") : Amended ToSubclass] string Name;
  [DisplayName("DeviceID") : Amended ToSubclass,Description("The unique identifier of the power supply device.") : Amended ToSubclass,key] string DeviceID;
};

[DisplayName("Power Meter Conforms To Profile") : Amended ToSubclass,Description("An association between a power meter and the registered power supply profile.") : Amended ToSubclass,AMENDMENT, LOCALE("ms_409") : ToInstance] 
class Win32_PowerMeterConformsToProfile : CIM_ElementConformsToProfile
{
  [DisplayName("Conformant Standard") : Amended ToSubclass,Description("The standard profile that is associated to the managed element in ManagedElement.") : Amended ToSubclass] CIM_RegisteredProfile Ref ConformantStandard;
  [DisplayName("Managed Element") : Amended ToSubclass,Description("The power meter that is associated to the power supply profile in ConformantStandard.") : Amended ToSubclass] Win32_PowerMeter Ref ManagedElement;
};
