@nativescript/canvas 2.0.0-webgpu.3 → 2.0.0-webgpu.30

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 (197) hide show
  1. package/Canvas/common.d.ts +4 -9
  2. package/Canvas/common.js +37 -126
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.d.ts +0 -1
  5. package/Canvas/index.android.js +45 -38
  6. package/Canvas/index.android.js.map +1 -1
  7. package/Canvas/index.d.ts +11 -3
  8. package/Canvas/index.ios.js +49 -40
  9. package/Canvas/index.ios.js.map +1 -1
  10. package/Canvas/utils.d.ts +3 -0
  11. package/Canvas/utils.js +85 -0
  12. package/Canvas/utils.js.map +1 -0
  13. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +1 -0
  14. package/Canvas2D/CanvasRenderingContext2D/index.js +1 -0
  15. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  16. package/Dom/Group.d.ts +1 -2
  17. package/Dom/Group.js.map +1 -1
  18. package/Dom/Image.js +0 -1
  19. package/Dom/Image.js.map +1 -1
  20. package/Dom/Paint.d.ts +1 -1
  21. package/Dom/shapes/Path.d.ts +1 -1
  22. package/ImageAsset/index.js +77 -33
  23. package/ImageAsset/index.js.map +1 -1
  24. package/ImageBitmap/index.js +107 -20
  25. package/ImageBitmap/index.js.map +1 -1
  26. package/README.md +2 -4
  27. package/WebGL/WebGLRenderingContext/index.js +73 -31
  28. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  29. package/WebGL2/WebGL2RenderingContext/index.js +4 -4
  30. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  31. package/WebGPU/GPU.js +4 -3
  32. package/WebGPU/GPU.js.map +1 -1
  33. package/WebGPU/GPUAdapter.d.ts +6 -3
  34. package/WebGPU/GPUAdapter.js +31 -0
  35. package/WebGPU/GPUAdapter.js.map +1 -1
  36. package/WebGPU/GPUBindGroup.d.ts +1 -0
  37. package/WebGPU/GPUBindGroup.js +3 -0
  38. package/WebGPU/GPUBindGroup.js.map +1 -1
  39. package/WebGPU/GPUBindGroupLayout.d.ts +1 -0
  40. package/WebGPU/GPUBindGroupLayout.js +3 -0
  41. package/WebGPU/GPUBindGroupLayout.js.map +1 -1
  42. package/WebGPU/GPUBuffer.js +10 -2
  43. package/WebGPU/GPUBuffer.js.map +1 -1
  44. package/WebGPU/GPUCanvasContext.d.ts +3 -2
  45. package/WebGPU/GPUCanvasContext.js +52 -10
  46. package/WebGPU/GPUCanvasContext.js.map +1 -1
  47. package/WebGPU/GPUCommandBuffer.d.ts +1 -0
  48. package/WebGPU/GPUCommandBuffer.js +3 -0
  49. package/WebGPU/GPUCommandBuffer.js.map +1 -1
  50. package/WebGPU/GPUCommandEncoder.d.ts +3 -9
  51. package/WebGPU/GPUCommandEncoder.js +94 -41
  52. package/WebGPU/GPUCommandEncoder.js.map +1 -1
  53. package/WebGPU/GPUComputePassEncoder.d.ts +1 -0
  54. package/WebGPU/GPUComputePassEncoder.js +3 -0
  55. package/WebGPU/GPUComputePassEncoder.js.map +1 -1
  56. package/WebGPU/GPUComputePipeline.d.ts +1 -0
  57. package/WebGPU/GPUComputePipeline.js +3 -0
  58. package/WebGPU/GPUComputePipeline.js.map +1 -1
  59. package/WebGPU/GPUDevice.d.ts +17 -79
  60. package/WebGPU/GPUDevice.js +76 -91
  61. package/WebGPU/GPUDevice.js.map +1 -1
  62. package/WebGPU/GPUExternalTexture.d.ts +1 -0
  63. package/WebGPU/GPUExternalTexture.js +3 -0
  64. package/WebGPU/GPUExternalTexture.js.map +1 -1
  65. package/WebGPU/GPUPipelineLayout.d.ts +1 -0
  66. package/WebGPU/GPUPipelineLayout.js +3 -0
  67. package/WebGPU/GPUPipelineLayout.js.map +1 -1
  68. package/WebGPU/GPUQuerySet.d.ts +1 -0
  69. package/WebGPU/GPUQuerySet.js +3 -0
  70. package/WebGPU/GPUQuerySet.js.map +1 -1
  71. package/WebGPU/GPUQueue.d.ts +1 -0
  72. package/WebGPU/GPUQueue.js +56 -14
  73. package/WebGPU/GPUQueue.js.map +1 -1
  74. package/WebGPU/GPURenderBundle.d.ts +1 -0
  75. package/WebGPU/GPURenderBundle.js +3 -0
  76. package/WebGPU/GPURenderBundle.js.map +1 -1
  77. package/WebGPU/GPURenderBundleEncoder.d.ts +4 -2
  78. package/WebGPU/GPURenderBundleEncoder.js +7 -3
  79. package/WebGPU/GPURenderBundleEncoder.js.map +1 -1
  80. package/WebGPU/GPURenderPassEncoder.d.ts +2 -1
  81. package/WebGPU/GPURenderPassEncoder.js +5 -2
  82. package/WebGPU/GPURenderPassEncoder.js.map +1 -1
  83. package/WebGPU/GPURenderPipeline.d.ts +1 -0
  84. package/WebGPU/GPURenderPipeline.js +3 -0
  85. package/WebGPU/GPURenderPipeline.js.map +1 -1
  86. package/WebGPU/GPUSampler.d.ts +1 -0
  87. package/WebGPU/GPUSampler.js +3 -0
  88. package/WebGPU/GPUSampler.js.map +1 -1
  89. package/WebGPU/GPUShaderModule.d.ts +1 -1
  90. package/WebGPU/GPUShaderModule.js +2 -2
  91. package/WebGPU/GPUShaderModule.js.map +1 -1
  92. package/WebGPU/GPUTexture.d.ts +1 -0
  93. package/WebGPU/GPUTexture.js +3 -0
  94. package/WebGPU/GPUTexture.js.map +1 -1
  95. package/WebGPU/GPUTextureView.d.ts +1 -0
  96. package/WebGPU/GPUTextureView.js +3 -0
  97. package/WebGPU/GPUTextureView.js.map +1 -1
  98. package/WebGPU/Interfaces.d.ts +95 -4
  99. package/WebGPU/Types.d.ts +9 -1
  100. package/WebGPU/Utils.d.ts +6 -0
  101. package/WebGPU/Utils.js +224 -0
  102. package/WebGPU/Utils.js.map +1 -1
  103. package/angular/esm2022/index.mjs +4 -4
  104. package/angular/fesm2022/nativescript-canvas-angular.mjs +4 -4
  105. package/package.json +1 -1
  106. package/platforms/android/canvas-release.aar +0 -0
  107. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  108. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +39 -10
  109. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +7 -0
  110. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +227 -62
  111. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Info.plist +0 -0
  112. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  113. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +1635 -151
  114. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +57 -1
  115. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  116. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +57 -1
  117. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/NSCCanvas.nib +0 -0
  118. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  119. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +690 -644
  120. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  121. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +78 -20
  122. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +7 -0
  123. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +227 -62
  124. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Info.plist +0 -0
  125. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  126. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  127. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +1635 -151
  128. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +57 -1
  129. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  130. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +57 -1
  131. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +1635 -151
  132. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +57 -1
  133. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  134. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +57 -1
  135. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/NSCCanvas.nib +0 -0
  136. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +27 -27
  137. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  138. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +692 -646
  139. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +730 -684
  140. package/platforms/ios/src/NSOperationQueueWrapper.h +1 -1
  141. package/platforms/ios/src/NSOperationQueueWrapper.mm +41 -9
  142. package/platforms/ios/src/cpp/AsyncCallback.h +16 -8
  143. package/platforms/ios/src/cpp/CanvasJSIModule.cpp +208 -789
  144. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +18 -28
  145. package/platforms/ios/src/cpp/ImageAssetImpl.h +3 -3
  146. package/platforms/ios/src/cpp/ImageBitmapImpl.cpp +60 -3
  147. package/platforms/ios/src/cpp/ImageBitmapImpl.h +10 -3
  148. package/platforms/ios/src/cpp/PromiseCallback.h +1 -2
  149. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +1 -1
  150. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +3 -3
  151. package/platforms/ios/src/cpp/canvas2d/Path2D.h +5 -5
  152. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +106 -1
  153. package/platforms/ios/src/cpp/webgpu/GPUAdapterImpl.cpp +26 -23
  154. package/platforms/ios/src/cpp/webgpu/GPUBindGroupImpl.cpp +31 -5
  155. package/platforms/ios/src/cpp/webgpu/GPUBindGroupImpl.h +4 -1
  156. package/platforms/ios/src/cpp/webgpu/GPUBindGroupLayoutImpl.cpp +26 -0
  157. package/platforms/ios/src/cpp/webgpu/GPUBindGroupLayoutImpl.h +3 -0
  158. package/platforms/ios/src/cpp/webgpu/GPUBufferImpl.cpp +41 -7
  159. package/platforms/ios/src/cpp/webgpu/GPUBufferImpl.h +4 -0
  160. package/platforms/ios/src/cpp/webgpu/GPUCanvasContextImpl.cpp +11 -5
  161. package/platforms/ios/src/cpp/webgpu/GPUCommandBufferImpl.cpp +28 -1
  162. package/platforms/ios/src/cpp/webgpu/GPUCommandBufferImpl.h +3 -0
  163. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.cpp +75 -79
  164. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.h +4 -0
  165. package/platforms/ios/src/cpp/webgpu/GPUComputePassEncoderImpl.cpp +42 -14
  166. package/platforms/ios/src/cpp/webgpu/GPUComputePassEncoderImpl.h +3 -0
  167. package/platforms/ios/src/cpp/webgpu/GPUComputePipelineImpl.cpp +25 -0
  168. package/platforms/ios/src/cpp/webgpu/GPUComputePipelineImpl.h +2 -0
  169. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.cpp +1597 -674
  170. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.h +2 -0
  171. package/platforms/ios/src/cpp/webgpu/GPUImpl.cpp +2 -1
  172. package/platforms/ios/src/cpp/webgpu/GPUImpl.h +1 -1
  173. package/platforms/ios/src/cpp/webgpu/GPULabel.h +33 -0
  174. package/platforms/ios/src/cpp/webgpu/GPUPipelineLayoutImpl.cpp +26 -0
  175. package/platforms/ios/src/cpp/webgpu/GPUPipelineLayoutImpl.h +3 -1
  176. package/platforms/ios/src/cpp/webgpu/GPUQuerySetImpl.cpp +1 -2
  177. package/platforms/ios/src/cpp/webgpu/GPUQuerySetImpl.h +1 -1
  178. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.cpp +50 -13
  179. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.h +3 -0
  180. package/platforms/ios/src/cpp/webgpu/GPURenderBundleEncoderImpl.cpp +43 -14
  181. package/platforms/ios/src/cpp/webgpu/GPURenderBundleEncoderImpl.h +3 -0
  182. package/platforms/ios/src/cpp/webgpu/GPURenderBundleImpl.cpp +25 -0
  183. package/platforms/ios/src/cpp/webgpu/GPURenderBundleImpl.h +3 -0
  184. package/platforms/ios/src/cpp/webgpu/GPURenderPassEncoderImpl.cpp +39 -13
  185. package/platforms/ios/src/cpp/webgpu/GPURenderPassEncoderImpl.h +3 -0
  186. package/platforms/ios/src/cpp/webgpu/GPURenderPipelineImpl.cpp +25 -0
  187. package/platforms/ios/src/cpp/webgpu/GPURenderPipelineImpl.h +3 -0
  188. package/platforms/ios/src/cpp/webgpu/GPUSamplerImpl.cpp +26 -0
  189. package/platforms/ios/src/cpp/webgpu/GPUSamplerImpl.h +4 -1
  190. package/platforms/ios/src/cpp/webgpu/GPUShaderModuleImpl.cpp +24 -0
  191. package/platforms/ios/src/cpp/webgpu/GPUShaderModuleImpl.h +3 -0
  192. package/platforms/ios/src/cpp/webgpu/GPUTextureImpl.cpp +34 -8
  193. package/platforms/ios/src/cpp/webgpu/GPUTextureImpl.h +2 -0
  194. package/platforms/ios/src/cpp/webgpu/GPUTextureViewImpl.cpp +26 -0
  195. package/platforms/ios/src/cpp/webgpu/GPUTextureViewImpl.h +3 -0
  196. package/platforms/ios/src/cpp/webgpu/GPUUtils.h +511 -0
  197. package/utils.d.ts +1 -1
