#include "cc/paint/skottie_wrapper.h"
#include <functional>
#include <memory>
#include <string_view>
#include <utility>
#include <vector>
#include "base/containers/flat_map.h"
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/hash/hash.h"
#include "base/logging.h"
#include "base/notreached.h"
#include "base/synchronization/lock.h"
#include "base/thread_annotations.h"
#include "base/trace_event/trace_event.h"
#include "cc/paint/skottie_mru_resource_provider.h"
#include "skia/ext/font_utils.h"
#include "third_party/skia/include/core/SkColor.h"
#include "third_party/skia/include/core/SkFontMgr.h"
#include "third_party/skia/include/core/SkImage.h"
#include "third_party/skia/modules/skottie/include/Skottie.h"
#include "third_party/skia/modules/skottie/include/SkottieProperty.h"
#include "third_party/skia/modules/skresources/include/SkResources.h"
#include "ui/gfx/geometry/skia_conversions.h"
namespace cc {
namespace {
class SkottieLogWriter : public skottie::Logger { … };
class SkottiePropertyConversions { … };
template <typename SkottiePropertyValueType,
typename SkottiePropertyHandleType,
typename ChromiumPropertyValueType>
class PropertyManager { … };
ColorPropertyManager;
TextPropertyManager;
TransformPropertyManager;
class GlobalPropertyManager final : public skottie::PropertyObserver { … };
class MarkerStore : public skottie::MarkerObserver { … };
class SkottieWrapperImpl : public SkottieWrapper { … };
}
scoped_refptr<SkottieWrapper> SkottieWrapper::UnsafeCreateSerializable(
std::vector<uint8_t> data) { … }
scoped_refptr<SkottieWrapper> SkottieWrapper::UnsafeCreateNonSerializable(
base::span<const uint8_t> data) { … }
}