Flutter Engine
 
Loading...
Searching...
No Matches
dl_conical_gradient_color_source.cc
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
6
7namespace flutter {
8
9DlConicalGradientColorSource::DlConicalGradientColorSource(
10 const DlConicalGradientColorSource* source)
11 : DlGradientColorSourceBase(source->stop_count(),
12 source->tile_mode(),
13 source->matrix_ptr()),
14 start_center_(source->start_center()),
15 start_radius_(source->start_radius()),
16 end_center_(source->end_center()),
17 end_radius_(source->end_radius()) {
18 store_color_stops(this + 1, source->colors(), source->stops());
19}
20
21std::shared_ptr<DlColorSource> DlConicalGradientColorSource::shared() const {
22 return MakeConical(start_center_, start_radius_, end_center_, end_radius_,
23 stop_count(), colors(), stops(), tile_mode(),
24 matrix_ptr());
25}
26
27bool DlConicalGradientColorSource::equals_(DlColorSource const& other) const {
28 FML_DCHECK(other.type() == DlColorSourceType::kConicalGradient);
29 auto that = static_cast<DlConicalGradientColorSource const*>(&other);
30 return (start_center_ == that->start_center_ &&
31 start_radius_ == that->start_radius_ &&
32 end_center_ == that->end_center_ &&
33 end_radius_ == that->end_radius_ && base_equals_(that));
34}
35
36} // namespace flutter
virtual T type() const =0
#define FML_DCHECK(condition)
Definition logging.h:122