CimFlags Enumeration

 

Specifies CIM flags that are used with the class declarations of instances. They represent CIM meta-types (qualifier scopes) as well as a set of well-known CIM qualifiers. These flags can be combined together, with the exception of a few groups of mutually exclusive flags.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:   Microsoft.Management.Infrastructure
Assembly:  Microsoft.Management.Infrastructure (in Microsoft.Management.Infrastructure.dll)

Syntax

[FlagsAttribute]
public enum CimFlags
[FlagsAttribute]
public enum class CimFlags
[<FlagsAttribute>]
type CimFlags
<FlagsAttribute>
Public Enumeration CimFlags

Members

Member name Description
Abstract

A class flag that indicates that the class is abstract. This value is applicable only when used in conjunction with the Class value, and the value is mutually exclusive with the Terminal value.

Adopt

A property flag used while adding and setting properties on an instance to indicate that the instance will adopt the pointer and will be responsible for deleting it. This value is mutually exclusive with the Borrow value.

Any

A bitmask used to filter out other CIM meta-type (qualifier scope) flags. This value is a combination of the Class, Method, Property, Parameter, Association, Indication, and Reference values.

Association

A CIM meta-type that represents a class that is also an association class. This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

Borrow

A property flag used while adding and setting properties on an instance to indicate that the instance will not copy the value. The value must stay valid until the instance is deleted. This value is mutually exclusive with the Adopt value.

Class

A CIM meta-type that represents a class. This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

DisableOverride

A qualifier flag to indicate that the qualifier cannot be overridden. This value is mutually exclusive with the EnableOverride value.

EnableOverride

A qualifier flag to indicate that the qualifier can be overridden. This value is mutually exclusive with the DisableOverride value.

Expensive

A property flag that indicates the property is expensive. A provider does not need to supply expensive properties unless the client asks for it, although most engines and clients do not support this concept and all properties are always returned. This value is applicable only when used in conjunction with the Property value.

In

A parameter flag that indicates that the parameter is of type In and is passed into the method. This value is applicable only when used in conjunction with the Parameter value.

Indication

A CIM meta-type that represents a class that is also an indication class. This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

Key

A property flag that indicates that the element is a key property. This value is applicable only when used in conjunction with the Property value.

Method

A CIM meta-type that represents a method. This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

None

Not implemented.

NotModified

A flag that indicates that the property value is not modified.

NullValue

A flag that indicates that a property value or method parameter value is null.

Out

A parameter flag that indicates that the parameter is of type Out and is returned from the method. This value is applicable only when used in conjunction with the Parameter value.

Parameter

A CIM meta-type that represents a method parameter. This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

Property

A CIM meta-type that represents a property. This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

ReadOnly

A property flag that indicates that the property can only be read and cannot be written to. This value is applicable only when used in conjunction with the Property value.

Reference

A CIM meta-type that represents a reference (pointer to other instances). This value is mutually exclusive with other CIM meta-type (qualifier scope) values.

Required

A parameter flag that indicates that the parameter must be specified. This value is applicable only when used in conjunction with the Parameter value.

Restricted

A qualifier flag that states that the qualifier will not be propagated to a derived class. This value is mutually exclusive with the ToSubclass value.

Static

A flag that is used on methods to indicate that the element is static and does not need an instance specifying the key to invoke it.

Stream

A flag that indicates that a method parameter will be streamed back to the client from the provider. This value is applicable only when used in conjunction with the Parameter value.

Terminal

A class flag that indicates that the class cannot be derived from. This value is applicable only when used in conjunction with the Class value, and the value is mutually exclusive with the Abstract value.

ToSubclass

A qualifier flag that states that the class qualifier is inherited automatically by any subclass. This value is mutually exclusive with the Restricted value.

Translatable

A qualifier flag that indicates that there may be different languages associated with the element. Translatable qualifiers will be treated such that strings and values can be localized in different languages.

Remarks

The CIM flags can be grouped into the following categories:

  1. CIM meta-types or qualifier scopes:

    1. Association

    2. Association

    3. Indication

    4. Method

    5. Parameter

    6. Property

    7. Reference

  2. Qualifier flags:

    1. DisableOverride

    2. EnableOverride

    3. Restricted

    4. ToSubclass

    5. Translatable

  3. Boolean qualifiers:

    1. Abstract

    2. Expensive

    3. Key

    4. In

    5. Out

    6. ReadOnly

    7. Required

    8. Static

    9. Stream

    10. Terminal

  4. Special flags:

  1. Adopt

  2. Borrow

  3. NotModified

  4. NullValue

See Also

Microsoft.Management.Infrastructure Namespace

Return to top