blob: 981df39626203e1b49f593195b5229414b29ee05 [file] [log] [blame]
// Copyright 2016 The Chromium 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 "third_party/blink/renderer/platform/animation/compositor_filter_keyframe.h"
#include <memory>
#include "third_party/blink/renderer/platform/animation/timing_function.h"
namespace blink {
CompositorFilterKeyframe::CompositorFilterKeyframe(
double time,
CompositorFilterOperations value,
const TimingFunction& timing_function)
: filter_keyframe_(
cc::FilterKeyframe::Create(base::TimeDelta::FromSecondsD(time),
value.ReleaseCcFilterOperations(),
timing_function.CloneToCC())) {}
CompositorFilterKeyframe::~CompositorFilterKeyframe() = default;
double CompositorFilterKeyframe::Time() const {
return filter_keyframe_->Time().InSecondsF();
}
const gfx::TimingFunction* CompositorFilterKeyframe::CcTimingFunction() const {
return filter_keyframe_->timing_function();
}
std::unique_ptr<cc::FilterKeyframe> CompositorFilterKeyframe::CloneToCC()
const {
return filter_keyframe_->Clone();
}
} // namespace blink