@img/sharp-libvips-dev 1.1.0 → 1.2.0-rc.1

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 (120) hide show
  1. package/cplusplus/vips-operators.cpp +39 -0
  2. package/include/archive.h +53 -2
  3. package/include/archive_entry.h +56 -25
  4. package/include/ffi.h +20 -2
  5. package/include/fontconfig/fontconfig.h +1 -1
  6. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  7. package/include/glib-2.0/gio/gzlibcompressor.h +6 -0
  8. package/include/glib-2.0/girepository/gi-visibility.h +34 -0
  9. package/include/glib-2.0/girepository/gitypes.h +6 -0
  10. package/include/glib-2.0/glib/gbitlock.h +11 -0
  11. package/include/glib-2.0/glib/gdate.h +6 -0
  12. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  13. package/include/glib-2.0/glib/gmain.h +13 -10
  14. package/include/glib-2.0/glib/gmessages.h +4 -1
  15. package/include/glib-2.0/glib/gstring.h +2 -0
  16. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  17. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  18. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  19. package/include/harfbuzz/hb-common.h +1 -431
  20. package/include/harfbuzz/hb-deprecated.h +80 -2
  21. package/include/harfbuzz/hb-draw.h +2 -10
  22. package/include/harfbuzz/hb-face.h +1 -1
  23. package/include/harfbuzz/hb-font.h +55 -36
  24. package/include/harfbuzz/hb-paint.h +5 -3
  25. package/include/harfbuzz/hb-script-list.h +484 -0
  26. package/include/harfbuzz/hb-subset.h +22 -2
  27. package/include/harfbuzz/hb-version.h +3 -3
  28. package/include/libheif/heif.h +2 -0
  29. package/include/libheif/heif_version.h +2 -2
  30. package/include/libpng16/png.h +10 -10
  31. package/include/libpng16/pngconf.h +20 -27
  32. package/include/libpng16/pnglibconf.h +1 -1
  33. package/include/libxml2/libxml/HTMLparser.h +2 -2
  34. package/include/libxml2/libxml/parser.h +2 -0
  35. package/include/libxml2/libxml/xmlIO.h +2 -2
  36. package/include/libxml2/libxml/xmlerror.h +1 -1
  37. package/include/libxml2/libxml/xmlversion.h +4 -4
  38. package/include/pixman-1/pixman-version.h +2 -2
  39. package/include/pixman-1/pixman.h +200 -0
  40. package/include/png.h +10 -10
  41. package/include/pngconf.h +20 -27
  42. package/include/pnglibconf.h +1 -1
  43. package/include/vips/VImage8.h +62 -14
  44. package/include/vips/arithmetic.h +34 -34
  45. package/include/vips/basic.h +16 -0
  46. package/include/vips/buf.h +0 -5
  47. package/include/vips/colour.h +6 -7
  48. package/include/vips/connection.h +25 -37
  49. package/include/vips/enumtypes.h +11 -2
  50. package/include/vips/foreign.h +73 -43
  51. package/include/vips/format.h +7 -5
  52. package/include/vips/gate.h +0 -11
  53. package/include/vips/header.h +11 -11
  54. package/include/vips/image.h +8 -3
  55. package/include/vips/interpolate.h +0 -2
  56. package/include/vips/memory.h +4 -0
  57. package/include/vips/mosaicing.h +4 -0
  58. package/include/vips/object.h +14 -18
  59. package/include/vips/operation.h +0 -2
  60. package/include/vips/private.h +50 -2
  61. package/include/vips/region.h +1 -3
  62. package/include/vips/resample.h +2 -0
  63. package/include/vips/semaphore.h +8 -3
  64. package/include/vips/thread.h +1 -24
  65. package/include/vips/threadpool.h +0 -6
  66. package/include/vips/type.h +13 -9
  67. package/include/vips/util.h +17 -98
  68. package/include/vips/vector.h +0 -4
  69. package/include/vips/version.h +8 -8
  70. package/include/vips/vips.h +1 -0
  71. package/package.json +1 -1
  72. package/versions.json +11 -11
  73. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-animation.h +0 -221
  74. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-autocleanups.h +0 -37
  75. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h +0 -525
  76. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-enum-types.h +0 -40
  77. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-features.h +0 -115
  78. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-io.h +0 -481
  79. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-loader.h +0 -113
  80. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-macros.h +0 -718
  81. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-marshal.h +0 -33
  82. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-simple-anim.h +0 -70
  83. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-transform.h +0 -168
  84. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h +0 -46
  85. package/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixdata.h +0 -165
  86. package/include/glib-2.0/glib/gwin32.h +0 -142
  87. package/include/harfbuzz/hb-subset-repacker.h +0 -81
  88. package/include/hwy/ops/tuple-inl.h +0 -125
  89. package/include/orc-0.4/orc/orc-stdint.h +0 -1
  90. package/include/orc-0.4/orc/orc.h +0 -16
  91. package/include/orc-0.4/orc/orcarm.h +0 -879
  92. package/include/orc-0.4/orc/orcbytecode.h +0 -35
  93. package/include/orc-0.4/orc/orcbytecodes.h +0 -255
  94. package/include/orc-0.4/orc/orccode.h +0 -53
  95. package/include/orc-0.4/orc/orccompiler.h +0 -176
  96. package/include/orc-0.4/orc/orcconstant.h +0 -39
  97. package/include/orc-0.4/orc/orccpu.h +0 -21
  98. package/include/orc-0.4/orc/orccpuinsn.h +0 -40
  99. package/include/orc-0.4/orc/orcdebug.h +0 -158
  100. package/include/orc-0.4/orc/orcemulateopcodes.h +0 -203
  101. package/include/orc-0.4/orc/orcexecutor.h +0 -135
  102. package/include/orc-0.4/orc/orcfunctions.h +0 -93
  103. package/include/orc-0.4/orc/orcinstruction.h +0 -39
  104. package/include/orc-0.4/orc/orcinternal.h +0 -46
  105. package/include/orc-0.4/orc/orclimits.h +0 -94
  106. package/include/orc-0.4/orc/orcmips.h +0 -229
  107. package/include/orc-0.4/orc/orcmmx.h +0 -79
  108. package/include/orc-0.4/orc/orcneon.h +0 -43
  109. package/include/orc-0.4/orc/orconce.h +0 -166
  110. package/include/orc-0.4/orc/orcopcode.h +0 -63
  111. package/include/orc-0.4/orc/orcparse.h +0 -27
  112. package/include/orc-0.4/orc/orcpowerpc.h +0 -209
  113. package/include/orc-0.4/orc/orcprogram.h +0 -192
  114. package/include/orc-0.4/orc/orcrule.h +0 -52
  115. package/include/orc-0.4/orc/orcsse.h +0 -55
  116. package/include/orc-0.4/orc/orctarget.h +0 -115
  117. package/include/orc-0.4/orc/orcutils.h +0 -238
  118. package/include/orc-0.4/orc/orcvariable.h +0 -81
  119. package/include/orc-0.4/orc/orcx86.h +0 -199
  120. package/include/orc-0.4/orc/orcx86insn.h +0 -672
