The label attribute structure contains one form of the label.

typedef struct _DCILabel {
  uint32              size;      /*  The total structure size. */
  UMATextString       ascii;
  UMAElementDescr     reserved;  /*  Reserved.  Set to 0 for Release 1. */
  UMAVarLenData       data;      /*  Start of the data. */
} DCILabel;

typedef   DCILabel   * DCILabel ;

Labels can be used to assign metric names that are more meaningful than the metric identifier. Applications may then search the name space for a metric using the metric's label, rather than the metric id.

The label is a variable length null-terminated ASCII string, padded on the right for a word boundary if necessary. This is to ensure that the size field is always a multiple of 4 bytes.

Labels should be made unique using following criteria:

Maintaining unique labels is the responsibility of the entity that registers the class or adds a new instance. The Performance Services function will not return an error status if the label is not unique.

The provider must register a label with each name space entity (metric class, metric instance or metric datum) before an application may use the label to search the name space.

Once a metric class, instance or datum has been labeled, the metric provider cannot relabel it unless the metric has been completely unregistered.


[Back: DCIInstLevel Field - size]
[Next: DCILabel Field - size]