Add a category with the specified name and threshold levels.

Synopsis

Declared in <ball_categorymanager.h>

Category*
addCategory(
    CategoryHolder* categoryHolder,
    char const* categoryName,
    int recordLevel,
    int passLevel,
    int triggerLevel,
    int triggerAllLevel);

Description

Add to the registry of this category manager a category having the specified categoryName, possibly changed by the registered category name filter callback, and having the specified recordLevel, passLevel, triggerLevel, and triggerAllLevel threshold values, respectively, if there is no category having (the possibly filtered) categoryName and each of the specified threshold values is in the range [0 .. 255]. Return the address of the newly‐created, modifiable category on success, and 0 otherwise. If a newly‐created category is returned and the specified categoryHolder is non‐null, then also load into categoryHolder the returned category and its maximum level and link categoryHolder to the category. The behavior is undefined unless a lock is not held by this thread on the mutex returned by rulesetMutex. Note that if a category having (the possibly filtered) categoryName already exists in the registry, 0 is returned. Note that an existing category will not be modified if a category with the (possibly filtered) categoryName already exists.

Return Value

address of the newly‐created category on success, and 0 otherwise

Parameters

Name

Description

categoryHolder

optional holder to load with the category

categoryName

name of the category to add

recordLevel

record threshold level for the new category

passLevel

pass threshold level for the new category

triggerLevel

trigger threshold level for the new category

triggerAllLevel

trigger‐all threshold level for the new category

Created with MrDocs