@@ -2082,6 +2082,7 @@ public:
2082
2082
 
2083
2083
  // headers for vips operations
2084
2084
  // this file is generated automatically, do not edit!
2085
+ // clang-format off
2085
2086
 
2086
2087
  /**
2087
2088
  * Transform lch to cmc.
@@ -3276,6 +3277,7 @@ public:
3276
3277
  * - **reuse** -- Reuse palette from input, bool.
3277
3278
  * - **interpalette_maxerror** -- Maximum inter-palette error for palette reusage, double.
3278
3279
  * - **interlace** -- Generate an interlaced (progressive) GIF, bool.
3280
+ * - **keep_duplicate_frames** -- Keep duplicate frames in the output instead of combining them, bool.
3279
3281
  * - **keep** -- Which metadata to retain, VipsForeignKeep.
3280
3282
  * - **background** -- Background value, std::vector<double>.
3281
3283
  * - **page_height** -- Set page height for multipage save, int.
@@ -3297,6 +3299,7 @@ public:
3297
3299
  * - **reuse** -- Reuse palette from input, bool.
3298
3300
  * - **interpalette_maxerror** -- Maximum inter-palette error for palette reusage, double.
3299
3301
  * - **interlace** -- Generate an interlaced (progressive) GIF, bool.
3302
+ * - **keep_duplicate_frames** -- Keep duplicate frames in the output instead of combining them, bool.
3300
3303
  * - **keep** -- Which metadata to retain, VipsForeignKeep.
3301
3304
  * - **background** -- Background value, std::vector<double>.
3302
3305
  * - **page_height** -- Set page height for multipage save, int.
@@ -3318,6 +3321,7 @@ public:
3318
3321
  * - **reuse** -- Reuse palette from input, bool.
3319
3322
  * - **interpalette_maxerror** -- Maximum inter-palette error for palette reusage, double.
3320
3323
  * - **interlace** -- Generate an interlaced (progressive) GIF, bool.
3324
+ * - **keep_duplicate_frames** -- Keep duplicate frames in the output instead of combining them, bool.
3321
3325
  * - **keep** -- Which metadata to retain, VipsForeignKeep.
3322
3326
  * - **background** -- Background value, std::vector<double>.
3323
3327
  * - **page_height** -- Set page height for multipage save, int.
@@ -3762,6 +3766,7 @@ public:
3762
3766
  *
3763
3767
  * **Optional parameters**
3764
3768
  * - **page** -- Load this page from the image, int.
3769
+ * - **oneshot** -- Load images a frame at a time, bool.
3765
3770
  * - **memory** -- Force open via memory, bool.
3766
3771
  * - **access** -- Required access pattern for this file, VipsAccess.
3767
3772
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -3778,6 +3783,7 @@ public:
3778
3783
  *
3779
3784
  * **Optional parameters**
3780
3785
  * - **page** -- Load this page from the image, int.
3786
+ * - **oneshot** -- Load images a frame at a time, bool.
3781
3787
  * - **memory** -- Force open via memory, bool.
3782
3788
  * - **access** -- Required access pattern for this file, VipsAccess.
3783
3789
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -3794,6 +3800,7 @@ public:
3794
3800
  *
3795
3801
  * **Optional parameters**
3796
3802
  * - **page** -- Load this page from the image, int.
3803
+ * - **oneshot** -- Load images a frame at a time, bool.
3797
3804
  * - **memory** -- Force open via memory, bool.
3798
3805
  * - **access** -- Required access pattern for this file, VipsAccess.
3799
3806
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -4517,7 +4524,7 @@ public:
4517
4524
  static VImage matload(const char *filename, VOption *options = nullptr);
4518
4525
 
4519
4526
  /**
4520
- * Invert an matrix.
4527
+ * Invert a matrix.
4521
4528
  * @param options Set of options.
4522
4529
  * @return Output matrix.
4523
4530
  */
@@ -4553,6 +4560,14 @@ public:
4553
4560
  */
