blob: bad115d06b979487c2a1eceb55707208ca10210a [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "flutter/display_list/effects/dl_runtime_effect.h"
#include "third_party/skia/include/core/SkRefCnt.h"
namespace flutter {
//------------------------------------------------------------------------------
/// DlRuntimeEffect
///
DlRuntimeEffect::DlRuntimeEffect() = default;
DlRuntimeEffect::~DlRuntimeEffect() = default;
sk_sp<DlRuntimeEffect> DlRuntimeEffect::MakeSkia(
const sk_sp<SkRuntimeEffect>& runtime_effect) {
return sk_make_sp<DlRuntimeEffectSkia>(runtime_effect);
}
sk_sp<DlRuntimeEffect> DlRuntimeEffect::MakeImpeller(
std::shared_ptr<impeller::RuntimeStage> runtime_stage) {
return sk_make_sp<DlRuntimeEffectImpeller>(std::move(runtime_stage));
}
//------------------------------------------------------------------------------
/// DlRuntimeEffectSkia
///
DlRuntimeEffectSkia::~DlRuntimeEffectSkia() = default;
DlRuntimeEffectSkia::DlRuntimeEffectSkia(
const sk_sp<SkRuntimeEffect>& runtime_effect)
: skia_runtime_effect_(runtime_effect) {}
sk_sp<SkRuntimeEffect> DlRuntimeEffectSkia::skia_runtime_effect() const {
return skia_runtime_effect_;
}
std::shared_ptr<impeller::RuntimeStage> DlRuntimeEffectSkia::runtime_stage()
const {
return nullptr;
}
//------------------------------------------------------------------------------
/// DlRuntimeEffectImpeller
///
DlRuntimeEffectImpeller::~DlRuntimeEffectImpeller() = default;
DlRuntimeEffectImpeller::DlRuntimeEffectImpeller(
std::shared_ptr<impeller::RuntimeStage> runtime_stage)
: runtime_stage_(std::move(runtime_stage)){};
sk_sp<SkRuntimeEffect> DlRuntimeEffectImpeller::skia_runtime_effect() const {
return nullptr;
}
std::shared_ptr<impeller::RuntimeStage> DlRuntimeEffectImpeller::runtime_stage()
const {
return runtime_stage_;
}
} // namespace flutter