| Flutter Impeller |

Classes | Namespaces | Typedefs | Enumerations | Functions
formats.h File Reference
`#include <cstdint>`
`#include <functional>`
`#include <memory>`
`#include <string>`
`#include <type_traits>`
`#include "flutter/fml/hash_combine.h"`
`#include "flutter/fml/logging.h"`
`#include "impeller/geometry/color.h"`
`#include "impeller/geometry/rect.h"`
`#include "impeller/geometry/scalar.h"`

Go to the source code of this file.

## Classes
struct | impeller::DepthRange
struct | impeller::Viewport
struct | impeller::ColorAttachmentDescriptor
| Describe the color attachment that will be used with this pipeline. More...
struct | impeller::DepthAttachmentDescriptor
struct | impeller::StencilAttachmentDescriptor
struct | impeller::Attachment
struct | impeller::ColorAttachment
struct | impeller::DepthAttachment
struct | impeller::StencilAttachment
struct | std::hash< impeller::DepthAttachmentDescriptor >
struct | std::hash< impeller::StencilAttachmentDescriptor >

## Namespaces
| impeller
| std

## Typedefs
using | impeller::TextureUsageMask = uint64_t

## Enumerations
enum | impeller::StorageMode { impeller::StorageMode::kHostVisible, impeller::StorageMode::kDevicePrivate, impeller::StorageMode::kDeviceTransient }
| Specified where the allocation resides and how it is used. More...
enum | impeller::PixelFormat : uint8_t { impeller::PixelFormat::kUnknown, impeller::PixelFormat::kA8UNormInt, impeller::PixelFormat::kR8UNormInt, impeller::PixelFormat::kR8G8UNormInt, impeller::PixelFormat::kR8G8B8A8UNormInt, impeller::PixelFormat::kR8G8B8A8UNormIntSRGB, impeller::PixelFormat::kB8G8R8A8UNormInt, impeller::PixelFormat::kB8G8R8A8UNormIntSRGB, impeller::PixelFormat::kR32G32B32A32Float, impeller::PixelFormat::kR16G16B16A16Float, impeller::PixelFormat::kB10G10R10XR, impeller::PixelFormat::kB10G10R10XRSRGB, impeller::PixelFormat::kB10G10R10A10XR, impeller::PixelFormat::kS8UInt, impeller::PixelFormat::kD24UnormS8Uint, impeller::PixelFormat::kD32FloatS8UInt }
| The Pixel formats supported by Impeller. The naming convention denotes the usage of the component, the bit width of that component, and then one or more qualifiers to its interpretation. More...
enum | impeller::BlendFactor { impeller::BlendFactor::kZero, impeller::BlendFactor::kOne, impeller::BlendFactor::kSourceColor, impeller::BlendFactor::kOneMinusSourceColor, impeller::BlendFactor::kSourceAlpha, impeller::BlendFactor::kOneMinusSourceAlpha, impeller::BlendFactor::kDestinationColor, impeller::BlendFactor::kOneMinusDestinationColor, impeller::BlendFactor::kDestinationAlpha, impeller::BlendFactor::kOneMinusDestinationAlpha, impeller::BlendFactor::kSourceAlphaSaturated, impeller::BlendFactor::kBlendColor, impeller::BlendFactor::kOneMinusBlendColor, impeller::BlendFactor::kBlendAlpha, impeller::BlendFactor::kOneMinusBlendAlpha }
enum | impeller::BlendOperation { impeller::BlendOperation::kAdd, impeller::BlendOperation::kSubtract, impeller::BlendOperation::kReverseSubtract }
enum | impeller::LoadAction { impeller::LoadAction::kDontCare, impeller::LoadAction::kLoad, impeller::LoadAction::kClear }
enum | impeller::StoreAction { impeller::StoreAction::kDontCare, impeller::StoreAction::kStore, impeller::StoreAction::kMultisampleResolve, impeller::StoreAction::kStoreAndMultisampleResolve }
enum | impeller::TextureType { impeller::TextureType::kTexture2D, impeller::TextureType::kTexture2DMultisample, impeller::TextureType::kTextureCube, impeller::TextureType::kTextureExternalOES }
enum | impeller::SampleCount : uint8_t { impeller::SampleCount::kCount1 = 1, impeller::SampleCount::kCount4 = 4 }
enum | impeller::TextureUsage : TextureUsageMask { impeller::TextureUsage::kUnknown = 0, impeller::TextureUsage::kShaderRead = 1 << 0, impeller::TextureUsage::kShaderWrite = 1 << 1, impeller::TextureUsage::kRenderTarget = 1 << 2 }
enum | impeller::TextureCoordinateSystem { impeller::TextureCoordinateSystem::kUploadFromHost, impeller::TextureCoordinateSystem::kRenderToTexture }
enum | impeller::CullMode { impeller::CullMode::kNone, impeller::CullMode::kFrontFace, impeller::CullMode::kBackFace }
enum | impeller::IndexType { impeller::IndexType::kUnknown, impeller::IndexType::k16bit, impeller::IndexType::k32bit, impeller::IndexType::kNone }
enum | impeller::PrimitiveType : uint8_t { impeller::PrimitiveType::kTriangle, impeller::PrimitiveType::kTriangleStrip, impeller::PrimitiveType::kLine, impeller::PrimitiveType::kLineStrip, impeller::PrimitiveType::kPoint }
| Decides how backend draws pixels based on input vertices. More...
enum | impeller::PolygonMode { impeller::PolygonMode::kFill, impeller::PolygonMode::kLine }
enum | impeller::MinMagFilter { impeller::MinMagFilter::kNearest, impeller::MinMagFilter::kLinear }
enum | impeller::MipFilter { impeller::MipFilter::kNearest, impeller::MipFilter::kLinear }
enum | impeller::SamplerAddressMode { impeller::SamplerAddressMode::kClampToEdge, impeller::SamplerAddressMode::kRepeat, impeller::SamplerAddressMode::kMirror, impeller::SamplerAddressMode::kDecal }
enum | impeller::ColorWriteMask : uint64_t { impeller::ColorWriteMask::kNone = 0, impeller::ColorWriteMask::kRed = 1 << 0, impeller::ColorWriteMask::kGreen = 1 << 1, impeller::ColorWriteMask::kBlue = 1 << 2, impeller::ColorWriteMask::kAlpha = 1 << 3, impeller::ColorWriteMask::kAll = kRed | kGreen | kBlue | kAlpha }
enum | impeller::CompareFunction : uint8_t { impeller::CompareFunction::kNever, impeller::CompareFunction::kAlways, impeller::CompareFunction::kLess, impeller::CompareFunction::kEqual, impeller::CompareFunction::kLessEqual, impeller::CompareFunction::kGreater, impeller::CompareFunction::kNotEqual, impeller::CompareFunction::kGreaterEqual }
enum | impeller::StencilOperation : uint8_t { impeller::StencilOperation::kKeep, impeller::StencilOperation::kZero, impeller::StencilOperation::kSetToReferenceValue, impeller::StencilOperation::kIncrementClamp, impeller::StencilOperation::kDecrementClamp, impeller::StencilOperation::kInvert, impeller::StencilOperation::kIncrementWrap, impeller::StencilOperation::kDecrementWrap }