4554
4561
  static VImage matrixload_source(VSource source, VOption *options = nullptr);
4555
4562
 
4563
+ /**
4564
+ * Multiply two matrices.
4565
+ * @param right Second matrix to multiply.
4566
+ * @param options Set of options.
4567
+ * @return Output matrix.
4568
+ */
4569
+ VImage matrixmultiply(VImage right, VOption *options = nullptr) const;
4570
+
4556
4571
  /**
4557
4572
  * Print matrix.
4558
4573
  *
@@ -5059,7 +5074,22 @@ public:
5059
5074
  static VImage ppmload(const char *filename, VOption *options = nullptr);
5060
5075
 
5061
5076
  /**
5062
- * Load ppm base class.
5077
+ * Load ppm from buffer.
5078
+ *
5079
+ * **Optional parameters**
5080
+ * - **memory** -- Force open via memory, bool.
5081
+ * - **access** -- Required access pattern for this file, VipsAccess.
5082
+ * - **fail_on** -- Error level to fail on, VipsFailOn.
5083
+ * - **revalidate** -- Don't use a cached result for this operation, bool.
5084
+ *
5085
+ * @param buffer Buffer to load from.
5086
+ * @param options Set of options.
5087
+ * @return Output image.
5088
+ */
5089
+ static VImage ppmload_buffer(VipsBlob *buffer, VOption *options = nullptr);
5090
+
5091
+ /**
5092
+ * Load ppm from source.
5063
5093
  *
5064
5094
  * **Optional parameters**
5065
5095
  * - **memory** -- Force open via memory, bool.
@@ -5410,6 +5440,15 @@ public:
5410
5440
  */
5411
5441
  VImage remainder_const(std::vector<double> c, VOption *options = nullptr) const;
5412
5442
 
