SMP Example MOFs
A master MOF: sample_master.mof
// BEGIN OF FILE
// Required MOFs
#pragma include("msft_qualifiers.mof")
#pragma include("storagewmi_provider.mof")
// Your SMP MOFs
#pragma include("sample_storageprovider.mof")
// #pragma include("sample_storagesubsystem.mof")
// other supported classes…
// END OF FILE
Individual class MOF: sample_storageprovider.mof
// BEGIN OF FILE
class SAMPLE_StorageProvider : MSFT_StorageProvider
{
// No need to copy base class properties.
// If you support Discover, copy it over.
// Keep all qualifiers.
// Qualifier strings are omitted below.
[Required, Description(…),
ValueMap {…},
Values {…}]
UInt32 Discover(
[In, Required, Description(…),
ValueMap {…},
Values {…}]
UInt16 DiscoveryLevel,
[In, Description(…)]
MSFT_StorageObject REF RootObject,
[Out, Description(…)]
MSFT_StorageJob REF CreatedStorageJob,
[Out, Description(…),
EmbeddedInstance("MSFT_StorageExtendedStatus")]
String ExtendedStatus
);
// other supported methods…
};
// END OF FILE