@shopify/react-native-skia 0.1.233 → 0.1.236

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 (294) hide show
  1. package/android/CMakeLists.txt +0 -1
  2. package/android/cpp/jni/JniSkiaManager.cpp +0 -1
  3. package/android/cpp/rnskia-android/RNSkAndroidView.h +0 -1
  4. package/android/cpp/rnskia-android/RNSkOpenGLCanvasProvider.cpp +1 -1
  5. package/android/cpp/rnskia-android/RNSkOpenGLCanvasProvider.h +1 -2
  6. package/cpp/api/JsiSkTypefaceFactory.h +2 -1
  7. package/cpp/skia/include/android/AHardwareBufferUtils.h +23 -0
  8. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +2 -0
  9. package/cpp/skia/include/android/graphite/SurfaceAndroid.h +59 -0
  10. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -1
  11. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -1
  12. package/cpp/skia/include/codec/SkCodec.h +21 -3
  13. package/cpp/skia/include/codec/SkGifDecoder.h +1 -1
  14. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -1
  15. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -1
  16. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -1
  17. package/cpp/skia/include/codec/SkPngDecoder.h +1 -1
  18. package/cpp/skia/include/codec/SkRawDecoder.h +1 -1
  19. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -1
  20. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -1
  21. package/cpp/skia/include/config/SkUserConfig.h +3 -1
  22. package/cpp/skia/include/core/SkCanvas.h +66 -37
  23. package/cpp/skia/include/core/SkColorFilter.h +5 -2
  24. package/cpp/skia/include/core/SkContourMeasure.h +1 -0
  25. package/cpp/skia/include/core/SkDocument.h +1 -0
  26. package/cpp/skia/include/core/SkFont.h +14 -24
  27. package/cpp/skia/include/core/SkFontArguments.h +1 -1
  28. package/cpp/skia/include/core/SkFontMetrics.h +1 -1
  29. package/cpp/skia/include/core/SkFontMgr.h +0 -7
  30. package/cpp/skia/include/core/SkGraphics.h +13 -0
  31. package/cpp/skia/include/core/SkMesh.h +9 -13
  32. package/cpp/skia/include/core/SkMilestone.h +1 -1
  33. package/cpp/skia/include/core/SkPathMeasure.h +2 -0
  34. package/cpp/skia/include/core/SkSerialProcs.h +29 -11
  35. package/cpp/skia/include/core/SkSize.h +3 -3
  36. package/cpp/skia/include/core/SkStream.h +3 -13
  37. package/cpp/skia/include/core/SkSurface.h +6 -3
  38. package/cpp/skia/include/core/SkSurfaceProps.h +2 -4
  39. package/cpp/skia/include/core/SkTraceMemoryDump.h +15 -0
  40. package/cpp/skia/include/core/SkTypeface.h +8 -56
  41. package/cpp/skia/include/core/SkTypes.h +8 -0
  42. package/cpp/skia/include/core/SkVertices.h +1 -1
  43. package/cpp/skia/include/docs/SkMultiPictureDocument.h +53 -0
  44. package/cpp/skia/include/docs/SkPDFDocument.h +11 -0
  45. package/cpp/skia/include/effects/SkGradientShader.h +9 -0
  46. package/cpp/skia/include/effects/SkRuntimeEffect.h +3 -7
  47. package/cpp/skia/include/gpu/GrBackendSemaphore.h +33 -47
  48. package/cpp/skia/include/gpu/GrBackendSurface.h +2 -3
  49. package/cpp/skia/include/gpu/GrContextOptions.h +0 -6
  50. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +44 -28
  51. package/cpp/skia/include/gpu/GrDirectContext.h +12 -31
  52. package/cpp/skia/include/gpu/GrTypes.h +1 -16
  53. package/cpp/skia/include/gpu/MutableTextureState.h +35 -80
  54. package/cpp/skia/include/gpu/ShaderErrorHandler.h +11 -1
  55. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +2 -2
  56. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +1 -1
  57. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +3 -2
  58. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSemaphore.h +20 -0
  59. package/cpp/skia/include/gpu/ganesh/vk/GrVkDirectContext.h +30 -0
  60. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +1 -1
  61. package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -0
  62. package/cpp/skia/include/gpu/gl/glx/GrGLMakeGLXInterface.h +6 -0
  63. package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +3 -3
  64. package/cpp/skia/include/gpu/graphite/BackendTexture.h +39 -27
  65. package/cpp/skia/include/gpu/graphite/Context.h +39 -13
  66. package/cpp/skia/include/gpu/graphite/ContextOptions.h +2 -0
  67. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +2 -1
  68. package/cpp/skia/include/gpu/graphite/Image.h +106 -87
  69. package/cpp/skia/include/gpu/graphite/Recorder.h +24 -3
  70. package/cpp/skia/include/gpu/graphite/Surface.h +7 -2
  71. package/cpp/skia/include/gpu/graphite/dawn/DawnBackendContext.h +41 -2
  72. package/cpp/skia/include/gpu/graphite/dawn/DawnTypes.h +11 -6
  73. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +1 -2
  74. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +6 -6
  75. package/cpp/skia/include/gpu/mock/GrMockTypes.h +1 -0
  76. package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +1 -1
  77. package/cpp/skia/include/gpu/vk/GrVkTypes.h +1 -44
  78. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +1 -1
  79. package/cpp/skia/include/gpu/vk/VulkanMutableTextureState.h +25 -0
  80. package/cpp/skia/include/gpu/vk/VulkanTypes.h +44 -0
  81. package/cpp/skia/include/ports/SkFontConfigInterface.h +3 -6
  82. package/cpp/skia/include/private/SkEncodedInfo.h +5 -0
  83. package/cpp/skia/include/private/SkExif.h +102 -0
  84. package/cpp/skia/include/private/SkGainmapInfo.h +11 -1
  85. package/cpp/skia/include/private/base/SkAssert.h +16 -0
  86. package/cpp/skia/include/private/base/SkDeque.h +2 -7
  87. package/cpp/skia/include/private/base/SkLoadUserConfig.h +1 -1
  88. package/cpp/skia/include/private/base/SkTArray.h +69 -28
  89. package/cpp/skia/include/private/base/SkThreadAnnotations.h +18 -5
  90. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +26 -30
  91. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +4 -3
  92. package/cpp/skia/include/private/chromium/SkImageChromium.h +1 -1
  93. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +8 -6
  94. package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +29 -0
  95. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +12 -9
  96. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +16 -11
  97. package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +2 -2
  98. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std.h +312 -0
  99. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h264std_decode.h +77 -0
  100. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std.h +446 -0
  101. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codec_h265std_decode.h +67 -0
  102. package/cpp/skia/include/third_party/vulkan/vulkan/vk_video/vulkan_video_codecs_common.h +36 -0
  103. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +9 -2
  104. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +31 -3
  105. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +10624 -5716
  106. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +2 -1
  107. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +2 -1
  108. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +28 -1
  109. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +2 -1
  110. package/cpp/skia/include/utils/mac/SkCGUtils.h +23 -11
  111. package/cpp/skia/modules/skcms/skcms.h +2 -410
  112. package/cpp/skia/modules/skcms/src/Transform_inl.h +831 -704
  113. package/cpp/skia/modules/skcms/src/skcms_Transform.h +161 -0
  114. package/cpp/skia/modules/skcms/src/skcms_internals.h +136 -0
  115. package/cpp/skia/modules/skcms/src/skcms_public.h +404 -0
  116. package/cpp/skia/modules/skparagraph/include/FontArguments.h +1 -1
  117. package/cpp/skia/modules/skparagraph/include/FontCollection.h +2 -0
  118. package/cpp/skia/modules/skparagraph/include/Paragraph.h +2 -2
  119. package/cpp/skia/modules/skparagraph/include/TextStyle.h +4 -3
  120. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +1 -3
  121. package/cpp/skia/modules/skresources/include/SkResources.h +28 -17
  122. package/cpp/skia/modules/skunicode/include/SkUnicode.h +12 -0
  123. package/cpp/skia/modules/svg/include/SkSVGDOM.h +4 -1
  124. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +4 -1
  125. package/cpp/skia/src/base/SkUTF.h +7 -0
  126. package/cpp/skia/src/core/SkTHash.h +20 -8
  127. package/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +3 -2
  128. package/lib/commonjs/dom/nodes/JsiSkDOM.js +56 -57
  129. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
  130. package/lib/commonjs/external/reanimated/index.d.ts +1 -0
  131. package/lib/commonjs/external/reanimated/index.js +13 -0
  132. package/lib/commonjs/external/reanimated/index.js.map +1 -1
  133. package/lib/commonjs/external/reanimated/interpolators.js +16 -2
  134. package/lib/commonjs/external/reanimated/interpolators.js.map +1 -1
  135. package/lib/commonjs/external/reanimated/moduleWrapper.d.ts +1 -0
  136. package/lib/commonjs/external/reanimated/moduleWrapper.js +5 -3
  137. package/lib/commonjs/external/reanimated/moduleWrapper.js.map +1 -1
  138. package/lib/commonjs/external/reanimated/textures.d.ts +5 -0
  139. package/lib/commonjs/external/reanimated/textures.js +52 -0
  140. package/lib/commonjs/external/reanimated/textures.js.map +1 -0
  141. package/lib/commonjs/headless/index.js +1 -1
  142. package/lib/commonjs/headless/index.js.map +1 -1
  143. package/lib/commonjs/mock/index.js +3 -0
  144. package/lib/commonjs/mock/index.js.map +1 -1
  145. package/lib/commonjs/renderer/Canvas.js +6 -5
  146. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  147. package/lib/commonjs/renderer/Container.d.ts +1 -1
  148. package/lib/commonjs/renderer/Container.js +2 -1
  149. package/lib/commonjs/renderer/Container.js.map +1 -1
  150. package/lib/commonjs/renderer/Offscreen.d.ts +1 -0
  151. package/lib/commonjs/renderer/Offscreen.js +18 -5
  152. package/lib/commonjs/renderer/Offscreen.js.map +1 -1
  153. package/lib/commonjs/renderer/Reconciler.d.ts +1 -1
  154. package/lib/commonjs/renderer/Reconciler.js +7 -4
  155. package/lib/commonjs/renderer/Reconciler.js.map +1 -1
  156. package/lib/commonjs/skia/types/Matrix4.d.ts +2 -2
  157. package/lib/commonjs/skia/types/Matrix4.js.map +1 -1
  158. package/lib/commonjs/skia/types/Shader/Shader.d.ts +1 -1
  159. package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -1
  160. package/lib/commonjs/skia/web/JsiSkPath.d.ts +2 -2
  161. package/lib/commonjs/skia/web/JsiSkPath.js +10 -2
  162. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  163. package/lib/commonjs/views/SkiaJSDomView.d.ts +31 -0
  164. package/lib/commonjs/views/SkiaJSDomView.js +161 -0
  165. package/lib/commonjs/views/SkiaJSDomView.js.map +1 -0
  166. package/lib/commonjs/views/SkiaJSDomView.web.d.ts +1 -0
  167. package/lib/commonjs/views/SkiaJSDomView.web.js +14 -0
  168. package/lib/commonjs/views/SkiaJSDomView.web.js.map +1 -0
  169. package/lib/module/dom/nodes/JsiSkDOM.d.ts +3 -2
  170. package/lib/module/dom/nodes/JsiSkDOM.js +56 -56
  171. package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
  172. package/lib/module/external/reanimated/index.d.ts +1 -0
  173. package/lib/module/external/reanimated/index.js +1 -0
  174. package/lib/module/external/reanimated/index.js.map +1 -1
  175. package/lib/module/external/reanimated/interpolators.js +15 -2
  176. package/lib/module/external/reanimated/interpolators.js.map +1 -1
  177. package/lib/module/external/reanimated/moduleWrapper.d.ts +1 -0
  178. package/lib/module/external/reanimated/moduleWrapper.js +3 -2
  179. package/lib/module/external/reanimated/moduleWrapper.js.map +1 -1
  180. package/lib/module/external/reanimated/textures.d.ts +5 -0
  181. package/lib/module/external/reanimated/textures.js +35 -0
  182. package/lib/module/external/reanimated/textures.js.map +1 -0
  183. package/lib/module/headless/index.js +1 -1
  184. package/lib/module/headless/index.js.map +1 -1
  185. package/lib/module/mock/index.js +3 -0
  186. package/lib/module/mock/index.js.map +1 -1
  187. package/lib/module/renderer/Canvas.js +5 -4
  188. package/lib/module/renderer/Canvas.js.map +1 -1
  189. package/lib/module/renderer/Container.d.ts +1 -1
  190. package/lib/module/renderer/Container.js +2 -1
  191. package/lib/module/renderer/Container.js.map +1 -1
  192. package/lib/module/renderer/Offscreen.d.ts +1 -0
  193. package/lib/module/renderer/Offscreen.js +11 -3
  194. package/lib/module/renderer/Offscreen.js.map +1 -1
  195. package/lib/module/renderer/Reconciler.d.ts +1 -1
  196. package/lib/module/renderer/Reconciler.js +7 -4
  197. package/lib/module/renderer/Reconciler.js.map +1 -1
  198. package/lib/module/skia/types/Matrix4.d.ts +2 -2
  199. package/lib/module/skia/types/Matrix4.js.map +1 -1
  200. package/lib/module/skia/types/Shader/Shader.d.ts +1 -1
  201. package/lib/module/skia/types/Shader/Shader.js.map +1 -1
  202. package/lib/module/skia/web/JsiSkPath.d.ts +2 -2
  203. package/lib/module/skia/web/JsiSkPath.js +10 -2
  204. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  205. package/lib/module/views/SkiaJSDomView.d.ts +31 -0
  206. package/lib/module/views/SkiaJSDomView.js +136 -0
  207. package/lib/module/views/SkiaJSDomView.js.map +1 -0
  208. package/lib/module/views/SkiaJSDomView.web.d.ts +1 -0
  209. package/lib/module/views/SkiaJSDomView.web.js +2 -0
  210. package/lib/module/views/SkiaJSDomView.web.js.map +1 -0
  211. package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +3 -2
  212. package/lib/typescript/src/external/reanimated/index.d.ts +1 -0
  213. package/lib/typescript/src/external/reanimated/moduleWrapper.d.ts +1 -0
  214. package/lib/typescript/src/external/reanimated/textures.d.ts +5 -0
  215. package/lib/typescript/src/renderer/Container.d.ts +1 -1
  216. package/lib/typescript/src/renderer/Offscreen.d.ts +1 -0
  217. package/lib/typescript/src/renderer/Reconciler.d.ts +1 -1
  218. package/lib/typescript/src/skia/types/Matrix4.d.ts +2 -2
  219. package/lib/typescript/src/skia/types/Shader/Shader.d.ts +1 -1
  220. package/lib/typescript/src/skia/web/JsiSkPath.d.ts +2 -2
  221. package/lib/typescript/src/views/SkiaJSDomView.d.ts +31 -0
  222. package/lib/typescript/src/views/SkiaJSDomView.web.d.ts +1 -0
  223. package/libs/android/arm64-v8a/libskia.a +0 -0
  224. package/libs/android/arm64-v8a/libskottie.a +0 -0
  225. package/libs/android/arm64-v8a/libskparagraph.a +0 -0
  226. package/libs/android/arm64-v8a/libsksg.a +0 -0
  227. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  228. package/libs/android/arm64-v8a/libskunicode.a +0 -0
  229. package/libs/android/arm64-v8a/libsvg.a +0 -0
  230. package/libs/android/armeabi-v7a/libskia.a +0 -0
  231. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  232. package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
  233. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  234. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  235. package/libs/android/armeabi-v7a/libskunicode.a +0 -0
  236. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  237. package/libs/android/x86/libskia.a +0 -0
  238. package/libs/android/x86/libskottie.a +0 -0
  239. package/libs/android/x86/libskparagraph.a +0 -0
  240. package/libs/android/x86/libsksg.a +0 -0
  241. package/libs/android/x86/libskshaper.a +0 -0
  242. package/libs/android/x86/libskunicode.a +0 -0
  243. package/libs/android/x86/libsvg.a +0 -0
  244. package/libs/android/x86_64/libskia.a +0 -0
  245. package/libs/android/x86_64/libskottie.a +0 -0
  246. package/libs/android/x86_64/libskparagraph.a +0 -0
  247. package/libs/android/x86_64/libsksg.a +0 -0
  248. package/libs/android/x86_64/libskshaper.a +0 -0
  249. package/libs/android/x86_64/libskunicode.a +0 -0
  250. package/libs/android/x86_64/libsvg.a +0 -0
  251. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  252. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  253. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  254. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  255. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
  256. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
  257. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  258. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  259. package/libs/ios/libskshaper.xcframework/Info.plist +5 -5
  260. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  261. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  262. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
  263. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
  264. package/libs/ios/libsvg.xcframework/Info.plist +5 -5
  265. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  266. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  267. package/package.json +1 -1
  268. package/src/dom/nodes/JsiSkDOM.ts +55 -56
  269. package/src/external/reanimated/index.ts +1 -0
  270. package/src/external/reanimated/interpolators.ts +17 -3
  271. package/src/external/reanimated/moduleWrapper.ts +1 -0
  272. package/src/external/reanimated/textures.tsx +50 -0
  273. package/src/headless/index.ts +1 -1
  274. package/src/mock/index.ts +3 -0
  275. package/src/renderer/Canvas.tsx +4 -3
  276. package/src/renderer/Container.tsx +3 -2
  277. package/src/renderer/Offscreen.tsx +12 -3
  278. package/src/renderer/Reconciler.tsx +5 -2
  279. package/src/skia/types/Matrix4.ts +2 -2
  280. package/src/skia/types/Shader/Shader.ts +6 -1
  281. package/src/skia/web/JsiSkPath.ts +23 -3
  282. package/src/views/SkiaJSDomView.tsx +126 -0
  283. package/src/views/SkiaJSDomView.web.tsx +1 -0
  284. package/android/cpp/jni/include/JniSkiaDrawView.h +0 -90
  285. package/cpp/rnskia/RNSkJsView.cpp +0 -236
  286. package/cpp/rnskia/RNSkJsView.h +0 -121
  287. package/cpp/skia/include/gpu/GrSurfaceInfo.h +0 -142
  288. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +0 -107
  289. package/cpp/skia/include/private/gpu/ganesh/GrMockTypesPriv.h +0 -32
  290. package/cpp/skia/include/private/gpu/ganesh/GrMtlTypesPriv.h +0 -83
  291. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +0 -47
  292. package/cpp/skia/include/private/gpu/vk/VulkanTypesPriv.h +0 -57
  293. package/cpp/skia/include/utils/SkBase64.h +0 -53
  294. package/cpp/skia/modules/skcms/skcms_internal.h +0 -56
