File "storagewmi.mof"

Full Path: C:/Windows/SysWOW64/wbem/storagewmi.mof
File size: 193.65 KB
MIME-type: text/x-c
Charset: 8 bit

#pragma autorecover

#pragma namespace("\\\\.\\root\\Microsoft\\Windows\\Storage")



Instance of __Win32Provider as $prov

{

  Name = "StorageWMI";

  ClsId = "{B4A6821D-4D2E-40DD-9EE0-89C2CD07BF69}";

  ImpersonationLevel = 1;

  HostingModel = "NetworkServiceHost";

  version = 1073741825;

};



Instance of __MethodProviderRegistration

{

  Provider = $prov;

};



Instance of __EventProviderRegistration

{

  Provider = $prov;

  eventQueryList = {"select * from MSFT_StorageAlertEvent", "select * from MSFT_StorageArrivalEvent", "select * from MSFT_StorageDepartureEvent", "select * from MSFT_StorageModificationEvent"};

};



Instance of __InstanceProviderRegistration

{

  Provider = $prov;

  supportsGet = TRUE;

  supportsPut = TRUE;

  supportsDelete = TRUE;

  supportsEnumeration = TRUE;

  QuerySupportLevels = {"WQL:UnarySelect"};

};



[Indication,Exception : ToSubclass DisableOverride,UMLPackagePath("CIM::Interop") : ToSubclass,locale(1033)] 

class CIM_Error

{