## Functions
constexpr const char * | impeller::StorageModeToString (StorageMode mode)
constexpr bool | impeller::IsDepthWritable (PixelFormat format)
constexpr bool | impeller::IsStencilWritable (PixelFormat format)
constexpr const char * | impeller::PixelFormatToString (PixelFormat format)
constexpr const char * | impeller::LoadActionToString (LoadAction action)
constexpr const char * | impeller::StoreActionToString (StoreAction action)
constexpr bool | impeller::CanClearAttachment (LoadAction action)
constexpr bool | impeller::CanDiscardAttachmentWhenDone (StoreAction action)
constexpr const char * | impeller::TextureTypeToString (TextureType type)
constexpr bool | impeller::IsMultisampleCapable (TextureType type)
constexpr bool | impeller::TextureUsageIsRenderTarget (TextureUsageMask mask)
constexpr const char * | impeller::TextureUsageToString (TextureUsage usage)
std::string | impeller::TextureUsageMaskToString (TextureUsageMask mask)
constexpr size_t | impeller::BytesPerPixelForPixelFormat (PixelFormat format)
std::string | impeller::AttachmentToString (const Attachment &attachment)
std::string | impeller::ColorAttachmentToString (const ColorAttachment &color)
std::string | impeller::DepthAttachmentToString (const DepthAttachment &depth)
std::string | impeller::StencilAttachmentToString (const StencilAttachment &stencil)