@@ -1,142 +0,0 @@
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 GrSurfaceInfo_DEFINED
9
- #define GrSurfaceInfo_DEFINED
10
-
11
- #include "include/gpu/GrTypes.h"
12
-
13
- #ifdef SK_GL
14
- #include "include/private/gpu/ganesh/GrGLTypesPriv.h"
15
- #endif
16
- #ifdef SK_VULKAN
17
- #include "include/private/gpu/ganesh/GrVkTypesPriv.h"
18
- #endif
19
- #ifdef SK_DIRECT3D
20
- #include "include/private/gpu/ganesh/GrD3DTypesMinimal.h"
21
- struct GrD3DSurfaceInfo;
22
- #endif
23
- #ifdef SK_METAL
24
- #include "include/private/gpu/ganesh/GrMtlTypesPriv.h"
25
- #endif
26
- #include "include/private/gpu/ganesh/GrMockTypesPriv.h"
27
-
28
- class GrSurfaceInfo {
29
- public:
30
- GrSurfaceInfo() {}
31
- #ifdef SK_GL
32
- GrSurfaceInfo(const GrGLSurfaceInfo& glInfo)
33
- : fBackend(GrBackendApi::kOpenGL)
34
- , fValid(true)
35
- , fSampleCount(glInfo.fSampleCount)
36
- , fLevelCount(glInfo.fLevelCount)
37
- , fProtected(glInfo.fProtected)
38
- , fGLSpec(glInfo) {}
39
- #endif
40
- #ifdef SK_VULKAN
41
- GrSurfaceInfo(const GrVkSurfaceInfo& vkInfo)
42
- : fBackend(GrBackendApi::kVulkan)
43
- , fValid(true)
44
- , fSampleCount(vkInfo.fSampleCount)
45
- , fLevelCount(vkInfo.fLevelCount)
46
- , fProtected(vkInfo.fProtected)
47
- , fVkSpec(vkInfo) {}
48
- #endif
49
- #ifdef SK_DIRECT3D
50
- GrSurfaceInfo(const GrD3DSurfaceInfo& d3dInfo);
51
- #endif
52
- #ifdef SK_METAL
53
- GrSurfaceInfo(const GrMtlSurfaceInfo& mtlInfo)
54
- : fBackend(GrBackendApi::kMetal)
55
- , fValid(true)
56
- , fSampleCount(mtlInfo.fSampleCount)
57
- , fLevelCount(mtlInfo.fLevelCount)
58
- , fProtected(mtlInfo.fProtected)
59
- , fMtlSpec(mtlInfo) {}
60
- #endif
61
- GrSurfaceInfo(const GrMockSurfaceInfo& mockInfo)
62
- : fBackend(GrBackendApi::kMock)
63
- , fValid(true)
64
- , fSampleCount(mockInfo.fSampleCount)
65
- , fLevelCount(mockInfo.fLevelCount)
66
- , fProtected(mockInfo.fProtected)
67
- , fMockSpec(mockInfo) {}
68
-
69
- ~GrSurfaceInfo();
70
- GrSurfaceInfo(const GrSurfaceInfo&) = default;
71
-
72
- bool isValid() const { return fValid; }
73
- GrBackendApi backend() const { return fBackend; }
74
-
75
- uint32_t numSamples() const { return fSampleCount; }
76
- uint32_t numMipLevels() const { return fLevelCount; }
77
- GrProtected isProtected() const { return fProtected; }
78
-
79
- #ifdef SK_GL
80
- bool getGLSurfaceInfo(GrGLSurfaceInfo* info) const {
81
- if (!this->isValid() || fBackend != GrBackendApi::kOpenGL) {
82
- return false;
83
- }
84
- *info = GrGLTextureSpecToSurfaceInfo(fGLSpec, fSampleCount, fLevelCount, fProtected);
85
- return true;
86
- }
87
- #endif
88
- #ifdef SK_VULKAN
89
- bool getVkSurfaceInfo(GrVkSurfaceInfo* info) const {
90
- if (!this->isValid() || fBackend != GrBackendApi::kVulkan) {
91
- return false;
92
- }
93
- *info = GrVkImageSpecToSurfaceInfo(fVkSpec, fSampleCount, fLevelCount, fProtected);
94
- return true;
95
- }
96
- #endif
97
- #ifdef SK_DIRECT3D
98
- bool getD3DSurfaceInfo(GrD3DSurfaceInfo*) const;
99
- #endif
100
- #ifdef SK_METAL
101
- bool getMtlSurfaceInfo(GrMtlSurfaceInfo* info) const {
102
- if (!this->isValid() || fBackend != GrBackendApi::kMetal) {
103
- return false;
104
- }
105
- *info = GrMtlTextureSpecToSurfaceInfo(fMtlSpec, fSampleCount, fLevelCount, fProtected);
106
- return true;
107
- }
108
- #endif
109
- bool getMockSurfaceInfo(GrMockSurfaceInfo* info) const {
110
- if (!this->isValid() || fBackend != GrBackendApi::kMock) {
111
- return false;
112
- }
113
- *info = GrMockTextureSpecToSurfaceInfo(fMockSpec, fSampleCount, fLevelCount, fProtected);
114
- return true;
115
- }
116
-
117
- private:
118
- GrBackendApi fBackend = GrBackendApi::kMock;
119
- bool fValid = false;
120
-
121
- uint32_t fSampleCount = 1;
122
- uint32_t fLevelCount = 0;
123
- GrProtected fProtected = GrProtected::kNo;
124
-
125
- union {
126
- #ifdef SK_GL
127
- GrGLTextureSpec fGLSpec;
128
- #endif
129
- #ifdef SK_VULKAN
130
- GrVkImageSpec fVkSpec;
131
- #endif
132
- #ifdef SK_DIRECT3D
133
- GrD3DTextureResourceSpecHolder fD3DSpec;
134
- #endif
135
- #ifdef SK_METAL
136
- GrMtlTextureSpec fMtlSpec;
137
- #endif
138
- GrMockTextureSpec fMockSpec;
139
- };
140
- };
141
-
142
- #endif
@@ -1,107 +0,0 @@
1
- /*
2
- * Copyright 2019 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
- #include "include/core/SkRefCnt.h"
9
- #include "include/gpu/gl/GrGLTypes.h"
10
-
11
- #ifndef GrGLTypesPriv_DEFINED
12
- #define GrGLTypesPriv_DEFINED
13
-
14
- // TODO(b/293490566) Move this to src/ after GrSurfaceInfo.h has been decoupled from GL
15
-
16
- static constexpr int kGrGLColorFormatCount = static_cast<int>(GrGLFormat::kLastColorFormat) + 1;
17
-
18
- class GrGLTextureParameters : public SkNVRefCnt<GrGLTextureParameters> {
19
- public:
20
- // We currently consider texture parameters invalid on all textures
21
- // GrContext::resetContext(). We use this type to track whether instances of
22
- // GrGLTextureParameters were updated before or after the most recent resetContext(). At 10
23
- // resets / frame and 60fps a 64bit timestamp will overflow in about a billion years.
24
- // TODO: Require clients to use GrBackendTexture::glTextureParametersModified() to invalidate
25
- // texture parameters and get rid of timestamp checking.
26
- using ResetTimestamp = uint64_t;
27
-
28
- // This initializes the params to have an expired timestamp. They'll be considered invalid the
29
- // first time the texture is used unless set() is called.
30
- GrGLTextureParameters() = default;
31
-
32
- // This is texture parameter state that is overridden when a non-zero sampler object is bound.
33
- struct SamplerOverriddenState {
34
- SamplerOverriddenState();
35
- void invalidate();
36
-
37
- GrGLenum fMinFilter;
38
- GrGLenum fMagFilter;
39
- GrGLenum fWrapS;
40
- GrGLenum fWrapT;
41
- GrGLfloat fMinLOD;
42
- GrGLfloat fMaxLOD;
43
- GrGLfloat fMaxAniso;
44
- // We always want the border color to be transparent black, so no need to store 4 floats.
45
- // Just track if it's been invalidated and no longer the default
46
- bool fBorderColorInvalid;
47
- };
48
-
49
- // Texture parameter state that is not overridden by a bound sampler object.
50
- struct NonsamplerState {
51
- NonsamplerState();
52
- void invalidate();
53
-
54
- GrGLint fBaseMipMapLevel;
55
- GrGLint fMaxMipmapLevel;
56
- bool fSwizzleIsRGBA;
57
- };
58
-
59
- void invalidate();
60
-
61
- ResetTimestamp resetTimestamp() const { return fResetTimestamp; }
62
- const SamplerOverriddenState& samplerOverriddenState() const { return fSamplerOverriddenState; }
63
- const NonsamplerState& nonsamplerState() const { return fNonsamplerState; }
64
-
65
- // SamplerOverriddenState is optional because we don't track it when we're using sampler
66
- // objects.
67
- void set(const SamplerOverriddenState* samplerState,
68
- const NonsamplerState& nonsamplerState,
69
- ResetTimestamp currTimestamp);
70
-
71
- private:
72
- static constexpr ResetTimestamp kExpiredTimestamp = 0;
73
-
74
- SamplerOverriddenState fSamplerOverriddenState;
75
- NonsamplerState fNonsamplerState;
76
- ResetTimestamp fResetTimestamp = kExpiredTimestamp;
77
- };
78
-
79
- class GrGLBackendTextureInfo {
80
- public:
81
- GrGLBackendTextureInfo(const GrGLTextureInfo& info, sk_sp<GrGLTextureParameters> params)
82
- : fInfo(info), fParams(params) {}
83
- const GrGLTextureInfo& info() const { return fInfo; }
84
- GrGLTextureParameters* parameters() const { return fParams.get(); }
85
- sk_sp<GrGLTextureParameters> refParameters() const { return fParams; }
86
-
87
- bool isProtected() const { return fInfo.isProtected(); }
88
-
89
- private:
90
- GrGLTextureInfo fInfo;
91
- sk_sp<GrGLTextureParameters> fParams; // not const because we might call invalidate() on it.
92
- };
93
-
94
- struct GrGLTextureSpec {
95
- GrGLTextureSpec() : fTarget(0), fFormat(0) {}
96
- GrGLTextureSpec(const GrGLSurfaceInfo& info) : fTarget(info.fTarget), fFormat(info.fFormat) {}
97
-
98
- GrGLenum fTarget;
99
- GrGLenum fFormat;
100
- };
101
-
102
- GrGLSurfaceInfo GrGLTextureSpecToSurfaceInfo(const GrGLTextureSpec& glSpec,
103
- uint32_t sampleCount,
104
- uint32_t levelCount,
105
- skgpu::Protected isProtected);
106
-
107
- #endif
@@ -1,32 +0,0 @@
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 GrMockTypesPriv_DEFINED
9
- #define GrMockTypesPriv_DEFINED
10
-
11
- #include "include/core/SkTextureCompressionType.h"
12
- #include "include/gpu/mock/GrMockTypes.h"
13
-
14
- struct GrMockTextureSpec {
15
- GrMockTextureSpec()
16
- : fColorType(GrColorType::kUnknown)
17
- , fCompressionType(SkTextureCompressionType::kNone) {}
18
- GrMockTextureSpec(const GrMockSurfaceInfo& info)
19
- : fColorType(info.fColorType)
20
- , fCompressionType(info.fCompressionType) {}
21
-
22
- GrColorType fColorType = GrColorType::kUnknown;
23
- SkTextureCompressionType fCompressionType = SkTextureCompressionType::kNone;
24
- };
25
-
26
- GrMockSurfaceInfo GrMockTextureSpecToSurfaceInfo(const GrMockTextureSpec& mockSpec,
27
- uint32_t sampleCount,
28
- uint32_t levelCount,
29
- GrProtected isProtected);
30
-
31
- #endif
32
-
@@ -1,83 +0,0 @@
1
- /*
2
- * Copyright 2021 Google Inc.
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 GrMtlTypesPriv_DEFINED
9
- #define GrMtlTypesPriv_DEFINED
10
-
11
- #include "include/gpu/GrTypes.h"
12
- #include "include/gpu/mtl/GrMtlTypes.h"
13
-
14
- ///////////////////////////////////////////////////////////////////////////////
15
-
16
- #ifdef __APPLE__
17
-
18
- #include <TargetConditionals.h>
19
-
20
- #if defined(SK_BUILD_FOR_MAC)
21
- #if __MAC_OS_X_VERSION_MAX_ALLOWED >= 130000
22
- #define GR_METAL_SDK_VERSION 300
23
- #elif __MAC_OS_X_VERSION_MAX_ALLOWED >= 120000
24
- #define GR_METAL_SDK_VERSION 240
25
- #elif __MAC_OS_X_VERSION_MAX_ALLOWED >= 110000
26
- #define GR_METAL_SDK_VERSION 230
27
- #elif __MAC_OS_X_VERSION_MAX_ALLOWED >= 101500
28
- #define GR_METAL_SDK_VERSION 220
29
- #elif __MAC_OS_X_VERSION_MAX_ALLOWED >= 101400
30
- #define GR_METAL_SDK_VERSION 210
31
- #else
32
- #error Must use at least 10.14 SDK to build Metal backend for MacOS
33
- #endif
34
- #else
35
- #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 160000 || __TV_OS_VERSION_MAX_ALLOWED >= 160000
36
- #define GR_METAL_SDK_VERSION 300
37
- #elif __IPHONE_OS_VERSION_MAX_ALLOWED >= 150000 || __TV_OS_VERSION_MAX_ALLOWED >= 150000
38
- #define GR_METAL_SDK_VERSION 240
39
- #elif __IPHONE_OS_VERSION_MAX_ALLOWED >= 140000 || __TV_OS_VERSION_MAX_ALLOWED >= 140000
40
- #define GR_METAL_SDK_VERSION 230
41
- #elif __IPHONE_OS_VERSION_MAX_ALLOWED >= 130000 || __TV_OS_VERSION_MAX_ALLOWED >= 130000
42
- #define GR_METAL_SDK_VERSION 220
43
- #elif __IPHONE_OS_VERSION_MAX_ALLOWED >= 120000 || __TV_OS_VERSION_MAX_ALLOWED >= 120000
44
- #define GR_METAL_SDK_VERSION 210
45
- #else
46
- #error Must use at least 12.00 SDK to build Metal backend for iOS
47
- #endif
48
- #endif
49
-
50
- #if __has_feature(objc_arc) && __has_attribute(objc_externally_retained)
51
- #define GR_NORETAIN __attribute__((objc_externally_retained))
52
- #define GR_NORETAIN_BEGIN \
53
- _Pragma("clang attribute push (__attribute__((objc_externally_retained)), apply_to=any(function,objc_method))")
54
- #define GR_NORETAIN_END _Pragma("clang attribute pop")
55
- #else
56
- #define GR_NORETAIN
57
- #define GR_NORETAIN_BEGIN
58
- #define GR_NORETAIN_END
59
- #endif
60
-
61
- struct GrMtlTextureSpec {
62
- GrMtlTextureSpec()
63
- : fFormat(0)
64
- , fUsage(0)
65
- , fStorageMode(0) {}
66
- GrMtlTextureSpec(const GrMtlSurfaceInfo& info)
67
- : fFormat(info.fFormat)
68
- , fUsage(info.fUsage)
69
- , fStorageMode(info.fStorageMode) {}
70
-
71
- GrMTLPixelFormat fFormat;
72
- GrMTLTextureUsage fUsage;
73
- GrMTLStorageMode fStorageMode;
74
- };
75
-
76
- GrMtlSurfaceInfo GrMtlTextureSpecToSurfaceInfo(const GrMtlTextureSpec& mtlSpec,
77
- uint32_t sampleCount,
78
- uint32_t levelCount,
79
- skgpu::Protected isProtected);
80
-
81
- #endif // __APPLE__
82
-
83
- #endif // GrMtlTypesPriv_DEFINED
@@ -1,47 +0,0 @@
1
- /*
2
- * Copyright 2018 Google Inc.
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 GrVkTypesPriv_DEFINED
9
- #define GrVkTypesPriv_DEFINED
10
-
11
- #include "include/core/SkRefCnt.h"
12
- #include "include/gpu/vk/GrVkTypes.h"
13
-
14
- namespace skgpu {
15
- class MutableTextureStateRef;
16
- }
17
-
18
- GrVkImageInfo GrVkImageInfoWithMutableState(const GrVkImageInfo&,
19
- const skgpu::MutableTextureStateRef*);
20
-
21
- struct GrVkImageSpec {
22
- GrVkImageSpec()
23
- : fImageTiling(VK_IMAGE_TILING_OPTIMAL)
24
- , fFormat(VK_FORMAT_UNDEFINED)
25
- , fImageUsageFlags(0)
26
- , fSharingMode(VK_SHARING_MODE_EXCLUSIVE) {}
27
-
28
- GrVkImageSpec(const GrVkSurfaceInfo& info)
29
- : fImageTiling(info.fImageTiling)
30
- , fFormat(info.fFormat)
31
- , fImageUsageFlags(info.fImageUsageFlags)
32
- , fYcbcrConversionInfo(info.fYcbcrConversionInfo)
33
- , fSharingMode(info.fSharingMode) {}
34
-
35
- VkImageTiling fImageTiling;
36
- VkFormat fFormat;
37
- VkImageUsageFlags fImageUsageFlags;
38
- GrVkYcbcrConversionInfo fYcbcrConversionInfo;
39
- VkSharingMode fSharingMode;
40
- };
41
-
42
- GrVkSurfaceInfo GrVkImageSpecToSurfaceInfo(const GrVkImageSpec& vkSpec,
43
- uint32_t sampleCount,
44
- uint32_t levelCount,
45
- skgpu::Protected isProtected);
46
-
47
- #endif
@@ -1,57 +0,0 @@
1
- /*
2
- * Copyright 2022 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 skgpu_VulkanTypesPriv_DEFINED
9
- #define skgpu_VulkanTypesPriv_DEFINED
10
-
11
- #include "include/gpu/vk/VulkanTypes.h"
12
-
13
- #include <atomic>
14
-
15
- namespace skgpu {
16
-
17
- class VulkanMutableTextureState {
18
- public:
19
- VulkanMutableTextureState(VkImageLayout layout, uint32_t queueFamilyIndex)
20
- : fLayout(layout)
21
- , fQueueFamilyIndex(queueFamilyIndex) {}
22
-
23
- VulkanMutableTextureState& operator=(const VulkanMutableTextureState& that) {
24
- fLayout = that.getImageLayout();
25
- fQueueFamilyIndex = that.getQueueFamilyIndex();
26
- return *this;
27
- }
28
-
29
- void setImageLayout(VkImageLayout layout) {
30
- // Defaulting to use std::memory_order_seq_cst
31
- fLayout.store(layout);
32
- }
33
-
34
- VkImageLayout getImageLayout() const {
35
- // Defaulting to use std::memory_order_seq_cst
36
- return fLayout.load();
37
- }
38
-
39
- void setQueueFamilyIndex(uint32_t queueFamilyIndex) {
40
- // Defaulting to use std::memory_order_seq_cst
41
- fQueueFamilyIndex.store(queueFamilyIndex);
42
- }
43
-
44
- uint32_t getQueueFamilyIndex() const {
45
- // Defaulting to use std::memory_order_seq_cst
46
- return fQueueFamilyIndex.load();
47
- }
48
-
49
- private:
50
- std::atomic<VkImageLayout> fLayout;
51
- std::atomic<uint32_t> fQueueFamilyIndex;
52
- };
53
-
54
- } // namespace skgpu
55
-
56
- #endif // skgpu_VulkanGraphiteTypesPriv_DEFINED
57
-
@@ -1,53 +0,0 @@
1
- /*
2
- * Copyright 2006 The Android Open Source Project
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 SkBase64_DEFINED
9
- #define SkBase64_DEFINED
10
-
11
- #include "include/core/SkTypes.h"
12
-
13
- #include <cstddef>
14
-
15
- struct SkBase64 {
16
- public:
17
- enum Error {
18
- kNoError,
19
- kPadError,
20
- kBadCharError
21
- };
22
-
23
- /**
24
- Base64 encodes src into dst.
25
-
26
- Normally this is called once with 'dst' nullptr to get the required size, then again with an
27
- allocated 'dst' pointer to do the actual encoding.
28
-
29
- @param dst nullptr or a pointer to a buffer large enough to receive the result
30
-
31
- @param encode nullptr for default encoding or a pointer to at least 65 chars.
32
- encode[64] will be used as the pad character.
33
- Encodings other than the default encoding cannot be decoded.
34
-
35
- @return the required length of dst for encoding.
36
- */
37
- static size_t Encode(const void* src, size_t length, void* dst, const char* encode = nullptr);
38
-
39
- /**
40
- Base64 decodes src into dst.
41
-
42
- Normally this is called once with 'dst' nullptr to get the required size, then again with an
43
- allocated 'dst' pointer to do the actual encoding.
44
-
45
- @param dst nullptr or a pointer to a buffer large enough to receive the result
46
-
47
- @param dstLength assigned the length dst is required to be. Must not be nullptr.
48
- */
49
- [[nodiscard]] static Error Decode(const void* src, size_t srcLength,
50
- void* dst, size_t* dstLength);
51
- };
52
-
53
- #endif // SkBase64_DEFINED
@@ -1,56 +0,0 @@
1
- /*
2
- * Copyright 2018 Google Inc.
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
- #pragma once
9
-
10
- // skcms_internal.h contains APIs shared by skcms' internals and its test tools.
11
- // Please don't use this header from outside the skcms repo.
12
-
13
- #include "skcms.h"
14
- #include <stdbool.h>
15
- #include <stdint.h>
16
-
17
- #ifdef __cplusplus
18
- extern "C" {
19
- #endif
20
-
21
- // ~~~~ General Helper Macros ~~~~
22
- #define ARRAY_COUNT(arr) (int)(sizeof((arr)) / sizeof(*(arr)))
23
-
24
- typedef struct skcms_ICCTag {
25
- uint32_t signature;
26
- uint32_t type;
27
- uint32_t size;
28
- const uint8_t* buf;
29
- } skcms_ICCTag;
30
-
31
- void skcms_GetTagByIndex (const skcms_ICCProfile*, uint32_t idx, skcms_ICCTag*);
32
- bool skcms_GetTagBySignature(const skcms_ICCProfile*, uint32_t sig, skcms_ICCTag*);
33
-
34
- float skcms_MaxRoundtripError(const skcms_Curve* curve, const skcms_TransferFunction* inv_tf);
35
-
36
- // 252 of a random shuffle of all possible bytes.
37
- // 252 is evenly divisible by 3 and 4. Only 192, 10, 241, and 43 are missing.
38
- // Used for ICC profile equivalence testing.
39
- extern const uint8_t skcms_252_random_bytes[252];
40
-
41
- // ~~~~ Portable Math ~~~~
42
- static inline float floorf_(float x) {
43
- float roundtrip = (float)((int)x);
44
- return roundtrip > x ? roundtrip - 1 : roundtrip;
45
- }
46
- static inline float fabsf_(float x) { return x < 0 ? -x : x; }
47
- float powf_(float, float);
48
-
49
- // ~~~~ Does this pixel format need a palette pointer to be usable? ~~~~
50
- static inline bool needs_palette(skcms_PixelFormat fmt) {
51
- return (fmt >> 1) == (skcms_PixelFormat_RGBA_8888_Palette8 >> 1);
52
- }
53
-
54
- #ifdef __cplusplus
55
- }
56
- #endif