#include "cc/animation/keyframe_model.h"
#include <algorithm>
#include <cmath>
#include <limits>
#include <string>
#include <utility>
#include "base/memory/ptr_util.h"
#include "base/numerics/safe_conversions.h"
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
#include "base/trace_event/trace_event.h"
#include "cc/trees/target_property.h"
#include "ui/gfx/animation/keyframe/animation_curve.h"
namespace cc {
namespace {
#if DCHECK_IS_ON()
int GetNextDebugId() { … }
#endif
}
const KeyframeModel* KeyframeModel::ToCcKeyframeModel(
const gfx::KeyframeModel* keyframe_model) { … }
KeyframeModel* KeyframeModel::ToCcKeyframeModel(
gfx::KeyframeModel* keyframe_model) { … }
KeyframeModel::TargetPropertyId::TargetPropertyId(int target_property_type)
: … { … }
KeyframeModel::TargetPropertyId::TargetPropertyId(
int target_property_type,
const std::string& custom_property_name)
: … { … }
KeyframeModel::TargetPropertyId::TargetPropertyId(
int target_property_type,
PaintWorkletInput::NativePropertyType native_property_type)
: … { … }
KeyframeModel::TargetPropertyId::TargetPropertyId(
const TargetPropertyId& other) = default;
KeyframeModel::TargetPropertyId::TargetPropertyId(TargetPropertyId&& other) =
default;
KeyframeModel::TargetPropertyId::~TargetPropertyId() = default;
KeyframeModel::TargetPropertyId& KeyframeModel::TargetPropertyId::operator=(
TargetPropertyId&& other) = default;
std::unique_ptr<KeyframeModel> KeyframeModel::Create(
std::unique_ptr<gfx::AnimationCurve> curve,
int keyframe_model_id,
int group_id,
TargetPropertyId target_property_id) { … }
std::unique_ptr<KeyframeModel> KeyframeModel::CreateImplInstance(
RunState initial_run_state) const { … }
KeyframeModel::KeyframeModel(std::unique_ptr<gfx::AnimationCurve> curve,
int keyframe_model_id,
int group_id,
TargetPropertyId target_property_id)
: … { … }
KeyframeModel::~KeyframeModel() = default;
int KeyframeModel::TargetProperty() const { … }
void KeyframeModel::SetRunState(RunState new_run_state,
base::TimeTicks monotonic_time) { … }
bool KeyframeModel::InEffect(base::TimeTicks monotonic_time) const { … }
void KeyframeModel::PushPropertiesTo(KeyframeModel* other) const { … }
std::string KeyframeModel::ToString() const { … }
void KeyframeModel::SetIsImplOnly() { … }
bool KeyframeModel::StartShouldBeDeferred() const { … }
}