@img/sharp-libvips-dev 0.0.1 → 0.0.2

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 (103) hide show
  1. package/README.md +2 -2
  2. package/cplusplus/VConnection.cpp +54 -54
  3. package/cplusplus/VError.cpp +20 -18
  4. package/cplusplus/VImage.cpp +636 -589
  5. package/cplusplus/VInterpolate.cpp +22 -22
  6. package/cplusplus/VRegion.cpp +4 -4
  7. package/cplusplus/vips-operators.cpp +2326 -2301
  8. package/include/aom/aom_codec.h +10 -6
  9. package/include/aom/aom_decoder.h +1 -1
  10. package/include/aom/aom_encoder.h +9 -2
  11. package/include/aom/aomcx.h +72 -3
  12. package/include/cairo/cairo-ft.h +1 -1
  13. package/include/cairo/cairo-gobject.h +8 -0
  14. package/include/cairo/cairo-svg.h +3 -3
  15. package/include/cairo/cairo-version.h +2 -2
  16. package/include/cairo/cairo.h +91 -24
  17. package/include/harfbuzz/hb-version.h +2 -2
  18. package/include/hwy/aligned_allocator.h +211 -0
  19. package/include/hwy/base.h +1517 -0
  20. package/include/hwy/cache_control.h +108 -0
  21. package/include/hwy/detect_compiler_arch.h +281 -0
  22. package/include/hwy/detect_targets.h +644 -0
  23. package/include/hwy/foreach_target.h +340 -0
  24. package/include/hwy/highway.h +435 -0
  25. package/include/hwy/highway_export.h +74 -0
  26. package/include/hwy/nanobenchmark.h +171 -0
  27. package/include/hwy/ops/arm_neon-inl.h +8913 -0
  28. package/include/hwy/ops/arm_sve-inl.h +5105 -0
  29. package/include/hwy/ops/emu128-inl.h +2811 -0
  30. package/include/hwy/ops/generic_ops-inl.h +4745 -0
  31. package/include/hwy/ops/ppc_vsx-inl.h +5716 -0
  32. package/include/hwy/ops/rvv-inl.h +5070 -0
  33. package/include/hwy/ops/scalar-inl.h +1995 -0
  34. package/include/hwy/ops/set_macros-inl.h +578 -0
  35. package/include/hwy/ops/shared-inl.h +539 -0
  36. package/include/hwy/ops/tuple-inl.h +125 -0
  37. package/include/hwy/ops/wasm_128-inl.h +5917 -0
  38. package/include/hwy/ops/x86_128-inl.h +11173 -0
  39. package/include/hwy/ops/x86_256-inl.h +7529 -0
  40. package/include/hwy/ops/x86_512-inl.h +6849 -0
  41. package/include/hwy/per_target.h +44 -0
  42. package/include/hwy/print-inl.h +62 -0
  43. package/include/hwy/print.h +75 -0
  44. package/include/hwy/robust_statistics.h +148 -0
  45. package/include/hwy/targets.h +338 -0
  46. package/include/hwy/timer-inl.h +200 -0
  47. package/include/hwy/timer.h +55 -0
  48. package/include/jconfig.h +2 -2
  49. package/include/jpeglib.h +3 -2
  50. package/include/libheif/heif.h +443 -377
  51. package/include/libheif/heif_cxx.h +4 -1
  52. package/include/libheif/heif_plugin.h +1 -1
  53. package/include/libheif/heif_properties.h +138 -0
  54. package/include/libheif/heif_regions.h +866 -0
  55. package/include/libheif/heif_version.h +3 -3
  56. package/include/vips/VConnection8.h +43 -49
  57. package/include/vips/VError8.h +27 -24
  58. package/include/vips/VImage8.h +4861 -4597
  59. package/include/vips/VInterpolate8.h +24 -27
  60. package/include/vips/VRegion8.h +32 -33
  61. package/include/vips/arithmetic.h +169 -169
  62. package/include/vips/basic.h +33 -33
  63. package/include/vips/buf.h +56 -54
  64. package/include/vips/colour.h +95 -95
  65. package/include/vips/connection.h +190 -193
  66. package/include/vips/conversion.h +91 -91
  67. package/include/vips/convolution.h +36 -30
  68. package/include/vips/create.h +63 -63
  69. package/include/vips/dbuf.h +35 -37
  70. package/include/vips/debug.h +65 -33
  71. package/include/vips/draw.h +41 -41
  72. package/include/vips/enumtypes.h +54 -51
  73. package/include/vips/error.h +63 -63
  74. package/include/vips/foreign.h +263 -223
  75. package/include/vips/format.h +48 -48
  76. package/include/vips/freqfilt.h +22 -22
  77. package/include/vips/gate.h +55 -47
  78. package/include/vips/generate.h +34 -34
  79. package/include/vips/header.h +111 -101
  80. package/include/vips/histogram.h +28 -28
  81. package/include/vips/image.h +213 -213
  82. package/include/vips/interpolate.h +40 -41
  83. package/include/vips/memory.h +61 -52
  84. package/include/vips/morphology.h +24 -24
  85. package/include/vips/mosaicing.h +32 -33
  86. package/include/vips/object.h +371 -357
  87. package/include/vips/operation.h +68 -67
  88. package/include/vips/private.h +76 -76
  89. package/include/vips/rect.h +26 -26
  90. package/include/vips/region.h +92 -92
  91. package/include/vips/resample.h +38 -38
  92. package/include/vips/sbuf.h +53 -54
  93. package/include/vips/semaphore.h +24 -24
  94. package/include/vips/thread.h +30 -27
  95. package/include/vips/threadpool.h +48 -49
  96. package/include/vips/transform.h +39 -39
  97. package/include/vips/type.h +90 -85
  98. package/include/vips/util.h +274 -229
  99. package/include/vips/vector.h +24 -144
  100. package/include/vips/version.h +9 -9
  101. package/include/vips/vips.h +41 -40
  102. package/package.json +1 -1
  103. package/versions.json +7 -7
