John Cupitt
dfaabfc951
experiment with doxygen for C++ docs
2020-08-17 09:35:51 +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
9ea91810bb
revise docs for _inplace
...
We call vips_image_inplace() automatically now, so there's no need for
clients to use this.
see https://github.com/libvips/libvips/issues/1610
2020-04-16 12:09:07 +01: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
John Cupitt
e236f19f97
add fallbacks to new_from_stream
...
If the stream-based loaders fail, vips_image_new_from_stream() now falls
back to the old file and buffer loaders.
The file and buffer loaders already try the stream loaders first.
2019-12-10 17:19:12 +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
John Cupitt
42b4474356
stray decl
2019-11-10 18:03:38 +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
John Cupitt
503e83e232
update resize C++ example
2019-08-04 17:43:35 +01:00
John Cupitt
01a82646a1
experiment with minimise in insert
...
try minimising sub after we've passed it
2019-07-27 13:40:18 +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
Kleis Auke Wolthuizen
8ac6574560
Change 'char *' to 'const char *' in the C++ binding
...
+ some documentation improvements.
2019-04-24 16:02:52 +02:00
John Cupitt
bae484ba2c
remove old c++ and py interfaces
...
Instead, use the new(er) vips8 C++ interface, and the new(er) python
interface in pypi.
https://pypi.org/project/pyvips
2019-04-12 16:27:28 +01:00
John Cupitt
38bd4f1be4
break lines at 80 cols in gen-operators
...
plus tiny cleanups
2019-02-03 13:18:22 +00:00
kleisauke
241f52fb54
Fix compatibility with Makefile
...
+ all operations are now provided with a C++ style comment block.
2019-02-03 12:13:04 +01:00
kleisauke
de27688eea
Use pyvips to generate the C++ binding
2019-02-01 21:45:12 +01: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
10eef89a7f
update c++ bindings
2017-11-26 17:45:04 +00:00
John Cupitt
e179e3b11f
premultiply alpha (if necessary) in affine
2017-11-18 10:59:20 +00:00
John Cupitt
e52d2c9f7f
add composite shortcut to cpp
...
two composite just two images
2017-10-06 16:56:20 +01:00
John Cupitt
f0aeed1c64
regenerate cpp binding for new methods
2017-10-06 16:39:52 +01:00
John Cupitt
d601c5ee19
remmove extra null check
...
see https://github.com/jcupitt/libvips/issues/761
2017-10-01 19:08:51 +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
fd6006bacb
Merge branch 'master' into add-smartcrop
2017-03-13 20:41:22 +00: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
d40773515c
add smartcrop
2017-03-01 15:41:26 +00:00
John Cupitt
b140c18a37
various tweaks to calm coverity
...
passes cleanly now
2017-01-20 08:55:13 +00:00
John Cupitt
2be0b97dce
switch to g_warning()_/g_info()
...
we had vips_warn() and vips_info(), but they are a bit crappy ... switch
to g_warning() and g_info() instead
see https://github.com/jcupitt/libvips/issues/544
2017-01-03 15:52:27 +00:00
John Cupitt
7d0c821a6e
add tests for thumbnail
2016-11-02 13:51:09 +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
8503065faa
regen cpp binding
...
need to update for the xshrink -> hshrink change
2016-08-18 16:03:33 +01:00
John Cupitt
0c7053bae1
Merge branch 'master' of github.com:jcupitt/libvips
2016-08-04 12:38:04 +01:00
John Cupitt
ad046680f7
tiny polish to cpp
2016-08-04 12:37:48 +01:00
John Cupitt
d78f87702d
missing unref in cpp binding
...
operation was not unreffed if build failed
2016-07-29 15:09:53 +01:00
John Cupitt
bd9cc25278
tiny
2016-07-29 10:16:33 +01:00
John Cupitt
2dc43198e4
final fixups
2016-07-24 14:47:22 +01:00
John Cupitt
eb7768ff61
Merge branch 'master' into add-assignment-overloads
2016-06-11 20:15:42 +01:00
John Cupitt
83b1c33441
add tests for C++ += etc
...
all seems to work!
2016-06-11 20:14:48 +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
Henri Chain
5678f93257
Add buffer-write support for Radiance
2016-05-23 16:37:28 +02:00
John Cupitt
d1e7b78bbd
Merge branch 'master' of github.com:jcupitt/libvips
2016-04-17 10:24:18 +01:00
John Cupitt
567ea0c1c2
comment reformat
2016-04-17 10:22:20 +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
John Cupitt
c2be771342
fix load from buffer, update APIs
2016-02-12 20:04:46 +00:00
John Cupitt
153886d2eb
add svgload
...
load from bubffer is not working though, strange ... it seems to be
generating a 16-biit image?
2016-02-09 11:01:12 +00:00
John Cupitt
9f566fa4a9
update cplusplus binding
2016-02-08 20:26:22 +00:00
John Cupitt
8cffd136e9
finish reduce
...
and fix up bicubic a bit, it works better on int32 images now
2016-02-07 17:41:39 +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
bf64fde872
regen C++ interface
2016-01-09 15:08:17 +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
ca51b46e9a
docs, c++, all done
2015-11-07 20:54:00 +00:00
John Cupitt
2b2bf30fbd
oops, update cpp binding
2015-10-06 22:45:37 +01:00
John Cupitt
01025328da
fix some cppcheck warnings
...
try:
$ cppcheck -f --enable=warning,performance,portability -j4 . 2> err.txt
there are still some left, see:
see https://github.com/jcupitt/libvips/issues/331
2015-09-28 22:01:15 +01:00
John Cupitt
f38c3956af
better test of C++ API
2015-05-05 09:10:08 +01:00
John Cupitt
db4ee8d6b6
fix a ref leak in the C++ API
...
see https://github.com/jcupitt/libvips/issues/290
thanks huskier
added a write-to-buffer example as well
2015-05-04 19:44:56 +01: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
Maurus Cuelenaere
dba1b1d81b
Add ImageMagick buffer support
...
This commits adds buffer support for the ImageMagick backend, using the Blob
API.
2015-02-15 21:45:17 +01: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
6440830315
required C++ output params were broken
...
see https://github.com/jcupitt/libvips/pull/213
this now works:
VImage rows;
VImage cols = in.profile( &rows );
2015-01-06 11:51:53 +00:00
John Cupitt
32625146db
cpp can set enums from strings
...
eg.
set("extend", "copy")->
2014-12-30 11:27:04 +00:00
John Cupitt
ba6f8044af
final doc fixups
...
and update cplusplus binding
2014-12-18 17:20:59 +00:00
John Cupitt
c120edde0d
get make dist going
2014-11-18 14:52:52 +00:00
John Cupitt
71c5069b42
revise cplusplus gen scripts
2014-11-16 12:19:04 +00:00
John Cupitt
7ae35c3edb
start pydocs again
2014-11-05 14:56:59 +00:00
John Cupitt
8267dd2621
naming improvements
...
and test_overloads.cpp has started working
2014-11-05 14:04:46 +00:00
John Cupitt
bbf49be063
cleanup and bump to 7.42
2014-11-03 12:01:53 +00:00
John Cupitt
ca6eb088f3
add () overload for read pixel
2014-10-31 20:24:40 +00:00