blob: 69bfda4feecc2336720cb7834a8ceee96d181249 [file] [log] [blame]
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CC_RASTER_LCD_TEXT_DISALLOWED_REASON_H_
#define CC_RASTER_LCD_TEXT_DISALLOWED_REASON_H_
#include <cstddef>
#include <cstdint>
#include <iosfwd>
#include "cc/cc_export.h"
namespace cc {
// These values are used in UMA and benchmarks. Entries should not be renumbered
// and numeric values should never be reused.
enum class LCDTextDisallowedReason : uint8_t {
kNone = 0,
kSetting = 1,
kBackgroundColorNotOpaque = 2,
kContentsNotOpaque = 3,
kNonIntegralTranslation = 4,
kNonIntegralXOffset = 5,
kNonIntegralYOffset = 6,
kWillChangeTransform = 7,
kPixelOrColorEffect = 8,
kTransformAnimation = 9,
kNoText = 10,
kMaxValue = kNoText,
};
constexpr size_t kLCDTextDisallowedReasonCount =
static_cast<size_t>(LCDTextDisallowedReason::kMaxValue) + 1;
CC_EXPORT const char* LCDTextDisallowedReasonToString(LCDTextDisallowedReason);
CC_EXPORT std::ostream& operator<<(std::ostream&, LCDTextDisallowedReason);
} // namespace cc
#endif // CC_RASTER_LCD_TEXT_DISALLOWED_REASON_H_