@@ -0,0 +1,340 @@
1
+ // Copyright 2020 Google LLC
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ //
4
+ // Licensed under the Apache License, Version 2.0 (the "License");
5
+ // you may not use this file except in compliance with the License.
6
+ // You may obtain a copy of the License at
7
+ //
8
+ // http://www.apache.org/licenses/LICENSE-2.0
9
+ //
10
+ // Unless required by applicable law or agreed to in writing, software
11
+ // distributed under the License is distributed on an "AS IS" BASIS,
12
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ // See the License for the specific language governing permissions and
14
+ // limitations under the License.
15
+
16
+ #ifndef HIGHWAY_HWY_FOREACH_TARGET_H_
17
+ #define HIGHWAY_HWY_FOREACH_TARGET_H_
18
+
19
+ // Re-includes the translation unit zero or more times to compile for any
20
+ // targets except HWY_STATIC_TARGET. Defines unique HWY_TARGET each time so that
21
+ // highway.h defines the corresponding macro/namespace.
22
+
23
+ #include "hwy/detect_targets.h"
24
+
25
+ // *_inl.h may include other headers, which requires include guards to prevent
26
+ // repeated inclusion. The guards must be reset after compiling each target, so
27
+ // the header is again visible. This is done by flipping HWY_TARGET_TOGGLE,
28
+ // defining it if undefined and vice versa. This macro is initially undefined
29
+ // so that IDEs don't gray out the contents of each header.
30
+ #ifdef HWY_TARGET_TOGGLE
31
+ #error "This macro must not be defined outside foreach_target.h"
32
+ #endif
33
+
34
+ #ifdef HWY_HIGHWAY_INCLUDED // highway.h include guard
35
+ // Trigger fixup at the bottom of this header.
36
+ #define HWY_ALREADY_INCLUDED
37
+
38
+ // The next highway.h must re-include set_macros-inl.h because the first
39
+ // highway.h chose the static target instead of what we will set below.
40
+ #undef HWY_SET_MACROS_PER_TARGET
41
+ #endif
42
+
43
+ // Disable HWY_EXPORT in user code until we have generated all targets. Note
44
+ // that a subsequent highway.h will not override this definition.
45
+ #undef HWY_ONCE
46
+ #define HWY_ONCE (0 || HWY_IDE)
47
+
48
+ // Avoid warnings on #include HWY_TARGET_INCLUDE by hiding them from the IDE;
49
+ // also skip if only 1 target defined (no re-inclusion will be necessary).
50
+ #if !HWY_IDE && (HWY_TARGETS != HWY_STATIC_TARGET)
51
+
52
+ #if !defined(HWY_TARGET_INCLUDE)
53
+ #error ">1 target enabled => define HWY_TARGET_INCLUDE before foreach_target.h"
54
+ #endif
55
+
56
+ // ------------------------------ HWY_ARCH_X86
57
+
58
+ #if (HWY_TARGETS & HWY_SSE2) && (HWY_STATIC_TARGET != HWY_SSE2)
59
+ #undef HWY_TARGET
60
+ #define HWY_TARGET HWY_SSE2
61
+ #include HWY_TARGET_INCLUDE
62
+ #ifdef HWY_TARGET_TOGGLE
63
+ #undef HWY_TARGET_TOGGLE
64
+ #else
65
+ #define HWY_TARGET_TOGGLE
66
+ #endif
67
+ #endif
68
+
69
+ #if (HWY_TARGETS & HWY_SSSE3) && (HWY_STATIC_TARGET != HWY_SSSE3)
70
+ #undef HWY_TARGET
71
+ #define HWY_TARGET HWY_SSSE3
72
+ #include HWY_TARGET_INCLUDE
73
+ #ifdef HWY_TARGET_TOGGLE
74
+ #undef HWY_TARGET_TOGGLE
75
+ #else
76
+ #define HWY_TARGET_TOGGLE
77
+ #endif
78
+ #endif
79
+
80
+ #if (HWY_TARGETS & HWY_SSE4) && (HWY_STATIC_TARGET != HWY_SSE4)
81
+ #undef HWY_TARGET
82
+ #define HWY_TARGET HWY_SSE4
83
+ #include HWY_TARGET_INCLUDE
84
+ #ifdef HWY_TARGET_TOGGLE
85
+ #undef HWY_TARGET_TOGGLE
86
+ #else
87
+ #define HWY_TARGET_TOGGLE
88
+ #endif
89
+ #endif
90
+
91
+ #if (HWY_TARGETS & HWY_AVX2) && (HWY_STATIC_TARGET != HWY_AVX2)
92
+ #undef HWY_TARGET
93
+ #define HWY_TARGET HWY_AVX2
94
+ #include HWY_TARGET_INCLUDE
95
+ #ifdef HWY_TARGET_TOGGLE
96
+ #undef HWY_TARGET_TOGGLE
97
+ #else
98
+ #define HWY_TARGET_TOGGLE
99
+ #endif
100
+ #endif
101
+
102
+ #if (HWY_TARGETS & HWY_AVX3) && (HWY_STATIC_TARGET != HWY_AVX3)
103
+ #undef HWY_TARGET
104
+ #define HWY_TARGET HWY_AVX3
105
+ #include HWY_TARGET_INCLUDE
106
+ #ifdef HWY_TARGET_TOGGLE
107
+ #undef HWY_TARGET_TOGGLE
108
+ #else
109
+ #define HWY_TARGET_TOGGLE
110
+ #endif
111
+ #endif
112
+
113
+ #if (HWY_TARGETS & HWY_AVX3_DL) && (HWY_STATIC_TARGET != HWY_AVX3_DL)
114
+ #undef HWY_TARGET
115
+ #define HWY_TARGET HWY_AVX3_DL
116
+ #include HWY_TARGET_INCLUDE
117
+ #ifdef HWY_TARGET_TOGGLE
118
+ #undef HWY_TARGET_TOGGLE
119
+ #else
120
+ #define HWY_TARGET_TOGGLE
121
+ #endif
122
+ #endif
123
+
124
+ #if (HWY_TARGETS & HWY_AVX3_ZEN4) && (HWY_STATIC_TARGET != HWY_AVX3_ZEN4)
125
+ #undef HWY_TARGET
126
+ #define HWY_TARGET HWY_AVX3_ZEN4
127
+ #include HWY_TARGET_INCLUDE
128
+ #ifdef HWY_TARGET_TOGGLE
129
+ #undef HWY_TARGET_TOGGLE
130
+ #else
131
+ #define HWY_TARGET_TOGGLE
132
+ #endif
133
+ #endif
134
+
135
+ #if (HWY_TARGETS & HWY_AVX3_SPR) && (HWY_STATIC_TARGET != HWY_AVX3_SPR)
136
+ #undef HWY_TARGET
137
+ #define HWY_TARGET HWY_AVX3_SPR
138
+ #include HWY_TARGET_INCLUDE
139
+ #ifdef HWY_TARGET_TOGGLE
140
+ #undef HWY_TARGET_TOGGLE
141
+ #else
142
+ #define HWY_TARGET_TOGGLE
143
+ #endif
144
+ #endif
145
+
146
+ // ------------------------------ HWY_ARCH_ARM
147
+
148
+ #if (HWY_TARGETS & HWY_NEON_WITHOUT_AES) && \
149
+ (HWY_STATIC_TARGET != HWY_NEON_WITHOUT_AES)
150
+ #undef HWY_TARGET
151
+ #define HWY_TARGET HWY_NEON_WITHOUT_AES
152
+ #include HWY_TARGET_INCLUDE
153
+ #ifdef HWY_TARGET_TOGGLE
154
+ #undef HWY_TARGET_TOGGLE
155
+ #else
156
+ #define HWY_TARGET_TOGGLE
157
+ #endif
158
+ #endif
159
+
160
+ #if (HWY_TARGETS & HWY_NEON) && (HWY_STATIC_TARGET != HWY_NEON)
161
+ #undef HWY_TARGET
162
+ #define HWY_TARGET HWY_NEON
163
+ #include HWY_TARGET_INCLUDE
164
+ #ifdef HWY_TARGET_TOGGLE
165
+ #undef HWY_TARGET_TOGGLE
166
+ #else
167
+ #define HWY_TARGET_TOGGLE
168
+ #endif
169
+ #endif
170
+
171
+ #if (HWY_TARGETS & HWY_SVE) && (HWY_STATIC_TARGET != HWY_SVE)
172
+ #undef HWY_TARGET
173
+ #define HWY_TARGET HWY_SVE
174
+ #include HWY_TARGET_INCLUDE
175
+ #ifdef HWY_TARGET_TOGGLE
176
+ #undef HWY_TARGET_TOGGLE
177
+ #else
178
+ #define HWY_TARGET_TOGGLE
179
+ #endif
180
+ #endif
181
+
182
+ #if (HWY_TARGETS & HWY_SVE2) && (HWY_STATIC_TARGET != HWY_SVE2)
183
+ #undef HWY_TARGET
184
+ #define HWY_TARGET HWY_SVE2
185
+ #include HWY_TARGET_INCLUDE
186
+ #ifdef HWY_TARGET_TOGGLE
187
+ #undef HWY_TARGET_TOGGLE
188
+ #else
189
+ #define HWY_TARGET_TOGGLE
190
+ #endif
191
+ #endif
192
+
193
+ #if (HWY_TARGETS & HWY_SVE_256) && (HWY_STATIC_TARGET != HWY_SVE_256)
194
+ #undef HWY_TARGET
195
+ #define HWY_TARGET HWY_SVE_256
196
+ #include HWY_TARGET_INCLUDE
197
+ #ifdef HWY_TARGET_TOGGLE
198
+ #undef HWY_TARGET_TOGGLE
199
+ #else
200
+ #define HWY_TARGET_TOGGLE
201
+ #endif
202
+ #endif
203
+
204
+ #if (HWY_TARGETS & HWY_SVE2_128) && (HWY_STATIC_TARGET != HWY_SVE2_128)
205
+ #undef HWY_TARGET
206
+ #define HWY_TARGET HWY_SVE2_128
207
+ #include HWY_TARGET_INCLUDE
208
+ #ifdef HWY_TARGET_TOGGLE
209
+ #undef HWY_TARGET_TOGGLE
210
+ #else
211
+ #define HWY_TARGET_TOGGLE
212
+ #endif
213
+ #endif
214
+
215
+ // ------------------------------ HWY_ARCH_WASM
216
+
217
+ #if (HWY_TARGETS & HWY_WASM_EMU256) && (HWY_STATIC_TARGET != HWY_WASM_EMU256)
218
+ #undef HWY_TARGET
219
+ #define HWY_TARGET HWY_WASM_EMU256
220
+ #include HWY_TARGET_INCLUDE
221
+ #ifdef HWY_TARGET_TOGGLE
222
+ #undef HWY_TARGET_TOGGLE
223
+ #else
224
+ #define HWY_TARGET_TOGGLE
225
+ #endif
226
+ #endif
227
+
228
+ #if (HWY_TARGETS & HWY_WASM) && (HWY_STATIC_TARGET != HWY_WASM)
229
+ #undef HWY_TARGET
230
+ #define HWY_TARGET HWY_WASM
231
+ #include HWY_TARGET_INCLUDE
232
+ #ifdef HWY_TARGET_TOGGLE
233
+ #undef HWY_TARGET_TOGGLE
234
+ #else
235
+ #define HWY_TARGET_TOGGLE
236
+ #endif
237
+ #endif
238
+
239
+ // ------------------------------ HWY_ARCH_PPC
240
+
241
+ #if (HWY_TARGETS & HWY_PPC8) && (HWY_STATIC_TARGET != HWY_PPC8)
242
+ #undef HWY_TARGET
243
+ #define HWY_TARGET HWY_PPC8
244
+ #include HWY_TARGET_INCLUDE
245
+ #ifdef HWY_TARGET_TOGGLE
246
+ #undef HWY_TARGET_TOGGLE
247
+ #else
248
+ #define HWY_TARGET_TOGGLE
249
+ #endif
250
+ #endif
251
+
252
+ #if (HWY_TARGETS & HWY_PPC9) && (HWY_STATIC_TARGET != HWY_PPC9)
253
+ #undef HWY_TARGET
254
+ #define HWY_TARGET HWY_PPC9
255
+ #include HWY_TARGET_INCLUDE
256
+ #ifdef HWY_TARGET_TOGGLE
257
+ #undef HWY_TARGET_TOGGLE
258
+ #else
259
+ #define HWY_TARGET_TOGGLE
260
+ #endif
261
+ #endif
262
+
263
+ #if (HWY_TARGETS & HWY_PPC10) && (HWY_STATIC_TARGET != HWY_PPC10)
264
+ #undef HWY_TARGET
265
+ #define HWY_TARGET HWY_PPC10
266
+ #include HWY_TARGET_INCLUDE
267
+ #ifdef HWY_TARGET_TOGGLE
268
+ #undef HWY_TARGET_TOGGLE
269
+ #else
270
+ #define HWY_TARGET_TOGGLE
271
+ #endif
272
+ #endif
273
+
274
+ // ------------------------------ HWY_ARCH_RVV
275
+
276
+ #if (HWY_TARGETS & HWY_RVV) && (HWY_STATIC_TARGET != HWY_RVV)
277
+ #undef HWY_TARGET
278
+ #define HWY_TARGET HWY_RVV
279
+ #include HWY_TARGET_INCLUDE
280
+ #ifdef HWY_TARGET_TOGGLE
281
+ #undef HWY_TARGET_TOGGLE
282
+ #else
283
+ #define HWY_TARGET_TOGGLE
284
+ #endif
285
+ #endif
286
+
287
+ // ------------------------------ Scalar
288
+
289
+ #if (HWY_TARGETS & HWY_EMU128) && (HWY_STATIC_TARGET != HWY_EMU128)
290
+ #undef HWY_TARGET
291
+ #define HWY_TARGET HWY_EMU128
292
+ #include HWY_TARGET_INCLUDE
293
+ #ifdef HWY_TARGET_TOGGLE
294
+ #undef HWY_TARGET_TOGGLE
295
+ #else
296
+ #define HWY_TARGET_TOGGLE
297
+ #endif
298
+ #endif
299
+
300
+ #if (HWY_TARGETS & HWY_SCALAR) && (HWY_STATIC_TARGET != HWY_SCALAR)
301
+ #undef HWY_TARGET
302
+ #define HWY_TARGET HWY_SCALAR
303
+ #include HWY_TARGET_INCLUDE
304
+ #ifdef HWY_TARGET_TOGGLE
305
+ #undef HWY_TARGET_TOGGLE
306
+ #else
307
+ #define HWY_TARGET_TOGGLE
308
+ #endif
309
+ #endif
310
+
311
+ #endif // !HWY_IDE && (HWY_TARGETS != HWY_STATIC_TARGET)
312
+
313
+ // Now that all but the static target have been generated, re-enable HWY_EXPORT.
314
+ #undef HWY_ONCE
315
+ #define HWY_ONCE 1
316
+
317
+ // If we re-include once per enabled target, the translation unit's
318
+ // implementation would have to be skipped via #if to avoid redefining symbols.
319
+ // We instead skip the re-include for HWY_STATIC_TARGET, and generate its
320
+ // implementation when resuming compilation of the translation unit.
321
+ #undef HWY_TARGET
322
+ #define HWY_TARGET HWY_STATIC_TARGET
323
+
324
+ #ifdef HWY_ALREADY_INCLUDED
325
+ // Revert the previous toggle to prevent redefinitions for the static target.
326
+ #ifdef HWY_TARGET_TOGGLE
327
+ #undef HWY_TARGET_TOGGLE
328
+ #else
329
+ #define HWY_TARGET_TOGGLE
330
+ #endif
331
+
332
+ // Force re-inclusion of set_macros-inl.h now that HWY_TARGET is restored.
333
+ #ifdef HWY_SET_MACROS_PER_TARGET
334
+ #undef HWY_SET_MACROS_PER_TARGET
335
+ #else
336
+ #define HWY_SET_MACROS_PER_TARGET
337
+ #endif
338
+ #endif
339
+
340
+ #endif // HIGHWAY_HWY_FOREACH_TARGET_H_