tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

gfxTelemetry.cpp (3487B)


      1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
      3 /* This Source Code Form is subject to the terms of the Mozilla Public
      4 * License, v. 2.0. If a copy of the MPL was not distributed with this
      5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      6 #include "gfxTelemetry.h"
      7 
      8 #include "mozilla/Assertions.h"
      9 
     10 namespace mozilla {
     11 namespace gfx {
     12 
     13 const char* FeatureStatusToString(FeatureStatus aStatus) {
     14  switch (aStatus) {
     15    case FeatureStatus::Unused:
     16      return "unused";
     17    case FeatureStatus::Unavailable:
     18      return "unavailable";
     19    case FeatureStatus::UnavailableInSafeMode:
     20      return "unavailable-in-safe-mode";
     21    case FeatureStatus::UnavailableNoGpuProcess:
     22      return "unavailable-no-gpu-process";
     23    case FeatureStatus::UnavailableNoHwCompositing:
     24      return "unavailable-no-hw-compositing";
     25    case FeatureStatus::UnavailableNotBuilt:
     26      return "unavailable-not-built";
     27    case FeatureStatus::UnavailableNoAngle:
     28      return "unavailable-no-angle";
     29    case FeatureStatus::UnavailableNoWebRender:
     30      return "unavailable-no-webrender";
     31    case FeatureStatus::CrashedInHandler:
     32      return "crashed";
     33    case FeatureStatus::Blocked:
     34      return "blocked";
     35    case FeatureStatus::BlockedDeviceUnknown:
     36      return "blocked-device-unknown";
     37    case FeatureStatus::BlockedDeviceTooOld:
     38      return "blocked-device-too-old";
     39    case FeatureStatus::BlockedVendorUnsupported:
     40      return "blocked-vendor-unsupported";
     41    case FeatureStatus::BlockedHasBattery:
     42      return "blocked-has-battery";
     43    case FeatureStatus::BlockedScreenTooLarge:
     44      return "blocked-screen-too-large";
     45    case FeatureStatus::BlockedScreenUnknown:
     46      return "blocked-screen-unknown";
     47    case FeatureStatus::BlockedNoGfxInfo:
     48      return "blocked-no-gfx-info";
     49    case FeatureStatus::BlockedOverride:
     50      return "blocked-override";
     51    case FeatureStatus::BlockedReleaseChannelIntel:
     52      return "blocked-release-channel-intel";
     53    case FeatureStatus::BlockedReleaseChannelAMD:
     54      return "blocked-release-channel-amd";
     55    case FeatureStatus::BlockedReleaseChannelNvidia:
     56      return "blocked-release-channel-nvidia";
     57    case FeatureStatus::BlockedReleaseChannelBattery:
     58      return "blocked-release-channel-battery";
     59    case FeatureStatus::BlockedReleaseChannelAndroid:
     60      return "blocked-release-channel-android";
     61    case FeatureStatus::Denied:
     62      return "denied";
     63    case FeatureStatus::Blocklisted:
     64      return "blocklisted";
     65    case FeatureStatus::OptIn:
     66      return "opt-in";
     67    case FeatureStatus::Failed:
     68      return "failed";
     69    case FeatureStatus::Disabled:
     70      return "disabled";
     71    case FeatureStatus::Available:
     72      return "available";
     73    case FeatureStatus::ForceEnabled:
     74      return "force_enabled";
     75    case FeatureStatus::CrashedOnStartup:
     76      return "crashed_on_startup";
     77    case FeatureStatus::Broken:
     78      return "broken";
     79    default:
     80      MOZ_ASSERT_UNREACHABLE("missing status case");
     81      return "unknown";
     82  }
     83 }
     84 
     85 bool IsFeatureStatusFailure(FeatureStatus aStatus) {
     86  return !(aStatus == FeatureStatus::Unused ||
     87           aStatus == FeatureStatus::Available ||
     88           aStatus == FeatureStatus::ForceEnabled);
     89 }
     90 
     91 bool IsFeatureStatusSuccess(FeatureStatus aStatus) {
     92  return aStatus == FeatureStatus::Available ||
     93         aStatus == FeatureStatus::ForceEnabled;
     94 }
     95 
     96 }  // namespace gfx
     97 }  // namespace mozilla