| Flutter Impeller |

solid_rsuperellipse_blur_contents.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef FLUTTER_IMPELLER_ENTITY_CONTENTS_SOLID_RSUPERELLIPSE_BLUR_CONTENTS_H_
6 #define FLUTTER_IMPELLER_ENTITY_CONTENTS_SOLID_RSUPERELLIPSE_BLUR_CONTENTS_H_
7
8 #include <functional>
9 #include <memory>
10 #include <vector>
11
12 #include "impeller/entity/contents/contents.h"
13 #include "impeller/entity/contents/filters/filter_contents.h"
14 #include "impeller/entity/contents/solid_rrect_like_blur_contents.h"
15 #include "impeller/geometry/color.h"
16
17 namespace impeller {
18
19 /// @brief Draws a fast solid color blur of an rounded superellipse. Only
20 /// supports RSuperellipses with fully symmetrical radii. Also produces correct
21 /// results for rectangles (corner_radius=0) and circles
22 /// (corner_radius=width/2=height/2).
23 class SolidRSuperellipseBlurContents final : public SolidRRectLikeBlurContents {
24 public:
25 SolidRSuperellipseBlurContents();
26
27 ~SolidRSuperellipseBlurContents() override;
28
29 private:
30 // |SolidRRectLikeBlurContents|
31 bool SetPassInfo(RenderPass& pass,
32 const ContentContext& renderer,
33 PassContext& pass_context) const override;
34
35 SolidRSuperellipseBlurContents(const SolidRSuperellipseBlurContents&) =
36 delete;
37
38 SolidRSuperellipseBlurContents& operator=(
39 const SolidRSuperellipseBlurContents&) = delete;
40 };
41
42 } // namespace impeller
43
44 #endif // FLUTTER_IMPELLER_ENTITY_CONTENTS_SOLID_RSUPERELLIPSE_BLUR_CONTENTS_H_
impeller::ContentContext
Definition: content_context.h:122
impeller::RenderPass
Render passes encode render commands directed as one specific render target into an underlying comman...
Definition: render_pass.h:30
impeller::SolidRRectLikeBlurContents
A base class for SolidRRectBlurContents and SolidRSuperellipseBlurContents.
Definition: solid_rrect_like_blur_contents.h:30
impeller::SolidRSuperellipseBlurContents
Draws a fast solid color blur of an rounded superellipse. Only supports RSuperellipses with fully sym...
Definition: solid_rsuperellipse_blur_contents.h:23
impeller::SolidRSuperellipseBlurContents::SolidRSuperellipseBlurContents
SolidRSuperellipseBlurContents()
impeller::SolidRSuperellipseBlurContents::~SolidRSuperellipseBlurContents
~SolidRSuperellipseBlurContents() override
color.h
contents.h
filter_contents.h
impeller
Definition: allocation.cc:12
solid_rrect_like_blur_contents.h
impeller::SolidRRectLikeBlurContents::PassContext
Definition: solid_rrect_like_blur_contents.h:56