@@ -594,6 +594,16 @@ typedef enum PaintStyleType {
594
594
  PaintStyleTypePattern,
595
595
  } PaintStyleType;
596
596
 
597
+ typedef enum SurfaceGetCurrentTextureStatus {
598
+ SurfaceGetCurrentTextureStatusSuccess = 0,
599
+ SurfaceGetCurrentTextureStatusTimeout = 1,
600
+ SurfaceGetCurrentTextureStatusOutdated = 2,
601
+ SurfaceGetCurrentTextureStatusLost = 3,
602
+ SurfaceGetCurrentTextureStatusOutOfMemory = 4,
603
+ SurfaceGetCurrentTextureStatusDeviceLost = 5,
604
+ SurfaceGetCurrentTextureStatusForce32 = 2147483647,
605
+ } SurfaceGetCurrentTextureStatus;
606
+
597
607
  typedef enum TextBaseLine {
598
608
  TextBaseLineTOP = 0,
599
609
  TextBaseLineHANGING = 1,
@@ -943,7 +953,7 @@ typedef enum CanvasGPUTextureFormat_Tag {
943
953
  /**
944
954
  * Red, green, and blue channels. 11 bit float with no sign bit for RG channels. 10 bit float with no sign bit for blue channel. Float in shader.
945
955
  */
946
- CanvasGPUTextureFormatRg11b10Float,
956
+ CanvasGPUTextureFormatRg11b10UFloat,
947
957
  /**
948
958
  * Red and green channels. 32 bit integer per channel. Unsigned in shader.
949
959
  */
@@ -1760,6 +1770,29 @@ typedef struct CanvasOrigin2d {
1760
1770
  uint32_t y;
1761
1771
  } CanvasOrigin2d;
1762
1772
 
1773
+ typedef struct CanvasImageCopyImageAsset {
1774
+ /**
1775
+ * The texture to be copied from. The copy source data is captured at the moment
1776
+ * the copy is issued.
1777
+ */
1778
+ const struct ImageAsset *source;
1779
+ /**
1780
+ * The base texel used for copying from the external image. Together
1781
+ * with the `copy_size` argument to copy functions, defines the
1782
+ * sub-region of the image to copy.
1783
+ *
1784
+ * Relative to the top left of the image.
1785
+ *
1786
+ * Must be [`Origin2d::ZERO`] if [`DownlevelFlags::UNRESTRICTED_EXTERNAL_TEXTURE_COPIES`] is not supported.
1787
+ */
1788
+ struct CanvasOrigin2d origin;
1789
+ /**
1790
+ * If the Y coordinate of the image should be flipped. Even if this is
1791
+ * true, `origin` is still relative to the top left.
1792
+ */
1793
+ bool flip_y;
1794
+ } CanvasImageCopyImageAsset;
1795
+
1763
1796
  typedef struct CanvasImageCopyExternalImage {
1764
1797
  /**
1765
1798
  * The texture to be copied from. The copy source data is captured at the moment
@@ -2105,7 +2138,7 @@ struct PaintStyle *canvas_native_context_create_pattern(const struct CanvasRende
2105
2138
  enum CanvasRepetition repetition);
2106
2139
 
2107
2140
  struct PaintStyle *canvas_native_context_create_pattern_asset(struct CanvasRenderingContext2D *context,
2108
- struct ImageAsset *asset,
2141
+ const struct ImageAsset *asset,
2109
2142
  enum CanvasRepetition repetition);
2110
2143
 
2111
2144
  struct PaintStyle *canvas_native_context_create_pattern_encoded(struct CanvasRenderingContext2D *context,
@@ -2198,14 +2231,14 @@ void canvas_native_context_draw_image_dx_dy_asset(struct CanvasRenderingContext2
2198
2231
  float dy);
2199
2232
 
2200
2233
  void canvas_native_context_draw_image_dx_dy_dw_dh_asset(struct CanvasRenderingContext2D *context,
2201
- struct ImageAsset *asset,
2234
+ const struct ImageAsset *asset,
2202
2235
  float dx,
2203
2236
  float dy,
2204
2237
  float d_width,
2205
2238
  float d_height);
2206
2239
 
2207
2240
  void canvas_native_context_draw_image_asset(struct CanvasRenderingContext2D *context,
2208
- struct ImageAsset *asset,
2241
+ const struct ImageAsset *asset,
2209
2242
  float sx,
2210
2243
  float sy,
2211
2244
  float s_width,
@@ -2286,7 +2319,7 @@ void canvas_native_context_draw_atlas_encoded(struct CanvasRenderingContext2D *c
2286
2319
  int32_t blend_mode);
2287
2320
 
2288
2321
  void canvas_native_context_draw_atlas_asset(struct CanvasRenderingContext2D *context,
2289
- struct ImageAsset *asset,
2322
+ const struct ImageAsset *asset,
2290
2323
  const float *xform,
2291
2324
  uintptr_t xform_size,
2292
2325
  const float *tex,
@@ -2490,34 +2523,34 @@ void canvas_native_image_filter_reference(const struct ImageFilter *value);
2490
2523
 
2491
2524
  void canvas_native_image_filter_release(const struct ImageFilter *value);
2492
2525
 
2493
- struct ImageAsset *canvas_native_image_bitmap_create_from_asset(struct ImageAsset *asset,
2494
- bool flip_y,
2495
- enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2496
- enum ImageBitmapColorSpaceConversion color_space_conversion,
2497
- enum ImageBitmapResizeQuality resize_quality,
2498
- float resize_width,
2499
- float resize_height);
2500
-
2501
- struct ImageAsset *canvas_native_image_bitmap_create_from_asset_src_rect(struct ImageAsset *asset,
2502
- float sx,
2503
- float sy,
2504
- float s_width,
2505
- float s_height,
2506
- bool flip_y,
2507
- enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2508
- enum ImageBitmapColorSpaceConversion color_space_conversion,
2509
- enum ImageBitmapResizeQuality resize_quality,
2510
- float resize_width,
2511
- float resize_height);
2512
-
2513
- struct ImageAsset *canvas_native_image_bitmap_create_from_encoded_bytes(const uint8_t *bytes,
2514
- uintptr_t size,
2515
- bool flip_y,
2516
- enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2517
- enum ImageBitmapColorSpaceConversion color_space_conversion,
2518
- enum ImageBitmapResizeQuality resize_quality,
2519
- float resize_width,
2520
- float resize_height);
2526
+ const struct ImageAsset *canvas_native_image_bitmap_create_from_asset(const struct ImageAsset *asset,
2527
+ bool flip_y,
2528
+ enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2529
+ enum ImageBitmapColorSpaceConversion color_space_conversion,
2530
+ enum ImageBitmapResizeQuality resize_quality,
2531
+ float resize_width,
2532
+ float resize_height);
2533
+
2534
+ const struct ImageAsset *canvas_native_image_bitmap_create_from_asset_src_rect(const struct ImageAsset *asset,
2535
+ float sx,
2536
+ float sy,
2537
+ float s_width,
2538
+ float s_height,
2539
+ bool flip_y,
2540
+ enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2541
+ enum ImageBitmapColorSpaceConversion color_space_conversion,
2542
+ enum ImageBitmapResizeQuality resize_quality,
2543
+ float resize_width,
2544
+ float resize_height);
2545
+
2546
+ const struct ImageAsset *canvas_native_image_bitmap_create_from_encoded_bytes(const uint8_t *bytes,
2547
+ uintptr_t size,
2548
+ bool flip_y,
2549
+ enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2550
+ enum ImageBitmapColorSpaceConversion color_space_conversion,
2551
+ enum ImageBitmapResizeQuality resize_quality,
2552
+ float resize_width,
2553
+ float resize_height);
2521
2554
 
2522
2555
  bool canvas_native_image_bitmap_create_from_encoded_bytes_with_output(const uint8_t *bytes,
2523
2556
  uintptr_t size,
@@ -2527,20 +2560,20 @@ bool canvas_native_image_bitmap_create_from_encoded_bytes_with_output(const uint
2527
2560
  enum ImageBitmapResizeQuality resize_quality,
2528
2561
  float resize_width,
2529
2562
  float resize_height,
2530
- struct ImageAsset *output);
2531
-
2532
- struct ImageAsset *canvas_native_image_bitmap_create_from_encoded_bytes_src_rect(const uint8_t *bytes,
2533
- uintptr_t size,
2534
- float sx,
2535
- float sy,
2536
- float s_width,
2537
- float s_height,
2538
- bool flip_y,
2539
- enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2540
- enum ImageBitmapColorSpaceConversion color_space_conversion,
2541
- enum ImageBitmapResizeQuality resize_quality,
2542
- float resize_width,
2543
- float resize_height);
2563
+ const struct ImageAsset *output);
2564
+
2565
+ const struct ImageAsset *canvas_native_image_bitmap_create_from_encoded_bytes_src_rect(const uint8_t *bytes,
2566
+ uintptr_t size,
2567
+ float sx,
2568
+ float sy,
2569
+ float s_width,
2570
+ float s_height,
2571
+ bool flip_y,
2572
+ enum ImageBitmapPremultiplyAlpha premultiply_alpha,
2573
+ enum ImageBitmapColorSpaceConversion color_space_conversion,
2574
+ enum ImageBitmapResizeQuality resize_quality,
2575
+ float resize_width,
2576
+ float resize_height);
2544
2577
 
2545
2578
  bool canvas_native_image_bitmap_create_from_encoded_bytes_src_rect_with_output(const uint8_t *bytes,
2546
2579
  uintptr_t size,
@@ -2554,7 +2587,7 @@ bool canvas_native_image_bitmap_create_from_encoded_bytes_src_rect_with_output(c
2554
2587
  enum ImageBitmapResizeQuality resize_quality,
2555
2588
  float resize_width,
2556
2589
  float resize_height,
2557
- struct ImageAsset *output);
2590
+ const struct ImageAsset *output);
2558
2591
 
2559
2592
  struct ImageData *canvas_native_image_data_create(int32_t width, int32_t height);
2560
2593
 
@@ -2876,14 +2909,20 @@ void canvas_native_webgpu_adapter_info_reference(const struct CanvasGPUAdapterIn
2876
2909
 
2877
2910
  void canvas_native_webgpu_adapter_info_release(const struct CanvasGPUAdapterInfo *info);
2878
2911
 
2912
+ char *canvas_native_webgpu_bind_group_get_label(const struct CanvasGPUBindGroup *bind_group);
2913
+
2879
2914
  void canvas_native_webgpu_bind_group_reference(const struct CanvasGPUBindGroup *bind_group);
2880
2915
 
2881
2916
  void canvas_native_webgpu_bind_group_release(const struct CanvasGPUBindGroup *bind_group);
2882
2917
 
2918
+ char *canvas_native_webgpu_bind_group_layout_get_label(const struct CanvasGPUBindGroupLayout *bind_group_layout);
2919
+
2883
2920
  void canvas_native_webgpu_bind_group_layout_reference(const struct CanvasGPUBindGroupLayout *bind_group_layout);
2884
2921
 
2885
2922
  void canvas_native_webgpu_bind_group_layout_release(const struct CanvasGPUBindGroupLayout *bind_group_layout);
2886
2923
 
2924
+ char *canvas_native_webgpu_buffer_get_label(const struct CanvasGPUBuffer *buffer);
2925
+
2887
2926
  void canvas_native_webgpu_buffer_reference(const struct CanvasGPUBuffer *buffer);
2888
2927
 
2889
2928
  void canvas_native_webgpu_buffer_release(const struct CanvasGPUBuffer *buffer);
@@ -2904,7 +2943,7 @@ void canvas_native_webgpu_buffer_map_async(const struct CanvasGPUBuffer *buffer,
2904
2943
  enum GPUMapMode mode,
2905
2944
  int64_t offset,
2906
2945
  int64_t size,
2907
- void (*callback)(char*, void*),
2946
+ void (*callback)(enum CanvasGPUErrorType, char*, void*),
2908
2947
  void *callback_data);
2909
2948
 
2910
2949
  #if defined(TARGET_OS_ANDROID)
@@ -2914,6 +2953,13 @@ const struct CanvasGPUCanvasContext *canvas_native_webgpu_context_create(struct
2914
2953
  uint32_t height);
2915
2954
  #endif
2916
2955
 
2956
+ #if defined(TARGET_OS_ANDROID)
2957
+ void canvas_native_webgpu_context_resize(struct CanvasGPUCanvasContext *context,
2958
+ void *window,
2959
+ uint32_t width,
2960
+ uint32_t height);
2961
+ #endif
2962
+
2917
2963
  #if (defined(TARGET_OS_IOS) || defined(TARGET_OS_MACOS))
2918
2964
  const struct CanvasGPUCanvasContext *canvas_native_webgpu_context_create(const struct CanvasWebGPUInstance *instance,
2919
2965
  void *view,
@@ -2928,6 +2974,13 @@ const struct CanvasGPUCanvasContext *canvas_native_webgpu_context_create_uiview(
2928
2974
  uint32_t height);
2929
2975
  #endif
2930
2976
 
2977
+ #if defined(TARGET_OS_IOS)
2978
+ void canvas_native_webgpu_context_resize_uiview(const struct CanvasGPUCanvasContext *context,
2979
+ void *view,
2980
+ uint32_t width,
2981
+ uint32_t height);
2982
+ #endif
2983
+
2931
2984
  #if defined(TARGET_OS_MACOS)
2932
2985
  const struct CanvasGPUCanvasContext *canvas_native_webgpu_context_create_nsview(const struct CanvasWebGPUInstance *instance,
2933
2986
  void *view,
@@ -2935,13 +2988,18 @@ const struct CanvasGPUCanvasContext *canvas_native_webgpu_context_create_nsview(
2935
2988
  uint32_t height);
2936
2989
  #endif
2937
2990
 
2991
+ #if defined(TARGET_OS_MACOS)
2992
+ void canvas_native_webgpu_context_resize_nsview(const struct CanvasGPUCanvasContext *context,
2993
+ void *view,
2994
+ uint32_t width,
2995
+ uint32_t height);
2996
+ #endif
2997
+
2938
2998
  void canvas_native_webgpu_context_configure(const struct CanvasGPUCanvasContext *context,
2939
2999
  const struct CanvasGPUDevice *device,
2940
3000
  const struct CanvasGPUSurfaceConfiguration *config);
2941
3001
 
2942
- void canvas_native_webgpu_context_unconfigure(const struct CanvasGPUCanvasContext *context,
2943
- struct CanvasGPUDevice *device,
2944
- const struct CanvasGPUSurfaceConfiguration *config);
3002
+ void canvas_native_webgpu_context_unconfigure(const struct CanvasGPUCanvasContext *context);
2945
3003
 
2946
3004
  const struct CanvasGPUTexture *canvas_native_webgpu_context_get_current_texture(const struct CanvasGPUCanvasContext *context);
2947
3005
 
@@ -2955,10 +3013,14 @@ void canvas_native_webgpu_context_reference(const struct CanvasGPUCanvasContext
2955
3013
 
2956
3014
  void canvas_native_webgpu_context_release(const struct CanvasGPUCanvasContext *context);
2957
3015
 
3016
+ char *canvas_native_webgpu_command_buffer_get_label(const struct CanvasGPUCommandBuffer *command_buffer);
3017
+
2958
3018
  void canvas_native_webgpu_command_buffer_reference(const struct CanvasGPUCommandBuffer *command_buffer);
2959
3019
 
2960
3020
  void canvas_native_webgpu_command_buffer_release(const struct CanvasGPUCommandBuffer *command_buffer);
2961
3021
 
3022
+ char *canvas_native_webgpu_command_encoder_get_label(const struct CanvasGPUCommandEncoder *command_encoder);
3023
+
2962
3024
  void canvas_native_webgpu_command_encoder_reference(const struct CanvasGPUCommandEncoder *command_encoder);
2963
3025
 
2964
3026
  void canvas_native_webgpu_command_encoder_release(const struct CanvasGPUCommandEncoder *command_encoder);
@@ -3028,6 +3090,8 @@ void canvas_native_webgpu_command_encoder_write_timestamp(const struct CanvasGPU
3028
3090
  const struct CanvasGPUQuerySet *query_set,
3029
3091
  uint32_t query_index);
3030
3092
 
3093
+ char *canvas_native_webgpu_compute_pass_encoder_get_label(const struct CanvasGPUComputePassEncoder *compute_pass);
3094
+
3031
3095
  void canvas_native_webgpu_compute_pass_encoder_reference(const struct CanvasGPUComputePassEncoder *compute_pass);
3032
3096
 
3033
3097
  void canvas_native_webgpu_compute_pass_encoder_release(const struct CanvasGPUComputePassEncoder *compute_pass);
@@ -3062,6 +3126,8 @@ void canvas_native_webgpu_compute_pass_encoder_set_bind_group(const struct Canva
3062
3126
  void canvas_native_webgpu_compute_pass_encoder_set_pipeline(const struct CanvasGPUComputePassEncoder *compute_pass,
3063
3127
  const struct CanvasGPUComputePipeline *pipeline);
3064
3128
 
3129
+ char *canvas_native_webgpu_compute_pipeline_get_label(const struct CanvasGPUComputePipeline *pipeline);
3130
+
3065
3131
  void canvas_native_webgpu_compute_pipeline_reference(const struct CanvasGPUComputePipeline *pipeline);
3066
3132
 
3067
3133
  void canvas_native_webgpu_compute_pipeline_release(const struct CanvasGPUComputePipeline *pipeline);
@@ -3069,6 +3135,8 @@ void canvas_native_webgpu_compute_pipeline_release(const struct CanvasGPUCompute
3069
3135
  const struct CanvasGPUBindGroupLayout *canvas_native_webgpu_compute_pipeline_get_bind_group_layout(const struct CanvasGPUComputePipeline *pipeline,
3070
3136
  uint32_t index);
3071
3137
 
3138
+ char *canvas_native_webgpu_device_get_label(const struct CanvasGPUDevice *device);
3139
+
3072
3140
  struct StringBuffer *canvas_native_webgpu_device_get_features(const struct CanvasGPUDevice *device);
3073
3141
 
3074
3142
  struct CanvasGPUSupportedLimits *canvas_native_webgpu_device_get_limits(const struct CanvasGPUDevice *device);
@@ -3177,6 +3245,8 @@ const struct CanvasGPUTexture *canvas_native_webgpu_device_create_texture(const
3177
3245
  const struct CanvasGPUSampler *canvas_native_webgpu_device_create_sampler(const struct CanvasGPUDevice *device,
3178
3246
  const struct CanvasCreateSamplerDescriptor *descriptor);
3179
3247
 
3248
+ char *canvas_native_webgpu_pipeline_layout_get_label(const struct CanvasGPUPipelineLayout *pipeline_layout);
3249
+
3180
3250
  void canvas_native_webgpu_pipeline_layout_reference(const struct CanvasGPUPipelineLayout *pipeline_layout);
3181
3251
 
3182
3252
  void canvas_native_webgpu_pipeline_layout_release(const struct CanvasGPUPipelineLayout *pipeline_layout);
@@ -3193,10 +3263,17 @@ void canvas_native_webgpu_query_set_reference(const struct CanvasGPUQuerySet *qu
3193
3263
 
3194
3264
  void canvas_native_webgpu_query_set_release(const struct CanvasGPUQuerySet *query_set);
3195
3265
 
3266
+ char *canvas_native_webgpu_queue_get_label(const struct CanvasGPUQueue *queue);
3267
+
3196
3268
  void canvas_native_webgpu_queue_reference(const struct CanvasGPUQueue *queue);
3197
3269
 
3198
3270
  void canvas_native_webgpu_queue_release(const struct CanvasGPUQueue *queue);
3199
3271
 
3272
+ void canvas_native_webgpu_queue_copy_image_asset_to_texture(const struct CanvasGPUQueue *queue,
3273
+ const struct CanvasImageCopyImageAsset *source,
3274
+ const struct CanvasImageCopyTexture *destination,
3275
+ const struct CanvasExtent3d *size);
3276
+
3200
3277
  void canvas_native_webgpu_queue_copy_external_image_to_texture(const struct CanvasGPUQueue *queue,
3201
3278
  const struct CanvasImageCopyExternalImage *source,
3202
3279
  const struct CanvasImageCopyTexture *destination,
@@ -3225,10 +3302,14 @@ void canvas_native_webgpu_queue_write_texture(const struct CanvasGPUQueue *queue
3225
3302
  const uint8_t *buf,
3226
3303
  uintptr_t buf_size);
3227
3304
 
3305
+ char *canvas_native_webgpu_render_bundle_get_label(const struct CanvasGPURenderBundle *bundle);
3306
+
3228
3307
  void canvas_native_webgpu_render_bundle_reference(const struct CanvasGPURenderBundle *bundle);
3229
3308
 
3230
3309
  void canvas_native_webgpu_render_bundle_release(const struct CanvasGPURenderBundle *bundle);
3231
3310
 
3311
+ char *canvas_native_webgpu_render_bundle_encoder_get_label(const struct CanvasGPURenderBundleEncoder *render_bundle);
3312
+
3232
3313
  void canvas_native_webgpu_render_bundle_encoder_draw(const struct CanvasGPURenderBundleEncoder *render_bundle,
3233
3314
  uint32_t vertex_count,
3234
3315
  uint32_t instance_count,
@@ -3288,6 +3369,8 @@ void canvas_native_webgpu_render_bundle_encoder_reference(const struct CanvasGPU
3288
3369
 
3289
3370
  void canvas_native_webgpu_render_bundle_encoder_release(const struct CanvasGPURenderBundleEncoder *render_bundle);
3290
3371
 
3372
+ char *canvas_native_webgpu_render_pass_encoder_get_label(const struct CanvasGPURenderPassEncoder *render_pass);
3373
+
3291
3374
  void canvas_native_webgpu_render_pass_encoder_begin_occlusion_query(const struct CanvasGPURenderPassEncoder *render_pass,
3292
3375
  uint32_t query_index);
3293
3376
 
@@ -3379,13 +3462,19 @@ void canvas_native_webgpu_render_pipeline_reference(const struct CanvasGPURender
3379
3462
 
3380
3463
  void canvas_native_webgpu_render_pipeline_release(const struct CanvasGPURenderPipeline *pipeline);
3381
3464
 
3465
+ char *canvas_native_webgpu_render_pipeline_get_label(const struct CanvasGPURenderPipeline *pipeline);
3466
+
3382
3467
  const struct CanvasGPUBindGroupLayout *canvas_native_webgpu_render_pipeline_get_bind_group_layout(const struct CanvasGPURenderPipeline *pipeline,
3383
3468
  uint32_t index);
3384
3469
 
3470
+ char *canvas_native_webgpu_sampler_get_label(const struct CanvasGPUSampler *sampler);
3471
+
3385
3472
  void canvas_native_webgpu_sampler_reference(const struct CanvasGPUSampler *sampler);
3386
3473
 
3387
3474
  void canvas_native_webgpu_sampler_release(const struct CanvasGPUSampler *sampler);
3388
3475
 
3476
+ char *canvas_native_webgpu_shader_module_get_label(const struct CanvasGPUShaderModule *shader_module);
3477
+
3389
3478
  void canvas_native_webgpu_shader_module_reference(const struct CanvasGPUShaderModule *shader_module);
3390
3479
 
3391
3480
  void canvas_native_webgpu_shader_module_release(const struct CanvasGPUShaderModule *shader_module);
@@ -3394,6 +3483,12 @@ struct CanvasGPUSupportedLimits *canvas_native_webgpu_create_limits(void);
3394
3483
 
3395
3484
  void canvas_native_webgpu_limits_release(struct CanvasGPUSupportedLimits *limits);
3396
3485
 
3486
+ enum SurfaceGetCurrentTextureStatus canvas_native_webgpu_texture_get_status(const struct CanvasGPUTexture *texture);
3487
+
3488
+ bool canvas_native_webgpu_texture_get_suboptimal(const struct CanvasGPUTexture *texture);
3489
+
3490
+ char *canvas_native_webgpu_texture_get_label(const struct CanvasGPUTexture *texture);
3491
+
3397
3492
  void canvas_native_webgpu_texture_reference(const struct CanvasGPUTexture *texture);
3398
3493
 
3399
3494
  void canvas_native_webgpu_texture_release(const struct CanvasGPUTexture *texture);
@@ -3413,14 +3508,14 @@ struct CanvasGPUTextureFormat canvas_native_webgpu_texture_get_format(const stru
3413
3508
 
3414
3509
  uint32_t canvas_native_webgpu_texture_get_usage(const struct CanvasGPUTexture *texture);
3415
3510
 
3416
- char *canvas_native_webgpu_texture_get_label(const struct CanvasGPUTexture *_texture);
3417
-
3418
3511
  uint32_t canvas_native_webgpu_texture_get_mip_level_count(const struct CanvasGPUTexture *texture);
3419
3512
 
3420
3513
  uint32_t canvas_native_webgpu_texture_get_sample_count(const struct CanvasGPUTexture *texture);
3421
3514
 
3422
3515
  void canvas_native_webgpu_texture_destroy(const struct CanvasGPUTexture *texture);
3423
3516
 
3517
+ char *canvas_native_webgpu_texture_view_get_label(const struct CanvasGPUTextureView *texture_view);
3518
+
3424
3519
  void canvas_native_webgpu_texture_view_reference(const struct CanvasGPUTextureView *texture_view);
3425
3520
 
3426
3521
  void canvas_native_webgpu_texture_view_release(const struct CanvasGPUTextureView *texture_view);
@@ -3481,15 +3576,19 @@ bool canvas_native_helper_read_file_has_error(const struct FileHelper *file);
3481
3576
 
3482
3577
  struct U8Buffer *canvas_native_helper_read_file_get_data(struct FileHelper *file);
3483
3578
 
3579
+ struct U8Buffer *canvas_native_helper_read_file_take_data(struct FileHelper *file);
3580
+
3484
3581
  const char *canvas_native_helper_read_file_get_error(const struct FileHelper *file);
3485
3582
 
3486
- int64_t canvas_native_image_asset_get_addr(struct ImageAsset *asset);
3583
+ int64_t canvas_native_image_asset_get_addr(const struct ImageAsset *asset);
3584
+
3585
+ void canvas_native_image_asset_close(const struct ImageAsset *asset);
3487
3586
 
3488
- struct ImageAsset *canvas_native_image_asset_create(void);
3587
+ const struct ImageAsset *canvas_native_image_asset_create(void);
3489
3588
 
3490
- struct ImageAsset *canvas_native_image_asset_reference(struct ImageAsset *asset);
3589
+ const struct ImageAsset *canvas_native_image_asset_reference(const struct ImageAsset *asset);
3491
3590
 
3492
- void canvas_native_image_asset_release(struct ImageAsset *asset);
3591
+ void canvas_native_image_asset_release(const struct ImageAsset *asset);
3493
3592
 
3494
3593
  bool canvas_native_image_asset_load_from_fd(const struct ImageAsset *asset, int fd);
3495
3594
 
@@ -3511,8 +3610,6 @@ const char *canvas_native_image_asset_get_error(const struct ImageAsset *asset);
3511
3610
 
3512
3611
  bool canvas_native_image_asset_has_error(const struct ImageAsset *asset);
3513
3612
 
3514
- struct U8Buffer *canvas_native_image_asset_get_data(const struct ImageAsset *asset);
3515
-
3516
3613
  void canvas_native_text_decoder_release(struct TextDecoder *value);
3517
3614
 
3518
3615
  struct TextDecoder *canvas_native_text_decoder_create(const char *decoding);
@@ -4326,7 +4423,7 @@ void canvas_native_webgl_tex_image2d_image_asset(int32_t target,
4326
4423
  int32_t internalformat,
4327
4424
  int32_t format,
4328
4425
  int32_t image_type,
4329
- struct ImageAsset *image_asset,
4426
+ const struct ImageAsset *image_asset,
4330
4427
  struct WebGLState *state);
4331
4428
 
4332
4429
  void canvas_native_webgl_tex_parameterf(uint32_t target,
@@ -4345,7 +4442,7 @@ void canvas_native_webgl_tex_sub_image2d_asset(uint32_t target,
4345
4442
  int32_t yoffset,
4346
4443
  uint32_t format,
4347
4444
  int32_t image_type,
4348
- struct ImageAsset *asset,
4445
+ const struct ImageAsset *asset,
4349
4446
  struct WebGLState *state);
4350
4447
 
4351
4448
  void canvas_native_webgl_tex_sub_image2d_canvas2d(uint32_t target,
@@ -5086,4 +5183,72 @@ void canvas_native_webgl2_vertex_attrib_i4uiv(uint32_t index,
5086
5183
  uintptr_t size,
5087
5184
  struct WebGLState *state);
5088
5185
 
5186
+ void canvas_native_webgl2_tex_image2d_image_asset(int32_t target,
5187
+ int32_t level,
5188
+ int32_t internalformat,
5189
+ uint32_t width,
5190
+ uint32_t height,
5191
+ int32_t border,
5192
+ int32_t format,
5193
+ int32_t type_,
5194
+ const struct ImageAsset *image_asset,
5195
+ struct WebGLState *state);
5196
+
5197
+ void canvas_native_webgl2_tex_image2d_src_data_offset(int32_t target,
5198
+ int32_t level,
5199
+ int32_t internalformat,
5200
+ uint32_t width,
5201
+ uint32_t height,
5202
+ int32_t border,
5203
+ int32_t format,
5204
+ int32_t type_,
5205
+ const uint8_t *src_data,
5206
+ uintptr_t src_data_size,
5207
+ uint64_t offset,
5208
+ struct WebGLState *state);
5209
+
5210
+ void canvas_native_webgl2_tex_image2d_offset(int32_t target,
5211
+ int32_t level,
5212
+ int32_t internalformat,
5213
+ uint32_t width,
5214
+ uint32_t height,
5215
+ int32_t border,
5216
+ int32_t format,
5217
+ int32_t type_,
5218
+ uint64_t offset,
5219
+ struct WebGLState *state);
5220
+
5221
+ void canvas_native_webgl2_tex_image2d_webgl(int32_t target,
5222
+ int32_t level,
5223
+ int32_t internalformat,
5224
+ uint32_t width,
5225
+ uint32_t height,
5226
+ int32_t border,
5227
+ int32_t format,
5228
+ int32_t type_,
5229
+ struct WebGLState *webgl,
5230
+ struct WebGLState *state);
5231
+
5232
+ void canvas_native_webgl2_tex_image2d_canvas2d(int32_t target,
5233
+ int32_t level,
5234
+ int32_t internalformat,
5235
+ uint32_t width,
5236
+ uint32_t height,
5237
+ int32_t border,
5238
+ int32_t format,
5239
+ int32_t type_,
5240
+ struct CanvasRenderingContext2D *canvas,
5241
+ struct WebGLState *state);
5242
+
5243
+ void canvas_native_webgl2_tex_image2d_image_data(int32_t target,
5244
+ int32_t level,
5245
+ int32_t internalformat,
5246
+ uint32_t width,
5247
+ uint32_t height,
5248
+ int32_t border,
5249
+ int32_t format,
5250
+ int32_t type_,
5251
+ const struct ImageData *image_data,
5252
+ struct WebGLState *state);
5253
+
5089
5254
  #endif /* CANVAS_C_H */