Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Namespaces | Macros | Typedefs | Functions
blend_filter_contents.cc File Reference
#include "impeller/entity/contents/filters/blend_filter_contents.h"
#include <array>
#include <memory>
#include <optional>
#include "flutter/fml/logging.h"
#include "impeller/base/strings.h"
#include "impeller/core/formats.h"
#include "impeller/core/sampler_descriptor.h"
#include "impeller/core/texture_descriptor.h"
#include "impeller/entity/contents/anonymous_contents.h"
#include "impeller/entity/contents/content_context.h"
#include "impeller/entity/contents/contents.h"
#include "impeller/entity/contents/filters/color_filter_contents.h"
#include "impeller/entity/contents/filters/inputs/filter_input.h"
#include "impeller/entity/contents/solid_color_contents.h"
#include "impeller/entity/entity.h"
#include "impeller/entity/texture_fill.frag.h"
#include "impeller/entity/texture_fill.vert.h"
#include "impeller/geometry/color.h"
#include "impeller/renderer/render_pass.h"
#include "impeller/renderer/snapshot.h"

Go to the source code of this file.

Namespaces

namespace  impeller
 

Macros

#define BLEND_CASE(mode)
 

Typedefs

using impeller::PipelineProc = std::shared_ptr< Pipeline< PipelineDescriptor > >(ContentContext::*)(ContentContextOptions) const
 

Functions

std::optional< BlendModeimpeller::InvertPorterDuffBlend (BlendMode blend_mode)
 
template<typename TPipeline >
static std::optional< Entityimpeller::AdvancedBlend (const FilterInput::Vector &inputs, const ContentContext &renderer, const Entity &entity, const Rect &coverage, BlendMode blend_mode, std::optional< Color > foreground_color, ColorFilterContents::AbsorbOpacity absorb_opacity, PipelineProc pipeline_proc, std::optional< Scalar > alpha)
 
static std::optional< Entityimpeller::PipelineBlend (const FilterInput::Vector &inputs, const ContentContext &renderer, const Entity &entity, const Rect &coverage, BlendMode blend_mode, std::optional< Color > foreground_color, ColorFilterContents::AbsorbOpacity absorb_opacity, std::optional< Scalar > alpha)
 

Macro Definition Documentation

◆ BLEND_CASE

#define BLEND_CASE (   mode)
Value:
case BlendMode::k##mode: \
advanced_blend_proc_ = \
[](const FilterInput::Vector& inputs, const ContentContext& renderer, \
const Entity& entity, const Rect& coverage, BlendMode blend_mode, \
std::optional<Color> fg_color, \
ColorFilterContents::AbsorbOpacity absorb_opacity, \
std::optional<Scalar> alpha) { \
PipelineProc p = &ContentContext::GetBlend##mode##Pipeline; \
return AdvancedBlend<Blend##mode##Pipeline>( \
inputs, renderer, entity, coverage, blend_mode, fg_color, \
absorb_opacity, p, alpha); \
}; \
break;

Definition at line 897 of file blend_filter_contents.cc.

898 : \
899 advanced_blend_proc_ = \
900 [](const FilterInput::Vector& inputs, const ContentContext& renderer, \
901 const Entity& entity, const Rect& coverage, BlendMode blend_mode, \
902 std::optional<Color> fg_color, \
903 ColorFilterContents::AbsorbOpacity absorb_opacity, \
904 std::optional<Scalar> alpha) { \
905 PipelineProc p = &ContentContext::GetBlend##mode##Pipeline; \
906 return AdvancedBlend<Blend##mode##Pipeline>( \
907 inputs, renderer, entity, coverage, blend_mode, fg_color, \
908 absorb_opacity, p, alpha); \
909 }; \
910 break;
it will be possible to load the file into Perfetto s trace viewer disable asset Prevents usage of any non test fonts unless they were explicitly Loaded via prefetched default font Indicates whether the embedding started a prefetch of the default font manager before creating the engine run In non interactive mode
Definition switches.h:228
TRect< Scalar > Rect
Definition rect.h:746
BlendMode
Definition color.h:59
std::shared_ptr< Pipeline< PipelineDescriptor > >(ContentContext::*)(ContentContextOptions) const PipelineProc