| Flutter Impeller |

Classes | Namespaces | Macros | Enumerations | Functions
color.h File Reference
`#include <stdint.h>`
`#include <algorithm>`
`#include <array>`
`#include <cstdint>`
`#include <cstdlib>`
`#include <ostream>`
`#include <type_traits>`
`#include "impeller/geometry/scalar.h"`
`#include "impeller/geometry/type_traits.h"`

Go to the source code of this file.

## Classes
struct | impeller::ColorMatrix
struct | impeller::Color
struct | impeller::ColorHSB

## Namespaces
| impeller
| std

## Macros
#define | IMPELLER_FOR_EACH_BLEND_MODE(V)

## Enumerations
enum | impeller::YUVColorSpace { impeller::YUVColorSpace::kBT601LimitedRange, impeller::YUVColorSpace::kBT601FullRange }
enum | impeller::BlendMode : uint8_t { impeller::BlendMode::kClear = 0, impeller::BlendMode::kSource, impeller::BlendMode::kDestination, impeller::BlendMode::kSourceOver, impeller::BlendMode::kDestinationOver, impeller::BlendMode::kSourceIn, impeller::BlendMode::kDestinationIn, impeller::BlendMode::kSourceOut, impeller::BlendMode::kDestinationOut, impeller::BlendMode::kSourceATop, impeller::BlendMode::kDestinationATop, impeller::BlendMode::kXor, impeller::BlendMode::kPlus, impeller::BlendMode::kModulate, impeller::BlendMode::kScreen, impeller::BlendMode::kOverlay, impeller::BlendMode::kDarken, impeller::BlendMode::kLighten, impeller::BlendMode::kColorDodge, impeller::BlendMode::kColorBurn, impeller::BlendMode::kHardLight, impeller::BlendMode::kSoftLight, impeller::BlendMode::kDifference, impeller::BlendMode::kExclusion, impeller::BlendMode::kMultiply, impeller::BlendMode::kHue, impeller::BlendMode::kSaturation, impeller::BlendMode::kColor, impeller::BlendMode::kLuminosity, impeller::BlendMode::kLast = kLuminosity }

## Functions
const char * | impeller::BlendModeToString (BlendMode blend_mode)
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>>
constexpr Color | impeller::operator+ (T value, const Color &c)
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>>
constexpr Color | impeller::operator- (T value, const Color &c)
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>>
constexpr Color | impeller::operator* (T value, const Color &c)
template<class T , class = std::enable_if_t<std::is_arithmetic_v<T>>>
constexpr Color | impeller::operator/ (T value, const Color &c)
std::string | impeller::ColorToString (const Color &color)
std::ostream & | std::operator<< (std::ostream &out, const impeller::Color &c)

## Macro Definition Documentation

## ◆ IMPELLER_FOR_EACH_BLEND_MODE

#define IMPELLER_FOR_EACH_BLEND_MODE | ( |  | V | ) |

Value:
V(Clear) \
V(Source) \
V(Destination) \
V(SourceOver) \
V(DestinationOver) \
V(SourceIn) \
V(DestinationIn) \
V(SourceOut) \
V(DestinationOut) \
V(SourceATop) \
V(DestinationATop) \
V(Xor) \
V(Plus) \
V(Modulate) \
V(Screen) \
V(Overlay) \
V(Darken) \
V(Lighten) \
V(ColorDodge) \
V(ColorBurn) \
V(HardLight) \
V(SoftLight) \
V(Difference) \
V(Exclusion) \
V(Multiply) \
V(Hue) \
V(Saturation) \
V(Color) \
V(Luminosity)

Definition at line 19 of file color.h.

impeller::Luminosity
static constexpr Scalar Luminosity(Vector3 color)
Definition: color.cc:140
impeller::Saturation
static constexpr Scalar Saturation(Vector3 color)
Definition: color.cc:166