5443
+ /**
5444
+ * Rebuild an mosaiced image.
5445
+ * @param old_str Search for this string.
5446
+ * @param new_str And swap for this string.
5447
+ * @param options Set of options.
5448
+ * @return Output image.
5449
+ */
5450
+ VImage remosaic(const char *old_str, const char *new_str, VOption *options = nullptr) const;
5451
+
5413
5452
  /**
5414
5453
  * Replicate an image.
5415
5454
  * @param across Repeat this many times horizontally.
@@ -5510,7 +5549,7 @@ public:
5510
5549
  VImage scRGB2XYZ(VOption *options = nullptr) const;
5511
5550
 
5512
5551
  /**
5513
- * Convert an scrgb image to srgb.
5552
+ * Convert scrgb to srgb.
5514
5553
  *
5515
5554
  * **Optional parameters**
5516
5555
  * - **depth** -- Output device space depth in bits, int.
@@ -5755,6 +5794,8 @@ public:
5755
5794
  * - **dpi** -- Render at this DPI, double.
5756
5795
  * - **scale** -- Scale output by this factor, double.
5757
5796
  * - **unlimited** -- Allow SVG of any size, bool.
5797
+ * - **stylesheet** -- Custom CSS, const char *.
5798
+ * - **high_bitdepth** -- Enable scRGB 128-bit output (32-bit per channel), bool.
5758
5799
  * - **memory** -- Force open via memory, bool.
5759
5800
  * - **access** -- Required access pattern for this file, VipsAccess.
5760
5801
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -5773,6 +5814,8 @@ public:
5773
5814
  * - **dpi** -- Render at this DPI, double.
5774
5815
  * - **scale** -- Scale output by this factor, double.
5775
5816
  * - **unlimited** -- Allow SVG of any size, bool.
5817
+ * - **stylesheet** -- Custom CSS, const char *.
5818
+ * - **high_bitdepth** -- Enable scRGB 128-bit output (32-bit per channel), bool.
5776
5819
  * - **memory** -- Force open via memory, bool.
5777
5820
  * - **access** -- Required access pattern for this file, VipsAccess.
5778
5821
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -5791,6 +5834,8 @@ public:
5791
5834
  * - **dpi** -- Render at this DPI, double.
5792
5835
  * - **scale** -- Scale output by this factor, double.
5793
5836
  * - **unlimited** -- Allow SVG of any size, bool.
5837
+ * - **stylesheet** -- Custom CSS, const char *.
5838
+ * - **high_bitdepth** -- Enable scRGB 128-bit output (32-bit per channel), bool.
5794
5839
  * - **memory** -- Force open via memory, bool.
5795
5840
  * - **access** -- Required access pattern for this file, VipsAccess.
5796
5841
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -5853,8 +5898,8 @@ public:
5853
5898
  * - **no_rotate** -- Don't use orientation tags to rotate image upright, bool.
5854
5899
  * - **crop** -- Reduce to fill target rectangle, then crop, VipsInteresting.
5855
5900
  * - **linear** -- Reduce in linear light, bool.
5856
- * - **import_profile** -- Fallback import profile, const char *.
5857
- * - **export_profile** -- Fallback export profile, const char *.
5901
+ * - **input_profile** -- Fallback input profile, const char *.
5902
+ * - **output_profile** -- Fallback output profile, const char *.
5858
5903
  * - **intent** -- Rendering intent, VipsIntent.
5859
5904
  * - **fail_on** -- Error level to fail on, VipsFailOn.
5860
5905
  *
@@ -5875,8 +5920,8 @@ public:
5875
5920
  * - **no_rotate** -- Don't use orientation tags to rotate image upright, bool.
5876
5921
  * - **crop** -- Reduce to fill target rectangle, then crop, VipsInteresting.
5877
5922
  * - **linear** -- Reduce in linear light, bool.
5878
- * - **import_profile** -- Fallback import profile, const char *.
5879
- * - **export_profile** -- Fallback export profile, const char *.
5923
+ * - **input_profile** -- Fallback input profile, const char *.
5924
+ * - **output_profile** -- Fallback output profile, const char *.
5880
5925
  * - **intent** -- Rendering intent, VipsIntent.
5881
5926
  * - **fail_on** -- Error level to fail on, VipsFailOn.
5882
5927
  *
@@ -5896,8 +5941,8 @@ public:
5896
5941
  * - **no_rotate** -- Don't use orientation tags to rotate image upright, bool.
5897
5942
  * - **crop** -- Reduce to fill target rectangle, then crop, VipsInteresting.
5898
5943
  * - **linear** -- Reduce in linear light, bool.
5899
- * - **import_profile** -- Fallback import profile, const char *.
5900
- * - **export_profile** -- Fallback export profile, const char *.
5944
+ * - **input_profile** -- Fallback input profile, const char *.
5945
+ * - **output_profile** -- Fallback output profile, const char *.
5901
5946
  * - **intent** -- Rendering intent, VipsIntent.
5902
5947
  * - **fail_on** -- Error level to fail on, VipsFailOn.
5903
5948
  *
@@ -5917,8 +5962,8 @@ public:
5917
5962
  * - **no_rotate** -- Don't use orientation tags to rotate image upright, bool.
5918
5963
  * - **crop** -- Reduce to fill target rectangle, then crop, VipsInteresting.
5919
5964
  * - **linear** -- Reduce in linear light, bool.
5920
- * - **import_profile** -- Fallback import profile, const char *.
5921
- * - **export_profile** -- Fallback export profile, const char *.
5965
+ * - **input_profile** -- Fallback input profile, const char *.
5966
+ * - **output_profile** -- Fallback output profile, const char *.
5922
5967
  * - **intent** -- Rendering intent, VipsIntent.
5923
5968
  * - **fail_on** -- Error level to fail on, VipsFailOn.
5924
5969
  *
@@ -5934,9 +5979,10 @@ public:
5934
5979
  *
5935
5980
  * **Optional parameters**
5936
5981
  * - **page** -- First page to load, int.
5937
- * - **subifd** -- Subifd index, int.
5938
5982
  * - **n** -- Number of pages to load, -1 for all, int.
5939
5983
  * - **autorotate** -- Rotate image using orientation tag, bool.
5984
+ * - **subifd** -- Subifd index, int.
5985
+ * - **unlimited** -- Remove all denial of service limits, bool.
5940
5986
  * - **memory** -- Force open via memory, bool.
5941
5987
  * - **access** -- Required access pattern for this file, VipsAccess.
5942
5988
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -5953,9 +5999,10 @@ public:
5953
5999
  *
5954
6000
  * **Optional parameters**
5955
6001
  * - **page** -- First page to load, int.
5956
- * - **subifd** -- Subifd index, int.
5957
6002
  * - **n** -- Number of pages to load, -1 for all, int.
5958
6003
  * - **autorotate** -- Rotate image using orientation tag, bool.
6004
+ * - **subifd** -- Subifd index, int.
6005
+ * - **unlimited** -- Remove all denial of service limits, bool.
5959
6006
  * - **memory** -- Force open via memory, bool.
5960
6007
  * - **access** -- Required access pattern for this file, VipsAccess.
5961
6008
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -5972,9 +6019,10 @@ public:
5972
6019
  *
5973
6020
  * **Optional parameters**
5974
6021
  * - **page** -- First page to load, int.
5975
- * - **subifd** -- Subifd index, int.
5976
6022
  * - **n** -- Number of pages to load, -1 for all, int.
5977
6023
  * - **autorotate** -- Rotate image using orientation tag, bool.
6024
+ * - **subifd** -- Subifd index, int.
6025
+ * - **unlimited** -- Remove all denial of service limits, bool.
5978
6026
  * - **memory** -- Force open via memory, bool.
5979
6027
  * - **access** -- Required access pattern for this file, VipsAccess.
5980
6028
  * - **fail_on** -- Error level to fail on, VipsFailOn.
@@ -43,24 +43,24 @@ extern "C" {
43
43
 
44
44
  /**
45
45
  * VipsOperationMath:
46
- * @VIPS_OPERATION_MATH_SIN: sin(), angles in degrees
47
- * @VIPS_OPERATION_MATH_COS: cos(), angles in degrees
48
- * @VIPS_OPERATION_MATH_TAN: tan(), angles in degrees
49
- * @VIPS_OPERATION_MATH_ASIN: asin(), angles in degrees
50
- * @VIPS_OPERATION_MATH_ACOS: acos(), angles in degrees
51
- * @VIPS_OPERATION_MATH_ATAN: atan(), angles in degrees
46
+ * @VIPS_OPERATION_MATH_SIN: `sin()`, angles in degrees
47
+ * @VIPS_OPERATION_MATH_COS: `cos()`, angles in degrees
48
+ * @VIPS_OPERATION_MATH_TAN: `tan()`, angles in degrees
49
+ * @VIPS_OPERATION_MATH_ASIN: `asin()`, angles in degrees
50
+ * @VIPS_OPERATION_MATH_ACOS: `acos()`, angles in degrees
51
+ * @VIPS_OPERATION_MATH_ATAN: `atan()`, angles in degrees
52
52
  * @VIPS_OPERATION_MATH_LOG: log base e
53
53
  * @VIPS_OPERATION_MATH_LOG10: log base 10
54
54
  * @VIPS_OPERATION_MATH_EXP: e to the something
55
55
  * @VIPS_OPERATION_MATH_EXP10: 10 to the something
56
- * @VIPS_OPERATION_MATH_SINH: sinh(), angles in radians
57
- * @VIPS_OPERATION_MATH_COSH: cosh(), angles in radians
58
- * @VIPS_OPERATION_MATH_TANH: tanh(), angles in radians
59
- * @VIPS_OPERATION_MATH_ASINH: asinh(), angles in radians
60
- * @VIPS_OPERATION_MATH_ACOSH: acosh(), angles in radians
61
- * @VIPS_OPERATION_MATH_ATANH: atanh(), angles in radians
56
+ * @VIPS_OPERATION_MATH_SINH: `sinh()`, angles in radians
57
+ * @VIPS_OPERATION_MATH_COSH: `cosh()`, angles in radians
58
+ * @VIPS_OPERATION_MATH_TANH: `tanh()`, angles in radians
59
+ * @VIPS_OPERATION_MATH_ASINH: `asinh()`, angles in radians
60
+ * @VIPS_OPERATION_MATH_ACOSH: `acosh()`, angles in radians
61
+ * @VIPS_OPERATION_MATH_ATANH: `atanh()`, angles in radians
62
62
  *
63
- * See also: vips_math().
63
+ * See also: [method@Image.math].
64
64
  */
