This class, informally referred to as a "category holder" (or simply "holder"), holds a category, an enabled value, and a pointer to a "next" holder. Both the category and next pointer may be null. The intended use is as follows: (1) instances of this class are (only) declared in contexts where collecting a metric occurs; (2) if the enabled value is true, the category contains the address of a valid, enabled, category; (3) if the next pointer is non-null, then the holder pointed to holds the same category and threshold. Instances of this class must be statically initializable. Hence, the data members are public, and no constructors or destructor are defined.
Declared in <balm_category.h>
class CategoryHolder;
This class should not be used directly by client code. It is an implementation detail of the balm metric collection system.
| Name | Description |
|---|---|
category | Return the address of the non-modifiable category held by this holder. |
enabled | Return true if category is valid (i.e., non-null) and enabled, and false otherwise. |
next | Return the address of the modifiable holder pointed to by this holder. |
reset | Reset this object to its default value. The default value is: ` { false, 0, 0 } ` |
setCategory | Set the address of the category held by this holder to the specified category. |
setEnabled | Set the enabled state of this category to the value of the specified enabledFlag. |
setNext | Set this holder to point to the specified holder. |
| Name | Description |
|---|---|
d_category_p | Address of the held category (not owned). |
d_enabled | Whether the held category is enabled. |
d_next_p | Next category holder in the linked list. |