void LogComponentSettings::clearMinimumLoggedSeverity(LogComponent component) { dassert(int(component) >= 0 && int(component) < LogComponent::kNumLogComponents); // LogComponent::kDefault must always be configured. if (component == LogComponent::kDefault) { setMinimumLoggedSeverity(component, LogSeverity::Log()); return; } // Set unconfigured severity level to match LogComponent::kDefault. setMinimumLoggedSeverity(component, getMinimumLogSeverity(component.parent())); _hasMinimumLoggedSeverity[component] = false; }
void LogComponentSettings::setMinimumLoggedSeverity(LogComponent component, LogSeverity severity) { dassert(int(component) >= 0 && int(component) < LogComponent::kNumLogComponents); _minimumLoggedSeverity[component] = char(severity.toInt()); _hasMinimumLoggedSeverity[component] = true; // Every unconfigured component will inherit log severity from parent. // Traversing the severity array once works because child components always // come after the parent in the LogComponent::Value enumeration. for (int i = 0; i < int(LogComponent::kNumLogComponents); ++i) { if (!_hasMinimumLoggedSeverity[i]) { LogComponent::Value v = LogComponent::Value(i); LogComponent parentComponent = LogComponent(v).parent(); LogSeverity parentSeverity = getMinimumLogSeverity(parentComponent); _minimumLoggedSeverity[i] = char(parentSeverity.toInt()); } } }