class PixelFormatModifier
Defined at line 51 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h
The upper 8 bits are a vendor code. The lower 56 bits are vendor-defined.
The defined `PixelFormatModifier` values are specific, complete, and valid
values (except for `INVALID` and `DO_NOT_CARE` which have their own
meanings).
Some other valid or potentially-valid `pixel_format_modifier` values are not
defined as a `PixelFormatModifier` value, typically because the value isn't
used in practice (or potentially is newly used but not yet defined in
`PixelFormatModifier`). It is permitted to specify such a value as a
`PixelFormatModifier` value in a `pixel_format_modifier` field, despite the
lack of corresponding defined `PixelFormatModifier` value. If such a value
is used outside test code, please consider adding it as a defined value in
`PixelFormatModifier`. All such values must conform to the upper 8 bits
vendor code (don't define/use values outside the/an appropriate vendor
code).
The separately-defined `FORMAT_MODIFIER_*` uint64 values are vendor-specific
bit field values, not complete valid values on their own. These uint64
values can be used to help create or interpret a `PixelFormatModifier` value
in terms of vendor-specific bitfields.
When the `pixel_format_modifier` is set to a supported value (excluding
`DO_NOT_CARE`, `INVALID`, `LINEAR`), the arrangement of pixel data otherwise
specified by the `pixel_format` field is "modified", typically to allow for
some combination of tiling, compression (typically lossless, typically for
memory bandwidth reduction not framebuffer size reduction), transaction
elimination, dirt tracking, but typically not modifying the bit depth of the
`pixel_format`. In some cases there's a per-image or per-tile header
involved, or similar. The `pixel_format` field often still needs to be set
to a valid supported value that works in combination with the
`pixel_format_modifier`, and that `pixel_format` value can also contribute
to the overall meaning of the `ImageFormat`. In other words, the "modifier"
part of the name is more accurate than "override" would be.
Public Members
static PixelFormatModifier kDoNotCare
static PixelFormatModifier kInvalid
static PixelFormatModifier kLinear
static PixelFormatModifier kIntelI915XTiled
static PixelFormatModifier kIntelI915YTiled
static PixelFormatModifier kIntelI915YfTiled
static PixelFormatModifier kIntelI915YTiledCcs
static PixelFormatModifier kIntelI915YfTiledCcs
static PixelFormatModifier kArmAfbc16X16
static PixelFormatModifier kArmAfbc32X8
static PixelFormatModifier kArmLinearTe
static PixelFormatModifier kArmAfbc16X16Te
static PixelFormatModifier kArmAfbc32X8Te
static PixelFormatModifier kArmAfbc16X16YuvTiledHeader
static PixelFormatModifier kArmAfbc16X16SplitBlockSparseYuv
static PixelFormatModifier kArmAfbc16X16SplitBlockSparseYuvTe
static PixelFormatModifier kArmAfbc16X16SplitBlockSparseYuvTiledHeader
static PixelFormatModifier kArmAfbc16X16SplitBlockSparseYuvTeTiledHeader
static PixelFormatModifier kGoogleGoldfishOptimal
Public Methods
void PixelFormatModifier ()
Defined at line 99 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h
void PixelFormatModifier (uint64_t value)
Defined at line 100 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h
EnumForSwitching_ operator fuchsia_images2::PixelFormatModifier::EnumForSwitching_ ()
Defined at line 101 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h
uint64_t operator unsigned long ()
Defined at line 102 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h
bool IsUnknown ()
Defined at line 104 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h
PixelFormatModifier Unknown ()
Returns an enum corresponding to the member designated as
in the
FIDL schema if exists, or a compiler-reserved unknown value otherwise.
Defined at line 151 of file fidling/gen/sdk/fidl/fuchsia.images2/fuchsia.images2/cpp/fidl/fuchsia.images2/cpp/common_types.h