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
John Cupitt
66373e9b41
remove exception specs from vips8 C++ interface
...
We had exception specs on the C++ interface, but C++11 does not support
them and some compilers have never honoured them. Remove all specs.
Thanks Lovell.
See https://github.com/jcupitt/libvips/issues/362
2016-01-09 14:52:05 +00:00
John Cupitt
ad017dc56f
add more C++ convenience functions
...
flipver() etc.
2015-04-24 10:10:44 +01:00
John Cupitt
ded01df512
c++: add [], change ()
...
() used to return element zero, just return a vector
add [] overload
2015-03-01 10:43:02 +00:00
John Cupitt
367819b5cc
oops
2015-02-28 22:56:09 +00:00
John Cupitt
5d912fdbbb
add [] overload to python
...
index and slice image bands
2015-02-28 16:53:06 +00:00
John Cupitt
ce557ba6de
add VInterpolate wrapper class
...
to cplusplus, see https://github.com/jcupitt/libvips/issues/230
2015-01-30 21:19:58 +00:00
John Cupitt
6f101ae86b
remove VImage::scale()
...
it clashed with the VipsScale operator, see
https://github.com/jcupitt/libvips/pull/213
2015-01-06 12:00:11 +00:00
John Cupitt
8267dd2621
naming improvements
...
and test_overloads.cpp has started working
2014-11-05 14:04:46 +00:00
John Cupitt
ca6eb088f3
add () overload for read pixel
2014-10-31 20:24:40 +00:00
John Cupitt
5694bf6f4c
add all new() and write() methods
...
VImage::new_from_buffer() etc.
2014-10-31 19:15:29 +00:00
John Cupitt
2a992375fe
add more type conversions
...
so we automatically do int and double -> doublevec and intvec
2014-10-31 18:11:26 +00:00
John Cupitt
35bcd4eaa0
reformat
2014-10-30 22:11:43 +00:00
John Cupitt
d6a6d7ae71
set of overloads for new cpp API
...
all the usual ones .. compiles, but untested
2014-10-30 21:53:24 +00:00
John Cupitt
4173ddfa9c
add make constant image
2014-10-29 12:39:25 +00:00
John Cupitt
d012cef3b4
add some simple extras
...
.bandjoin(), .bandsplit(), .sin() etc etc
2014-10-29 09:47:02 +00:00
John Cupitt
cabb4488be
full cpp wrapper compiles
2014-10-28 10:12:06 +00:00