@shopify/react-native-skia 0.1.233 → 0.1.236

Sign up to get free protection for your applications and to get access to all the features.
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