@shopify/react-native-skia 2.11.0-next.1 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/cpp/api/JsiSkConverters.h +2 -2
  2. package/cpp/api/JsiSkNativeObjects.h +9 -9
  3. package/cpp/api/JsiSkRuntimeEffect.h +2 -2
  4. package/cpp/api/recorder/Convertor.h +57 -9
  5. package/cpp/api/third_party/SkottieUtils.cpp +1 -1
  6. package/cpp/jsi/EnumMapper.h +2 -2
  7. package/cpp/jsi/JSIConverter.h +2 -2
  8. package/cpp/jsi/NativeObject.h +13 -13
  9. package/cpp/jsi/Promise.cpp +2 -2
  10. package/cpp/jsi/Promise.h +2 -2
  11. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +0 -2
  12. package/cpp/skia/include/android/vk/AndroidVulkanMemoryAllocator.h +1 -1
  13. package/cpp/skia/include/codec/SkAndroidCodec.h +1 -1
  14. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -1
  15. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -1
  16. package/cpp/skia/include/codec/SkBmpRustDecoder.h +42 -0
  17. package/cpp/skia/include/codec/SkCodec.h +3 -2
  18. package/cpp/skia/include/codec/SkGifDecoder.h +1 -1
  19. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -1
  20. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -1
  21. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -1
  22. package/cpp/skia/include/codec/SkPixmapUtils.h +1 -1
  23. package/cpp/skia/include/codec/SkPngDecoder.h +1 -1
  24. package/cpp/skia/include/codec/SkPngRustDecoder.h +1 -1
  25. package/cpp/skia/include/codec/SkRawDecoder.h +1 -1
  26. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -1
  27. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -1
  28. package/cpp/skia/include/core/SkBitmap.h +3 -3
  29. package/cpp/skia/include/core/SkCPUContext.h +1 -1
  30. package/cpp/skia/include/core/SkCPURecorder.h +2 -3
  31. package/cpp/skia/include/core/SkCanvas.h +23 -15
  32. package/cpp/skia/include/core/SkColor.h +2 -2
  33. package/cpp/skia/include/core/SkColorFilter.h +1 -1
  34. package/cpp/skia/include/core/SkColorSpace.h +2 -2
  35. package/cpp/skia/include/core/SkColorTable.h +1 -1
  36. package/cpp/skia/include/core/SkContourMeasure.h +1 -1
  37. package/cpp/skia/include/core/SkData.h +1 -1
  38. package/cpp/skia/include/core/SkDataTable.h +2 -2
  39. package/cpp/skia/include/core/SkDocument.h +1 -1
  40. package/cpp/skia/include/core/SkDrawable.h +1 -1
  41. package/cpp/skia/include/core/SkFont.h +2 -2
  42. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  43. package/cpp/skia/include/core/SkFontMgr.h +1 -1
  44. package/cpp/skia/include/core/SkFontScanner.h +3 -3
  45. package/cpp/skia/include/core/SkFontStyle.h +1 -1
  46. package/cpp/skia/include/core/SkGraphics.h +1 -1
  47. package/cpp/skia/include/core/SkImage.h +1 -1
  48. package/cpp/skia/include/core/SkImageFilter.h +1 -1
  49. package/cpp/skia/include/core/SkImageGenerator.h +1 -1
  50. package/cpp/skia/include/core/SkImageInfo.h +4 -4
  51. package/cpp/skia/include/core/SkMatrix.h +3 -3
  52. package/cpp/skia/include/core/SkMesh.h +2 -2
  53. package/cpp/skia/include/core/SkMilestone.h +1 -1
  54. package/cpp/skia/include/core/SkOverdrawCanvas.h +1 -1
  55. package/cpp/skia/include/core/SkPaint.h +4 -4
  56. package/cpp/skia/include/core/SkPath.h +5 -23
  57. package/cpp/skia/include/core/SkPathBuilder.h +4 -2
  58. package/cpp/skia/include/core/SkPathMeasure.h +1 -1
  59. package/cpp/skia/include/core/SkPictureRecorder.h +1 -1
  60. package/cpp/skia/include/core/SkPixelRef.h +3 -5
  61. package/cpp/skia/include/core/SkPixmap.h +7 -2
  62. package/cpp/skia/include/core/SkPoint.h +555 -5
  63. package/cpp/skia/include/core/SkPoint3.h +2 -2
  64. package/cpp/skia/include/core/SkRRect.h +9 -1
  65. package/cpp/skia/include/core/SkRSXform.h +1 -1
  66. package/cpp/skia/include/core/SkRecorder.h +2 -3
  67. package/cpp/skia/include/core/SkRect.h +3 -3
  68. package/cpp/skia/include/core/SkRefCnt.h +1 -1
  69. package/cpp/skia/include/core/SkRegion.h +4 -4
  70. package/cpp/skia/include/core/SkScalar.h +2 -3
  71. package/cpp/skia/include/core/SkSerialProcs.h +1 -1
  72. package/cpp/skia/include/core/SkShader.h +1 -1
  73. package/cpp/skia/include/core/SkSize.h +1 -1
  74. package/cpp/skia/include/core/SkSpan.h +165 -4
  75. package/cpp/skia/include/core/SkStream.h +2 -2
  76. package/cpp/skia/include/core/SkStrikeRef.h +16 -0
  77. package/cpp/skia/include/core/SkString.h +2 -2
  78. package/cpp/skia/include/core/SkStrokeRec.h +1 -1
  79. package/cpp/skia/include/core/SkSurfaceProps.h +1 -1
  80. package/cpp/skia/include/core/SkSwizzle.h +1 -1
  81. package/cpp/skia/include/core/SkTextBlob.h +2 -2
  82. package/cpp/skia/include/core/SkTiledImageUtils.h +1 -1
  83. package/cpp/skia/include/core/SkTypeface.h +8 -2
  84. package/cpp/skia/include/core/SkTypes.h +6 -6
  85. package/cpp/skia/include/core/SkUnPreMultiply.h +1 -1
  86. package/cpp/skia/include/core/SkVertices.h +1 -1
  87. package/cpp/skia/include/core/SkYUVAPixmaps.h +1 -1
  88. package/cpp/skia/include/docs/SkPDFDocument.h +9 -3
  89. package/cpp/skia/include/effects/SkGradient.h +1 -1
  90. package/cpp/skia/include/effects/SkPerlinNoiseShader.h +1 -1
  91. package/cpp/skia/include/effects/SkRuntimeEffect.h +4 -4
  92. package/cpp/skia/include/encode/SkEncoder.h +3 -3
  93. package/cpp/skia/include/encode/SkICC.h +1 -1
  94. package/cpp/skia/include/encode/SkJpegEncoder.h +1 -1
  95. package/cpp/skia/include/encode/SkPngEncoder.h +1 -1
  96. package/cpp/skia/include/encode/SkPngRustEncoder.h +16 -1
  97. package/cpp/skia/include/encode/SkWebpEncoder.h +1 -1
  98. package/cpp/skia/include/gpu/GpuTypes.h +1 -1
  99. package/cpp/skia/include/gpu/MutableTextureState.h +1 -1
  100. package/cpp/skia/include/gpu/ganesh/GrBackendSemaphore.h +2 -2
  101. package/cpp/skia/include/gpu/ganesh/GrBackendSurface.h +3 -3
  102. package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkaroundsAutogen.h +39 -37
  103. package/cpp/skia/include/gpu/ganesh/GrExternalTextureGenerator.h +1 -1
  104. package/cpp/skia/include/gpu/ganesh/GrRecordingContext.h +3 -2
  105. package/cpp/skia/include/gpu/ganesh/GrTypes.h +1 -1
  106. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +1 -1
  107. package/cpp/skia/include/gpu/ganesh/SkMeshGanesh.h +1 -1
  108. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +1 -1
  109. package/cpp/skia/include/gpu/ganesh/d3d/GrD3DBackendSemaphore.h +1 -1
  110. package/cpp/skia/include/gpu/ganesh/d3d/GrD3DBackendSurface.h +1 -1
  111. package/cpp/skia/include/gpu/ganesh/d3d/GrD3DDirectContext.h +1 -1
  112. package/cpp/skia/include/gpu/ganesh/gl/GrGLAssembleInterface.h +1 -1
  113. package/cpp/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h +1 -1
  114. package/cpp/skia/include/gpu/ganesh/gl/GrGLConfig.h +1 -1
  115. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +1 -1
  116. package/cpp/skia/include/gpu/ganesh/gl/GrGLExtensions.h +2 -2
  117. package/cpp/skia/include/gpu/ganesh/gl/GrGLFunctions.h +1 -1
  118. package/cpp/skia/include/gpu/ganesh/gl/GrGLMakeWebGLInterface.h +1 -1
  119. package/cpp/skia/include/gpu/ganesh/gl/epoxy/GrGLMakeEpoxyEGLInterface.h +1 -1
  120. package/cpp/skia/include/gpu/ganesh/gl/glx/GrGLMakeGLXInterface.h +1 -1
  121. package/cpp/skia/include/gpu/ganesh/gl/ios/GrGLMakeIOSInterface.h +1 -1
  122. package/cpp/skia/include/gpu/ganesh/gl/mac/GrGLMakeMacInterface.h +1 -1
  123. package/cpp/skia/include/gpu/ganesh/gl/win/GrGLMakeWinInterface.h +1 -1
  124. package/cpp/skia/include/gpu/ganesh/mock/GrMockBackendSurface.h +1 -1
  125. package/cpp/skia/include/gpu/ganesh/mock/GrMockTypes.h +1 -1
  126. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendSemaphore.h +1 -1
  127. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendSurface.h +1 -1
  128. package/cpp/skia/include/gpu/ganesh/mtl/GrMtlDirectContext.h +1 -1
  129. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSemaphore.h +1 -1
  130. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h +1 -1
  131. package/cpp/skia/include/gpu/ganesh/vk/GrVkDirectContext.h +1 -1
  132. package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +2 -2
  133. package/cpp/skia/include/gpu/graphite/BackendTexture.h +2 -2
  134. package/cpp/skia/include/gpu/graphite/Context.h +3 -3
  135. package/cpp/skia/include/gpu/graphite/ContextOptions.h +8 -2
  136. package/cpp/skia/include/gpu/graphite/PersistentPipelineStorage.h +1 -1
  137. package/cpp/skia/include/gpu/graphite/PrecompileContext.h +16 -2
  138. package/cpp/skia/include/gpu/graphite/Recorder.h +8 -7
  139. package/cpp/skia/include/gpu/graphite/Recording.h +6 -4
  140. package/cpp/skia/include/gpu/graphite/TextureInfo.h +2 -2
  141. package/cpp/skia/include/gpu/graphite/dawn/DawnGraphiteTypes.h +1 -1
  142. package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +1 -1
  143. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +1 -1
  144. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes_cpp.h +1 -1
  145. package/cpp/skia/include/gpu/graphite/precompile/PaintOptions.h +2 -2
  146. package/cpp/skia/include/gpu/graphite/precompile/PrecompileImageFilter.h +1 -1
  147. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteContext.h +1 -1
  148. package/cpp/skia/include/gpu/vk/VulkanBackendContext.h +1 -1
  149. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +3 -3
  150. package/cpp/skia/include/gpu/vk/VulkanMutableTextureState.h +1 -1
  151. package/cpp/skia/include/gpu/vk/VulkanPreferredFeatures.h +1 -1
  152. package/cpp/skia/include/gpu/vk/VulkanTypes.h +1 -1
  153. package/cpp/skia/include/pathops/SkPathOps.h +2 -2
  154. package/cpp/skia/include/ports/SkImageGeneratorCG.h +2 -2
  155. package/cpp/skia/include/ports/SkImageGeneratorWIC.h +2 -2
  156. package/cpp/skia/include/private/{base/SingleOwner.h → SingleOwner.h} +5 -5
  157. package/cpp/skia/include/private/{base/SkAPI.h → SkAPI.h} +1 -1
  158. package/cpp/skia/include/private/{base/SkAlign.h → SkAlign.h} +1 -1
  159. package/cpp/skia/include/private/{base/SkAnySubclass.h → SkAnySubclass.h} +1 -1
  160. package/cpp/skia/include/private/{base/SkAssert.h → SkAssert.h} +4 -4
  161. package/cpp/skia/include/private/{base/SkAttributes.h → SkAttributes.h} +2 -2
  162. package/cpp/skia/include/private/{base/SkContainers.h → SkContainers.h} +3 -3
  163. package/cpp/skia/include/private/{base/SkDebug.h → SkDebug.h} +3 -3
  164. package/cpp/skia/include/private/{base/SkDeque.h → SkDeque.h} +1 -1
  165. package/cpp/skia/include/private/SkEncodedInfo.h +2 -2
  166. package/cpp/skia/include/private/SkEnumBitMask.h +92 -0
  167. package/cpp/skia/include/private/SkExif.h +1 -1
  168. package/cpp/skia/include/private/{base/SkFixed.h → SkFixed.h} +4 -4
  169. package/cpp/skia/include/private/{base/SkFloatingPoint.h → SkFloatingPoint.h} +2 -2
  170. package/cpp/skia/include/private/SkGainmapShader.h +1 -1
  171. package/cpp/skia/include/private/SkHdrMetadata.h +1 -1
  172. package/cpp/skia/include/private/SkIDChangeListener.h +3 -3
  173. package/cpp/skia/include/private/{base/SkLoadUserConfig.h → SkLoadUserConfig.h} +2 -2
  174. package/cpp/skia/include/private/{base/SkLog.h → SkLog.h} +4 -4
  175. package/cpp/skia/include/private/{base/SkMacros.h → SkMacros.h} +1 -1
  176. package/cpp/skia/include/private/{base/SkMalloc.h → SkMalloc.h} +1 -1
  177. package/cpp/skia/include/private/{base/SkMath.h → SkMath.h} +2 -2
  178. package/cpp/skia/include/private/{base/SkMutex.h → SkMutex.h} +5 -5
  179. package/cpp/skia/include/private/{base/SkNoncopyable.h → SkNoncopyable.h} +1 -1
  180. package/cpp/skia/include/private/{base/SkOnce.h → SkOnce.h} +1 -1
  181. package/cpp/skia/include/private/SkPathRef.h +4 -4
  182. package/cpp/skia/include/private/SkPixelStorage.h +20 -5
  183. package/cpp/skia/include/private/{base/SkSafe32.h → SkSafe32.h} +2 -2
  184. package/cpp/skia/include/private/{base/SkSemaphore.h → SkSemaphore.h} +3 -3
  185. package/cpp/skia/include/private/{base/SkTArray.h → SkTArray.h} +10 -11
  186. package/cpp/skia/include/private/{base/SkTDArray.h → SkTDArray.h} +4 -4
  187. package/cpp/skia/include/private/{base/SkTFitsIn.h → SkTFitsIn.h} +0 -2
  188. package/cpp/skia/include/private/{base/SkTLogic.h → SkTLogic.h} +1 -1
  189. package/cpp/skia/include/private/{base/SkTemplates.h → SkTemplates.h} +5 -6
  190. package/cpp/skia/include/private/{base/SkThreadAnnotations.h → SkThreadAnnotations.h} +1 -1
  191. package/cpp/skia/include/private/{base/SkThreadID.h → SkThreadID.h} +2 -2
  192. package/cpp/skia/include/private/{base/SkTo.h → SkTo.h} +2 -2
  193. package/cpp/skia/include/private/{base/SkTypeTraits.h → SkTypeTraits.h} +20 -0
  194. package/cpp/skia/include/private/SkXmp.h +1 -1
  195. package/cpp/skia/include/private/chromium/GrDeferredDisplayList.h +1 -1
  196. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +1 -1
  197. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +1 -1
  198. package/cpp/skia/include/private/chromium/SkCodecsICCProfileChromium.h +1 -1
  199. package/cpp/skia/include/private/chromium/SkExifChromium.h +1 -1
  200. package/cpp/skia/include/private/chromium/SkImageChromium.h +1 -1
  201. package/cpp/skia/include/private/chromium/SkPMColor.h +1 -1
  202. package/cpp/skia/include/private/chromium/Slug.h +1 -1
  203. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +1 -1
  204. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +2 -2
  205. package/cpp/skia/include/private/gpu/ganesh/GrTextureGenerator.h +1 -1
  206. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +4 -4
  207. package/cpp/skia/include/utils/SkCamera.h +1 -1
  208. package/cpp/skia/include/utils/SkNWayCanvas.h +1 -1
  209. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +1 -1
  210. package/cpp/skia/modules/jsonreader/SkJSONReader.cpp +6 -6
  211. package/cpp/skia/modules/jsonreader/SkJSONReader.h +2 -2
  212. package/cpp/skia/modules/skottie/include/SkottieProperty.h +1 -1
  213. package/cpp/skia/modules/skottie/include/SlotManager.h +2 -2
  214. package/cpp/skia/modules/skottie/include/TextShaper.h +1 -1
  215. package/cpp/skia/modules/skottie/src/text/Font.h +1 -1
  216. package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -1
  217. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -1
  218. package/cpp/skia/modules/skresources/include/SkResources.h +1 -1
  219. package/cpp/skia/modules/sksg/include/SkSGNode.h +1 -1
  220. package/cpp/skia/modules/sksg/include/SkSGRect.h +1 -1
  221. package/cpp/skia/modules/sksg/include/SkSGRenderEffect.h +1 -1
  222. package/cpp/skia/modules/skunicode/include/SkUnicode.h +3 -3
  223. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +1 -1
  224. package/cpp/skia/modules/svg/include/SkSVGCircle.h +1 -1
  225. package/cpp/skia/modules/svg/include/SkSVGClipPath.h +1 -1
  226. package/cpp/skia/modules/svg/include/SkSVGContainer.h +2 -2
  227. package/cpp/skia/modules/svg/include/SkSVGDOM.h +1 -1
  228. package/cpp/skia/modules/svg/include/SkSVGEllipse.h +1 -1
  229. package/cpp/skia/modules/svg/include/SkSVGFe.h +1 -1
  230. package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +1 -1
  231. package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +1 -1
  232. package/cpp/skia/modules/svg/include/SkSVGFeComponentTransfer.h +1 -1
  233. package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +1 -1
  234. package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +1 -1
  235. package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +1 -1
  236. package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +1 -1
  237. package/cpp/skia/modules/svg/include/SkSVGFeImage.h +1 -1
  238. package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +2 -2
  239. package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +1 -1
  240. package/cpp/skia/modules/svg/include/SkSVGFeMerge.h +1 -1
  241. package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +1 -1
  242. package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +1 -1
  243. package/cpp/skia/modules/svg/include/SkSVGFilter.h +1 -1
  244. package/cpp/skia/modules/svg/include/SkSVGGradient.h +2 -2
  245. package/cpp/skia/modules/svg/include/SkSVGImage.h +2 -2
  246. package/cpp/skia/modules/svg/include/SkSVGLine.h +1 -1
  247. package/cpp/skia/modules/svg/include/SkSVGLinearGradient.h +1 -1
  248. package/cpp/skia/modules/svg/include/SkSVGMask.h +1 -1
  249. package/cpp/skia/modules/svg/include/SkSVGNode.h +1 -1
  250. package/cpp/skia/modules/svg/include/SkSVGPath.h +1 -1
  251. package/cpp/skia/modules/svg/include/SkSVGPattern.h +1 -1
  252. package/cpp/skia/modules/svg/include/SkSVGPoly.h +1 -1
  253. package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +1 -1
  254. package/cpp/skia/modules/svg/include/SkSVGRect.h +1 -1
  255. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +1 -1
  256. package/cpp/skia/modules/svg/include/SkSVGSVG.h +1 -1
  257. package/cpp/skia/modules/svg/include/SkSVGShape.h +1 -1
  258. package/cpp/skia/modules/svg/include/SkSVGStop.h +1 -1
  259. package/cpp/skia/modules/svg/include/SkSVGText.h +1 -1
  260. package/cpp/skia/modules/svg/include/SkSVGTransformableNode.h +1 -1
  261. package/cpp/skia/modules/svg/include/SkSVGUse.h +1 -1
  262. package/cpp/skia/modules/svg/include/SkSVGValue.h +1 -1
  263. package/cpp/skia/src/{base → core}/SkArenaAlloc.h +5 -5
  264. package/cpp/skia/src/{base → core}/SkAutoLocaleSetter.h +1 -1
  265. package/cpp/skia/src/core/SkChecksum.h +1 -1
  266. package/cpp/skia/src/core/SkLRUCache.h +1 -1
  267. package/cpp/skia/src/{base → core}/SkMathPriv.h +3 -3
  268. package/cpp/skia/src/core/SkTHash.h +1 -1
  269. package/cpp/skia/src/{base → core}/SkTInternalLList.h +3 -3
  270. package/cpp/skia/src/{base → core}/SkTLazy.h +1 -1
  271. package/cpp/skia/src/{base → core}/SkUTF.h +1 -1
  272. package/lib/commonjs/renderer/processors/Animations/Animations.d.ts +27 -1
  273. package/lib/commonjs/renderer/processors/Animations/Animations.js +28 -0
  274. package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -1
  275. package/lib/commonjs/sksg/Recorder/Core.js +8 -1
  276. package/lib/commonjs/sksg/Recorder/Core.js.map +1 -1
  277. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.js +8 -0
  278. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.js.map +1 -1
  279. package/lib/commonjs/sksg/Recorder/Recorder.d.ts +1 -1
  280. package/lib/commonjs/sksg/Recorder/Recorder.js +4 -0
  281. package/lib/commonjs/sksg/Recorder/Recorder.js.map +1 -1
  282. package/lib/commonjs/sksg/utils.d.ts +4 -0
  283. package/lib/commonjs/sksg/utils.js +14 -1
  284. package/lib/commonjs/sksg/utils.js.map +1 -1
  285. package/lib/module/renderer/processors/Animations/Animations.d.ts +27 -1
  286. package/lib/module/renderer/processors/Animations/Animations.js +21 -0
  287. package/lib/module/renderer/processors/Animations/Animations.js.map +1 -1
  288. package/lib/module/sksg/Recorder/Core.js +8 -1
  289. package/lib/module/sksg/Recorder/Core.js.map +1 -1
  290. package/lib/module/sksg/Recorder/ReanimatedRecorder.js +9 -1
  291. package/lib/module/sksg/Recorder/ReanimatedRecorder.js.map +1 -1
  292. package/lib/module/sksg/Recorder/Recorder.d.ts +1 -1
  293. package/lib/module/sksg/Recorder/Recorder.js +5 -1
  294. package/lib/module/sksg/Recorder/Recorder.js.map +1 -1
  295. package/lib/module/sksg/utils.d.ts +4 -0
  296. package/lib/module/sksg/utils.js +12 -0
  297. package/lib/module/sksg/utils.js.map +1 -1
  298. package/lib/typescript/lib/commonjs/renderer/processors/Animations/Animations.d.ts +22 -0
  299. package/lib/typescript/lib/commonjs/sksg/utils.d.ts +1 -0
  300. package/lib/typescript/lib/module/mock/index.d.ts +4 -0
  301. package/lib/typescript/lib/module/renderer/processors/Animations/Animations.d.ts +4 -0
  302. package/lib/typescript/lib/module/renderer/processors/Animations/index.d.ts +1 -1
  303. package/lib/typescript/lib/module/sksg/utils.d.ts +1 -0
  304. package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +27 -1
  305. package/lib/typescript/src/sksg/Recorder/Recorder.d.ts +1 -1
  306. package/lib/typescript/src/sksg/utils.d.ts +4 -0
  307. package/package.json +9 -9
  308. package/src/renderer/processors/Animations/Animations.ts +34 -1
  309. package/src/sksg/Recorder/Core.ts +11 -1
  310. package/src/sksg/Recorder/ReanimatedRecorder.ts +10 -1
  311. package/src/sksg/Recorder/Recorder.ts +7 -3
  312. package/src/sksg/utils.ts +18 -0
  313. package/cpp/dawn/include/dawn/dawn_proc.h +0 -53
  314. package/cpp/dawn/include/dawn/dawn_proc_table.h +0 -330
  315. package/cpp/dawn/include/dawn/dawn_thread_dispatch_proc.h +0 -47
  316. package/cpp/dawn/include/dawn/dawn_version.h +0 -41
  317. package/cpp/dawn/include/dawn/native/D3D11Backend.h +0 -65
  318. package/cpp/dawn/include/dawn/native/D3D12Backend.h +0 -86
  319. package/cpp/dawn/include/dawn/native/D3DBackend.h +0 -56
  320. package/cpp/dawn/include/dawn/native/DawnNative.h +0 -369
  321. package/cpp/dawn/include/dawn/native/MetalBackend.h +0 -56
  322. package/cpp/dawn/include/dawn/native/NullBackend.h +0 -39
  323. package/cpp/dawn/include/dawn/native/OpenGLBackend.h +0 -89
  324. package/cpp/dawn/include/dawn/native/VulkanBackend.h +0 -183
  325. package/cpp/dawn/include/dawn/native/WebGPUBackend.h +0 -49
  326. package/cpp/dawn/include/dawn/native/dawn_native_export.h +0 -49
  327. package/cpp/dawn/include/dawn/platform/DawnPlatform.h +0 -210
  328. package/cpp/dawn/include/dawn/platform/dawn_platform_export.h +0 -49
  329. package/cpp/dawn/include/dawn/replay/Replay.h +0 -99
  330. package/cpp/dawn/include/dawn/replay/dawn_replay_export.h +0 -49
  331. package/cpp/dawn/include/dawn/webgpu_cpp_print.h +0 -2844
  332. package/cpp/dawn/include/tint/tint.h +0 -90
  333. package/cpp/dawn/include/webgpu/webgpu.h +0 -4987
  334. package/cpp/dawn/include/webgpu/webgpu_cpp.h +0 -10080
  335. package/cpp/dawn/include/webgpu/webgpu_cpp_chained_struct.h +0 -57
  336. package/cpp/dawn/include/webgpu/webgpu_enum_class_bitmasks.h +0 -161
  337. package/cpp/dawn/include/webgpu/webgpu_glfw.h +0 -88
  338. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteUtils.h +0 -10
  339. package/cpp/skia/include/private/base/README.md +0 -4
  340. package/cpp/skia/include/private/base/SkPoint_impl.h +0 -560
  341. package/cpp/skia/include/private/base/SkSpan_impl.h +0 -158
  342. package/cpp/skia/src/gpu/graphite/ContextOptionsPriv.h +0 -45
  343. package/cpp/skia/src/gpu/graphite/ResourceTypes.h +0 -360
  344. package/cpp/skia/src/gpu/graphite/TextureProxyView.h +0 -105
  345. package/libs/.graphite +0 -1
  346. /package/cpp/skia/include/private/{base/SkASAN.h → SkASAN.h} +0 -0
  347. /package/cpp/skia/include/private/{base/SkAlignedStorage.h → SkAlignedStorage.h} +0 -0
  348. /package/cpp/skia/include/private/{base/SkCPUTypes.h → SkCPUTypes.h} +0 -0
  349. /package/cpp/skia/include/private/{base/SkFeatures.h → SkFeatures.h} +0 -0
  350. /package/cpp/skia/include/private/{base/SkLogPriority.h → SkLogPriority.h} +0 -0
  351. /package/cpp/skia/include/private/{base/SkTPin.h → SkTPin.h} +0 -0