  [ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", ".."} : ToSubclass,ModelCorrespondence{"CIM_Error.OtherErrorType"} : ToSubclass] uint16 ErrorType;

  [ModelCorrespondence{"CIM_Error.ErrorType"} : ToSubclass] string OtherErrorType;

  string OwningEntity;

  [Required : ToSubclass DisableOverride,ModelCorrespondence{"CIM_Error.Message", "CIM_Error.MessageArguments"} : ToSubclass] string MessageID;

  [ModelCorrespondence{"CIM_Error.MessageID", "CIM_Error.MessageArguments"} : ToSubclass] string Message;

  [ModelCorrespondence{"CIM_Error.MessageID", "CIM_Error.Message"} : ToSubclass] string MessageArguments[];

  [ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", ".."} : ToSubclass] uint16 PerceivedSeverity;

  [ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", ".."} : ToSubclass,ModelCorrespondence{"CIM_Error.ProbableCauseDescription"} : ToSubclass] uint16 ProbableCause;

  [ModelCorrespondence{"CIM_Error.ProbableCause"} : ToSubclass] string ProbableCauseDescription;

  string RecommendedActions[];

  [ModelCorrespondence{"CIM_Error.ErrorSourceFormat"} : ToSubclass] string ErrorSource;

  [ValueMap{"0", "1", "2", ".."} : ToSubclass,ModelCorrespondence{"CIM_Error.ErrorSource", "CIM_Error.OtherErrorSourceFormat"} : ToSubclass] uint16 ErrorSourceFormat = 0;

  [ModelCorrespondence{"CIM_Error.ErrorSourceFormat"} : ToSubclass] string OtherErrorSourceFormat;

  [ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", ".."} : ToSubclass,ModelCorrespondence{"CIM_Error.CIMStatusCodeDescription"} : ToSubclass] uint32 CIMStatusCode;

  [ModelCorrespondence{"CIM_Error.CIMStatusCode"} : ToSubclass] string CIMStatusCodeDescription;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_Disk

{

  [key,read : ToSubclass] string ObjectId;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Path;

  [read : ToSubclass] string Location;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FriendlyName;

  [read : ToSubclass] string UniqueId;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "8"} : ToSubclass] uint16 UniqueIdFormat;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint32 Number;

  [read : ToSubclass] string SerialNumber;

  [read : ToSubclass] string FirmwareVersion;

  [read : ToSubclass] string Manufacturer;

  [read : ToSubclass] string Model;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 Size;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 AllocatedSize;

  [read : ToSubclass] uint32 LogicalSectorSize;

  [read : ToSubclass] uint32 PhysicalSectorSize;

  [read : ToSubclass] uint64 LargestFreeExtent;

  [read : ToSubclass] uint32 NumberOfPartitions;

  [read : ToSubclass,ValueMap{"0", "1", "2"} : ToSubclass] uint16 ProvisioningType;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6"} : ToSubclass] uint16 OperationalStatus;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "4", "8"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17"} : ToSubclass] uint16 BusType;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2"} : ToSubclass] uint16 PartitionStyle;

  [read : ToSubclass] uint32 Signature;

  [read : ToSubclass] string Guid;

  [read : ToSubclass] boolean IsOffline;

  [read : ToSubclass,ValueMap{"1", "2", "3", "4", "5", "6", "7"} : ToSubclass] uint16 OfflineReason;

  [read : ToSubclass] boolean IsReadOnly;

  [read : ToSubclass] boolean IsSystem;

  [read : ToSubclass] boolean IsClustered;

  [read : ToSubclass] boolean IsBoot;

  [read : ToSubclass] boolean BootFromDisk;

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "4097", "40000", "40001", "40002", "40003", "40005", "41000", "41002", "41003", "41004", "41005", "41006", "41010", "41011", "41012", "41015", "41016", "41017", "41018", "42002", "42004", "42007"} : ToSubclass] uint32 CreatePartition([In] uint64 Size,[In] boolean UseMaximumSize,[In] uint64 Offset,[In] uint32 Alignment,[In] char16 DriveLetter,[In] boolean AssignDriveLetter,[In,ValueMap{"1", "4", "5", "6", "7", "12"} : ToSubclass] uint16 MbrType,[In,ValueMap{"{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}", "{e3c9e316-0b5c-4db8-817d-f92df00215ae}", "{ebd0a0a2-b9e5-4433-87c0-68b6b72699c7}", "{5808c8aa-7e8f-42e0-85d2-e1e90434cfb3}", "{af9b60a0-1431-4f62-bc68-3311714a69ad}", "{de94bba4-06d1-4d40-a16a-bfd50179d6ac}"} : ToSubclass] string GptType,[In] boolean IsHidden,[In] boolean IsActive,[Out,EmbeddedInstance("MSFT_Partition") : ToSubclass] MSFT_Partition CreatedPartition,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41001", "41010", "41014", "41018"} : ToSubclass] uint32 Initialize([In,ValueMap{"1", "2"} : ToSubclass] uint16 PartitionStyle,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41000", "41002", "41003", "41007", "41008", "41009", "41015", "41019"} : ToSubclass] uint32 Clear([In] boolean RemoveData,[In] boolean RemoveOEM,[In] boolean ZeroOutEntireDisk,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41000", "41002", "41003", "41009", "41013", "41014", "41019"} : ToSubclass] uint32 ConvertStyle([In,Required : ToSubclass DisableOverride,ValueMap{"1", "2"} : ToSubclass] uint16 PartitionStyle,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41009", "41018"} : ToSubclass] uint32 Offline([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41018"} : ToSubclass] uint32 Online([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41000", "41003", "41006", "41009", "41018"} : ToSubclass] uint32 SetAttributes([In] boolean IsReadOnly,[In] uint32 Signature,[In] string Guid,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41000", "41003"} : ToSubclass] uint32 Refresh([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_DiskImage

{

  [key,read : ToSubclass] string ImagePath;

  [key,read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint32 StorageType;

  [read : ToSubclass] string DevicePath;

  [read : ToSubclass] uint64 FileSize;

  [read : ToSubclass] uint64 Size;

  [read : ToSubclass] uint64 LogicalSectorSize;

  [read : ToSubclass] uint64 BlockSize;

  [read : ToSubclass] boolean Attached;

  [read : ToSubclass] uint32 Number;

  [implemented] uint32 Mount([In,ValueMap{"0", "2", "3"} : ToSubclass] uint16 Access,[In] boolean NoDriveLetter);

  [implemented] uint32 Dismount();

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_DiskImageToVolume

{

  [key] MSFT_DiskImage Ref DiskImage;

  [key] MSFT_Volume Ref Volume;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_DiskToPartition

{

  [key] MSFT_Disk Ref Disk;

  [key] MSFT_Partition Ref Partition;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_DiskToStorageReliabilityCounter

{

  [key] MSFT_Disk Ref Disk;

  [key] MSFT_StorageReliabilityCounter Ref StorageReliabilityCounter;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_FileIntegrity

{

  string FileName;

  boolean Enabled;

  boolean Enforced;

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 Get([In] string FileName,[Out,EmbeddedInstance("MSFT_FileIntegrity") : ToSubclass] MSFT_FileIntegrity FileIntegrity,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 Repair([In] string FileName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 Set([In] string FileName,[In] boolean Enable,[In] boolean Enforce,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_FileStorageTier

{

  [key] string FilePath;

  [ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 State;

  [ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 PlacementStatus;

  string DesiredStorageTierName;

  uint64 FileSizeOnDesiredStorageTier;

  uint64 FileSize;

  [implemented,static : ToSubclass DisableOverride] uint32 Get([In] string FilePath,[In] char16 VolumeDriveLetter,[In] string VolumePath,[In,EmbeddedInstance("MSFT_Volume") : ToSubclass] MSFT_Volume Volume,[Out,EmbeddedInstance("MSFT_FileStorageTier") : ToSubclass] MSFT_FileStorageTier FileStorageTier[]);

  [implemented,static : ToSubclass DisableOverride] uint32 Set([In] string FilePath,[In] string DesiredStorageTierFriendlyName,[In] string DesiredStorageTierUniqueId,[In,EmbeddedInstance("MSFT_StorageTier") : ToSubclass] MSFT_StorageTier DesiredStorageTier);

  [implemented,static : ToSubclass DisableOverride] uint32 Clear([In] string FilePath);

};



[Abstract,locale(1033)] 

class MSFT_StorageObject

{

  [key,read : ToSubclass,Required : ToSubclass DisableOverride] string ObjectId;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string UniqueId;

  [read : ToSubclass] string PassThroughIds;

  [read : ToSubclass] string PassThroughServer;

  [read : ToSubclass] string PassThroughNamespace;

  [read : ToSubclass] string PassThroughClass;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_InitiatorId : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string InitiatorAddress;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5", "6", "7"} : ToSubclass] uint16 Type;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22..32767", "32768..65535"} : ToSubclass] uint16 HostType[];

  [read : ToSubclass,ArrayType("Indexed") : ToSubclass DisableOverride,ModelCorrespondence{"CIM_StorageClientSettingData.ClientTypes"} : ToSubclass] string OtherHostTypeDescription[];

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "40003", "46000", "46001"} : ToSubclass] uint32 DeleteObject([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_InitiatorIdToVirtualDisk

{

  [key] MSFT_InitiatorId Ref InitiatorId;

  [key] MSFT_VirtualDisk Ref VirtualDisk;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_InitiatorPort

{

  [key,read : ToSubclass] string ObjectId;

  [read : ToSubclass] string PortAddress;

  [read : ToSubclass] string NodeAddress;

  [read : ToSubclass] string InstanceName;

  [read : ToSubclass] string AlternatePortAddress[];

  [read : ToSubclass] string AlternateNodeAddress[];

  [read : ToSubclass,ValueMap{"1", "2", "3", "5", "6", "7", "8", "9", "10", "20", "21", "30", "31", "32"} : ToSubclass] uint16 PortType;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 ConnectionType;

  [read : ToSubclass] string OtherConnectionTypeDescription;

  [read : ToSubclass,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8"} : ToSubclass] uint16 OperationalStatus[];

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 SetNodeAddress([In,Required : ToSubclass DisableOverride] string NodeAddress,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_MaskingSet : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FriendlyName;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22..32767", "32768..65535"} : ToSubclass] uint16 HostType;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "53000", "53001"} : ToSubclass] uint32 AddInitiatorId([In,Required : ToSubclass DisableOverride] string InitiatorIds[],[In,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22..32767", "32768..65535"} : ToSubclass] uint16 HostType,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "53000"} : ToSubclass] uint32 RemoveInitiatorId([In,Required : ToSubclass DisableOverride] string InitiatorIds[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "54000"} : ToSubclass] uint32 AddTargetPort([In,Required : ToSubclass DisableOverride] string TargetPortAddresses[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "54000"} : ToSubclass] uint32 RemoveTargetPort([In,Required : ToSubclass DisableOverride] string TargetPortAddresses[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "50000", "52000", "52002"} : ToSubclass] uint32 AddVirtualDisk([In,Required : ToSubclass DisableOverride] string VirtualDiskNames[],[In,Required : ToSubclass DisableOverride] string DeviceNumbers[],[In,Required : ToSubclass DisableOverride,ValueMap{"2", "3", "4"} : ToSubclass] uint16 DeviceAccesses[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "50000"} : ToSubclass] uint32 RemoveVirtualDisk([In,Required : ToSubclass DisableOverride] string VirtualDiskNames[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "40003", "46000", "46001"} : ToSubclass] uint32 DeleteObject([In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "40003", "46000", "46001"} : ToSubclass] uint32 SetFriendlyName([In,Required : ToSubclass DisableOverride] string FriendlyName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 GetSecurityDescriptor([Out,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetSecurityDescriptor([In,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_MaskingSetToInitiatorId

{

  [key] MSFT_MaskingSet Ref MaskingSet;

  [key] MSFT_InitiatorId Ref InitiatorId;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_MaskingSetToTargetPort

{

  [key] MSFT_MaskingSet Ref MaskingSet;

  [key] MSFT_TargetPort Ref TargetPort;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_MaskingSetToVirtualDisk

{

  [key] MSFT_MaskingSet Ref MaskingSet;

  [key] MSFT_VirtualDisk Ref VirtualDisk;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_OffloadDataTransferSetting : MSFT_StorageObject

{

  [read : ToSubclass] boolean SupportInterSubsystem;

  [read : ToSubclass] uint32 NumberOfTokensMax;

  [read : ToSubclass] uint32 NumberOfTokensInUse;

  [read : ToSubclass] uint32 OptimalDataTokenSize;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_Partition

{

  [key,read : ToSubclass,ModelCorrespondence{"MSFT_Disk.ObjectId"} : ToSubclass] string DiskId;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ModelCorrespondence{"MSFT_Disk.Number"} : ToSubclass] uint32 DiskNumber;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint32 PartitionNumber;

  [read : ToSubclass] char16 DriveLetter;

  [read : ToSubclass] string AccessPaths[];

  [read : ToSubclass,ValueMap{"0", "1", "3", "5", "4"} : ToSubclass] uint16 OperationalStatus;

  [read : ToSubclass] uint16 TransitionState;

  [key,read : ToSubclass] uint64 Offset;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 Size;

  [read : ToSubclass,ValueMap{"1", "4", "5", "6", "7", "12"} : ToSubclass] uint16 MbrType;

  [read : ToSubclass,ValueMap{"{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}", "{e3c9e316-0b5c-4db8-817d-f92df00215ae}", "{ebd0a0a2-b9e5-4433-87c0-68b6b72699c7}", "{5808c8aa-7e8f-42e0-85d2-e1e90434cfb3}", "{af9b60a0-1431-4f62-bc68-3311714a69ad}", "{de94bba4-06d1-4d40-a16a-bfd50179d6ac}"} : ToSubclass] string GptType;

  [read : ToSubclass] string Guid;

  [read : ToSubclass] boolean IsReadOnly;

  [read : ToSubclass] boolean IsOffline;

  [read : ToSubclass] boolean IsSystem;

  [read : ToSubclass] boolean IsBoot;

  [read : ToSubclass] boolean IsActive;

  [read : ToSubclass] boolean IsHidden;

  [read : ToSubclass] boolean IsShadowCopy;

  [read : ToSubclass] boolean NoDefaultDriveLetter;

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "41018", "42000", "42001", "42010"} : ToSubclass] uint32 DeleteObject([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 GetAccessPaths([Out] string AccessPaths[],[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "42002", "42004", "42007", "42012", "42013"} : ToSubclass] uint32 AddAccessPath([In] string AccessPath,[In] boolean AssignDriveLetter,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "42005", "42006", "42007"} : ToSubclass] uint32 RemoveAccessPath([In,Required : ToSubclass DisableOverride] string AccessPath,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "4097", "40001", "40002", "42008", "42009", "42011"} : ToSubclass] uint32 Resize([In,Required : ToSubclass DisableOverride] uint64 Size,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "42008", "42009"} : ToSubclass] uint32 GetSupportedSize([Out] uint64 SizeMin,[Out] uint64 SizeMax,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "42011"} : ToSubclass] uint32 Online([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "41018", "42011", "42014"} : ToSubclass] uint32 Offline([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41000", "41003", "41006", "41018", "42010", "42011"} : ToSubclass] uint32 SetAttributes([In] boolean IsReadOnly,[In] boolean NoDefaultDriveLetter,[In] boolean IsActive,[In] boolean IsHidden,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_PartitionToVolume

{

  [key] MSFT_Partition Ref Partition;

  [key] MSFT_Volume Ref Volume;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_PhysicalDisk : MSFT_StorageObject

{

  [read : ToSubclass] string DeviceId;

  [read : ToSubclass] string FriendlyName;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint16 Usage;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5"} : ToSubclass] uint16 SupportedUsages[];

  [read : ToSubclass] string Description;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Manufacturer;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Model;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string SerialNumber;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string PartNumber;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FirmwareVersion;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string SoftwareVersion;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "..0xD004", "0xD005", "0xD006", "0xD007", "0xD0080xD009.."} : ToSubclass] uint16 OperationalStatus[];

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "5"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 Size;

  [read : ToSubclass] uint64 AllocatedSize;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18.."} : ToSubclass] uint16 BusType;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 PhysicalSectorSize;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 LogicalSectorSize;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint32 SpindleSpeed;

  [read : ToSubclass] boolean IsIndicationEnabled;

  [read : ToSubclass] string PhysicalLocation;

  [read : ToSubclass] uint16 EnclosureNumber;

  [read : ToSubclass] uint16 SlotNumber;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean CanPool;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "..", "0x8000.."} : ToSubclass] uint16 CannotPoolReason[];

  [read : ToSubclass] string OtherCannotPoolReasonDescription;

  [read : ToSubclass] boolean IsPartial;

  [ValueMap{"0", "3", "4"} : ToSubclass] uint16 MediaType;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 Maintenance([In] boolean EnableIndication,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 Reset([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 SetFriendlyName([In,Required : ToSubclass DisableOverride] string FriendlyName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 SetDescription([In,Required : ToSubclass DisableOverride] string Description,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 SetUsage([In,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5"} : ToSubclass] uint16 Usage,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 SetAttributes([In,Required : ToSubclass DisableOverride,ValueMap{"3", "4"} : ToSubclass] uint16 MediaType,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_PhysicalDiskToStorageReliabilityCounter

{

  [key] MSFT_PhysicalDisk Ref PhysicalDisk;

  [key] MSFT_StorageReliabilityCounter Ref StorageReliabilityCounter;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_ResiliencySetting : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass] string Description;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.NumberOfDataCopiesMax", "MSFT_ResiliencySetting.NumberOfDataCopiesDefault"} : ToSubclass] uint16 NumberOfDataCopiesMin;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.NumberOfDataCopiesMin", "MSFT_ResiliencySetting.NumberOfDataCopiesDefault"} : ToSubclass] uint16 NumberOfDataCopiesMax;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.NumberOfDataCopiesMin", "MSFT_ResiliencySetting.NumberOfDataCopiesMax"} : ToSubclass] uint16 NumberOfDataCopiesDefault;

  [read : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.PhysicalDiskRedundancyMax", "MSFT_ResiliencySetting.PhysicalDiskRedundancyDefault"} : ToSubclass] uint16 PhysicalDiskRedundancyMin;

  [read : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.PhysicalDiskRedundancyMin", "MSFT_ResiliencySetting.PhysicalDiskRedundancyDefault"} : ToSubclass] uint16 PhysicalDiskRedundancyMax;

  [read : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.PhysicalDiskRedundancyMin", "MSFT_ResiliencySetting.PhysicalDiskRedundancyMax"} : ToSubclass] uint16 PhysicalDiskRedundancyDefault;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.NumberOfColumnsMax", "MSFT_ResiliencySetting.NumberOfColumnsDefault"} : ToSubclass] uint16 NumberOfColumnsMin;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.NumberOfColumnsMin", "MSFT_ResiliencySetting.NumberOfColumnsDefault"} : ToSubclass] uint16 NumberOfColumnsMax;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.NumberOfColumnsMin", "MSFT_ResiliencySetting.NumberOfColumnsMax"} : ToSubclass] uint16 NumberOfColumnsDefault;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.InterleaveMax", "MSFT_ResiliencySetting.InterleaveDefault"} : ToSubclass] uint64 InterleaveMin;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.InterleaveMin", "MSFT_ResiliencySetting.InterleaveDefault"} : ToSubclass] uint64 InterleaveMax;

  [read : ToSubclass,MinValue("1") : ToSubclass,ModelCorrespondence{"MSFT_ResiliencySetting.InterleaveMin", "MSFT_ResiliencySetting.InterleaveMax"} : ToSubclass] uint64 InterleaveDefault;

  [read : ToSubclass,ValueMap{"1", "2"} : ToSubclass] uint16 ParityLayout;

  [read : ToSubclass] boolean RequestNoSinglePointOfFailure;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48000", "48006", "48007", "49002", "49003", "49005", "49006"} : ToSubclass] uint32 SetDefaults([In] uint16 NumberOfDataCopiesDefault,[In] uint16 PhysicalDiskRedundancyDefault,[In] uint16 NumberOfColumnsDefault,[In] boolean AutoNumberOfColumns,[In] uint64 InterleaveDefault,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Indication,Exception : ToSubclass DisableOverride,UMLPackagePath("CIM::Interop") : ToSubclass,locale(1033)] 

class MSFT_SoftError : CIM_Error

{

  [ValueMap{"4"} : ToSubclass,ModelCorrespondence{"CIM_Error.OtherErrorType"} : ToSubclass] uint16 ErrorType = 4;

  string OwningEntity;

  [Required : ToSubclass DisableOverride,ModelCorrespondence{"CIM_Error.Message", "CIM_Error.MessageArguments"} : ToSubclass] string MessageID;

  [ModelCorrespondence{"CIM_Error.MessageID", "CIM_Error.MessageArguments"} : ToSubclass] string Message = "%1: %2";

  [ValueMap{"2"} : ToSubclass] uint16 PerceivedSeverity = 2;

  [ModelCorrespondence{"CIM_Error.ErrorSourceFormat"} : ToSubclass] string ErrorSource;

  [ValueMap{"2"} : ToSubclass,ModelCorrespondence{"CIM_Error.ErrorSource", "CIM_Error.OtherErrorSourceFormat"} : ToSubclass] uint16 ErrorSourceFormat = 2;

};



[Indication,Exception : ToSubclass DisableOverride,UMLPackagePath("CIM::Interop") : ToSubclass,locale(1033)] 

class MSFT_SoftError_EmptyCache : MSFT_SoftError

{

  [Required : ToSubclass DisableOverride,ModelCorrespondence{"CIM_Error.Message", "CIM_Error.MessageArguments"} : ToSubclass] string MessageID = "40003";

  [ModelCorrespondence{"CIM_Error.MessageID", "CIM_Error.MessageArguments"} : ToSubclass] string Message = "%1: The storage management provider's cache is empty.%2";

};



[Indication,Exception : ToSubclass DisableOverride,UMLPackagePath("CIM::Interop") : ToSubclass,locale(1033)] 

class MSFT_SoftError_NotAuthenticated : MSFT_SoftError

{

  [Required : ToSubclass DisableOverride,ModelCorrespondence{"CIM_Error.Message", "CIM_Error.MessageArguments"} : ToSubclass] string MessageID = "40001";

  [ModelCorrespondence{"CIM_Error.MessageID", "CIM_Error.MessageArguments"} : ToSubclass] string Message = "%1: The storage management provider has not been authenticated with the storage subsystem \"%2\". Extra configuration may be required.%3";

};



[Indication,Exception : ToSubclass DisableOverride,UMLPackagePath("CIM::Interop") : ToSubclass,locale(1033)] 

class MSFT_SoftError_NotInCache : MSFT_SoftError

{

  [Required : ToSubclass DisableOverride,ModelCorrespondence{"CIM_Error.Message", "CIM_Error.MessageArguments"} : ToSubclass] string MessageID = "40006";

  [ModelCorrespondence{"CIM_Error.MessageID", "CIM_Error.MessageArguments"} : ToSubclass] string Message = "%1: The storage management provider's cache does not contain the requested object or object type.%2";

};



[Indication,Abstract,locale(1033)] 

class MSFT_StorageEvent

{

  [read : ToSubclass,Required : ToSubclass DisableOverride,ModelCorrespondence{"MSFT_StorageObject.ObjectId"} : ToSubclass] string SourceObjectId;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string SourceClassName;

  [read : ToSubclass] string SourceNamespace;

  [read : ToSubclass] string SourceServer;

  [read : ToSubclass] string Description;

  [read : ToSubclass] datetime EventTime;

  [read : ToSubclass,ValueMap{"0", "2", "3", "4", "5", "6", "7", ".."} : ToSubclass] uint16 PerceivedSeverity;

};



[Indication,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageAlertEvent : MSFT_StorageEvent

{

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "..", "0x8000.."} : ToSubclass] uint16 AlertType;

};



[Indication,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageArrivalEvent : MSFT_StorageEvent

{

};



[Indication,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageDepartureEvent : MSFT_StorageEvent

{

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageEnclosure : MSFT_StorageObject

{

  string DeviceId;

  string FriendlyName;

  string Manufacturer;

  string Model;

  string SerialNumber;

  string FirmwareVersion;

  [ValueMap{"0", "1", "2", "5"} : ToSubclass] uint16 HealthStatus;

  uint32 NumberOfSlots;

  [ValueMap{"0", "2", "3", "6", "7", "0xD009", "0xD00A", "0xD00B", "0xD00C"} : ToSubclass] uint16 PowerSupplyOperationalStatus[];

  [ValueMap{"0", "2", "3", "6", "7", "0xD009", "0xD00A", "0xD00B", "0xD00C"} : ToSubclass] uint16 FanOperationalStatus[];

  [ValueMap{"0", "2", "3", "6", "7", "0xD009", "0xD00A", "0xD00B", "0xD00C"} : ToSubclass] uint16 TemperatureSensorOperationalStatus[];

  [ValueMap{"0", "2", "3", "6", "7", "0xD009", "0xD00A", "0xD00B", "0xD00C"} : ToSubclass] uint16 VoltageSensorOperationalStatus[];

  [ValueMap{"0", "2", "3", "6", "7", "0xD009", "0xD00A", "0xD00B", "0xD00C"} : ToSubclass] uint16 CurrentSensorOperationalStatus[];

  [ValueMap{"0", "2", "3", "6", "7", "0xD009", "0xD00A", "0xD00B", "0xD00C"} : ToSubclass] uint16 IOControllerOperationalStatus[];

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "55000", "55001"} : ToSubclass] uint32 IdentifyElement([In] boolean Enable,[In] uint32 SlotNumbers[],[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "55002"} : ToSubclass] uint32 GetVendorData([In,Required : ToSubclass DisableOverride] uint16 PageNumber,[Out] string VendorData,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageEnclosureToPhysicalDisk

{

  [key] MSFT_StorageEnclosure Ref StorageEnclosure;

  [key] MSFT_PhysicalDisk Ref PhysicalDisk;

};



[Indication,Exception : ToSubclass DisableOverride,UMLPackagePath("CIM::Interop") : ToSubclass,locale(1033)] 

class MSFT_StorageExtendedStatus : CIM_Error

{

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageJob : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass] string Description;

  [read : ToSubclass] datetime ElapsedTime;

  [read : ToSubclass] uint16 ErrorCode;

  [read : ToSubclass] string ErrorDescription;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13..32767", "32768..65535"} : ToSubclass] uint16 JobState;

  [read : ToSubclass] string JobStatus;

  [read : ToSubclass,ValueMap{"1", "2"} : ToSubclass] uint16 LocalOrUtcTime;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", ".."} : ToSubclass] uint16 OperationalStatus[];

  [read : ToSubclass] string StatusDescriptions[];

  [read : ToSubclass,Required : ToSubclass DisableOverride,MinValue("0") : ToSubclass,MaxValue("100") : ToSubclass] uint16 PercentComplete;

  [read : ToSubclass] datetime StartTime;

  [read : ToSubclass] datetime TimeBeforeRemoval;

  [read : ToSubclass] datetime TimeOfLastStateChange;

  [read : ToSubclass] datetime TimeSubmitted;

  [read : ToSubclass] boolean DeleteOnCompletion;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean IsBackgroundTask;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 RecoveryAction;

  [read : ToSubclass] string OtherRecoveryAction;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "4097", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 RequestStateChange([In,ValueMap{"2", "3", "4", "5", "6", "7..32767", "32768..65535"} : ToSubclass] uint16 RequestedState,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented] uint32 GetExtendedStatus([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageJobToAffectedStorageObject

{

  [key] MSFT_StorageJob Ref StorageJob;

  [key] MSFT_StorageObject Ref AffectedStorageObject;

};



[Indication,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageModificationEvent : MSFT_StorageEvent

{

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageNode : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"} : ToSubclass] uint16 NameFormat;

  [read : ToSubclass] string OtherIdentifyingInfo[];

  [read : ToSubclass] string OtherIdentifyingInfoDescription[];

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "2", "6", "8", "10"} : ToSubclass] uint16 OperationalStatus;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageNodeToPhysicalDisk

{

  [key] MSFT_StorageNode Ref StorageNode;

  [key] MSFT_PhysicalDisk Ref PhysicalDisk;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "..0xD004", "0xD005", "0xD006", "0xD007", "0xD0080xD009.."} : ToSubclass] uint16 OperationalStatus[];

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "5"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass] boolean IsMpioEnabled;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7"} : ToSubclass] uint16 LoadBalancePolicy;

  string PathId[];

  [read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 PathState[];

  [read : ToSubclass] uint32 DiskNumber;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageNodeToStorageEnclosure

{

  [key] MSFT_StorageNode Ref StorageNode;

  [key] MSFT_StorageEnclosure Ref StorageEnclosure;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageNodeToStoragePool

{

  [key] MSFT_StorageNode Ref StorageNode;

  [key] MSFT_StoragePool Ref StoragePool;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageNodeToVirtualDisk

{

  [key] MSFT_StorageNode Ref StorageNode;

  [key] MSFT_VirtualDisk Ref VirtualDisk;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StoragePool : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FriendlyName;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8"} : ToSubclass] uint16 Usage;

  [read : ToSubclass] string OtherUsageDescription;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean IsPrimordial;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "5"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "..", "0xD000", "0xD001", "0xD002.."} : ToSubclass] uint16 OperationalStatus[];

  [read : ToSubclass] string OtherOperationalStatusDescription;

  [read : ToSubclass] uint64 Size;

  [read : ToSubclass] uint64 AllocatedSize;

  [read : ToSubclass] uint64 LogicalSectorSize;

  [read : ToSubclass] uint64 PhysicalSectorSize;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2"} : ToSubclass] uint16 ProvisioningTypeDefault;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2"} : ToSubclass] uint16 SupportedProvisioningTypes[];

  [read : ToSubclass,Required : ToSubclass DisableOverride,ModelCorrespondence{"MSFT_ResiliencySetting.Name"} : ToSubclass] string ResiliencySettingNameDefault;

  [read : ToSubclass] boolean IsReadOnly;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 ReadOnlyReason;

  [read : ToSubclass] boolean IsClustered;

  [read : ToSubclass] boolean SupportsDeduplication;

  [read : ToSubclass,MinValue("0") : ToSubclass,MaxValue("100") : ToSubclass] uint16 ThinProvisioningAlertThresholds[];

  [read : ToSubclass] boolean ClearOnDeallocate;

  [read : ToSubclass] boolean IsPowerProtected;

  [read : ToSubclass,ValueMap{"2", "3"} : ToSubclass] uint16 RepairPolicy;

  [read : ToSubclass] boolean EnclosureAwareDefault;

  [read : ToSubclass,ValueMap{"1", "2", "3"} : ToSubclass] uint16 RetireMissingPhysicalDisks;

  [read : ToSubclass,ValueMap{"1", "2", "3"} : ToSubclass] uint16 Version;

  uint64 WriteCacheSizeDefault;

  uint64 WriteCacheSizeMin;

  uint64 WriteCacheSizeMax;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "4097", "40000", "40001", "40002", "46000", "46001", "46008", "47001", "48000", "48001", "48002", "48004", "48006", "48007", "48010", "49000", "49001", "49002", "49003", "49004", "49005", "49006", "50005", "51000", "51001"} : ToSubclass] uint32 CreateVirtualDisk([In,Required : ToSubclass DisableOverride] string FriendlyName,[In] uint64 Size,[In] boolean UseMaximumSize,[In,ValueMap{"1", "2"} : ToSubclass] uint16 ProvisioningType,[In] string ResiliencySettingName,[In,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17"} : ToSubclass] uint16 Usage,[In] string OtherUsageDescription,[In] uint16 NumberOfDataCopies,[In] uint16 PhysicalDiskRedundancy,[In] uint16 NumberOfColumns,[In] boolean AutoNumberOfColumns,[In] uint64 Interleave,[In] boolean IsEnclosureAware,[In,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisksToUse[],[In,EmbeddedInstance("MSFT_StorageTier") : ToSubclass] MSFT_StorageTier StorageTiers[],[In] uint64 StorageTierSizes[],[In] uint64 WriteCacheSize,[In] boolean AutoWriteCacheSize,[In] boolean RunAsJob,[Out,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk CreatedVirtualDisk,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "4097", "40000", "40001", "40002", "40004", "40005", "42002", "42007", "43001", "43002", "43006", "46000", "46001", "46008", "48000", "48001", "48002", "48004", "48006", "48007", "48010", "49000", "49001", "49002", "49003", "49004", "49005", "49006"} : ToSubclass] uint32 CreateVolume([In,Required : ToSubclass DisableOverride] string FriendlyName,[In] uint64 Size,[In,EmbeddedInstance("MSFT_StorageTier") : ToSubclass] MSFT_StorageTier StorageTiers[],[In] uint64 StorageTierSizes[],[In,ValueMap{"1", "2"} : ToSubclass] uint16 ProvisioningType,[In] string ResiliencySettingName,[In] uint16 PhysicalDiskRedundancy,[In] uint16 NumberOfColumns,[In,Required : ToSubclass DisableOverride,ValueMap{"14", "15", "0x8000", "0x8001"} : ToSubclass] uint16 FileSystem,[In] string AccessPath,[Out,EmbeddedInstance("MSFT_Volume") : ToSubclass] MSFT_Volume CreatedVolume,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 CreateStorageTier([In] string FriendlyName,[In,ValueMap{"3", "4"} : ToSubclass] uint16 MediaType,[In] string Description,[In] boolean RunAsJob,[Out,EmbeddedInstance("MSFT_StorageTier") : ToSubclass] MSFT_StorageTier CreatedStorageTier,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "48000", "48006", "48007", "48008"} : ToSubclass] uint32 DeleteObject([In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 Upgrade([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "48000", "48006", "48007", "51000", "51002", "51003"} : ToSubclass] uint32 AddPhysicalDisk([In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[],[In,ValueMap{"1", "2", "3", "5"} : ToSubclass] uint16 Usage,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40000", "40001", "40002", "40003", "46000", "46001", "48000", "48006", "48007", "50001", "50003", "51004"} : ToSubclass] uint32 RemovePhysicalDisk([In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "40003", "46000", "46001", "48000"} : ToSubclass] uint32 GetSupportedSize([In,Required : ToSubclass DisableOverride] string ResiliencySettingName,[Out] uint64 SupportedSizes[],[Out] uint64 VirtualDiskSizeMin,[Out] uint64 VirtualDiskSizeMax,[Out] uint64 VirtualDiskSizeDivisor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 GetSecurityDescriptor([Out,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetSecurityDescriptor([In,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetFriendlyName([In,Required : ToSubclass DisableOverride] string FriendlyName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48000", "48006", "48007"} : ToSubclass] uint32 SetUsage([In,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8"} : ToSubclass] uint16 Usage,[In] string OtherUsageDescription,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48000", "48002", "48006", "48007", "49000", "50005"} : ToSubclass] uint32 SetDefaults([In,ValueMap{"1", "2"} : ToSubclass] uint16 ProvisioningTypeDefault,[In] string ResiliencySettingNameDefault,[In] boolean EnclosureAwareDefault,[In] uint64 WriteCacheSizeDefault,[In] boolean AutoWriteCacheSize,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48000", "48006", "48007", "48009"} : ToSubclass] uint32 SetAttributes([In] boolean IsReadOnly,[In] boolean ClearOnDeallocate,[In] boolean IsPowerProtected,[In,ValueMap{"2", "3"} : ToSubclass] uint16 RepairPolicy,[In,ValueMap{"1", "2", "3"} : ToSubclass] uint16 RetireMissingPhysicalDisks,[In,MinValue("1") : ToSubclass,MaxValue("100") : ToSubclass] uint16 ThinProvisioningAlertThresholds[],[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StoragePoolToPhysicalDisk

{

  [key] MSFT_StoragePool Ref StoragePool;

  [key] MSFT_PhysicalDisk Ref PhysicalDisk;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StoragePoolToResiliencySetting

{

  [key] MSFT_StoragePool Ref StoragePool;

  [key] MSFT_ResiliencySetting Ref ResiliencySetting;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StoragePoolToStorageTier

{

  [key] MSFT_StoragePool Ref StoragePool;

  [key] MSFT_StorageTier Ref StorageTier;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StoragePoolToVirtualDisk

{

  [key] MSFT_StoragePool Ref StoragePool;

  [key] MSFT_VirtualDisk Ref VirtualDisk;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageProvider : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "2"} : ToSubclass] uint16 Type;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Manufacturer;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Version;

  [read : ToSubclass] string CimServerName;

  [read : ToSubclass] string URI;

  [read : ToSubclass] string URI_IP;

  [read : ToSubclass,ValueMap{"0", "2", "3"} : ToSubclass] uint16 RemoteSubsystemCacheMode;

  [read : ToSubclass] boolean SupportsSubsystemRegistration;

  [read : ToSubclass,ValueMap{"0", "2", "3"} : ToSubclass] uint16 SupportedRemoteSubsystemCacheModes[];

  [implemented,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "46000", "46001", "46002", "46003"} : ToSubclass] uint32 Discover([In,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 DiscoveryLevel,[In] MSFT_StorageObject Ref RootObject,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 GetSecurityDescriptor([Out,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetSecurityDescriptor([In,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "46000", "46001", "46004", "46006"} : ToSubclass] uint32 RegisterSubsystem([In,Required : ToSubclass DisableOverride] string ComputerName,[In] string Credential,[Out,EmbeddedInstance("MSFT_StorageSubSystem") : ToSubclass] MSFT_StorageSubSystem RegisteredSubsystem,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "46004", "46005", "46007"} : ToSubclass] uint32 UnregisterSubsystem([In,EmbeddedInstance("MSFT_StorageSubSystem") : ToSubclass] MSFT_StorageSubSystem Subsystem,[In] string StorageSubSystemUniqueId,[In] boolean Force,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetAttributes([In,ValueMap{"2", "3"} : ToSubclass] uint16 RemoteSubsystemCacheMode,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageProviderToStorageSubSystem

{

  [key] MSFT_StorageProvider Ref StorageProvider;

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageReliabilityCounter : MSFT_StorageObject

{

  [read : ToSubclass] string DeviceId;

  [read : ToSubclass] uint8 Temperature;

  [read : ToSubclass] uint8 TemperatureMax;

  [read : ToSubclass] uint64 ReadErrorsTotal;

  [read : ToSubclass] uint64 ReadErrorsCorrected;

  [read : ToSubclass] uint64 ReadErrorsUncorrected;

  [read : ToSubclass] uint64 WriteErrorsTotal;

  [read : ToSubclass] uint64 WriteErrorsCorrected;

  [read : ToSubclass] uint64 WriteErrorsUncorrected;

  [read : ToSubclass] string ManufactureDate;

  [read : ToSubclass] uint32 StartStopCycleCount;

  [read : ToSubclass] uint32 StartStopCycleCountMax;

  [read : ToSubclass] uint32 LoadUnloadCycleCount;

  [read : ToSubclass] uint32 LoadUnloadCycleCountMax;

  [read : ToSubclass] uint8 Wear;

  [read : ToSubclass] uint32 PowerOnHours;

  [read : ToSubclass] uint64 ReadLatencyMax;

  [read : ToSubclass] uint64 WriteLatencyMax;

  [read : ToSubclass] uint64 FlushLatencyMax;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 Reset();

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSetting

{

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 NewDiskPolicy;

  [read : ToSubclass,ValueMap{"0", "1", "2"} : ToSubclass] uint32 ScrubPolicy;

  [implemented,static : ToSubclass DisableOverride] uint32 Get([Out,EmbeddedInstance("MSFT_StorageSetting") : ToSubclass] MSFT_StorageSetting StorageSetting);

  [implemented,static : ToSubclass DisableOverride] uint32 Set([In,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 NewDiskPolicy,[In,ValueMap{"0", "1", "2"} : ToSubclass] uint32 ScrubPolicy);

  [implemented,static : ToSubclass DisableOverride] uint32 UpdateHostStorageCache();

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystem : MSFT_StorageObject

{

  [read : ToSubclass] string FriendlyName;

  [read : ToSubclass] string Description;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"} : ToSubclass] uint16 NameFormat;

  [read : ToSubclass] string OtherIdentifyingInfo[];

  [read : ToSubclass] string OtherIdentifyingInfoDescription[];

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", ".."} : ToSubclass] uint16 OperationalStatus[];

  [read : ToSubclass] string OtherOperationalStatusDescription;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 CurrentCacheLevel;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Manufacturer;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Model;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string SerialNumber;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FirmwareVersion;

  [read : ToSubclass] string Tag;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean AutomaticClusteringEnabled;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint16 PhysicalDisksPerStoragePoolMin;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsMirrorLocal;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsMirrorRemote;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsSnapshotLocal;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsSnapshotRemote;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsCloneLocal;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsCloneRemote;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVirtualDiskCreation;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVirtualDiskModification;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVirtualDiskDeletion;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVirtualDiskCapacityExpansion;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVirtualDiskCapacityReduction;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVirtualDiskRepair;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsVolumeCreation;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStoragePoolCreation;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStoragePoolDeletion;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStoragePoolFriendlyNameModification;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStoragePoolAddPhysicalDisk;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStoragePoolRemovePhysicalDisk;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsAutomaticStoragePoolSelection;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsMultipleResiliencySettingsPerStoragePool;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStorageTierCreation;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStorageTierDeletion;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStorageTierResize;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStorageTierFriendlyNameModification;

  [read : ToSubclass,Required : ToSubclass DisableOverride] boolean SupportsStorageTieredVirtualDiskCreation;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint16 ReplicasPerSourceSnapshotMax;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint16 ReplicasPerSourceCloneMax;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint16 ReplicasPerSourceMirrorMax;

  [read : ToSubclass] boolean SupportsMaskingVirtualDiskToHosts;

  [read : ToSubclass,ValueMap{"1", "2", "3", "4", "5", "6", "7"} : ToSubclass] uint16 MaskingValidInitiatorIdTypes[];

  [read : ToSubclass] string MaskingOtherValidInitiatorIdTypes[];

  [read : ToSubclass,ValueMap{"2", "3", "4"} : ToSubclass] uint16 MaskingPortsPerView;

  [read : ToSubclass] boolean MaskingClientSelectableDeviceNumbers;

  [read : ToSubclass] boolean MaskingOneInitiatorIdPerView;

  [read : ToSubclass] uint16 MaskingMapCountMax;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 DataTieringType;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 iSCSITargetCreationScheme;

  [read : ToSubclass] uint32 NumberOfSlots;

  [read : ToSubclass] string CimServerName;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22..32767", "32768..65535"} : ToSubclass] uint16 SupportedHostType[];

  [read : ToSubclass,ArrayType("Indexed") : ToSubclass DisableOverride,ModelCorrespondence{"CIM_StorageClientSettingData.ClientTypes"} : ToSubclass] string OtherHostTypeDescription[];

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "8", "4096", "40001", "40002", "40003", "46000", "46001", "46008", "49000", "50005", "51000", "51001", "51002", "51003", "51005"} : ToSubclass] uint32 CreateStoragePool([In,Required : ToSubclass DisableOverride] string FriendlyName,[In,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8"} : ToSubclass] uint16 Usage,[In] string OtherUsageDescription,[In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[],[In] string ResiliencySettingNameDefault,[In,ValueMap{"1", "2"} : ToSubclass] uint16 ProvisioningTypeDefault,[In] uint64 LogicalSectorSizeDefault,[In] boolean EnclosureAwareDefault,[In] uint64 WriteCacheSizeDefault,[In] boolean AutoWriteCacheSize,[In] boolean RunAsJob,[Out,EmbeddedInstance("MSFT_StoragePool") : ToSubclass] MSFT_StoragePool CreatedStoragePool,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "4097", "40000", "40001", "40002", "40003", "40005", "46000", "46001", "47000", "49001", "49002", "49003", "49004", "49005", "49006"} : ToSubclass] uint32 CreateVirtualDisk([In,Required : ToSubclass DisableOverride] string FriendlyName,[In,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17"} : ToSubclass] uint16 Usage,[In] string OtherUsageDescription,[in,out,Required : ToSubclass DisableOverride,MinValue("1") : ToSubclass] uint64 Size,[In] boolean UseMaximumSize,[In,MinValue("1") : ToSubclass] uint16 NumberOfDataCopies,[In] uint16 PhysicalDiskRedundancy,[In,MinValue("1") : ToSubclass] uint16 NumberOfColumns,[In,MinValue("1") : ToSubclass] uint64 Interleave,[In,ValueMap{"1", "2"} : ToSubclass] uint16 ParityLayout,[In] boolean RequestNoSinglePointOfFailure,[In] boolean IsEnclosureAware,[In,ValueMap{"1", "2"} : ToSubclass] uint16 ProvisioningType,[In] boolean RunAsJob,[Out,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk CreatedVirtualDisk,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "46000", "46001", "50000", "52000", "52001", "52002", "53000", "53001", "54000"} : ToSubclass] uint32 CreateMaskingSet([In,Required : ToSubclass DisableOverride] string FriendlyName,[In] string VirtualDiskNames[],[In,ValueMap{"0", "2", "3", "4"} : ToSubclass] uint16 DeviceAccesses[],[In] string DeviceNumbers[],[In] string TargetPortAddresses[],[In] string InitiatorAddresses[],[In,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22..32767", "32768..65535"} : ToSubclass] uint16 HostType,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_MaskingSet") : ToSubclass] MSFT_MaskingSet CreatedMaskingSet,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 GetSecurityDescriptor([Out,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetSecurityDescriptor([In,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetDescription([In,Required : ToSubclass DisableOverride] string Description,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetAttributes([In,Required : ToSubclass DisableOverride] boolean AutomaticClusteringEnabled,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "8", "4096", "40000", "40001", "40002", "40008", "40013", "40017", "40018", "40019", "40020"} : ToSubclass] uint32 GetDiagnosticInfo([In,Required : ToSubclass DisableOverride] string DestinationPath,[In] uint32 TimeSpan,[In] string ActivityId,[In] boolean ExcludeOperationalLog,[In] boolean ExcludeDiagnosticLog,[In] boolean IncludeLiveDump,[In] boolean CopyExistingInfoOnly,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "8", "4096", "40000", "40001", "40002"} : ToSubclass] uint32 ClearDiagnosticInfo([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "8", "4096", "40000", "40001", "40002", "40021", "40023"} : ToSubclass] uint32 StartDiagnosticLog([In,ValueMap{"1", "2", "3", "4", "5"} : ToSubclass] uint16 Level,[In] uint64 MaxLogSize,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "8", "4096", "40000", "40001", "40002", "40008", "40022"} : ToSubclass] uint32 StopDiagnosticLog([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToInitiatorId

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_InitiatorId Ref InitiatorId;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToMaskingSet

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_MaskingSet Ref MaskingSet;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToOffloadDataTransferSetting

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_OffloadDataTransferSetting Ref OffloadDataTransferSetting;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToPhysicalDisk

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_PhysicalDisk Ref PhysicalDisk;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToStorageEnclosure

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_StorageEnclosure Ref StorageEnclosure;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToStorageNode

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_StorageNode Ref StorageNode;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToStoragePool

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_StoragePool Ref StoragePool;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToTargetPort

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_TargetPort Ref TargetPort;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToTargetPortal

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_TargetPortal Ref TargetPortal;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageSubSystemToVirtualDisk

{

  [key] MSFT_StorageSubSystem Ref StorageSubSystem;

  [key] MSFT_VirtualDisk Ref VirtualDisk;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_StorageTier : MSFT_StorageObject

{

  string FriendlyName;

  [ValueMap{"0", "3", "4"} : ToSubclass] uint16 MediaType;

  uint64 Size;

  string Description;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 DeleteObject([In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40000", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 Resize([In] uint64 Size,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 SetFriendlyName([In,Required : ToSubclass DisableOverride] string FriendlyName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 SetAttributes([In,Required : ToSubclass DisableOverride,ValueMap{"3", "4"} : ToSubclass] uint16 MediaType,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48007"} : ToSubclass] uint32 SetDescription([In,Required : ToSubclass DisableOverride] string Description,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "40003", "46000", "46001"} : ToSubclass] uint32 GetSupportedSize([In,Required : ToSubclass DisableOverride] string ResiliencySettingName,[Out] uint64 SupportedSizes[],[Out] uint64 TierSizeMin,[Out] uint64 TierSizeMax,[Out] uint64 TierSizeDivisor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_TargetPort : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FriendlyName;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string PortAddress;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string NodeAddress;

  [read : ToSubclass] string StorageControllerId;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 Role;

  [read : ToSubclass,ValueMap{"0", "2", "3", "4"} : ToSubclass] uint16 UsageRestriction;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", ".."} : ToSubclass] uint16 OperationalStatus[];

  [read : ToSubclass] string OtherOperationalStatusDescription;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"1", "2", "3", "4", "5", "6", "7", "8", "9"} : ToSubclass] uint16 ConnectionType;

  [read : ToSubclass] string OtherConnectionTypeDescription;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", ".."} : ToSubclass] uint16 LinkTechnology;

  [read : ToSubclass] string OtherLinkTechnology;

  [read : ToSubclass] uint64 Speed;

  [read : ToSubclass] uint64 MaxSpeed;

  [read : ToSubclass] string NetworkAddresses[];

  [read : ToSubclass] uint16 PortNumbers[];

  [read : ToSubclass,ValueMap{"0", "1", "10", "11", "12", "13", "14", "15", "16", "17", "18", "50", "51", "52", "53", "54", "55", "56", "94", "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", "110", "111", "112..15999", "16000..65535"} : ToSubclass] uint16 PortType;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_TargetPortToTargetPortal

{

  [key] MSFT_TargetPort Ref TargetPort;

  [key] MSFT_TargetPortal Ref TargetPortal;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_TargetPortToVirtualDisk

{

  [key] MSFT_TargetPort Ref TargetPort;

  [key] MSFT_VirtualDisk Ref VirtualDisk;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_TargetPortal : MSFT_StorageObject

{

  [read : ToSubclass] string IPv4Address;

  [read : ToSubclass] string IPv6Address;

  [read : ToSubclass] string SubnetMask;

  [read : ToSubclass] uint32 PortNumber;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_VirtualDisk : MSFT_StorageObject

{

  [read : ToSubclass,Required : ToSubclass DisableOverride] string FriendlyName;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Name;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11"} : ToSubclass] uint16 NameFormat;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "8"} : ToSubclass,ModelCorrespondence{"MSFT_StorageObject.UniqueId"} : ToSubclass] uint16 UniqueIdFormat;

  [read : ToSubclass,ModelCorrespondence{"MSFT_StorageObject.UniqueId", "MSFT_VirtualDisk.UniqueIdFormat"} : ToSubclass] string UniqueIdFormatDescription;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17"} : ToSubclass] uint16 Usage;

  [read : ToSubclass] string OtherUsageDescription;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "5"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass,Required : ToSubclass DisableOverride,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 OperationalStatus[];

  [read : ToSubclass] string OtherOperationalStatusDescription;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ModelCorrespondence{"MSFT_ResiliencySetting.Name"} : ToSubclass] string ResiliencySettingName;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 Size;

  [read : ToSubclass,Required : ToSubclass DisableOverride] uint64 AllocatedSize;

  [read : ToSubclass] uint64 LogicalSectorSize;

  [read : ToSubclass] uint64 PhysicalSectorSize;

  [read : ToSubclass] uint64 FootprintOnPool;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2"} : ToSubclass] uint16 ProvisioningType;

  [read : ToSubclass] uint16 NumberOfDataCopies;

  [read : ToSubclass] uint16 PhysicalDiskRedundancy;

  [read : ToSubclass,ValueMap{"1", "2"} : ToSubclass] uint16 ParityLayout;

  [read : ToSubclass] uint16 NumberOfColumns;

  [read : ToSubclass] uint64 Interleave;

  [read : ToSubclass] boolean RequestNoSinglePointOfFailure;

  [read : ToSubclass,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 Access;

  [read : ToSubclass] boolean IsSnapshot;

  [read : ToSubclass] boolean IsManualAttach;

  [read : ToSubclass] boolean IsDeduplicationEnabled;

  [read : ToSubclass] boolean IsEnclosureAware;

  [read : ToSubclass] uint16 NumberOfAvailableCopies;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4"} : ToSubclass] uint16 DetachedReason;

  uint64 WriteCacheSize;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "48006", "48007", "50002"} : ToSubclass] uint32 DeleteObject([In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "52001", "53000", "54000"} : ToSubclass] uint32 Show([In,Required : ToSubclass DisableOverride] string TargetPortAddresses[],[In,Required : ToSubclass DisableOverride] string InitiatorAddress,[In,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22..32767", "32768..65535"} : ToSubclass] uint16 HostType,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "52001", "53000", "54000"} : ToSubclass] uint32 Hide([In,Required : ToSubclass DisableOverride] string TargetPortAddresses[],[In,Required : ToSubclass DisableOverride] string InitiatorAddress,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40000", "40001", "40002", "40003", "46000", "46001", "48000", "48001", "48005", "48006"} : ToSubclass] uint32 CreateSnapshot([In,Required : ToSubclass DisableOverride] string FriendlyName,[In] string TargetStoragePoolName,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk CreatedVirtualDisk,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40000", "40001", "40002", "40003", "46000", "46001", "48000", "48001", "48005", "48006"} : ToSubclass] uint32 CreateClone([In,Required : ToSubclass DisableOverride] string FriendlyName,[In] string TargetStoragePoolName,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk CreatedVirtualDisk,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "4096", "4097", "40000", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003"} : ToSubclass] uint32 Resize([in,out,Required : ToSubclass DisableOverride] uint64 Size,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "6", "4096", "40000", "40001", "40002", "46000", "46001", "50001", "50002"} : ToSubclass] uint32 Repair([In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 GetSecurityDescriptor([Out,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetSecurityDescriptor([In,Required : ToSubclass DisableOverride] string SecurityDescriptor,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003"} : ToSubclass] uint32 SetFriendlyName([In,Required : ToSubclass DisableOverride] string FriendlyName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003"} : ToSubclass] uint32 SetUsage([In,Required : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17"} : ToSubclass] uint16 Usage,[In] string OtherUsageDescription,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003"} : ToSubclass] uint32 SetAttributes([In] boolean IsManualAttach,[In] string StorageNodeName,[In,ValueMap{"1", "2", "3", "4"} : ToSubclass] uint16 Access,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003"} : ToSubclass] uint32 Attach([In] string StorageNodeName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003", "50004"} : ToSubclass] uint32 Detach([In] string StorageNodeName,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "48006", "48007", "51000", "51002", "51003"} : ToSubclass] uint32 AddPhysicalDisk([In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[],[In,ValueMap{"1", "2", "3", "5"} : ToSubclass] uint16 Usage,[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "48006", "48007", "51000", "51004"} : ToSubclass] uint32 RemovePhysicalDisk([In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[],[In] boolean RunAsJob,[Out] MSFT_StorageJob Ref CreatedStorageJob,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_VirtualDiskToDisk

{

  [key] MSFT_VirtualDisk Ref VirtualDisk;

  [key] MSFT_Disk Ref Disk;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_VirtualDiskToPhysicalDisk

{

  [key] MSFT_VirtualDisk Ref VirtualDisk;

  [key] MSFT_PhysicalDisk Ref PhysicalDisk;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_VirtualDiskToStorageTier

{

  [key] MSFT_VirtualDisk Ref VirtualDisk;

  [key] MSFT_StorageTier Ref StorageTier;

};



[Association,locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_VirtualDiskToVirtualDisk

{

  [key] MSFT_VirtualDisk Ref SourceVirtualDisk;

  [key] MSFT_VirtualDisk Ref TargetVirtualDisk;

  [read : ToSubclass] datetime SyncTime;

  [read : ToSubclass] boolean SyncMaintained;

  [read : ToSubclass,ValueMap{"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "..", "0x8000.."} : ToSubclass] uint16 CopyState;

  [read : ToSubclass] uint16 RequestedCopyState = 15;

  [read : ToSubclass,ValueMap{"..", "6", "7", "8", "..", "0x8000.."} : ToSubclass] uint16 SyncType;

  [read : ToSubclass,ValueMap{"0", "2", "3", "..", "32768..65535"} : ToSubclass] uint16 SyncMode;

  [read : ToSubclass,ValueMap{"0", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "..", "0x8000.."} : ToSubclass] uint16 ProgressStatus;

  [read : ToSubclass] uint16 PercentSynced;

  [read : ToSubclass,ValueMap{"2", "3", "4", "5", "..", "0x8000.."} : ToSubclass] uint16 CopyType;

  [read : ToSubclass,ValueMap{"0", "2", "3", "4", "5", "..", "0x8000.."} : ToSubclass] uint16 ReplicaType;

  [read : ToSubclass,ValueMap{"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "..", "0x8000.."} : ToSubclass] uint16 SyncState;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "..", "0x8000.."} : ToSubclass] uint16 CopyPriority;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "..", "0x8000.."} : ToSubclass] uint16 CopyMethodology;

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class MSFT_Volume

{

  [key,read : ToSubclass] string ObjectId;

  [read : ToSubclass] char16 DriveLetter;

  [read : ToSubclass,Required : ToSubclass DisableOverride] string Path;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3"} : ToSubclass] uint16 HealthStatus;

  [read : ToSubclass] string FileSystem;

  string FileSystemLabel;

  [read : ToSubclass] uint64 Size;

  [read : ToSubclass] uint64 SizeRemaining;

  [read : ToSubclass,ValueMap{"0", "1", "2", "3", "4", "5", "6"} : ToSubclass] uint32 DriveType;

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "7", "40001", "40004", "41018", "43000", "43001", "43002", "43003", "43004", "43005", "43006"} : ToSubclass] uint32 Format([In] string FileSystem,[In] string FileSystemLabel,[In] uint32 AllocationUnitSize,[In] boolean Full,[In] boolean Force,[In] boolean Compress,[In] boolean ShortFileNameSupport,[In] boolean SetIntegrityStreams,[In] boolean UseLargeFRS,[In] boolean DisableHeatGathering,[Out,EmbeddedInstance("MSFT_Volume") : ToSubclass] MSFT_Volume FormattedVolume,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "7", "40001", "40004", "43001", "43006", "43007", "43008", "43009", "43010", "43011", "43012", "43013", "43014"} : ToSubclass] uint32 Repair([In] boolean OfflineScanAndFix,[In] boolean Scan,[In] boolean SpotFix,[Out] uint32 Output,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "7", "43017"} : ToSubclass] uint32 Optimize([In] boolean ReTrim,[In] boolean Analyze,[In] boolean Defrag,[In] boolean SlabConsolidate,[In] boolean TierOptimize,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 SetFileSystemLabel([In] string FileSystemLabel,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 GetSupportedFileSystems([Out] string SupportedFileSystems[],[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 GetSupportedClusterSizes([In] string FileSystem,[Out] uint32 SupportedClusterSizes[],[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "40001"} : ToSubclass] uint32 GetCorruptionCount([Out] uint32 CorruptionCount,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 GetAttributes([Out] boolean VolumeScrubEnabled);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5", "43015", "43016"} : ToSubclass] uint32 SetAttributes([In] boolean EnableVolumeScrub,[Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

  [implemented,ValueMap{"0", "1", "2", "3", "4", "5"} : ToSubclass] uint32 Flush();

};



[locale(1033),dynamic : ToInstance,provider("StorageWMI") : ToInstance] 

class PS_StorageCmdlets

{

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "40003", "41000", "41002", "41003", "41006", "41009", "41013", "41014", "41018", "41019"} : ToSubclass] uint32 SetDisk([In,EmbeddedInstance("MSFT_Disk") : ToSubclass] MSFT_Disk InputObject[],[In] string UniqueId,[In] string Path,[In] uint32 Number,[In] uint16 PartitionStyle,[In] boolean IsReadOnly,[In] boolean IsOffline,[In] uint32 Signature,[In] string Guid);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "6", "40001", "40002", "41003", "41006", "41018", "42002", "42004", "42007", "42010", "42011", "42014"} : ToSubclass] uint32 SetPartition([In,EmbeddedInstance("MSFT_Partition") : ToSubclass] MSFT_Partition InputObject[],[In] string DiskId,[In] uint64 Offset,[In] uint32 DiskNumber,[In] uint32 PartitionNumber,[In] char16 DriveLetter,[In] char16 NewDriveLetter,[In] boolean IsOffline,[In] boolean IsReadOnly,[In] boolean NoDefaultDriveLetter,[In] boolean IsActive,[In] boolean IsHidden);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48006", "48007"} : ToSubclass] uint32 SetPhysicalDisk([In,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk InputObject[],[In] string UniqueId,[In] string FriendlyName,[In] string NewFriendlyName,[In] string Description,[In] uint16 Usage,[In] uint16 MediaType);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001", "48000", "48002", "48006", "48007", "48009", "49000", "50005"} : ToSubclass] uint32 SetStoragePool([In,EmbeddedInstance("MSFT_StoragePool") : ToSubclass] MSFT_StoragePool InputObject[],[In] string UniqueId,[In] string Name,[In] string FriendlyName,[In] string NewFriendlyName,[In] uint16 Usage,[In] string OtherUsageDescription,[In] uint16 ProvisioningTypeDefault,[In] string ResiliencySettingNameDefault,[In] boolean EnclosureAwareDefault,[In] uint64 WriteCacheSizeDefault,[In] boolean AutoWriteCacheSize,[In] boolean IsReadOnly,[In] boolean ClearOnDeallocate,[In] boolean IsPowerProtected,[In] uint16 RepairPolicy,[In] uint16 RetireMissingPhysicalDisks,[In] uint16 ThinProvisioningAlertThresholds[]);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "40000", "40001", "40002", "46000", "46001", "48006", "48007", "50002", "50003", "50005"} : ToSubclass] uint32 SetVirtualDisk([In,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk InputObject[],[In] string UniqueId,[In] string Name,[In] string FriendlyName,[In] string NewFriendlyName,[In] uint16 Usage,[In] string OtherUsageDescription,[In] boolean IsManualAttach,[In] string StorageNodeName,[In] uint16 Access);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "40000", "48007"} : ToSubclass] uint32 SetStorageTier([In,EmbeddedInstance("MSFT_StorageTier") : ToSubclass] MSFT_StorageTier InputObject[],[In] string UniqueId,[In] string FriendlyName,[In] string NewFriendlyName,[In] uint16 MediaType,[In] string Description);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "40001", "40002", "46000", "46001"} : ToSubclass] uint32 SetStorageSubSystem([In,EmbeddedInstance("MSFT_StorageSubSystem") : ToSubclass] MSFT_StorageSubSystem InputObject[],[In] string UniqueId,[In] string Name,[In] string FriendlyName,[In] string Description,[In] boolean AutomaticClusteringEnabled);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40001", "40002", "40003", "46000", "46001", "48000", "48006", "48007", "51000", "51002", "51003"} : ToSubclass] uint32 AddPhysicalDisk([In,EmbeddedInstance("MSFT_StoragePool") : ToSubclass] MSFT_StoragePool StoragePool,[In] string StoragePoolUniqueId,[In] string StoragePoolName,[In] string StoragePoolFriendlyName,[In,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk VirtualDisk,[In] string VirtualDiskUniqueId,[In] string VirtualDiskName,[In] string VirtualDiskFriendlyName,[In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[],[In,ValueMap{"1", "2", "3", "5"} : ToSubclass] uint16 Usage);

  [implemented,static : ToSubclass DisableOverride,ValueMap{"0", "1", "2", "3", "4", "5", "4096", "40000", "40001", "40002", "40003", "46000", "46001", "48000", "48006", "48007", "50001", "50003", "51004"} : ToSubclass] uint32 RemovePhysicalDisk([In,EmbeddedInstance("MSFT_StoragePool") : ToSubclass] MSFT_StoragePool StoragePool,[In] string StoragePoolUniqueId,[In] string StoragePoolName,[In] string StoragePoolFriendlyName,[In,EmbeddedInstance("MSFT_VirtualDisk") : ToSubclass] MSFT_VirtualDisk VirtualDisk,[In] string VirtualDiskUniqueId,[In] string VirtualDiskName,[In] string VirtualDiskFriendlyName,[In,Required : ToSubclass DisableOverride,EmbeddedInstance("MSFT_PhysicalDisk") : ToSubclass] MSFT_PhysicalDisk PhysicalDisks[]);

  [implemented,static : ToSubclass DisableOverride] uint32 LaunchProviderHost([Out,EmbeddedInstance("MSFT_StorageExtendedStatus") : ToSubclass] MSFT_StorageExtendedStatus ExtendedStatus);

};