Flutter Impeller
aiks_dl_blend_unittests.cc File Reference
#include <memory>
#include "display_list/display_list.h"
#include "display_list/dl_sampling_options.h"
#include "display_list/dl_tile_mode.h"
#include "display_list/effects/dl_color_filter.h"
#include "display_list/effects/dl_color_source.h"
#include "display_list/effects/dl_mask_filter.h"
#include "flutter/impeller/display_list/aiks_unittests.h"
#include "flutter/display_list/dl_blend_mode.h"
#include "flutter/display_list/dl_builder.h"
#include "flutter/display_list/dl_color.h"
#include "flutter/display_list/dl_paint.h"
#include "flutter/impeller/display_list/dl_image_impeller.h"
#include "flutter/impeller/geometry/scalar.h"
#include "impeller/display_list/aiks_context.h"
#include "impeller/display_list/dl_dispatcher.h"
#include "impeller/playground/playground.h"
#include "impeller/playground/playground_test.h"
#include "impeller/renderer/testing/mocks.h"

Go to the source code of this file.

Classes

struct  impeller::testing::BlendModeSelection
 

Namespaces

 impeller
 
 impeller::testing
 

Macros

#define BLEND_MODE_TUPLE(blend_mode)   {#blend_mode, BlendMode::k##blend_mode},
 
#define BLEND_MODE_TEST(blend_mode)
 
#define BLEND_MODE_SRC_ALPHA_TEST(blend_mode)
 

Functions

static BlendModeSelection impeller::testing::GetBlendModeSelection ()
 
 impeller::testing::TEST_P (AiksTest, CanRenderAdvancedBlendColorFilterWithSaveLayer)
 
 impeller::testing::TEST_P (AiksTest, BlendModeShouldCoverWholeScreen)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPaintWithAdvancedBlend)
 
 impeller::testing::TEST_P (AiksTest, DrawPaintWithAdvancedBlendOverFilter)
 
 impeller::testing::TEST_P (AiksTest, DrawAdvancedBlendPartlyOffscreen)
 
 impeller::testing::TEST_P (AiksTest, PaintBlendModeIsRespected)
 
 impeller::testing::TEST_P (AiksTest, ColorFilterBlend)
 
 impeller::testing::TEST_P (AiksTest, ColorFilterAdvancedBlend)
 
 impeller::testing::TEST_P (AiksTest, ColorFilterAdvancedBlendNoFbFetch)
 
 impeller::testing::TEST_P (AiksTest, BlendModePlusAlphaWideGamut)
 
 impeller::testing::TEST_P (AiksTest, BlendModePlusAlphaColorFilterWideGamut)
 
 impeller::testing::TEST_P (AiksTest, ForegroundBlendSubpassCollapseOptimization)
 
 impeller::testing::TEST_P (AiksTest, ClearBlend)
 
static sk_sp< DisplayList > impeller::testing::BlendModeTest (Vector2 content_scale, BlendMode blend_mode, const sk_sp< DlImageImpeller > &src_image, const sk_sp< DlImageImpeller > &dst_image, Scalar src_alpha)
 
 impeller::testing::TEST_P (AiksTest, CanDrawPaintMultipleTimesInteractive)
 
 impeller::testing::TEST_P (AiksTest, ForegroundPipelineBlendAppliesTransformCorrectly)
 
 impeller::testing::TEST_P (AiksTest, ForegroundAdvancedBlendAppliesTransformCorrectly)
 
 impeller::testing::TEST_P (AiksTest, FramebufferAdvancedBlendCoverage)
 
 impeller::testing::TEST_P (AiksTest, ColorWheel)
 
 impeller::testing::TEST_P (AiksTest, DestructiveBlendColorFilterFloodsClip)
 
 impeller::testing::TEST_P (AiksTest, AdvancedBlendColorFilterWithDestinationOpacity)
 
 impeller::testing::TEST_P (AiksTest, EmulatedAdvancedBlendRestore)
 

Macro Definition Documentation

◆ BLEND_MODE_SRC_ALPHA_TEST

#define BLEND_MODE_SRC_ALPHA_TEST (   blend_mode)
Value:
TEST_P(AiksTest, BlendModeSrcAlpha##blend_mode) { \
auto src_image = \
DlImageImpeller::Make(CreateTextureForFixture("blend_mode_src.png")); \
auto dst_image = \
DlImageImpeller::Make(CreateTextureForFixture("blend_mode_dst.png")); \
auto callback = [&]() -> sk_sp<DisplayList> { \
return BlendModeTest(GetContentScale(), BlendMode::k##blend_mode, \
src_image, dst_image, /*src_alpha=*/0.5); \
}; \
OpenPlaygroundHere(callback); \
}
AiksPlayground AiksTest
TEST_P(AiksTest, EmulatedAdvancedBlendRestore)
static sk_sp< DisplayList > BlendModeTest(Vector2 content_scale, BlendMode blend_mode, const sk_sp< DlImageImpeller > &src_image, const sk_sp< DlImageImpeller > &dst_image, Scalar src_alpha)

Definition at line 668 of file aiks_dl_blend_unittests.cc.

◆ BLEND_MODE_TEST

#define BLEND_MODE_TEST (   blend_mode)
Value:
TEST_P(AiksTest, BlendMode##blend_mode) { \
auto src_image = \
DlImageImpeller::Make(CreateTextureForFixture("blend_mode_src.png")); \
auto dst_image = \
DlImageImpeller::Make(CreateTextureForFixture("blend_mode_dst.png")); \
auto callback = [&]() -> sk_sp<DisplayList> { \
return BlendModeTest(GetContentScale(), BlendMode::k##blend_mode, \
src_image, dst_image, /*src_alpha=*/1.0); \
}; \
OpenPlaygroundHere(callback); \
}
BlendMode
Definition: color.h:58

Definition at line 654 of file aiks_dl_blend_unittests.cc.

◆ BLEND_MODE_TUPLE

#define BLEND_MODE_TUPLE (   blend_mode)    {#blend_mode, BlendMode::k##blend_mode},

Definition at line 37 of file aiks_dl_blend_unittests.cc.