summaryrefslogtreecommitdiffstats
path: root/gpu/config/gpu_control_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'gpu/config/gpu_control_list.h')
-rw-r--r--gpu/config/gpu_control_list.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/gpu/config/gpu_control_list.h b/gpu/config/gpu_control_list.h
index ced3b52..29a5f77 100644
--- a/gpu/config/gpu_control_list.h
+++ b/gpu/config/gpu_control_list.h
@@ -93,6 +93,13 @@ class GPU_EXPORT GpuControlList {
// Register whether "all" is recognized as all features.
void set_supports_feature_type_all(bool supported);
+ // Enables logging of control list decisions.
+ void enable_control_list_logging(
+ const std::string& control_list_logging_name) {
+ control_list_logging_enabled_ = true;
+ control_list_logging_name_ = control_list_logging_name;
+ }
+
private:
friend class GpuControlListEntryTest;
friend class MachineModelInfoTest;
@@ -289,6 +296,11 @@ class GPU_EXPORT GpuControlList {
const FeatureMap& feature_map,
bool supports_feature_type_all);
+ // Logs a control list match for this rule in the list identified by
+ // |control_list_logging_name|.
+ void LogControlListMatch(
+ const std::string& control_list_logging_name) const;
+
// Determines if a given os/gc/machine_model/driver is included in the
// Entry set.
bool Contains(OsType os_type, const std::string& os_version,
@@ -479,6 +491,9 @@ class GPU_EXPORT GpuControlList {
// The features a GpuControlList recognizes and handles.
FeatureMap feature_map_;
bool supports_feature_type_all_;
+
+ bool control_list_logging_enabled_;
+ std::string control_list_logging_name_;
};
} // namespace gpu