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
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
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
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
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
123c52be70
revert to call-by-value for c++ API
2019-11-13 08:44:59 +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
Kleis Auke Wolthuizen
42bb8f51b9
Support std::vector within the image_get/set_array_int functions
2019-07-15 15:29:19 +02:00
Tomáš Szabo
1b54684650
Add set and get for an array of ints
2019-07-05 17:29:11 +02:00
John Cupitt
75ebb162f9
Merge branch 'master' into add-icc-fallbacks
2019-01-12 13:58:30 +00:00
Kleis Auke Wolthuizen
c397543c8e
Add a std::string overload function for new_from_buffer
2019-01-11 13:53:09 +01:00
Kleis Auke Wolthuizen
bd5711ef8e
Add remove function to the C++ binding
...
To remove an item of metadata.
2019-01-10 17:39:45 +01:00
Kleis Auke Wolthuizen
cd340d0ace
Add missing C++ functions
...
The functions has_alpha() and copy_memory() were missing from the C++ binding.
2019-01-10 14:56:04 +01:00
John Cupitt
b8a158b69b
seems to work
...
added some more consts as well
2019-01-03 13:34:13 +00:00
John Cupitt
26d0e312c6
add bandand/or/eor to the cpp binding
...
oops, they had been dropped
thanks clcaalu
see https://github.com/libvips/libvips/issues/1165
2018-11-16 13:10:22 +00:00
Fingolfin1196
c7f828e968
Update VImage8.h
...
Should fix the “nullptr undeclared” issue.
2018-10-10 15:57:50 +02:00
Fingolfin1196
b0f21d2727
Update VImage8.h
...
VObject now has an is_null check, which is then used in VImage.
2018-10-10 15:48:23 +02:00
John Cupitt
0e3cac1a72
make cpp overloads const
...
all overloads are declared const now, where possible
also revised cpp examples and ran them to check
see https://github.com/jcupitt/libvips/issues/983
2018-06-11 15:24:11 +01:00
John Cupitt
ca6410e1a6
make members and getters "const" in cpp api
...
eg. VImage::width() is now
int VImage::width() const;
ie. it does not alter the image objects. In factr we can mark almost all
members const.
see https://github.com/jcupitt/libvips/issues/983
2018-06-11 14:30:17 +01:00
Lovell Fuller
cea15b2d8f
Prevent compiler warning with size_t to int cast
2018-02-03 18:05:07 +00:00
John Cupitt
e52d2c9f7f
add composite shortcut to cpp
...
two composite just two images
2017-10-06 16:56:20 +01:00
Lovell Fuller
8bd2208e5e
cplusplus: offset coords are int rather than double
2017-09-14 10:25:15 +01:00
John Cupitt
1504fb0249
use bandjoin_const from cpp
2017-04-29 10:17:38 +01:00
John Cupitt
7882602dfe
C/C++ done
...
python next
2017-04-26 14:52:28 +01:00
John Cupitt
8062a4b1e6
update cpp API for arg order changes
...
hopefully user code won't see this
2017-03-13 13:28:37 +00:00
John Cupitt
b140c18a37
various tweaks to calm coverity
...
passes cleanly now
2017-01-20 08:55:13 +00:00
Lovell Fuller
e1aef0445b
MSVC requires __declspec first for return by reference
...
Ensure consistent modifier order across all exported functions
Move assignment operators to be "outside" definitions to aid export
2016-10-15 22:02:24 +01:00
John Cupitt
eb7768ff61
Merge branch 'master' into add-assignment-overloads
2016-06-11 20:15:42 +01:00
John Cupitt
28efdf1695
working!
2016-06-11 17:36:06 +01:00
John Cupitt
8667dd0d18
VImage::ifthenelse() fix
...
the prototype was missing =0 on options for scalar constant forms
2016-06-10 17:34:41 +01:00
John Cupitt
93951fd04a
start adding
2016-06-10 14:57:46 +01:00
John Cupitt
ad56c57830
add implementation for VImage::write()
...
oops, it was missing
also, change the return type from void to VImage. This makes chaining
possible, eg.:
VImage memory = im.write( Viameg::new_memory() );
2016-06-10 14:22:08 +01:00
Lovell Fuller
baa175c4c0
Allow MSVC to link CPP overloads introduced in da43a40
2016-04-15 22:16:29 +01:00
John Cupitt
da43a4041f
move cpp overloads outside class
...
so they are true functions and we can take their address
see https://github.com/jcupitt/libvips/issues/409
2016-03-25 06:09:07 +00:00
Lovell Fuller
20ae80397d
Enable compilation of vips8 C++ bindings with MSVC
...
Add VIPS_CPLUSPLUS_API macro to allow DLL creation
2016-01-11 17:56:02 +00:00
John Cupitt
50db131865
VImage::get_typeof() returns GType
...
it was int, causing some compiler warnings on some platforms.
see https://github.com/jcupitt/libvips/issues/362
2016-01-09 20:27:14 +00:00