#pragma autorecover #pragma classflags(64) #pragma namespace("\\\\.\\root\\SDDC\\Management") Instance of __Win32Provider as $prov { Name = "SddcProv"; ClsId = "{8E9ABF58-7A90-41B9-A0B1-ABF9F8BC0CED}"; ImpersonationLevel = 1; HostingModel = "NetworkServiceHost"; version = 1073741825; }; Instance of __MethodProviderRegistration { Provider = $prov; }; Instance of __InstanceProviderRegistration { Provider = $prov; supportsGet = TRUE; supportsPut = TRUE; supportsDelete = TRUE; supportsEnumeration = TRUE; QuerySupportLevels; }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Alert { [read : ToSubclass,Required : ToSubclass DisableOverride] string Id; [read : ToSubclass] string Title; [read : ToSubclass,ValueMap{"255", "0", "1", "2"} : ToSubclass] uint16 Severity; [read : ToSubclass] string Description; [read : ToSubclass] string FaultingObjectDescription; [read : ToSubclass] string FaultingObjectLocation; [read : ToSubclass] datetime Time; [read : ToSubclass] string Actions; }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Cluster { [key,read : ToSubclass,Required : ToSubclass DisableOverride] string Name; [read : ToSubclass,EmbeddedInstance("SDDC_Alert") : ToSubclass] SDDC_Alert Alerts[]; [implemented] uint32 GetMetrics([In] string SeriesName,[In,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass,Values{"<132>", "<133>", "<134>", "<135>", "<136>"} : Amended ToSubclass] uint16 TimeFrame,[Out,EmbeddedInstance("SDDC_Metric") : ToSubclass] SDDC_Metric Metric); }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Datapoint { [read : ToSubclass] datetime Timestamp; [read : ToSubclass] real64 Value; }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Drive { [key,read : ToSubclass,Required : ToSubclass DisableOverride] string Id; [read : ToSubclass,ValueMap{"0", "1", "2", "255"} : ToSubclass] uint16 StatusCategory; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "..", "0x7000", "0x7001", "0x7003", "0x7004", "0x7005", "0x7006", "0x7007", "0x7008", "0x7009", "0x700a", "0x700b", "0x8000", "0x8001", "0x8002", "0x8003", "0x8011", "0x8100", "0xD004", "0xD005", "0xD006", "0xD008", "0xD015", "0xD016", "0xD017", ".."} : ToSubclass] uint16 Status[]; [read : ToSubclass] string Model; [read : ToSubclass] string Manufacturer; [read : ToSubclass] string SerialNumber; [read : ToSubclass] string FirmwareVersion; [read : ToSubclass] uint64 Size; [read : ToSubclass] uint64 SizeUsed; [read : ToSubclass] uint8 WearPercentage; [read : ToSubclass] uint8 TemperatureInCelsius; [read : ToSubclass] uint32 PowerOnHours; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6"} : ToSubclass] uint16 Type; [read : ToSubclass,ValueMap{"0", "1", "2"} : ToSubclass] uint16 UsedFor; [read : ToSubclass] string Location; [read : ToSubclass] boolean IsIndicationEnabled; [read : ToSubclass] string Server; [read : ToSubclass] string StoragePool; [read : ToSubclass] real64 TotalIops; [read : ToSubclass] real64 TotalThroughput; [read : ToSubclass] real64 AverageLatency; [read : ToSubclass,EmbeddedInstance("SDDC_Alert") : ToSubclass] SDDC_Alert Alerts[]; [implemented] uint32 Retire(); [implemented] uint32 Unretire(); [implemented] uint32 UpdateFirmware([in] string ImagePath,[in] uint16 SlotNumber); [implemented] uint32 TurnOnLight(); [implemented] uint32 TurnOffLight(); [implemented] uint32 GetMetrics([In] string SeriesName,[In,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 TimeFrame,[Out,EmbeddedInstance("SDDC_Metric") : ToSubclass] SDDC_Metric Metric); }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Memory { [read : ToSubclass] string Manufacturer; [read : ToSubclass] string Model; [read : ToSubclass] string SerialNumber; [read : ToSubclass] uint64 SizeInBytes; [read : ToSubclass] uint32 SpeedInMHz; }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Metric { [read : ToSubclass] datetime CurrentTime; [read : ToSubclass,EmbeddedInstance("SDDC_Datapoint") : ToSubclass] SDDC_Datapoint Datapoints[]; }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Processor { [read : ToSubclass] string Manufacturer; [read : ToSubclass] string Model; [read : ToSubclass] uint32 NumberOfCores; [read : ToSubclass] uint32 NumberOfLogicalProcessors; [read : ToSubclass] uint32 MaxClockSpeedInMHz; }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Server { [key,read : ToSubclass,Required : ToSubclass DisableOverride] string Name; [read : ToSubclass,ValueMap{"0", "1", "2", "255"} : ToSubclass] uint16 StatusCategory; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0xffff"} : ToSubclass] uint16 Status[]; [read : ToSubclass] string Domain; [read : ToSubclass] string Cluster; [read : ToSubclass] string Id; [read : ToSubclass] string Manufacturer; [read : ToSubclass] string Model; [read : ToSubclass] string SerialNumber; [read : ToSubclass] string Location; [read : ToSubclass] string BuildNumber; [read : ToSubclass] string OSName; [read : ToSubclass] string OSVersion; [read : ToSubclass,SubType("interval") : ToSubclass] datetime Uptime; [read : ToSubclass] uint64 TotalProcessorsIdlePercentage; [read : ToSubclass,EmbeddedInstance("SDDC_Processor") : ToSubclass] SDDC_Processor Processors[]; [read : ToSubclass] uint64 FreePhysicalMemoryInBytes; [read : ToSubclass,EmbeddedInstance("SDDC_Memory") : ToSubclass] SDDC_Memory MemoryDIMMs[]; [read : ToSubclass] real64 TotalNetworkUsageInBytesPerSecond; [read : ToSubclass] real64 TotalRdmaUsageInBytesPerSecond; [read : ToSubclass,EmbeddedInstance("SDDC_Alert") : ToSubclass] SDDC_Alert Alerts[]; [implemented,static : ToSubclass DisableOverride] uint32 AddServer([In] string ServerName); [implemented] uint32 RemoveServer(); [implemented] uint32 PauseServer([In] boolean DrainServer); [implemented] uint32 ResumeServer([In,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint32 FailbackType); [implemented] uint32 GetMetrics([In] string SeriesName,[In,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 TimeFrame,[Out,EmbeddedInstance("SDDC_Metric") : ToSubclass] SDDC_Metric Metric); }; [ClassVersion("1.0"),locale(1033),dynamic : ToInstance,provider("SddcProv") : ToInstance] class SDDC_Volume { [key,read : ToSubclass,Required : ToSubclass DisableOverride] string Id; [read : ToSubclass] string Name; [read : ToSubclass] string Path; [read : ToSubclass,ValueMap{"0", "1", "2", "255"} : ToSubclass] uint16 StatusCategory; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19..", "0xD002", "0xD003"} : ToSubclass] uint16 Status[]; [read : ToSubclass] uint64 Size; [read : ToSubclass] uint64 SizeRemaining; [read : ToSubclass] uint64 Footprint; [read : ToSubclass] string FileSystem; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6"} : ToSubclass] uint16 Resiliency; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 Media; [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint16 FaultDomainAwareness; [read : ToSubclass] boolean IsTiered; [read : ToSubclass] uint64 TierSizes[]; [read : ToSubclass] uint64 TierFootprints[]; [read : ToSubclass] uint16 TierResiliencies[]; [read : ToSubclass] uint16 TierMedias[]; [read : ToSubclass] real64 TotalIops; [read : ToSubclass] real64 TotalThroughput; [read : ToSubclass] real64 AverageLatency; [read : ToSubclass,EmbeddedInstance("SDDC_Alert") : ToSubclass] SDDC_Alert Alerts[]; [implemented,static : ToSubclass DisableOverride] uint32 GetNewVolumeTemplate([Out,EmbeddedInstance("SDDC_VolumeModificationTemplate") : ToSubclass] SDDC_VolumeModificationTemplate NewVolumeTemplate); [implemented,static : ToSubclass DisableOverride] uint32 NewVolume([In] string VolumeName,[In] uint16 Resiliency,[In] boolean IsTiered,[In] uint64 Sizes[]); [implemented] uint32 GetResizeVolumeTemplate([Out,EmbeddedInstance("SDDC_VolumeModificationTemplate") : ToSubclass] SDDC_VolumeModificationTemplate ResizeVolumeTemplate); [implemented] uint32 ResizeVolume([In] boolean IsTiered,[In] uint64 NewSize[]); [implemented] uint32 DeleteVolume(); [implemented] uint32 OnlineVolume(); [implemented] uint32 OfflineVolume(); [implemented] uint32 GetMetrics([In] string SeriesName,[In,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 TimeFrame,[Out,EmbeddedInstance("SDDC_Metric") : ToSubclass] SDDC_Metric Metric); }; [ClassVersion("1.0"),locale(1033)] class SDDC_VolumeModificationTemplate { [read : ToSubclass] string Name; [read : ToSubclass] uint16 Resiliency[]; [read : ToSubclass,ValueMap{"0", "3", "4", "5"} : ToSubclass] uint16 MediaType[]; [read : ToSubclass] uint64 SizeAvailable[]; };