[#BloombergLP-ball-ThresholdAggregate]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::ThresholdAggregate
:relfileprefix: ../../
:mrdocs:

This class implements an aggregate of the four logging threshold levels&period;

== Synopsis

Declared in `&lt;ball&lowbar;thresholdaggregate&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class ThresholdAggregate;
----

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/ball/ThresholdAggregate/2constructor-06.adoc[`ThresholdAggregate`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/ball/ThresholdAggregate/operator_assign.adoc[`operator&equals;`] 
| Assign the value of the specified `rhs` threshold aggregate to this aggregate, and return a reference to this modifiable aggregate&period;
| xref:BloombergLP/ball/ThresholdAggregate/passLevel.adoc[`passLevel`] 
| Return the pass level of this threshold aggregate&period;
| xref:BloombergLP/ball/ThresholdAggregate/print.adoc[`print`] 
| Format this object to the specified output `stream` at the (absolute value of) the optionally specified indentation `level` and return a reference to `stream`&period; If `level` is specified, optionally specify `spacesPerLevel`, the number of spaces per indentation level for this and all of its nested objects&period; If `level` is negative, suppress indentation of the first line&period; If `spacesPerLevel` is negative, format the entire output on one line, suppressing all but the initial indentation (as governed by `level`)&period; If `stream` is not valid on entry, this operation has no effect&period;
| xref:BloombergLP/ball/ThresholdAggregate/recordLevel.adoc[`recordLevel`] 
| Return the record level of this threshold aggregate&period;
| xref:BloombergLP/ball/ThresholdAggregate/setLevels.adoc[`setLevels`] 
| Set the threshold levels of this threshold aggregate to the specified `recordLevel`, `passLevel`, `triggerLevel`, and `triggerAllLevel` values, respectively, if each of the specified values is in the range `&lsqb;0 &period;&period; 255&rsqb;`&period; Return 0 on success, and a non&hyphen;zero value otherwise (with no effect on the threshold levels of this aggregate)&period;
| xref:BloombergLP/ball/ThresholdAggregate/setPassLevel.adoc[`setPassLevel`] 
| Set the pass level of this threshold aggregate to the specified `passLevel`&period;
| xref:BloombergLP/ball/ThresholdAggregate/setRecordLevel.adoc[`setRecordLevel`] 
| Set the record level of this threshold aggregate to the specified `recordLevel`&period;
| xref:BloombergLP/ball/ThresholdAggregate/setTriggerAllLevel.adoc[`setTriggerAllLevel`] 
| Set the trigger&hyphen;all level of this threshold aggregate to the specified `triggerAllLevel`&period;
| xref:BloombergLP/ball/ThresholdAggregate/setTriggerLevel.adoc[`setTriggerLevel`] 
| Set the trigger level of this threshold aggregate to the specified `triggerLevel`&period;
| xref:BloombergLP/ball/ThresholdAggregate/triggerAllLevel.adoc[`triggerAllLevel`] 
| Return the trigger&hyphen;all level of this threshold aggregate&period;
| xref:BloombergLP/ball/ThresholdAggregate/triggerLevel.adoc[`triggerLevel`] 
| Return the trigger level of this threshold aggregate&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/ball/ThresholdAggregate/areValidThresholdLevels.adoc[`areValidThresholdLevels`] 
| Return `true` if each of the specified `recordLevel`, `passLevel`, `triggerLevel`, and `triggerAllLevel` threshold values is in the range `&lsqb;0 &period;&period; 255&rsqb;`, and `false` otherwise&period;
| xref:BloombergLP/ball/ThresholdAggregate/hash.adoc[`hash`] 
| Return a hash value calculated from the specified threshold `aggregate` using the specified `size` as the number of slots&period; The hash value is guaranteed to be in the range `&lsqb;0, size &hyphen; 1&rsqb;`&period; The behavior is undefined unless `0 &lt; size`&period;
| xref:BloombergLP/ball/ThresholdAggregate/maxLevel-08.adoc[`maxLevel`] 
| `maxLevel` overloads
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/ball/operator_eq-0e.adoc[BloombergLP::ball::operator&equals;&equals;]`
| Return `true` if the specified `lhs` and `rhs` threshold aggregates have the same value, and `false` otherwise&period; Two threshold aggregates have the same value if all four of their respective threshold levels are the same&period;
|===

== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/ball/operator_not_eq-0af.adoc[`operator!&equals;`]
| Return `true` if the specified `lhs` and `rhs` threshold aggregates do not have the same value, and `false` otherwise&period; Two threshold aggregates do not have the same value if any of their four respective threshold levels differ&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
