# Copyright 2018 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Things are easiest for everyone if these source paths are absolute.
_src = get_path_info("src", "abspath")
_include = get_path_info("include", "abspath")

skia_skottie_public = [
  "$_include/Skottie.h",
  "$_include/SkottieProperty.h",
]

skia_skottie_sources = [
  "$_src/Adapter.h",
  "$_src/Animator.cpp",
  "$_src/Animator.h",
  "$_src/Camera.cpp",
  "$_src/Camera.h",
  "$_src/Composition.cpp",
  "$_src/Composition.h",
  "$_src/Layer.cpp",
  "$_src/Layer.h",
  "$_src/Path.cpp",
  "$_src/Skottie.cpp",
  "$_src/SkottieJson.cpp",
  "$_src/SkottieJson.h",
  "$_src/SkottiePriv.h",
  "$_src/SkottieProperty.cpp",
  "$_src/SkottieValue.cpp",
  "$_src/SkottieValue.h",
  "$_src/Transform.cpp",
  "$_src/Transform.h",
  "$_src/effects/DropShadowEffect.cpp",
  "$_src/effects/Effects.cpp",
  "$_src/effects/Effects.h",
  "$_src/effects/FillEffect.cpp",
  "$_src/effects/GaussianBlurEffect.cpp",
  "$_src/effects/GradientEffect.cpp",
  "$_src/effects/HueSaturationEffect.cpp",
  "$_src/effects/InvertEffect.cpp",
  "$_src/effects/LevelsEffect.cpp",
  "$_src/effects/LinearWipeEffect.cpp",
  "$_src/effects/MotionBlurEffect.cpp",
  "$_src/effects/MotionBlurEffect.h",
  "$_src/effects/MotionTileEffect.cpp",
  "$_src/effects/RadialWipeEffect.cpp",
  "$_src/effects/ShiftChannelsEffect.cpp",
  "$_src/effects/TintEffect.cpp",
  "$_src/effects/TransformEffect.cpp",
  "$_src/effects/TritoneEffect.cpp",
  "$_src/effects/VenetianBlindsEffect.cpp",
  "$_src/layers/ImageLayer.cpp",
  "$_src/layers/NullLayer.cpp",
  "$_src/layers/PrecompLayer.cpp",
  "$_src/layers/SolidLayer.cpp",
  "$_src/layers/TextLayer.cpp",
  "$_src/layers/shapelayer/Ellipse.cpp",
  "$_src/layers/shapelayer/FillStroke.cpp",
  "$_src/layers/shapelayer/Gradient.cpp",
  "$_src/layers/shapelayer/MergePaths.cpp",
  "$_src/layers/shapelayer/Polystar.cpp",
  "$_src/layers/shapelayer/Rectangle.cpp",
  "$_src/layers/shapelayer/Repeater.cpp",
  "$_src/layers/shapelayer/RoundCorners.cpp",
  "$_src/layers/shapelayer/ShapeLayer.cpp",
  "$_src/layers/shapelayer/ShapeLayer.h",
  "$_src/layers/shapelayer/TrimPaths.cpp",
  "$_src/text/RangeSelector.cpp",
  "$_src/text/RangeSelector.h",
  "$_src/text/SkottieShaper.cpp",
  "$_src/text/SkottieShaper.h",
  "$_src/text/TextAdapter.cpp",
  "$_src/text/TextAdapter.h",
  "$_src/text/TextAnimator.cpp",
  "$_src/text/TextAnimator.h",
  "$_src/text/TextValue.cpp",
  "$_src/text/TextValue.h",
]