@@ -12,7 +12,7 @@
12
12
 
13
13
  #include "include/core/SkBlendMode.h"
14
14
  #include "include/gpu/graphite/precompile/PaintOptions.h"
15
- #include "include/private/base/SkTemplates.h"
15
+ #include "include/private/SkTemplates.h"
16
16
 
17
17
  namespace skgpu::graphite {
18
18
 
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include <memory>
12
12
 
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  // NOTE: Because there is already a VulkanBackendContext header shared between Ganesh and Graphite,
16
16
  // this is named VulkanGraphiteContext.h to supply just the factory function (differing from the
@@ -12,7 +12,7 @@
12
12
  #include "include/gpu/GpuTypes.h"
13
13
  #include "include/gpu/vk/VulkanMemoryAllocator.h"
14
14
  #include "include/gpu/vk/VulkanTypes.h"
15
- #include "include/private/base/SkAPI.h"
15
+ #include "include/private/SkAPI.h"
16
16
  #include "include/private/gpu/vk/SkiaVulkan.h"
17
17
 
18
18
  #include <cstdint>
@@ -10,9 +10,9 @@
10
10
 
11
11
  #include "include/core/SkString.h"
12
12
  #include "include/gpu/vk/VulkanTypes.h"
13
- #include "include/private/base/SkAPI.h"
14
- #include "include/private/base/SkDebug.h"
15
- #include "include/private/base/SkTArray.h"
13
+ #include "include/private/SkAPI.h"
14
+ #include "include/private/SkDebug.h"
15
+ #include "include/private/SkTArray.h"
16
16
  #include "include/private/gpu/vk/SkiaVulkan.h"
17
17
 
18
18
  #include <cstdint>
@@ -9,7 +9,7 @@
9
9
  #define skgpu_VulkanMutableTextureState_DEFINED
10
10
 
11
11
  #include "include/gpu/MutableTextureState.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
  #include "include/private/gpu/vk/SkiaVulkan.h"
14
14
 
15
15
  #include <cstdint>
@@ -8,7 +8,7 @@
8
8
  #ifndef skgpu_VulkanPreferredFeatures_DEFINED
9
9
  #define skgpu_VulkanPreferredFeatures_DEFINED
10
10
 
11
- #include "include/private/base/SkAPI.h"
11
+ #include "include/private/SkAPI.h"
12
12
  #include "include/private/gpu/vk/SkiaVulkan.h"
13
13
 
14
14
  #include <cstddef>
@@ -9,7 +9,7 @@
9
9
  #define skgpu_VulkanTypes_DEFINED
10
10
 
11
11
  #include "include/core/SkTypes.h"
12
- #include "include/private/base/SkTo.h"
12
+ #include "include/private/SkTo.h"
13
13
  #include "include/private/gpu/vk/SkiaVulkan.h"
14
14
 
15
15
  #include <cstddef>
@@ -9,8 +9,8 @@
9
9
 
10
10
  #include "include/core/SkPath.h"
11
11
  #include "include/core/SkTypes.h"
12
- #include "include/private/base/SkTArray.h"
13
- #include "include/private/base/SkTDArray.h"
12
+ #include "include/private/SkTArray.h"
13
+ #include "include/private/SkTDArray.h"
14
14
 
15
15
  #include <optional>
16
16
 
@@ -9,14 +9,14 @@
9
9
 
10
10
  // This is needed as clients may override the target platform
11
11
  // using SkUserConfig
12
- #include "include/private/base/SkLoadUserConfig.h"
12
+ #include "include/private/SkLoadUserConfig.h"
13
13
 
14
14
  #if defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
15
15
 
16
16
  #include "include/core/SkData.h"
17
17
  #include "include/core/SkImageGenerator.h"
18
18
  #include "include/core/SkRefCnt.h"
19
- #include "include/private/base/SkAPI.h"
19
+ #include "include/private/SkAPI.h"
20
20
 
21
21
  #include <memory>
22
22
 
@@ -8,14 +8,14 @@
8
8
  #ifndef SkImageGeneratorWIC_DEFINED
9
9
  #define SkImageGeneratorWIC_DEFINED
10
10
 
11
- #include "include/private/base/SkFeatures.h"
11
+ #include "include/private/SkFeatures.h"
12
12
 
13
13
  #if defined(SK_BUILD_FOR_WIN)
14
14
 
15
15
  #include "include/core/SkData.h"
16
16
  #include "include/core/SkImageGenerator.h"
17
17
  #include "include/core/SkRefCnt.h"
18
- #include "include/private/base/SkAPI.h"
18
+ #include "include/private/SkAPI.h"
19
19
 
20
20
  #include <memory>
21
21
 
@@ -8,13 +8,13 @@
8
8
  #ifndef skgpu_SingleOwner_DEFINED
9
9
  #define skgpu_SingleOwner_DEFINED
10
10
 
11
- #include "include/private/base/SkDebug.h" // IWYU pragma: keep
11
+ #include "include/private/SkDebug.h" // IWYU pragma: keep
12
12
 
13
13
  #if defined(SK_DEBUG)
14
- #include "include/private/base/SkAssert.h"
15
- #include "include/private/base/SkMutex.h"
16
- #include "include/private/base/SkThreadAnnotations.h"
17
- #include "include/private/base/SkThreadID.h"
14
+ #include "include/private/SkAssert.h"
15
+ #include "include/private/SkMutex.h"
16
+ #include "include/private/SkThreadAnnotations.h"
17
+ #include "include/private/SkThreadID.h"
18
18
 
19
19
  #endif
20
20
 
@@ -8,7 +8,7 @@
8
8
  #ifndef SkAPI_DEFINED
9
9
  #define SkAPI_DEFINED
10
10
 
11
- #include "include/private/base/SkLoadUserConfig.h" // IWYU pragma: keep
11
+ #include "include/private/SkLoadUserConfig.h" // IWYU pragma: keep
12
12
 
13
13
  // If SKIA_IMPLEMENTATION is defined as 1, that signals we are building Skia and should
14
14
  // export our symbols. If it is not set (or set to 0), then Skia is being used by a client
@@ -8,7 +8,7 @@
8
8
  #ifndef SkAlign_DEFINED
9
9
  #define SkAlign_DEFINED
10
10
 
11
- #include "include/private/base/SkAssert.h"
11
+ #include "include/private/SkAssert.h"
12
12
 
13
13
  #include <cstddef>
14
14
 
@@ -8,7 +8,7 @@
8
8
  #ifndef SkAnySubclass_DEFINED
9
9
  #define SkAnySubclass_DEFINED
10
10
 
11
- #include "include/private/base/SkAssert.h"
11
+ #include "include/private/SkAssert.h"
12
12
 
13
13
  #include <cstddef>
14
14
  #include <new>
@@ -8,10 +8,10 @@
8
8
  #ifndef SkAssert_DEFINED
9
9
  #define SkAssert_DEFINED
10
10
 
11
- #include "include/private/base/SkAPI.h"
12
- #include "include/private/base/SkAttributes.h"
13
- #include "include/private/base/SkDebug.h" // IWYU pragma: keep
14
- #include "include/private/base/SkLog.h"
11
+ #include "include/private/SkAPI.h"
12
+ #include "include/private/SkAttributes.h"
13
+ #include "include/private/SkDebug.h" // IWYU pragma: keep
14
+ #include "include/private/SkLog.h"
15
15
 
16
16
  #include <cstddef>
17
17
  #include <limits>
@@ -8,8 +8,8 @@
8
8
  #ifndef SkAttributes_DEFINED
9
9
  #define SkAttributes_DEFINED
10
10
 
11
- #include "include/private/base/SkFeatures.h" // IWYU pragma: keep
12
- #include "include/private/base/SkLoadUserConfig.h" // IWYU pragma: keep
11
+ #include "include/private/SkFeatures.h" // IWYU pragma: keep
12
+ #include "include/private/SkLoadUserConfig.h" // IWYU pragma: keep
13
13
 
14
14
  #if defined(__clang__) || defined(__GNUC__)
15
15
  # define SK_ATTRIBUTE(attr) __attribute__((attr))
@@ -4,9 +4,9 @@
4
4
  #ifndef SkContainers_DEFINED
5
5
  #define SkContainers_DEFINED
6
6
 
7
- #include "include/private/base/SkAPI.h"
8
- #include "include/private/base/SkAlign.h"
9
- #include "include/private/base/SkSpan_impl.h"
7
+ #include "include/core/SkSpan.h"
8
+ #include "include/private/SkAPI.h"
9
+ #include "include/private/SkAlign.h"
10
10
 
11
11
  #include <cstddef>
12
12
  #include <cstdint>
@@ -8,9 +8,9 @@
8
8
  #ifndef SkDebug_DEFINED
9
9
  #define SkDebug_DEFINED
10
10
 
11
- #include "include/private/base/SkAPI.h"
12
- #include "include/private/base/SkAttributes.h"
13
- #include "include/private/base/SkLoadUserConfig.h" // IWYU pragma: keep
11
+ #include "include/private/SkAPI.h"
12
+ #include "include/private/SkAttributes.h"
13
+ #include "include/private/SkLoadUserConfig.h" // IWYU pragma: keep
14
14
 
15
15
  #if !defined(SkDebugf)
16
16
  void SK_SPI SkDebugf(const char format[], ...) SK_PRINTF_LIKE(1, 2);
@@ -10,7 +10,7 @@
10
10
  #ifndef SkDeque_DEFINED
11
11
  #define SkDeque_DEFINED
12
12
 
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  #include <cstddef>
16
16
 
@@ -15,9 +15,9 @@
15
15
  #include "include/core/SkImageInfo.h"
16
16
  #include "include/core/SkRefCnt.h"
17
17
  #include "include/core/SkTypes.h"
18
+ #include "include/private/SkAPI.h"
18
19
  #include "include/private/SkHdrMetadata.h"
19
- #include "include/private/base/SkAPI.h"
20
- #include "include/private/base/SkTo.h"
20
+ #include "include/private/SkTo.h"
21
21
  #include "modules/skcms/skcms.h"
22
22
 
23
23
  #include <cstdint>
@@ -0,0 +1,92 @@
1
+ /*
2
+ * Copyright 2021 Google LLC
3
+ *
4
+ * Use of this source code is governed by a BSD-style license that can be
5
+ * found in the LICENSE file.
6
+ */
7
+
8
+ #ifndef SkEnumBitMask_DEFINED
9
+ #define SkEnumBitMask_DEFINED
10
+
11
+ #include "include/private/SkAttributes.h"
12
+
13
+ #include <type_traits>
14
+
15
+ /**
16
+ * Wraps an enum that is used for flags, and enables masking with type safety. Example:
17
+ *
18
+ * enum class MyFlags {
19
+ * kNone = 0,
20
+ * kA = 1,
21
+ * kB = 2,
22
+ * kC = 4,
23
+ * };
24
+ *
25
+ * SK_MAKE_BITMASK_OPS(MyFlags)
26
+ *
27
+ * ...
28
+ *
29
+ * SkEnumBitMask<MyFlags> flags = MyFlags::kA | MyFlags::kB;
30
+ *
31
+ * if (flags & MyFlags::kB) {}
32
+ *
33
+ * ...
34
+ */
35
+ template<typename E>
36
+ class SkEnumBitMask {
37
+ using I = std::underlying_type_t<E>;
38
+ public:
39
+ SK_ALWAYS_INLINE constexpr SkEnumBitMask() : SkEnumBitMask(I(0)) {}
40
+ SK_ALWAYS_INLINE constexpr SkEnumBitMask(E e) : SkEnumBitMask(static_cast<I>(e)) {}
41
+
42
+ SK_ALWAYS_INLINE constexpr explicit operator bool() const { return fValue; }
43
+ SK_ALWAYS_INLINE constexpr I value() const { return fValue; }
44
+
45
+ SK_ALWAYS_INLINE constexpr bool operator==(SkEnumBitMask m) const { return fValue == m.fValue; }
46
+ SK_ALWAYS_INLINE constexpr bool operator!=(SkEnumBitMask m) const { return fValue != m.fValue; }
47
+
48
+ SK_ALWAYS_INLINE constexpr SkEnumBitMask operator|(SkEnumBitMask m) const {
49
+ return SkEnumBitMask(fValue | m.fValue);
50
+ }
51
+ SK_ALWAYS_INLINE constexpr SkEnumBitMask operator&(SkEnumBitMask m) const {
52
+ return SkEnumBitMask(fValue & m.fValue);
53
+ }
54
+ SK_ALWAYS_INLINE constexpr SkEnumBitMask operator^(SkEnumBitMask m) const {
55
+ return SkEnumBitMask(fValue ^ m.fValue);
56
+ }
57
+ SK_ALWAYS_INLINE constexpr SkEnumBitMask operator~() const { return SkEnumBitMask(~fValue); }
58
+
59
+ SK_ALWAYS_INLINE SkEnumBitMask& operator|=(SkEnumBitMask m) { return *this = *this | m; }
60
+ SK_ALWAYS_INLINE SkEnumBitMask& operator&=(SkEnumBitMask m) { return *this = *this & m; }
61
+ SK_ALWAYS_INLINE SkEnumBitMask& operator^=(SkEnumBitMask m) { return *this = *this ^ m; }
62
+
63
+ private:
64
+ SK_ALWAYS_INLINE constexpr explicit SkEnumBitMask(I value) : fValue(value) {}
65
+
66
+ I fValue;
67
+ };
68
+
69
+ /**
70
+ * Defines functions that make it possible to use bitwise operators on an enum.
71
+ */
72
+ #define SK_MAKE_BITMASK_OPS(E) \
73
+ [[maybe_unused]] constexpr SkEnumBitMask<E> operator|(E a, E b) { \
74
+ return SkEnumBitMask<E>(a) | b; \
75
+ } \
76
+ [[maybe_unused]] constexpr SkEnumBitMask<E> operator&(E a, E b) { \
77
+ return SkEnumBitMask<E>(a) & b; \
78
+ } \
79
+ [[maybe_unused]] constexpr SkEnumBitMask<E> operator^(E a, E b) { \
80
+ return SkEnumBitMask<E>(a) ^ b; \
81
+ } \
82
+ [[maybe_unused]] constexpr SkEnumBitMask<E> operator~(E e) { \
83
+ return ~SkEnumBitMask<E>(e); \
84
+ }
85
+
86
+ #define SK_DECL_BITMASK_OPS_FRIENDS(E) \
87
+ friend constexpr SkEnumBitMask<E> operator|(E, E); \
88
+ friend constexpr SkEnumBitMask<E> operator&(E, E); \
89
+ friend constexpr SkEnumBitMask<E> operator^(E, E); \
90
+ friend constexpr SkEnumBitMask<E> operator~(E);
91
+
92
+ #endif // SkEnumBitMask_DEFINED
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include "include/codec/SkEncodedOrigin.h"
12
12
  #include "include/core/SkRefCnt.h"
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  #include <cstdint>
16
16
  #include <optional>
@@ -8,10 +8,10 @@
8
8
  #ifndef SkFixed_DEFINED
9
9
  #define SkFixed_DEFINED
10
10
 
11
- #include "include/private/base/SkAssert.h"
12
- #include "include/private/base/SkDebug.h"
13
- #include "include/private/base/SkMath.h" // IWYU pragma: keep
14
- #include "include/private/base/SkTPin.h" // IWYU pragma: keep
11
+ #include "include/private/SkAssert.h"
12
+ #include "include/private/SkDebug.h"
13
+ #include "include/private/SkMath.h" // IWYU pragma: keep
14
+ #include "include/private/SkTPin.h" // IWYU pragma: keep
15
15
 
16
16
  #include <cstdint>
17
17
 
@@ -8,8 +8,8 @@
8
8
  #ifndef SkFloatingPoint_DEFINED
9
9
  #define SkFloatingPoint_DEFINED
10
10
 
11
- #include "include/private/base/SkAttributes.h"
12
- #include "include/private/base/SkMath.h"
11
+ #include "include/private/SkAttributes.h"
12
+ #include "include/private/SkMath.h"
13
13
 
14
14
  #include <cmath>
15
15
  #include <cstdint>
@@ -9,7 +9,7 @@
9
9
  #define SkGainmapShader_DEFINED
10
10
 
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkAPI.h"
12
+ #include "include/private/SkAPI.h"
13
13
 
14
14
  class SkColorSpace;
15
15
  class SkShader;
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include "include/core/SkColorSpace.h"
12
12
  #include "include/core/SkData.h"
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  #include <algorithm>
16
16
  #include <cmath>
@@ -9,9 +9,9 @@
9
9
  #define SkIDChangeListener_DEFINED
10
10
 
11
11
  #include "include/core/SkRefCnt.h"
12
- #include "include/private/base/SkMutex.h"
13
- #include "include/private/base/SkTArray.h"
14
- #include "include/private/base/SkThreadAnnotations.h"
12
+ #include "include/private/SkMutex.h"
13
+ #include "include/private/SkTArray.h"
14
+ #include "include/private/SkThreadAnnotations.h"
15
15
 
16
16
  #include <atomic>
17
17
 
@@ -8,9 +8,9 @@
8
8
  #ifndef SK_USER_CONFIG_WAS_LOADED
9
9
 
10
10
  // Include this to set reasonable defaults (e.g. for SK_CPU_LENDIAN)
11
- #include "include/private/base/SkFeatures.h"
11
+ #include "include/private/SkFeatures.h"
12
12
  // Include this so that users can define the lowest active log priority in their config
13
- #include "include/private/base/SkLogPriority.h" // IWYU pragma: keep
13
+ #include "include/private/SkLogPriority.h" // IWYU pragma: keep
14
14
 
15
15
  // Allows embedders that want to disable macros that take arguments to just
16
16
  // define that symbol to be one of these
@@ -10,10 +10,10 @@
10
10
 
11
11
  #include <cstdarg>
12
12
 
13
- #include "include/private/base/SkAPI.h"
14
- #include "include/private/base/SkAttributes.h"
15
- #include "include/private/base/SkLoadUserConfig.h" // IWYU pragma: keep
16
- #include "include/private/base/SkLogPriority.h"
13
+ #include "include/private/SkAPI.h"
14
+ #include "include/private/SkAttributes.h"
15
+ #include "include/private/SkLoadUserConfig.h" // IWYU pragma: keep
16
+ #include "include/private/SkLogPriority.h"
17
17
 
18
18
  #if !defined(SkLog)
19
19
  // To be implemented per platform.
@@ -7,7 +7,7 @@
7
7
  #ifndef SkMacros_DEFINED
8
8
  #define SkMacros_DEFINED
9
9
 
10
- #include "include/private/base/SkTo.h" // IWYU pragma: keep
10
+ #include "include/private/SkTo.h" // IWYU pragma: keep
11
11
 
12
12
  /*
13
13
  * Usage: SK_MACRO_CONCAT(a, b) to construct the symbol ab
@@ -10,7 +10,7 @@
10
10
 
11
11
  #include <cstring>
12
12
 
13
- #include "include/private/base/SkAPI.h"
13
+ #include "include/private/SkAPI.h"
14
14
 
15
15
  /*
16
16
  memory wrappers to be implemented by the porting layer (platform)
@@ -8,8 +8,8 @@
8
8
  #ifndef SkMath_DEFINED
9
9
  #define SkMath_DEFINED
10
10
 
11
- #include "include/private/base/SkAssert.h"
12
- #include "include/private/base/SkCPUTypes.h"
11
+ #include "include/private/SkAssert.h"
12
+ #include "include/private/SkCPUTypes.h"
13
13
 
14
14
  #include <cstdint>
15
15
  #include <climits>
@@ -8,11 +8,11 @@
8
8
  #ifndef SkMutex_DEFINED
9
9
  #define SkMutex_DEFINED
10
10
 
11
- #include "include/private/base/SkAssert.h"
12
- #include "include/private/base/SkDebug.h"
13
- #include "include/private/base/SkSemaphore.h"
14
- #include "include/private/base/SkThreadAnnotations.h"
15
- #include "include/private/base/SkThreadID.h"
11
+ #include "include/private/SkAssert.h"
12
+ #include "include/private/SkDebug.h"
13
+ #include "include/private/SkSemaphore.h"
14
+ #include "include/private/SkThreadAnnotations.h"
15
+ #include "include/private/SkThreadID.h"
16
16
 
17
17
  /**
18
18
  * class SkMutex
@@ -8,7 +8,7 @@
8
8
  #ifndef SkNoncopyable_DEFINED
9
9
  #define SkNoncopyable_DEFINED
10
10
 
11
- #include "include/private/base/SkAPI.h"
11
+ #include "include/private/SkAPI.h"
12
12
 
13
13
  /** \class SkNoncopyable (DEPRECATED)
14
14
 
@@ -8,7 +8,7 @@
8
8
  #ifndef SkOnce_DEFINED
9
9
  #define SkOnce_DEFINED
10
10
 
11
- #include "include/private/base/SkThreadAnnotations.h"
11
+ #include "include/private/SkThreadAnnotations.h"
12
12
 
13
13
  #include <atomic>
14
14
  #include <cstdint>
@@ -16,12 +16,12 @@
16
16
  #include "include/core/SkRect.h"
17
17
  #include "include/core/SkRefCnt.h"
18
18
  #include "include/core/SkScalar.h"
19
+ #include "include/core/SkSpan.h"
19
20
  #include "include/core/SkTypes.h"
21
+ #include "include/private/SkDebug.h"
20
22
  #include "include/private/SkIDChangeListener.h"
21
- #include "include/private/base/SkDebug.h"
22
- #include "include/private/base/SkSpan_impl.h"
23
- #include "include/private/base/SkTArray.h"
24
- #include "include/private/base/SkTo.h"
23
+ #include "include/private/SkTArray.h"
24
+ #include "include/private/SkTo.h"
25
25
 
26
26
  #include <atomic>
27
27
  #include <cstddef>
@@ -9,27 +9,42 @@
9
9
  #define SkPixelStorage_DEFINED
10
10
 
11
11
  #include <cstdint>
12
+ #include <atomic>
13
+ #include "include/core/SkRefCnt.h"
12
14
 
13
15
  /**
14
16
  * SkPixelStorage is the class representing the storage block for pixel data. It serves as the
15
17
  * abstract source of pixel memory—the 2D array of data—that is read from and written to by
16
18
  * higher-level Skia objects like SkImage and SkSurface.
17
19
  */
18
- class SkPixelStorage {
20
+ class SkPixelStorage : public SkRefCnt {
19
21
  public:
20
- SkPixelStorage();
21
- virtual ~SkPixelStorage() = default;
22
-
23
22
  enum Type {
24
23
  kTextureProxy,
25
24
  kPixelRef,
26
25
  };
27
26
 
27
+ SkPixelStorage(Type type);
28
+ ~SkPixelStorage() override = default;
29
+
28
30
  uint32_t getPixelStorageId() const { return fID; }
29
- virtual Type type() const = 0;
31
+ Type type() const { return fType; }
32
+
33
+ uint32_t getContentId() const { return fContentID.load(std::memory_order_relaxed); }
34
+ uint32_t incrementContentId() { return fContentID.fetch_add(1, std::memory_order_relaxed) + 1; }
30
35
 
31
36
  private:
37
+ Type fType;
38
+ /**
39
+ * fID is a static identifier that differenciates PixelStorages. This is assigned at
40
+ * construciton and does not change.
41
+ */
32
42
  uint32_t fID;
43
+ /**
44
+ * fContentID is an identifier that tracks the current state of a PixelStorage. Gets incremented
45
+ * and read from other objects that want to track the state of a PixelStorage at a given time.
46
+ */
47
+ std::atomic<uint32_t> fContentID = 0;
33
48
 
34
49
  static uint32_t NextId();
35
50
  };
@@ -8,8 +8,8 @@
8
8
  #ifndef SkSafe32_DEFINED
9
9
  #define SkSafe32_DEFINED
10
10
 
11
- #include "include/private/base/SkAssert.h"
12
- #include "include/private/base/SkMath.h"
11
+ #include "include/private/SkAssert.h"
12
+ #include "include/private/SkMath.h"
13
13
 
14
14
  #include <cstdint>
15
15
 
@@ -8,9 +8,9 @@
8
8
  #ifndef SkSemaphore_DEFINED
9
9
  #define SkSemaphore_DEFINED
10
10
 
11
- #include "include/private/base/SkAPI.h"
12
- #include "include/private/base/SkOnce.h"
13
- #include "include/private/base/SkThreadAnnotations.h"
11
+ #include "include/private/SkAPI.h"
12
+ #include "include/private/SkOnce.h"
13
+ #include "include/private/SkThreadAnnotations.h"
14
14
 
15
15
  #include <algorithm>
16
16
  #include <atomic>
@@ -8,17 +8,16 @@
8
8
  #ifndef SkTArray_DEFINED
9
9
  #define SkTArray_DEFINED
10
10
 
11
- #include "include/private/base/SkASAN.h" // IWYU pragma: keep
12
- #include "include/private/base/SkAlignedStorage.h"
13
- #include "include/private/base/SkAssert.h"
14
- #include "include/private/base/SkAttributes.h"
15
- #include "include/private/base/SkContainers.h"
16
- #include "include/private/base/SkDebug.h"
17
- #include "include/private/base/SkMalloc.h"
18
- #include "include/private/base/SkMath.h"
19
- #include "include/private/base/SkSpan_impl.h"
20
- #include "include/private/base/SkTo.h"
21
- #include "include/private/base/SkTypeTraits.h" // IWYU pragma: keep
11
+ #include "include/core/SkSpan.h"
12
+ #include "include/private/SkASAN.h" // IWYU pragma: keep
13
+ #include "include/private/SkAlignedStorage.h"
14
+ #include "include/private/SkAssert.h"
15
+ #include "include/private/SkAttributes.h"
16
+ #include "include/private/SkContainers.h"
17
+ #include "include/private/SkMalloc.h"
18
+ #include "include/private/SkMath.h"
19
+ #include "include/private/SkTo.h"
20
+ #include "include/private/SkTypeTraits.h" // IWYU pragma: keep
22
21
 
23
22
  #include <algorithm>
24
23
  #include <climits>