Lovell Fuller
f9ace1724e
Fix a couple of typos in help messages ( #2814 )
2022-05-21 09:47:51 +01:00
Kleis Auke Wolthuizen
07edfe37b1
Improve symbol visibility ( #2688 )
...
* Improve symbol visibility
* Decorate required internal symbols with VIPS_API
* Remove a couple of stray header decls
* Incorporate review comment
- Ensure symbol visibility is also set on static libraries.
- Prefer to use `cc.has_function_attribute('visibility:hidden')`.
* Don't export internal deprecated symbols
* Move deprecated symbols to vips7compat.h
* `IM_FORMAT_H` -> `VIPS_FORMAT_H`
* Move `vips_window_ref` compat stub to `vips7compat.c`
* Disable deprecation warnings internally
* `vips_image_get_kill` -> `vips_image_iskilled`
* Ensure API compatibility
* Add missing include directives
* Move `vips__init` decl to vips7compat
* Move `vips__get_sizeof_vipsobject` to vips7compat
* Fix introspection build
* Fix 2 introspection warnings
* Ensure compatibility with vipsdisp
/usr/bin/ld: tilesource.o: in function `tile_source_new_from_source':
vipsdisp/tilesource.c:1627: undefined reference to `vips__region_no_ownership'
2022-04-16 10:58:55 +01:00
John Cupitt
a77519f7c3
try to improve docs
...
see https://github.com/libvips/libvips/discussions/2733#discussioncomment-2412590
2022-03-22 09:10:34 +00:00
Kleis Auke Wolthuizen
330ebf3cd7
Mosaicing fixes and improvements ( #2705 )
...
* Fix segv in `vips_mosaic1`
* Fix ref handling in `rotjoin_search`
* Pass `oarea` to `vips_affine` as `VipsArrayInt` instead
* Flip X/Y positions in `vips__coeff`
* Fix `-Wunused-but-set-variable` warning
* Deprecate unused mosaicing arguments
* Remove a couple of stray header decls
2022-03-03 20:10:20 +00:00
shado23
c02b69eaba
Address review feedback on VRegion ( #2684 ) ( #2696 )
...
* Add VRegion8.h to Makefile.am, meson.build, Doxyfile.in.
* Fix inaccurate function documentation.
* Add stride method to VRegion.
2022-02-28 16:17:40 +00:00
shado23
3a45d6e842
Add support for regions in the C++ API
2022-02-25 16:19:44 +01:00
Corentin Noël
02901436d4
Add meson build system ( #2637 )
...
Allows to use the Meson build system to build the project.
2022-02-08 15:19:36 +00:00
Heshy Roskes
d8c04011ea
Add hyperbolic functions ( #2508 )
...
* add hyperbolic functions
* add hyperbolic function tests
* changelog
* add inverse hyperbolic functions for old compilers
2021-11-02 15:05:37 +00:00
Kleis Auke Wolthuizen
31b54056db
cplusplus: only generate doc comments for non-deprecated args ( #2505 )
2021-11-01 15:21:06 +00:00
John Cupitt
13285c7cfc
Merge branch 'master' of https://github.com/indus/libvips into indus-master
2021-10-20 18:41:39 +01:00
Joshua Sager
608a7cee9b
Introduce unlimited flag, enabling unlimited text chunks in PNGs ( #2419 )
...
* Introduce unlimited flag, enabling unlimited text chunks
* remove extraneous optional flag causing GLib-GObject-CRITICAL **: 17:10:34.095: validate_and_install_class_property
* Address feedback from @jcupitt
* various compilation error fixes
* Interlace detection uses unlimited=false
* attempt to fix tests
* documentation changes, introduced MAX_PNG_TEXT_CHUNKS and bumped max to 20 (was 10)
2021-08-29 18:06:33 +01:00
Lovell Fuller
1f5d6f6bc9
Add gifsave operation, depends on cgif and libimagequant ( #2381 )
2021-08-22 18:11:41 +01:00
Keim, Stefan
f75f698ab4
Add atan2 to math2
2021-06-18 11:14:02 +02:00
Kleis Auke Wolthuizen
b78812f200
Update C++ binding and function list
2021-05-12 11:36:24 +02:00
John Cupitt
74471ba258
Merge pull request #2212 from kleisauke/cpp-function-list-2
...
Update C++ binding and function list
2021-04-21 20:15:55 +01:00
Kleis Auke Wolthuizen
526cf4ec37
C++: add set/get for an array of doubles
2021-04-21 18:49:56 +02:00
Kleis Auke Wolthuizen
c294835200
Update C++ binding and function list
2021-04-21 18:09:34 +02:00
John Cupitt
9cbb4c2cd1
Merge pull request #1709 from libvips/add-libnsgif
...
Add libnsgif support
2021-03-27 15:10:30 +00:00
Philipp Trulson
13a4d9f7ea
Set correct description for heifsave argument
2021-03-24 22:57:06 +01:00
John Cupitt
003a444158
oop, we no longer need vips-operators.h
2021-03-07 15:03:13 +00:00
John Cupitt
b51f4dab28
fix make dist
2021-03-07 14:59:31 +00:00
Lovell Fuller
3ad7363104
heifsave: add option to control subsample_mode
...
Defaults to no subsampling when Q>90 for consistency with jpegsave.
Deprecate VipsForeignJpegSubsample enum, replace with more generic
VipsForeignSubsample.
2021-01-13 10:01:34 +00:00
John Cupitt
fd0a0905ff
note VImage::new_from_memory_steal() in ChangeLog
...
plus doxy commnets etc., see https://github.com/libvips/libvips/pull/1758/
2020-09-24 10:44:49 +01:00
John Cupitt
25bd6cce6f
Merge branch 'master' into master
2020-09-24 10:31:01 +01:00
John Cupitt
875c0fdf3c
finish C++ doc comments
2020-09-09 11:13:22 +01:00
John Cupitt
6357fd5651
more C++ docs
2020-09-07 19:26:51 +01:00
John Cupitt
3fcaf1ea06
add some more C++ docs
2020-09-07 18:02:50 +01:00
John Cupitt
fa84d297dd
note how to list interpolators
2020-08-20 07:05:13 +01:00
John Cupitt
409301a200
improve C++ API
...
Make VObject inheritance public, so we can have a single set() for all
VObject-derived types.
2020-08-19 15:08:28 +01:00
John Cupitt
99313edb68
fix some unknown types
...
We were missing VipsInterpolate and guint64. Add guint64 set() as well.
see 636e265477 (commitcomment-41589463)
2020-08-19 14:36:50 +01:00
John Cupitt
d4c20e6d1c
a few more doc comments
2020-08-18 01:28:40 +01:00
John Cupitt
5e985ad187
add doc comments for VError and VInterpolate
2020-08-17 19:16:03 +01:00
John Cupitt
636e265477
revise cpp codegen again
...
use f'' strings, polish formatting
2020-08-17 18:07:11 +01:00
John Cupitt
c7bab32109
add optional params to doc strings
2020-08-17 14:11:17 +01:00
John Cupitt
0d9dce4326
move vips-operators.h into the header
...
doxy hates #include inside classes
2020-08-17 10:58:49 +01:00
Kyle Schwarz
557bc5f6b4
Don't check g_signal_connect()'s return
2020-08-02 10:16:55 -04:00
Kyle Schwarz
fe815ff587
Add C++ bindings for new_from_memory_steal()
...
new_from_memory_steal() will create a new image with the input
buffer and will "move" the data into the image. The buffer is then
managed by the image, and will be freed when it goes out of scope.
2020-08-01 21:58:14 -04:00
John Cupitt
105e56939a
update cplusplus API for 8.10
2020-07-05 22:38:08 +01:00
Kleis Auke Wolthuizen
e5323b070b
Update C++ binding and function list
2020-06-18 14:45:14 +02:00
John Cupitt
78f927e606
revide comments in cpp binding
2020-03-27 11:42:58 +00:00
jaubourg
28b4c918b6
allow null image as source for assignment and copy constructor: fixes #1595
2020-03-27 02:46:57 +01:00
Kleis Auke Wolthuizen
31bf0e3cb7
Update function list for stream -> source rename
2020-01-01 12:28:18 +01:00
John Cupitt
95444d0849
rename stuff in the C++ API for stream -> source
2019-12-30 17:49:41 +00:00
John Cupitt
4c5873809f
experiment with renaming stream
...
rename as VipsConnection, VipsSource, VipsTarget etc.
see https://github.com/libvips/libvips/issues/1494#issuecomment-569498619
renamed with this script:
```
set -e
edit() {
sed -i -E "$1" rename
}
for i in $*; do
cp $i rename
edit s/VIPS_STREAMOU/VIPS_TARGET_CUSTOM/g
edit s/VIPS_STREAMO/VIPS_TARGET/g
edit s/VIPS_STREAMIU/VIPS_SOURCE_CUSTOM/g
edit s/VIPS_STREAMI/VIPS_SOURCE/g
edit s/VIPS_STREAM/VIPS_CONNECTION/g
edit s/vips_streamou/vips_target_custom/g
edit s/vips_streamo/vips_target/g
edit s/vips_streamiu/vips_source_custom/g
edit s/vips_streami/vips_source/g
edit s/vips_stream/vips_connection/g
edit s/VipsStreamou/VipsTargetCustom/g
edit s/VipsStreamo/VipsTarget/g
edit s/VipsStreamiu/VipsSourceCustom/g
edit s/VipsStreami/VipsSource/g
edit s/VipsStream/VipsConnection/g
# eg. VIPS_TYPE_STREAM or VIPS_IS_STREAM
edit "s/VIPS_([A-Z]+)_STREAMOU/VIPS_\1_TARGET_CUSTOM/g"
edit "s/VIPS_([A-Z]+)_STREAMO/VIPS_\1_TARGET/g"
edit "s/VIPS_([A-Z]+)_STREAMIU/VIPS_\1_SOURCE_CUSTOM/g"
edit "s/VIPS_([A-Z]+)_STREAMI/VIPS_\1_SOURCE/g"
edit "s/VIPS_([A-Z]+)_STREAM/VIPS_\1_CONNECTION/g"
edit s/streamou/target_custom/g
edit s/streamo/target/g
edit s/streamiu/source_custom/g
edit s/streami/source/g
# various identifiers which also change
edit s/is_a_stream/is_a_source/g
edit s/find_load_stream/find_load_source/g
edit s/find_save_stream/find_save_target/g
edit s/new_from_stream/new_from_source/g
edit s/write_to_stream/write_to_target/g
edit s/vips_thumbnail_stream/vips_thumbnail_source/g
# eg. vips_webpload_stream
edit "s/vips_([a-z]+)load_stream/vips_\1load_source/g"
# eg. vips_webpsave_stream
edit "s/vips_([a-z]+)save_stream/vips_\1save_target/g"
mv rename $i
done
```
2019-12-29 21:40:21 +00:00
Kleis Auke Wolthuizen
2499b38403
Update C++ binding and function list
...
The generators use the new Introspect class of pyvips.
2019-11-29 14:51:03 +01:00
John Cupitt
562da3e5ab
rename new_from_filename as new_from_file
...
So VipsStreami matches VipsImage. Same for new_to_filename.
2019-11-22 17:13:20 +00:00
John Cupitt
123c52be70
revert to call-by-value for c++ API
2019-11-13 08:44:59 +00:00
John Cupitt
92521c0dc6
add options back to VInterpolate
...
since we might use them in the future
2019-11-12 14:03:25 +00:00
John Cupitt
b8ea3f8442
update cpp interface for stream variable rename
2019-11-11 09:24:45 +00:00
Kleis Auke Wolthuizen
b49910d270
Add support for streaming in the C++ binding
...
See: libvips/libvips#1443 .
2019-11-10 13:46:29 +01:00