65
65
  typedef enum {
66
66
  VIPS_OPERATION_MATH_SIN,
@@ -84,11 +84,11 @@ typedef enum {
84
84
 
85
85
  /**
86
86
  * VipsOperationMath2:
87
- * @VIPS_OPERATION_MATH2_POW: pow(left, right)
88
- * @VIPS_OPERATION_MATH2_WOP: pow(right, left)
89
- * @VIPS_OPERATION_MATH2_ATAN2: atan2(left, right)
87
+ * @VIPS_OPERATION_MATH2_POW: `pow(left, right)`
88
+ * @VIPS_OPERATION_MATH2_WOP: `pow(right, left)`
89
+ * @VIPS_OPERATION_MATH2_ATAN2: `atan2(left, right)`
90
90
  *
91
- * See also: vips_math().
91
+ * See also: [method@Image.math].
92
92
  */
93
93
  typedef enum {
94
94
  VIPS_OPERATION_MATH2_POW,
@@ -103,7 +103,7 @@ typedef enum {
103
103
  * @VIPS_OPERATION_ROUND_FLOOR: largest integral value not greater than
104
104
  * @VIPS_OPERATION_ROUND_CEIL: the smallest integral value not less than
105
105
  *
106
- * See also: vips_round().
106
+ * See also: [method@Image.round].
107
107
  */
108
108
  typedef enum {
109
109
  VIPS_OPERATION_ROUND_RINT,
@@ -114,14 +114,14 @@ typedef enum {
114
114
 
115
115
  /**
116
116
  * VipsOperationRelational:
117
- * @VIPS_OPERATION_RELATIONAL_EQUAL: ==
118
- * @VIPS_OPERATION_RELATIONAL_NOTEQ: !=
119
- * @VIPS_OPERATION_RELATIONAL_LESS: <
120
- * @VIPS_OPERATION_RELATIONAL_LESSEQ: <=
121
- * @VIPS_OPERATION_RELATIONAL_MORE: >
122
- * @VIPS_OPERATION_RELATIONAL_MOREEQ: >=
117
+ * @VIPS_OPERATION_RELATIONAL_EQUAL: `==`
118
+ * @VIPS_OPERATION_RELATIONAL_NOTEQ: `!=`
119
+ * @VIPS_OPERATION_RELATIONAL_LESS: `<`
120
+ * @VIPS_OPERATION_RELATIONAL_LESSEQ: `<=`
121
+ * @VIPS_OPERATION_RELATIONAL_MORE: `>`
122
+ * @VIPS_OPERATION_RELATIONAL_MOREEQ: `>=`
123
123
  *
124
- * See also: vips_relational().
124
+ * See also: [method@Image.relational].
125
125
  */
126
126
  typedef enum {
127
127
  VIPS_OPERATION_RELATIONAL_EQUAL,
@@ -135,13 +135,13 @@ typedef enum {
135
135
 
136
136
  /**
137
137
  * VipsOperationBoolean:
138
- * @VIPS_OPERATION_BOOLEAN_AND: &
139
- * @VIPS_OPERATION_BOOLEAN_OR: |
140
- * @VIPS_OPERATION_BOOLEAN_EOR: ^
141
- * @VIPS_OPERATION_BOOLEAN_LSHIFT: >>
142
- * @VIPS_OPERATION_BOOLEAN_RSHIFT: <<
138
+ * @VIPS_OPERATION_BOOLEAN_AND: `&`
139
+ * @VIPS_OPERATION_BOOLEAN_OR: `|`
140
+ * @VIPS_OPERATION_BOOLEAN_EOR: `^`
141
+ * @VIPS_OPERATION_BOOLEAN_LSHIFT: `>>`
142
+ * @VIPS_OPERATION_BOOLEAN_RSHIFT: `<<`
143
143
  *
144
- * See also: vips_boolean().
144
+ * See also: [method@Image.boolean].
145
145
  */
146
146
  typedef enum {
147
147
  VIPS_OPERATION_BOOLEAN_AND,
@@ -158,7 +158,7 @@ typedef enum {
158
158
  * @VIPS_OPERATION_COMPLEX_RECT: convert to rectangular coordinates
159
159
  * @VIPS_OPERATION_COMPLEX_CONJ: complex conjugate
160
160
  *
161
- * See also: vips_complex().
161
+ * See also: [method@Image.complex].
162
162
  */
163
163
  typedef enum {
164
164
  VIPS_OPERATION_COMPLEX_POLAR,
@@ -171,7 +171,7 @@ typedef enum {
171
171
  * VipsOperationComplex2:
172
172
  * @VIPS_OPERATION_COMPLEX2_CROSS_PHASE: convert to polar coordinates
173
173
  *
174
- * See also: vips_complex2().
174
+ * See also: [method@Image.complex2].
175
175
  */
176
176
  typedef enum {
177
177
  VIPS_OPERATION_COMPLEX2_CROSS_PHASE,
@@ -183,7 +183,7 @@ typedef enum {
183
183
  * @VIPS_OPERATION_COMPLEXGET_REAL: get real component
184
184
  * @VIPS_OPERATION_COMPLEXGET_IMAG: get imaginary component
185
185
  *
186
- * See also: vips_complexget().
186
+ * See also: [method@Image.complexget].
187
187
  */
188
188
  typedef enum {
189
189
  VIPS_OPERATION_COMPLEXGET_REAL,
@@ -56,6 +56,18 @@
56
56
  #define VIPS_DEPRECATED_FOR(f) G_DEPRECATED_FOR(f) VIPS_API
57
57
  #endif
58
58
 
59
+ #if !defined(VIPS_DISABLE_DEPRECATION_WARNINGS) && \
60
+ (G_GNUC_CHECK_VERSION(4, 6) || \
61
+ __clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 4))
62
+ #define _VIPS_GNUC_DO_PRAGMA(x) _Pragma(G_STRINGIFY(x))
63
+ #define VIPS_DEPRECATED_MACRO _VIPS_GNUC_DO_PRAGMA(GCC warning "Deprecated pre-processor symbol")
64
+ #define VIPS_DEPRECATED_MACRO_FOR(f) \
65
+ _VIPS_GNUC_DO_PRAGMA(GCC warning G_STRINGIFY(Deprecated pre-processor symbol: replace with #f))
66
+ #else
67
+ #define VIPS_DEPRECATED_MACRO
68
+ #define VIPS_DEPRECATED_MACRO_FOR(f)
69
+ #endif
70
+
59
71
  #ifdef __cplusplus
60
72
  extern "C" {
61
73
  #endif /*__cplusplus*/
@@ -88,6 +100,8 @@ typedef enum {
88
100
  VIPS_PRECISION_LAST
89
101
  } VipsPrecision;
90
102
 
103
+ #ifndef __GI_SCANNER__
104
+
91
105
  /* Just for testing.
92
106
  */
93
107
  VIPS_API
@@ -95,6 +109,8 @@ char *vips_path_filename7(const char *path);
95
109
  VIPS_API
96
110
  char *vips_path_mode7(const char *path);
97
111
 
112
+ #endif /* !__GI_SCANNER__ */
113
+
98
114
  struct _VipsImage;
99
115
  typedef struct _VipsImage VipsImage;
100
116
  struct _VipsRegion;
@@ -39,11 +39,6 @@
39
39
  extern "C" {
40
40
  #endif /*__cplusplus*/
41
41
 
42
- /* A string in the process of being written to ... multiple calls to
43
- * vips_buf_append add to it. On overflow append "..." and block further
44
- * writes.
45
- */
46
-
47
42
  struct _VipsBuf {
48
43
  /* All fields are private.
49
44
  */
@@ -93,13 +93,18 @@ extern "C" {
93
93
  #define VIPS_D3250_Y0 (100.0)
94
94
  #define VIPS_D3250_Z0 (45.8501)
95
95
 
96
- /* Note: constants align with those defined in lcms2.h.
96
+ /* Note: constants align with those defined in lcms2.h, except for
97
+ * VIPS_INTENT_AUTO, which is libvips-specific.
97
98
  */
98
99
  typedef enum {
99
100
  VIPS_INTENT_PERCEPTUAL = 0,
100
101
  VIPS_INTENT_RELATIVE,
101
102
  VIPS_INTENT_SATURATION,
102
103
  VIPS_INTENT_ABSOLUTE,
104
+ /* Leave room for possible new rendering intents beyond the
105
+ * four standard ones.
106
+ */
107
+ VIPS_INTENT_AUTO = 32,
103
108
  VIPS_INTENT_LAST
104
109
  } VipsIntent;
105
110
 
@@ -144,12 +149,6 @@ VIPS_API
144
149
  int vips_Lab2LCh(VipsImage *in, VipsImage **out, ...)
145
150
  G_GNUC_NULL_TERMINATED;
146
151
  VIPS_API
147
- int vips_Yxy2Lab(VipsImage *in, VipsImage **out, ...)
148
- G_GNUC_NULL_TERMINATED;
149
- VIPS_API
150
- int vips_CMC2XYZ(VipsImage *in, VipsImage **out, ...)
151
- G_GNUC_NULL_TERMINATED;
152
- VIPS_API
153
152
  int vips_Lab2XYZ(VipsImage *in, VipsImage **out, ...)
154
153
  G_GNUC_NULL_TERMINATED;
155
154
  VIPS_API
@@ -58,8 +58,6 @@ extern "C" {
58
58
  (G_TYPE_INSTANCE_GET_CLASS((obj), \
59
59
  VIPS_TYPE_CONNECTION, VipsConnectionClass))
60
60
 
61
- /* Communicate with something like a socket or pipe.
62
- */
63
61
  typedef struct _VipsConnection {
64
62
  VipsObject parent_object;
65
63
 
@@ -116,13 +114,6 @@ void vips_pipe_read_limit_set(gint64 limit);
116
114
  (G_TYPE_INSTANCE_GET_CLASS((obj), \
117
115
  VIPS_TYPE_SOURCE, VipsSourceClass))
118
116
 
119
- /* Read from something like a socket, file or memory area and present the data
120
- * with a unified seek / read / map interface.
121
- *
122
- * During the header phase, we save data from unseekable sources in a buffer
123
- * so readers can rewind and read again. We don't buffer data during the
124
- * decode stage.
125
- */
126
117
  struct _VipsSource {
127
118
  VipsConnection parent_object;
128
119
 
@@ -194,14 +185,14 @@ typedef struct _VipsSourceClass {
194
185
  */
195
186
 
196
187
  /* Read from the source into the supplied buffer, args exactly as
197
- * read(2). Set errno on error.
188
+ * [`read()`](man:read(2)). Set errno on error.
198
189
  *
199
190
  * We must return gint64, since ssize_t is often defined as unsigned
200
191
  * on Windows.
201
192
  */
202
- gint64 (*read)(VipsSource *, void *, size_t);
193
+ gint64 (*read)(VipsSource *source, void *buffer, size_t length);
203
194
 
204
- /* Seek to a certain position, args exactly as lseek(2). Set errno on
195
+ /* Seek to a certain position, args exactly as [`lseek()`](man:lseek(2)). Set errno on
205
196
  * error.
206
197
  *
207
198
  * Unseekable sources should always return -1. VipsSource will then
@@ -210,7 +201,7 @@ typedef struct _VipsSourceClass {
210
201
  * We have to use int64 rather than off_t, since we must work on
211
202
  * Windows, where off_t can be 32-bits.
212
203
  */
213
- gint64 (*seek)(VipsSource *, gint64, int);
204
+ gint64 (*seek)(VipsSource *source, gint64 offset, int whence);
214
205
 
215
206
  } VipsSourceClass;
216
207
 
@@ -226,7 +217,7 @@ VipsSource *vips_source_new_from_blob(VipsBlob *blob);
226
217
  VIPS_API
227
218
  VipsSource *vips_source_new_from_target(VipsTarget *target);
228
219
  VIPS_API
229
- VipsSource *vips_source_new_from_memory(const void *data, size_t size);
220
+ VipsSource *vips_source_new_from_memory(const void *data, size_t length);
230
221
  VIPS_API
231
222
  VipsSource *vips_source_new_from_options(const char *options);
232
223
 
@@ -237,7 +228,7 @@ int vips_source_unminimise(VipsSource *source);
237
228
  VIPS_API
238
229
  int vips_source_decode(VipsSource *source);
239
230
  VIPS_API
240
- gint64 vips_source_read(VipsSource *source, void *data, size_t length);
231
+ gint64 vips_source_read(VipsSource *source, void *buffer, size_t length);
241
232
  VIPS_API
242
233
  gboolean vips_source_is_mappable(VipsSource *source);
243
234
  VIPS_API
@@ -273,9 +264,6 @@ gint64 vips_source_length(VipsSource *source);
273
264
  (G_TYPE_INSTANCE_GET_CLASS((obj), \
274
265
  VIPS_TYPE_SOURCE_CUSTOM, VipsSourceCustomClass))
275
266
 
276
- /* Subclass of source_custom with signals for handlers. This is supposed to be
277
- * useful for language bindings.
278
- */
279
267
  typedef struct _VipsSourceCustom {
280
268
  VipsSource parent_object;
281
269
 
@@ -288,8 +276,8 @@ typedef struct _VipsSourceCustomClass {
288
276
  * We must use gint64 everywhere since there's no G_TYPE_SIZE.
289
277
  */
290
278
 
291
- gint64 (*read)(VipsSourceCustom *, void *, gint64);
292
- gint64 (*seek)(VipsSourceCustom *, gint64, int);
279
+ gint64 (*read)(VipsSourceCustom *source, void *buffer, gint64 length);
280
+ gint64 (*seek)(VipsSourceCustom *source, gint64 offset, int whence);
293
281
 
294
282
  } VipsSourceCustomClass;
295
283
 
@@ -355,6 +343,10 @@ GInputStream *vips_g_input_stream_new_from_source(VipsSource *source);
355
343
  (G_TYPE_INSTANCE_GET_CLASS((obj), \
356
344
  VIPS_TYPE_SOURCE_G_INPUT_STREAM, VipsSourceGInputStreamClass))
357
345
 
346
+ /**
347
+ * VipsSourceGInputStream: (copy-func g_object_ref)
348
+ * (free-func g_object_unref)
349
+ */
358
350
  typedef struct _VipsSourceGInputStream {
359
351
  VipsSource parent_instance;
360
352
 
@@ -396,8 +388,6 @@ VipsSourceGInputStream *vips_source_g_input_stream_new(GInputStream *stream);
396
388
  */
397
389
  #define VIPS_TARGET_BUFFER_SIZE (8500)
398
390
 
399
- /* Output to something like a socket, pipe or memory area.
400
- */
401
391
  struct _VipsTarget {
402
392
  VipsConnection parent_object;
403
393
 
@@ -448,11 +438,11 @@ typedef struct _VipsTargetClass {
448
438
  * We must return gint64, since ssize_t is often defined as unsigned
449
439
  * on Windows.
450
440
  */
451
- gint64 (*write)(VipsTarget *, const void *, size_t);
441
+ gint64 (*write)(VipsTarget *target, const void *data, size_t length);
452
442
 
453
443
  /* Deprecated in favour of ::end.
454
444
  */
455
- void (*finish)(VipsTarget *);
445
+ void (*finish)(VipsTarget *target);
456
446
 
457
447
  /* libtiff needs to be able to seek and read on targets,
458
448
  * unfortunately.
@@ -461,24 +451,24 @@ typedef struct _VipsTargetClass {
461
451
  */
462
452
 
463
453
  /* Read from the target into the supplied buffer, args exactly as
464
- * read(2). Set errno on error.
454
+ * [`read()`](man:read(2)). Set errno on error.
465
455
  *
466
456
  * We must return gint64, since ssize_t is often defined as unsigned
467
457
  * on Windows.
468
458
  */
469
- gint64 (*read)(VipsTarget *, void *, size_t);
459
+ gint64 (*read)(VipsTarget *target, void *buffer, size_t length);
470
460
 
471
- /* Seek output. Args exactly as lseek(2).
461
+ /* Seek output. Args exactly as [`lseek()`](man:lseek(2)).
472
462
  *
473
463
  * We have to use int64 rather than off_t, since we must work on
474
464
  * Windows, where off_t can be 32-bits.
475
465
  */
476
- gint64 (*seek)(VipsTarget *, gint64 offset, int whence);
466
+ gint64 (*seek)(VipsTarget *target, gint64 offset, int whence);
477
467
 
478
468
  /* Output has been generated, so do any clearing up,
479
469
  * eg. copy the bytes we saved in memory to the target blob.
480
470
  */
481
- int (*end)(VipsTarget *);
471
+ int (*end)(VipsTarget *target);
482
472
 
483
473
  } VipsTargetClass;
484
474
 
@@ -492,7 +482,7 @@ VipsTarget *vips_target_new_to_file(const char *filename);
492
482
  VIPS_API
493
483
  VipsTarget *vips_target_new_to_memory(void);
494
484
  VIPS_API
495
- VipsTarget *vips_target_new_temp(VipsTarget *target);
485
+ VipsTarget *vips_target_new_temp(VipsTarget *based_on);
496
486
  VIPS_API
497
487
  int vips_target_write(VipsTarget *target, const void *data, size_t length);
498
488
  VIPS_API
@@ -537,8 +527,6 @@ int vips_target_write_amp(VipsTarget *target, const char *str);
537
527
 
538
528
  #define VIPS_TARGET_CUSTOM_BUFFER_SIZE (4096)
539
529
 
540
- /* Output to something like a socket, pipe or memory area.
541
- */
542
530
  typedef struct _VipsTargetCustom {
543
531
  VipsTarget parent_object;
544
532
 
@@ -551,11 +539,11 @@ typedef struct _VipsTargetCustomClass {
551
539
  * We must use gint64 everywhere since there's no G_TYPE_SIZE.
552
540
  */
553
541
 
554
- gint64 (*write)(VipsTargetCustom *, const void *, gint64);
555
- void (*finish)(VipsTargetCustom *);
556
- gint64 (*read)(VipsTargetCustom *, void *, gint64);
557
- gint64 (*seek)(VipsTargetCustom *, gint64, int);
558
- int (*end)(VipsTargetCustom *);
542
+ gint64 (*write)(VipsTargetCustom *target, const void *data, gint64 length);
543
+ void (*finish)(VipsTargetCustom *target);
544
+ gint64 (*read)(VipsTargetCustom *target, void *buffer, gint64 length);
545
+ gint64 (*seek)(VipsTargetCustom *target, gint64 offset, int whence);
546
+ int (*end)(VipsTargetCustom *target);
559
547
 
560
548
  } VipsTargetCustomClass;
561
549
 
@@ -89,8 +89,11 @@ VIPS_API
89
89
  GType vips_fail_on_get_type(void) G_GNUC_CONST;
90
90
  #define VIPS_TYPE_FAIL_ON (vips_fail_on_get_type())
91
91
  VIPS_API
92
- GType vips_saveable_get_type(void) G_GNUC_CONST;
93
- #define VIPS_TYPE_SAVEABLE (vips_saveable_get_type())
92
+ GType vips_foreign_saveable_get_type(void) G_GNUC_CONST;
93
+ #define VIPS_TYPE_FOREIGN_SAVEABLE (vips_foreign_saveable_get_type())
94
+ VIPS_API
95
+ GType vips_foreign_coding_get_type(void) G_GNUC_CONST;
96
+ #define VIPS_TYPE_FOREIGN_CODING (vips_foreign_coding_get_type())
94
97
  VIPS_API
95
98
  GType vips_foreign_keep_get_type(void) G_GNUC_CONST;
96
99
  #define VIPS_TYPE_FOREIGN_KEEP (vips_foreign_keep_get_type())
@@ -176,6 +179,12 @@ GType vips_size_get_type(void) G_GNUC_CONST;
176
179
  VIPS_API
177
180
  GType vips_token_get_type(void) G_GNUC_CONST;
178
181
  #define VIPS_TYPE_TOKEN (vips_token_get_type())
182
+ /* Deprecated enumerations */
183
+ #ifndef __GI_SCANNER__
184
+ VIPS_API
185
+ GType vips_saveable_get_type(void) G_GNUC_CONST;
186
+ #define VIPS_TYPE_SAVEABLE (vips_saveable_get_type())
187
+ #endif /*__GI_SCANNER__*/
179
188
  G_END_DECLS
180
189
 
181
190
  #endif /*VIPS_ENUM_TYPES_H*/