BloombergLP::balm::CategoryHolder

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.

Synopsis

Declared in <balm_category.h>

class CategoryHolder;

Description

This class should not be used directly by client code. It is an implementation detail of the balm metric collection system.

Member Functions

NameDescription
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.

Data Members

NameDescription
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.