diff --git a/ChangeLog b/ChangeLog index 8152e23d..926fde9d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -28,7 +28,7 @@ - vips_image_write() severs all links between images, when it can ... thanks Warren and Nakilon - vector path for convolution is more accurate and can handle larger masks -- linear and cubic kernels for reduce are higer quality +- linear and cubic kernels for reduce are higher quality - added vips_value_set_blob_free() - "--size Nx" to vipsthumbnail was broken, thanks jrochkind - fix build with gcc 7 diff --git a/cplusplus/include/vips/vips-operators.h b/cplusplus/include/vips/vips-operators.h index 76adb9e8..913a1547 100644 --- a/cplusplus/include/vips/vips-operators.h +++ b/cplusplus/include/vips/vips-operators.h @@ -1,5 +1,5 @@ // headers for vips operations -// Fri 6 Oct 16:31:27 BST 2017 +// Sun 26 Nov 17:44:41 GMT 2017 // this file is generated automatically, do not edit! static void system( char * cmd_format , VOption *options = 0 ); @@ -47,6 +47,7 @@ VImage linecache( VOption *options = 0 ); VImage sequential( VOption *options = 0 ); VImage cache( VOption *options = 0 ); VImage embed( int x , int y , int width , int height , VOption *options = 0 ); +VImage gravity( VipsCompassDirection direction , int width , int height , VOption *options = 0 ); VImage flip( VipsDirection direction , VOption *options = 0 ); VImage insert( VImage sub , int x , int y , VOption *options = 0 ); VImage join( VImage in2 , VipsDirection direction , VOption *options = 0 ); @@ -232,6 +233,7 @@ VImage morph( VImage mask , VipsOperationMorphology morph , VOption *options = 0 VImage rank( int width , int height , int index , VOption *options = 0 ); double countlines( VipsDirection direction , VOption *options = 0 ); VImage labelregions( VOption *options = 0 ); +VImage fill_nearest( VOption *options = 0 ); void draw_rect( std::vector ink , int left , int top , int width , int height , VOption *options = 0 ); void draw_mask( std::vector ink , VImage mask , int x , int y , VOption *options = 0 ); void draw_line( std::vector ink , int x1 , int y1 , int x2 , int y2 , VOption *options = 0 ); diff --git a/cplusplus/vips-operators.cpp b/cplusplus/vips-operators.cpp index b0fdc783..02097139 100644 --- a/cplusplus/vips-operators.cpp +++ b/cplusplus/vips-operators.cpp @@ -1,5 +1,5 @@ // bodies for vips operations -// Fri 6 Oct 16:30:42 BST 2017 +// Sun 26 Nov 17:44:23 GMT 2017 // this file is generated automatically, do not edit! void VImage::system( char * cmd_format , VOption *options ) @@ -578,6 +578,21 @@ VImage VImage::embed( int x , int y , int width , int height , VOption *options return( out ); } +VImage VImage::gravity( VipsCompassDirection direction , int width , int height , VOption *options ) +{ + VImage out; + + call( "gravity" , + (options ? options : VImage::option()) -> + set( "in", *this ) -> + set( "out", &out ) -> + set( "direction", direction ) -> + set( "width", width ) -> + set( "height", height ) ); + + return( out ); +} + VImage VImage::flip( VipsDirection direction , VOption *options ) { VImage out; @@ -2863,6 +2878,18 @@ VImage VImage::labelregions( VOption *options ) return( mask ); } +VImage VImage::fill_nearest( VOption *options ) +{ + VImage out; + + call( "fill_nearest" , + (options ? options : VImage::option()) -> + set( "in", *this ) -> + set( "out", &out ) ); + + return( out ); +} + void VImage::draw_rect( std::vector ink , int left , int top , int width , int height , VOption *options ) { call( "draw_rect" , diff --git a/doc/Examples.xml b/doc/Examples.xml index aba6cdee..adb75910 100644 --- a/doc/Examples.xml +++ b/doc/Examples.xml @@ -22,16 +22,14 @@ #!/usr/bin/env python import sys -import gi -gi.require_version('Vips', '8.0') -from gi.repository import Vips +import pyvips left = 10 top = 10 width = 64 height = 64 -image = Vips.Image.new_from_file(sys.argv[1]) +image = pyvips.Image.new_from_file(sys.argv[1]) roi = image.crop(left, top, width, height) print 'average:', roi.avg() @@ -39,146 +37,80 @@ print 'average:', roi.avg() libvips and numpy - You can use Vips.Image.new_from_memory_copy() to make a vips image from an area of memory. The memory array needs to be laid out band-interleaved, as a set of scanlines, with no padding between lines. - - - This example moves an image from numpy to vips, but it’s simple to move the other way (use Vips.Image.write_to_memory()) to to move images into or out of PIL. + You can use pyvips.Image.new_from_memory() to make a vips image from an area of memory. The memory array needs to be laid out band-interleaved, as a set of scanlines, with no padding between lines. -#!/usr/bin/python +#!/usr/bin/env python -import numpy -import scipy.ndimage -import gi -gi.require_version('Vips', '8.0') -from gi.repository import Vips - -def np_dtype_to_vips_format(np_dtype): - ''' - Map numpy data types to VIPS data formats. - - Parameters - ---------- - np_dtype: numpy.dtype - - Returns - ------- - gi.overrides.Vips.BandFormat - ''' - lookup = { - numpy.dtype('int8'): Vips.BandFormat.CHAR, - numpy.dtype('uint8'): Vips.BandFormat.UCHAR, - numpy.dtype('int16'): Vips.BandFormat.SHORT, - numpy.dtype('uint16'): Vips.BandFormat.USHORT, - numpy.dtype('int32'): Vips.BandFormat.INT, - numpy.dtype('float32'): Vips.BandFormat.FLOAT, - numpy.dtype('float64'): Vips.BandFormat.DOUBLE - } - return lookup[np_dtype] - -def np_array_to_vips_image(array): - ''' - Convert a `numpy` array to a `Vips` image object. - - Parameters - ---------- - nparray: numpy.ndarray - - Returns - ------- - gi.overrides.Vips.image - ''' - # Look up what VIPS format corresponds to the type of this np array - vips_format = np_dtype_to_vips_format(array.dtype) - dims = array.shape - height = dims[0] - width = 1 - bands = 1 - if len(dims) > 1: - width = dims[1] - if len(dims) > 2: - bands = dims[2] - img = Vips.Image.new_from_memory_copy(array.data, - width, height, bands, vips_format) - - return img - -array = numpy.random.random((10,10)) -vips_image = np_array_to_vips_image(array) -print 'avg =', vips_image.avg() - -array = scipy.ndimage.imread("test.jpg") -vips_image = np_array_to_vips_image(array) -print 'avg =', vips_image.avg() -vips_image.write_to_file("test2.jpg") - - - - Watermarking - - This example renders a simple watermark on an image. Use it like this: - - -./watermark.py somefile.png output.jpg "hello <i>world</i>" - - - The text is rendered in transparent red pixels all over the image. It knows about transparency, CMYK, and 16-bit images. - - -#!/usr/bin/python - import sys -import gi -gi.require_version('Vips', '8.0') -from gi.repository import Vips - -im = Vips.Image.new_from_file(sys.argv[1], access = Vips.Access.SEQUENTIAL) - -text = Vips.Image.text(sys.argv[3], width = 500, dpi = 300) -text = (text * 0.3).cast("uchar") -text = text.embed(100, 100, text.width + 200, text.width + 200) -text = text.replicate(1 + im.width / text.width, 1 + im.height / text.height) -text = text.crop(0, 0, im.width, im.height) +import time -# we want to blend into the visible part of the image and leave any alpha -# channels untouched ... we need to split im into two parts +import pyvips +from PIL import Image +import numpy as np -# 16-bit images have 65535 as white -if im.format == Vips.BandFormat.USHORT: - white = 65535 -else: - white = 255 +if len(sys.argv) != 3: + print('usage: {0} input-filename output-filename'.format(sys.argv[0])) + sys.exit(-1) -# guess how many bands from the start of im contain visible colour information -if im.bands >= 4 and im.interpretation == Vips.Interpretation.CMYK: - # cmyk image ... put the white into the magenta channel - n_visible_bands = 4 - text_colour = [0, white, 0, 0] -elif im.bands >= 3: - # colour image ... put the white into the red channel - n_visible_bands = 3 - text_colour = [white, 0, 0] -else: - # mono image - n_visible_bands = 1 - text_colour = white +# map vips formats to np dtypes +format_to_dtype = { + 'uchar': np.uint8, + 'char': np.int8, + 'ushort': np.uint16, + 'short': np.int16, + 'uint': np.uint32, + 'int': np.int32, + 'float': np.float32, + 'double': np.float64, + 'complex': np.complex64, + 'dpcomplex': np.complex128, +} -# split into image and alpha -if im.bands - n_visible_bands > 0: - alpha = im.extract_band(n_visible_bands, n = im.bands - n_visible_bands) - im = im.extract_band(0, n = n_visible_bands) -else: - alpha = None +# map np dtypes to vips +dtype_to_format = { + 'uint8': 'uchar', + 'int8': 'char', + 'uint16': 'ushort', + 'int16': 'short', + 'uint32': 'uint', + 'int32': 'int', + 'float32': 'float', + 'float64': 'double', + 'complex64': 'complex', + 'complex128': 'dpcomplex', +} -# blend means do a smooth fade using the 0 - 255 values in the condition channel -# (test in this case) ... this will render the anit-aliasing -im = text.ifthenelse(text_colour, im, blend = True) +# load with PIL +start_pillow = time.time() +pillow_img = np.asarray(Image.open(sys.argv[1])) +print('Pillow Time:', time.time()-start_pillow) +print('original shape', pillow_img.shape) -# reattach alpha -if alpha: - im = im.bandjoin(alpha) - -im.write_to_file(sys.argv[2]) +# load with vips to a memory array +start_vips = time.time() +img = pyvips.Image.new_from_file(sys.argv[1], access='sequential') +mem_img = img.write_to_memory() + +# then make a numpy array from that buffer object +np_3d = np.ndarray(buffer=mem_img, + dtype=format_to_dtype[img.format], + shape=[img.height, img.width, img.bands]) + +print('Vips Time:', time.time()-start_vips) +print('final shape', np_3d.shape) + +# verify we have the same result +print('Sum of the Differences:', np.sum(np_3d-pillow_img)) + +# make a vips image from the numpy array +height, width, bands = np_3d.shape +linear = np_3d.reshape(width * height * bands) +vi = pyvips.Image.new_from_memory(linear.data, width, height, bands, + dtype_to_format[str(np_3d.dtype)]) + +# and write back to disc for checking +vi.write_to_file(sys.argv[2]) @@ -219,19 +151,13 @@ sys 0m8.936s import sys import random - -import gi -gi.require_version('Vips', '8.0') -from gi.repository import Vips - -# turn on progress reporting -Vips.progress_set(True) +import pyvips # this makes a 8-bit, mono image of 100,000 x 100,000 pixels, each pixel zero -im = Vips.Image.black(100000, 100000) +im = pyvips.Image.black(100000, 100000) for filename in sys.argv[2:]: - tile = Vips.Image.new_from_file(filename, access = Vips.Access.SEQUENTIAL) + tile = pyvips.Image.new_from_file(filename, access='sequential') im = im.insert(tile, random.randint(0, im.width - tile.width), @@ -240,82 +166,6 @@ for filename in sys.argv[2:]: im.write_to_file(sys.argv[1]) - - Rename DICOM images using header fields - - DICOM images commonly come in an awful directory hierarchy named as something like images/a/b/e/z04. There can be thousands of files and it can be very hard to find the one you want. - - - This utility copies files to a single flat directory, naming them using fields from the DICOM header. You can actually find stuff! Useful. - - -#!/usr/bin/env python - -import sys -import re -import os -import shutil - -import gi -gi.require_version('Vips', '8.0') -from gi.repository import Vips - -if len(sys.argv) != 3: - print 'rename DICOM files using tags from the header' - sys.exit(1) - -srcdir = sys.argv[1] -destdir = sys.argv[2] - -if not os.access(destdir, os.F_OK | os.R_OK | os.W_OK | os.X_OK): - os.mkdir(destdir) - -def get_field(vim, field): - result = vim.get_value(field) - - # remove any \n etc. - result = re.sub("\n", "", result) - - # remove any leading or trailing spaces - result = re.sub(" $", "", result) - result = re.sub("^ ", "", result) - - return result - -modality_name = "magick-dcm:Modality" -series_name = "magick-dcm:SeriesNumber" -instance_name = "magick-dcm:Instance(formerlyImage)Number" -date_name = "magick-dcm:ImageDate" - -for(dirpath, dirnames, filenames) in os.walk(srcdir): - for file in filenames: - path = os.path.join(dirpath, file) - - try: - vim = Vips.Image.new_from_file(path) - except Vips.Error, e: - print 'unable to open', path - print e - continue - - try: - modality = get_field(vim, modality_name) - series = get_field(vim, series_name) - instance = get_field(vim, instance_name) - date = get_field(vim, date_name) - except Vips.Error, e: - print 'unable to get fields from header', path - print e - continue - - match = re.match("(\d\d\d\d)(\d\d)(\d\d)", date) - date = match.group(1) + "." + match.group(2) + "." + match.group(3) - - newname = "lan." + modality + "." + instance + "." + date + ".IMA" - - shutil.copyfile(path, os.path.join(destdir, newname)) - - diff --git a/libvipsCC/include/vips/vipsc++.h b/libvipsCC/include/vips/vipsc++.h index 9b8ca94c..79299b35 100644 --- a/libvipsCC/include/vips/vipsc++.h +++ b/libvipsCC/include/vips/vipsc++.h @@ -1,418 +1,419 @@ // headers for package arithmetic // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage abs(); -VImage acos(); -VImage add( VImage add_in2 ); -VImage asin(); -VImage atan(); -double avg(); -double point( char* point_interpolate, double point_x, double point_y, int point_band ); -double point_bilinear( double point_bilinear_x, double point_bilinear_y, int point_bilinear_band ); -VImage bandmean(); -VImage ceil(); -VImage cos(); -VImage cross_phase( VImage cross_phase_in2 ); -double deviate(); -VImage divide( VImage divide_in2 ); -VImage exp10(); -VImage expn( double expn_x ); -VImage expn( std::vector expn_v ); -VImage exp(); -VImage floor(); -VImage invert(); -VImage lin( double lin_a, double lin_b ); -static VImage linreg( std::vector linreg_ins, std::vector linreg_xs ); -VImage lin( std::vector lin_a, std::vector lin_b ); -VImage log10(); -VImage log(); -double max(); -std::complex maxpos(); -double maxpos_avg( double& maxpos_avg_y, double& maxpos_avg_out ); -VDMask measure( int measure_x, int measure_y, int measure_w, int measure_h, int measure_h_patches, int measure_v_patches ); -double min(); -std::complex minpos(); -VImage multiply( VImage multiply_in2 ); -VImage pow( double pow_x ); -VImage pow( std::vector pow_v ); -VImage recomb( VDMask recomb_matrix ); -VImage remainder( VImage remainder_in2 ); -VImage remainder( double remainder_x ); -VImage remainder( std::vector remainder_x ); -VImage rint(); -VImage sign(); -VImage sin(); -VDMask stats(); -VImage subtract( VImage subtract_in2 ); -VImage tan(); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage abs() throw( VError ); +VImage acos() throw( VError ); +VImage add( VImage add_in2 ) throw( VError ); +VImage asin() throw( VError ); +VImage atan() throw( VError ); +double avg() throw( VError ); +double point( char* point_interpolate, double point_x, double point_y, int point_band ) throw( VError ); +double point_bilinear( double point_bilinear_x, double point_bilinear_y, int point_bilinear_band ) throw( VError ); +VImage bandmean() throw( VError ); +VImage ceil() throw( VError ); +VImage cos() throw( VError ); +VImage cross_phase( VImage cross_phase_in2 ) throw( VError ); +double deviate() throw( VError ); +VImage divide( VImage divide_in2 ) throw( VError ); +VImage exp10() throw( VError ); +VImage expn( double expn_x ) throw( VError ); +VImage expn( std::vector expn_v ) throw( VError ); +VImage exp() throw( VError ); +VImage floor() throw( VError ); +VImage invert() throw( VError ); +VImage lin( double lin_a, double lin_b ) throw( VError ); +static VImage linreg( std::vector linreg_ins, std::vector linreg_xs ) throw( VError ); +VImage lin( std::vector lin_a, std::vector lin_b ) throw( VError ); +VImage log10() throw( VError ); +VImage log() throw( VError ); +double max() throw( VError ); +std::complex maxpos() throw( VError ); +double maxpos_avg( double& maxpos_avg_y, double& maxpos_avg_out ) throw( VError ); +VDMask measure( int measure_x, int measure_y, int measure_w, int measure_h, int measure_h_patches, int measure_v_patches ) throw( VError ); +double min() throw( VError ); +std::complex minpos() throw( VError ); +VImage multiply( VImage multiply_in2 ) throw( VError ); +VImage pow( double pow_x ) throw( VError ); +VImage pow( std::vector pow_v ) throw( VError ); +VImage recomb( VDMask recomb_matrix ) throw( VError ); +VImage remainder( VImage remainder_in2 ) throw( VError ); +VImage remainder( double remainder_x ) throw( VError ); +VImage remainder( std::vector remainder_x ) throw( VError ); +VImage rint() throw( VError ); +VImage sign() throw( VError ); +VImage sin() throw( VError ); +VDMask stats() throw( VError ); +VImage subtract( VImage subtract_in2 ) throw( VError ); +VImage tan() throw( VError ); // headers for package cimg // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage greyc( int greyc_iterations, double greyc_amplitude, double greyc_sharpness, double greyc_anisotropy, double greyc_alpha, double greyc_sigma, double greyc_dl, double greyc_da, double greyc_gauss_prec, int greyc_interpolation, int greyc_fast_approx ); -VImage greyc_mask( VImage greyc_mask_mask, int greyc_mask_iterations, double greyc_mask_amplitude, double greyc_mask_sharpness, double greyc_mask_anisotropy, double greyc_mask_alpha, double greyc_mask_sigma, double greyc_mask_dl, double greyc_mask_da, double greyc_mask_gauss_prec, int greyc_mask_interpolation, int greyc_mask_fast_approx ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage greyc( int greyc_iterations, double greyc_amplitude, double greyc_sharpness, double greyc_anisotropy, double greyc_alpha, double greyc_sigma, double greyc_dl, double greyc_da, double greyc_gauss_prec, int greyc_interpolation, int greyc_fast_approx ) throw( VError ); +VImage greyc_mask( VImage greyc_mask_mask, int greyc_mask_iterations, double greyc_mask_amplitude, double greyc_mask_sharpness, double greyc_mask_anisotropy, double greyc_mask_alpha, double greyc_mask_sigma, double greyc_mask_dl, double greyc_mask_da, double greyc_mask_gauss_prec, int greyc_mask_interpolation, int greyc_mask_fast_approx ) throw( VError ); // headers for package colour // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage LCh2Lab(); -VImage LCh2UCS(); -VImage Lab2LCh(); -VImage Lab2LabQ(); -VImage Lab2LabS(); -VImage Lab2UCS(); -VImage Lab2XYZ(); -VImage Lab2XYZ_temp( double Lab2XYZ_temp_X0, double Lab2XYZ_temp_Y0, double Lab2XYZ_temp_Z0 ); -VImage Lab2disp( VDisplay Lab2disp_disp ); -VImage LabQ2LabS(); -VImage LabQ2Lab(); -VImage LabQ2XYZ(); -VImage LabQ2disp( VDisplay LabQ2disp_disp ); -VImage LabS2LabQ(); -VImage LabS2Lab(); -VImage UCS2LCh(); -VImage UCS2Lab(); -VImage UCS2XYZ(); -VImage XYZ2Lab(); -VImage XYZ2Lab_temp( double XYZ2Lab_temp_X0, double XYZ2Lab_temp_Y0, double XYZ2Lab_temp_Z0 ); -VImage XYZ2UCS(); -VImage XYZ2Yxy(); -VImage XYZ2disp( VDisplay XYZ2disp_disp ); -VImage XYZ2sRGB(); -VImage Yxy2XYZ(); -VImage dE00_fromLab( VImage dE00_fromLab_in2 ); -VImage dECMC_fromLab( VImage dECMC_fromLab_in2 ); -VImage dECMC_fromdisp( VImage dECMC_fromdisp_in2, VDisplay dECMC_fromdisp_disp ); -VImage dE_fromLab( VImage dE_fromLab_in2 ); -VImage dE_fromXYZ( VImage dE_fromXYZ_in2 ); -VImage dE_fromdisp( VImage dE_fromdisp_in2, VDisplay dE_fromdisp_disp ); -VImage disp2Lab( VDisplay disp2Lab_disp ); -VImage disp2XYZ( VDisplay disp2XYZ_disp ); -VImage float2rad(); -VImage icc_ac2rc( char* icc_ac2rc_profile ); -VImage icc_export_depth( int icc_export_depth_depth, char* icc_export_depth_output_profile, int icc_export_depth_intent ); -VImage icc_import( char* icc_import_input_profile, int icc_import_intent ); -VImage icc_import_embedded( int icc_import_embedded_intent ); -VImage icc_transform( char* icc_transform_input_profile, char* icc_transform_output_profile, int icc_transform_intent ); -VImage lab_morph( VDMask lab_morph_greyscale, double lab_morph_L_offset, double lab_morph_L_scale, double lab_morph_a_scale, double lab_morph_b_scale ); -VImage rad2float(); -VImage sRGB2XYZ(); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage LCh2Lab() throw( VError ); +VImage LCh2UCS() throw( VError ); +VImage Lab2LCh() throw( VError ); +VImage Lab2LabQ() throw( VError ); +VImage Lab2LabS() throw( VError ); +VImage Lab2UCS() throw( VError ); +VImage Lab2XYZ() throw( VError ); +VImage Lab2XYZ_temp( double Lab2XYZ_temp_X0, double Lab2XYZ_temp_Y0, double Lab2XYZ_temp_Z0 ) throw( VError ); +VImage Lab2disp( VDisplay Lab2disp_disp ) throw( VError ); +VImage LabQ2LabS() throw( VError ); +VImage LabQ2Lab() throw( VError ); +VImage LabQ2XYZ() throw( VError ); +VImage LabQ2disp( VDisplay LabQ2disp_disp ) throw( VError ); +VImage LabS2LabQ() throw( VError ); +VImage LabS2Lab() throw( VError ); +VImage UCS2LCh() throw( VError ); +VImage UCS2Lab() throw( VError ); +VImage UCS2XYZ() throw( VError ); +VImage XYZ2Lab() throw( VError ); +VImage XYZ2Lab_temp( double XYZ2Lab_temp_X0, double XYZ2Lab_temp_Y0, double XYZ2Lab_temp_Z0 ) throw( VError ); +VImage XYZ2UCS() throw( VError ); +VImage XYZ2Yxy() throw( VError ); +VImage XYZ2disp( VDisplay XYZ2disp_disp ) throw( VError ); +VImage XYZ2sRGB() throw( VError ); +VImage Yxy2XYZ() throw( VError ); +VImage dE00_fromLab( VImage dE00_fromLab_in2 ) throw( VError ); +VImage dECMC_fromLab( VImage dECMC_fromLab_in2 ) throw( VError ); +VImage dECMC_fromdisp( VImage dECMC_fromdisp_in2, VDisplay dECMC_fromdisp_disp ) throw( VError ); +VImage dE_fromLab( VImage dE_fromLab_in2 ) throw( VError ); +VImage dE_fromXYZ( VImage dE_fromXYZ_in2 ) throw( VError ); +VImage dE_fromdisp( VImage dE_fromdisp_in2, VDisplay dE_fromdisp_disp ) throw( VError ); +VImage disp2Lab( VDisplay disp2Lab_disp ) throw( VError ); +VImage disp2XYZ( VDisplay disp2XYZ_disp ) throw( VError ); +VImage float2rad() throw( VError ); +VImage icc_ac2rc( char* icc_ac2rc_profile ) throw( VError ); +VImage icc_export_depth( int icc_export_depth_depth, char* icc_export_depth_output_profile, int icc_export_depth_intent ) throw( VError ); +VImage icc_import( char* icc_import_input_profile, int icc_import_intent ) throw( VError ); +VImage icc_import_embedded( int icc_import_embedded_intent ) throw( VError ); +VImage icc_transform( char* icc_transform_input_profile, char* icc_transform_output_profile, int icc_transform_intent ) throw( VError ); +VImage lab_morph( VDMask lab_morph_greyscale, double lab_morph_L_offset, double lab_morph_L_scale, double lab_morph_a_scale, double lab_morph_b_scale ) throw( VError ); +VImage rad2float() throw( VError ); +VImage sRGB2XYZ() throw( VError ); // headers for package conversion // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -static VImage gaussnoise( int gaussnoise_xsize, int gaussnoise_ysize, double gaussnoise_mean, double gaussnoise_sigma ); -VImage bandjoin( VImage bandjoin_in2 ); -static VImage black( int black_x_size, int black_y_size, int black_bands ); -VImage c2amph(); -VImage c2imag(); -VImage c2real(); -VImage c2rect(); -VImage clip2fmt( int clip2fmt_ofmt ); -VImage copy(); -VImage copy_file(); -VImage copy_morph( int copy_morph_Bands, int copy_morph_BandFmt, int copy_morph_Coding ); -VImage copy_swap(); -VImage copy_set( int copy_set_Type, double copy_set_Xres, double copy_set_Yres, int copy_set_Xoffset, int copy_set_Yoffset ); -VImage extract_area( int extract_area_left, int extract_area_top, int extract_area_width, int extract_area_height ); -VImage extract_areabands( int extract_areabands_left, int extract_areabands_top, int extract_areabands_width, int extract_areabands_height, int extract_areabands_band, int extract_areabands_nbands ); -VImage extract_band( int extract_band_band ); -VImage extract_bands( int extract_bands_band, int extract_bands_nbands ); -VImage extract( int extract_left, int extract_top, int extract_width, int extract_height, int extract_band ); -VImage falsecolour(); -VImage fliphor(); -VImage flipver(); -static VImage gbandjoin( std::vector gbandjoin_in ); -VImage grid( int grid_tile_height, int grid_across, int grid_down ); -VImage insert( VImage insert_sub, int insert_x, int insert_y ); -VImage insert( VImage insert_sub, std::vector insert_x, std::vector insert_y ); -VImage insert_noexpand( VImage insert_noexpand_sub, int insert_noexpand_x, int insert_noexpand_y ); -VImage embed( int embed_type, int embed_x, int embed_y, int embed_width, int embed_height ); -VImage lrjoin( VImage lrjoin_in2 ); -VImage msb(); -VImage msb_band( int msb_band_band ); -VImage replicate( int replicate_across, int replicate_down ); -VImage ri2c( VImage ri2c_in2 ); -VImage rot180(); -VImage rot270(); -VImage rot90(); -VImage scale(); -VImage scaleps(); -VImage subsample( int subsample_xshrink, int subsample_yshrink ); -char* system( char* system_command ); -VImage system_image( char* system_image_in_format, char* system_image_out_format, char* system_image_command, char*& system_image_log ); -VImage tbjoin( VImage tbjoin_in2 ); -static VImage text( char* text_text, char* text_font, int text_width, int text_alignment, int text_dpi ); -VImage wrap( int wrap_x, int wrap_y ); -VImage zoom( int zoom_xfac, int zoom_yfac ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +static VImage gaussnoise( int gaussnoise_xsize, int gaussnoise_ysize, double gaussnoise_mean, double gaussnoise_sigma ) throw( VError ); +VImage bandjoin( VImage bandjoin_in2 ) throw( VError ); +static VImage black( int black_x_size, int black_y_size, int black_bands ) throw( VError ); +VImage c2amph() throw( VError ); +VImage c2imag() throw( VError ); +VImage c2real() throw( VError ); +VImage c2rect() throw( VError ); +VImage clip2fmt( int clip2fmt_ofmt ) throw( VError ); +VImage copy() throw( VError ); +VImage copy_file() throw( VError ); +VImage copy_morph( int copy_morph_Bands, int copy_morph_BandFmt, int copy_morph_Coding ) throw( VError ); +VImage copy_swap() throw( VError ); +VImage copy_set( int copy_set_Type, double copy_set_Xres, double copy_set_Yres, int copy_set_Xoffset, int copy_set_Yoffset ) throw( VError ); +VImage extract_area( int extract_area_left, int extract_area_top, int extract_area_width, int extract_area_height ) throw( VError ); +VImage extract_areabands( int extract_areabands_left, int extract_areabands_top, int extract_areabands_width, int extract_areabands_height, int extract_areabands_band, int extract_areabands_nbands ) throw( VError ); +VImage extract_band( int extract_band_band ) throw( VError ); +VImage extract_bands( int extract_bands_band, int extract_bands_nbands ) throw( VError ); +VImage extract( int extract_left, int extract_top, int extract_width, int extract_height, int extract_band ) throw( VError ); +VImage falsecolour() throw( VError ); +VImage fliphor() throw( VError ); +VImage flipver() throw( VError ); +static VImage gbandjoin( std::vector gbandjoin_in ) throw( VError ); +VImage grid( int grid_tile_height, int grid_across, int grid_down ) throw( VError ); +VImage insert( VImage insert_sub, int insert_x, int insert_y ) throw( VError ); +VImage insert( VImage insert_sub, std::vector insert_x, std::vector insert_y ) throw( VError ); +VImage insert_noexpand( VImage insert_noexpand_sub, int insert_noexpand_x, int insert_noexpand_y ) throw( VError ); +VImage embed( int embed_type, int embed_x, int embed_y, int embed_width, int embed_height ) throw( VError ); +VImage lrjoin( VImage lrjoin_in2 ) throw( VError ); +VImage msb() throw( VError ); +VImage msb_band( int msb_band_band ) throw( VError ); +VImage replicate( int replicate_across, int replicate_down ) throw( VError ); +VImage ri2c( VImage ri2c_in2 ) throw( VError ); +VImage rot180() throw( VError ); +VImage rot270() throw( VError ); +VImage rot90() throw( VError ); +VImage scale() throw( VError ); +VImage scaleps() throw( VError ); +VImage subsample( int subsample_xshrink, int subsample_yshrink ) throw( VError ); +char* system( char* system_command ) throw( VError ); +VImage system_image( char* system_image_in_format, char* system_image_out_format, char* system_image_command, char*& system_image_log ) throw( VError ); +VImage tbjoin( VImage tbjoin_in2 ) throw( VError ); +static VImage text( char* text_text, char* text_font, int text_width, int text_alignment, int text_dpi ) throw( VError ); +VImage wrap( int wrap_x, int wrap_y ) throw( VError ); +VImage zoom( int zoom_xfac, int zoom_yfac ) throw( VError ); // headers for package convolution // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage aconvsep( VDMask aconvsep_matrix, int aconvsep_n_layers ); -VImage aconv( VDMask aconv_matrix, int aconv_n_layers, int aconv_cluster ); -VImage addgnoise( double addgnoise_sigma ); -VImage compass( VIMask compass_matrix ); -VImage contrast_surface( int contrast_surface_half_win_size, int contrast_surface_spacing ); -VImage conv( VIMask conv_matrix ); -VImage conv( VDMask conv_matrix ); -VImage convsep( VIMask convsep_matrix ); -VImage convsep( VDMask convsep_matrix ); -VImage fastcor( VImage fastcor_in2 ); -VImage gradcor( VImage gradcor_in2 ); -VImage gradient( VIMask gradient_matrix ); -VImage grad_x(); -VImage grad_y(); -VImage lindetect( VIMask lindetect_matrix ); -VImage sharpen( int sharpen_mask_size, double sharpen_x1, double sharpen_y2, double sharpen_y3, double sharpen_m1, double sharpen_m2 ); -VImage spcor( VImage spcor_in2 ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage aconvsep( VDMask aconvsep_matrix, int aconvsep_n_layers ) throw( VError ); +VImage aconv( VDMask aconv_matrix, int aconv_n_layers, int aconv_cluster ) throw( VError ); +VImage addgnoise( double addgnoise_sigma ) throw( VError ); +VImage compass( VIMask compass_matrix ) throw( VError ); +VImage contrast_surface( int contrast_surface_half_win_size, int contrast_surface_spacing ) throw( VError ); +VImage conv( VIMask conv_matrix ) throw( VError ); +VImage conv( VDMask conv_matrix ) throw( VError ); +VImage convsep( VIMask convsep_matrix ) throw( VError ); +VImage convsep( VDMask convsep_matrix ) throw( VError ); +VImage fastcor( VImage fastcor_in2 ) throw( VError ); +VImage gradcor( VImage gradcor_in2 ) throw( VError ); +VImage gradient( VIMask gradient_matrix ) throw( VError ); +VImage grad_x() throw( VError ); +VImage grad_y() throw( VError ); +VImage lindetect( VIMask lindetect_matrix ) throw( VError ); +VImage sharpen( int sharpen_mask_size, double sharpen_x1, double sharpen_y2, double sharpen_y3, double sharpen_m1, double sharpen_m2 ) throw( VError ); +VImage spcor( VImage spcor_in2 ) throw( VError ); // headers for package deprecated // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage argb2rgba(); -VImage flood_copy( int flood_copy_start_x, int flood_copy_start_y, std::vector flood_copy_ink ); -VImage flood_blob_copy( int flood_blob_copy_start_x, int flood_blob_copy_start_y, std::vector flood_blob_copy_ink ); -VImage flood_other_copy( VImage flood_other_copy_mark, int flood_other_copy_start_x, int flood_other_copy_start_y, int flood_other_copy_serial ); -VImage clip(); -VImage c2ps(); -VImage resize_linear( int resize_linear_X, int resize_linear_Y ); -VImage cmulnorm( VImage cmulnorm_in2 ); -VImage fav4( VImage fav4_in2, VImage fav4_in3, VImage fav4_in4 ); -VImage gadd( double gadd_a, double gadd_b, VImage gadd_in2, double gadd_c ); -VImage icc_export( char* icc_export_output_profile, int icc_export_intent ); -VImage litecor( VImage litecor_white, int litecor_clip, double litecor_factor ); -VImage affine( double affine_a, double affine_b, double affine_c, double affine_d, double affine_dx, double affine_dy, int affine_x, int affine_y, int affine_w, int affine_h ); -VImage clip2c(); -VImage clip2cm(); -VImage clip2d(); -VImage clip2dcm(); -VImage clip2f(); -VImage clip2i(); -VImage convsub( VIMask convsub_matrix, int convsub_xskip, int convsub_yskip ); -VImage convf( VDMask convf_matrix ); -VImage convsepf( VDMask convsepf_matrix ); -VImage clip2s(); -VImage clip2ui(); -VImage insertplace( VImage insertplace_sub, std::vector insertplace_x, std::vector insertplace_y ); -VImage clip2us(); -VImage slice( double slice_thresh1, double slice_thresh2 ); -VImage segment( int& segment_segments ); -void line( int line_x1, int line_y1, int line_x2, int line_y2, int line_pelval ); -VImage thresh( double thresh_threshold ); -VImage convf_raw( VDMask convf_raw_matrix ); -VImage conv_raw( VIMask conv_raw_matrix ); -VImage contrast_surface_raw( int contrast_surface_raw_half_win_size, int contrast_surface_raw_spacing ); -VImage convsepf_raw( VDMask convsepf_raw_matrix ); -VImage convsep_raw( VIMask convsep_raw_matrix ); -VImage fastcor_raw( VImage fastcor_raw_in2 ); -VImage gradcor_raw( VImage gradcor_raw_in2 ); -VImage spcor_raw( VImage spcor_raw_in2 ); -VImage lhisteq_raw( int lhisteq_raw_width, int lhisteq_raw_height ); -VImage stdif_raw( double stdif_raw_a, double stdif_raw_m0, double stdif_raw_b, double stdif_raw_s0, int stdif_raw_xw, int stdif_raw_yw ); -VImage rank_raw( int rank_raw_xsize, int rank_raw_ysize, int rank_raw_n ); -VImage dilate_raw( VIMask dilate_raw_mask ); -VImage erode_raw( VIMask erode_raw_mask ); -VImage similarity_area( double similarity_area_a, double similarity_area_b, double similarity_area_dx, double similarity_area_dy, int similarity_area_x, int similarity_area_y, int similarity_area_w, int similarity_area_h ); -VImage similarity( double similarity_a, double similarity_b, double similarity_dx, double similarity_dy ); -static VImage mask2vips( VDMask mask2vips_input ); -VDMask vips2mask(); -void insertplace( VImage insertplace_sub, int insertplace_x, int insertplace_y ); -void circle( int circle_cx, int circle_cy, int circle_radius, int circle_intensity ); -VImage andimage( VImage andimage_in2 ); -VImage andimage( int andimage_c ); -VImage andimage( std::vector andimage_vec ); -VImage orimage( VImage orimage_in2 ); -VImage orimage( int orimage_c ); -VImage orimage( std::vector orimage_vec ); -VImage eorimage( VImage eorimage_in2 ); -VImage eorimage( int eorimage_c ); -VImage eorimage( std::vector eorimage_vec ); -VImage shiftleft( std::vector shiftleft_vec ); -VImage shiftleft( int shiftleft_c ); -VImage shiftright( std::vector shiftright_vec ); -VImage shiftright( int shiftright_c ); -VImage blend( VImage blend_in1, VImage blend_in2 ); -VImage equal( VImage equal_in2 ); -VImage equal( std::vector equal_vec ); -VImage equal( double equal_c ); -VImage ifthenelse( VImage ifthenelse_in1, VImage ifthenelse_in2 ); -VImage less( VImage less_in2 ); -VImage less( std::vector less_vec ); -VImage less( double less_c ); -VImage lesseq( VImage lesseq_in2 ); -VImage lesseq( std::vector lesseq_vec ); -VImage lesseq( double lesseq_c ); -VImage more( VImage more_in2 ); -VImage more( std::vector more_vec ); -VImage more( double more_c ); -VImage moreeq( VImage moreeq_in2 ); -VImage moreeq( std::vector moreeq_vec ); -VImage moreeq( double moreeq_c ); -VImage notequal( VImage notequal_in2 ); -VImage notequal( std::vector notequal_vec ); -VImage notequal( double notequal_c ); -VImage quadratic( VImage quadratic_coeff ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage argb2rgba() throw( VError ); +VImage flood_copy( int flood_copy_start_x, int flood_copy_start_y, std::vector flood_copy_ink ) throw( VError ); +VImage flood_blob_copy( int flood_blob_copy_start_x, int flood_blob_copy_start_y, std::vector flood_blob_copy_ink ) throw( VError ); +VImage flood_other_copy( VImage flood_other_copy_mark, int flood_other_copy_start_x, int flood_other_copy_start_y, int flood_other_copy_serial ) throw( VError ); +VImage clip() throw( VError ); +VImage c2ps() throw( VError ); +VImage resize_linear( int resize_linear_X, int resize_linear_Y ) throw( VError ); +VImage cmulnorm( VImage cmulnorm_in2 ) throw( VError ); +VImage fav4( VImage fav4_in2, VImage fav4_in3, VImage fav4_in4 ) throw( VError ); +VImage gadd( double gadd_a, double gadd_b, VImage gadd_in2, double gadd_c ) throw( VError ); +VImage icc_export( char* icc_export_output_profile, int icc_export_intent ) throw( VError ); +VImage litecor( VImage litecor_white, int litecor_clip, double litecor_factor ) throw( VError ); +VImage affine( double affine_a, double affine_b, double affine_c, double affine_d, double affine_dx, double affine_dy, int affine_x, int affine_y, int affine_w, int affine_h ) throw( VError ); +VImage clip2c() throw( VError ); +VImage clip2cm() throw( VError ); +VImage clip2d() throw( VError ); +VImage clip2dcm() throw( VError ); +VImage clip2f() throw( VError ); +VImage clip2i() throw( VError ); +VImage convsub( VIMask convsub_matrix, int convsub_xskip, int convsub_yskip ) throw( VError ); +VImage convf( VDMask convf_matrix ) throw( VError ); +VImage convsepf( VDMask convsepf_matrix ) throw( VError ); +VImage clip2s() throw( VError ); +VImage clip2ui() throw( VError ); +VImage insertplace( VImage insertplace_sub, std::vector insertplace_x, std::vector insertplace_y ) throw( VError ); +VImage clip2us() throw( VError ); +VImage slice( double slice_thresh1, double slice_thresh2 ) throw( VError ); +VImage segment( int& segment_segments ) throw( VError ); +void line( int line_x1, int line_y1, int line_x2, int line_y2, int line_pelval ) throw( VError ); +VImage thresh( double thresh_threshold ) throw( VError ); +VImage convf_raw( VDMask convf_raw_matrix ) throw( VError ); +VImage conv_raw( VIMask conv_raw_matrix ) throw( VError ); +VImage contrast_surface_raw( int contrast_surface_raw_half_win_size, int contrast_surface_raw_spacing ) throw( VError ); +VImage convsepf_raw( VDMask convsepf_raw_matrix ) throw( VError ); +VImage convsep_raw( VIMask convsep_raw_matrix ) throw( VError ); +VImage fastcor_raw( VImage fastcor_raw_in2 ) throw( VError ); +VImage gradcor_raw( VImage gradcor_raw_in2 ) throw( VError ); +VImage spcor_raw( VImage spcor_raw_in2 ) throw( VError ); +VImage lhisteq_raw( int lhisteq_raw_width, int lhisteq_raw_height ) throw( VError ); +VImage stdif_raw( double stdif_raw_a, double stdif_raw_m0, double stdif_raw_b, double stdif_raw_s0, int stdif_raw_xw, int stdif_raw_yw ) throw( VError ); +VImage rank_raw( int rank_raw_xsize, int rank_raw_ysize, int rank_raw_n ) throw( VError ); +VImage dilate_raw( VIMask dilate_raw_mask ) throw( VError ); +VImage erode_raw( VIMask erode_raw_mask ) throw( VError ); +VImage similarity_area( double similarity_area_a, double similarity_area_b, double similarity_area_dx, double similarity_area_dy, int similarity_area_x, int similarity_area_y, int similarity_area_w, int similarity_area_h ) throw( VError ); +VImage similarity( double similarity_a, double similarity_b, double similarity_dx, double similarity_dy ) throw( VError ); +static VImage mask2vips( VDMask mask2vips_input ) throw( VError ); +VDMask vips2mask() throw( VError ); +void insertplace( VImage insertplace_sub, int insertplace_x, int insertplace_y ) throw( VError ); +void circle( int circle_cx, int circle_cy, int circle_radius, int circle_intensity ) throw( VError ); +VImage andimage( VImage andimage_in2 ) throw( VError ); +VImage andimage( int andimage_c ) throw( VError ); +VImage andimage( std::vector andimage_vec ) throw( VError ); +VImage orimage( VImage orimage_in2 ) throw( VError ); +VImage orimage( int orimage_c ) throw( VError ); +VImage orimage( std::vector orimage_vec ) throw( VError ); +VImage eorimage( VImage eorimage_in2 ) throw( VError ); +VImage eorimage( int eorimage_c ) throw( VError ); +VImage eorimage( std::vector eorimage_vec ) throw( VError ); +VImage shiftleft( std::vector shiftleft_vec ) throw( VError ); +VImage shiftleft( int shiftleft_c ) throw( VError ); +VImage shiftright( std::vector shiftright_vec ) throw( VError ); +VImage shiftright( int shiftright_c ) throw( VError ); +VImage blend( VImage blend_in1, VImage blend_in2 ) throw( VError ); +VImage equal( VImage equal_in2 ) throw( VError ); +VImage equal( std::vector equal_vec ) throw( VError ); +VImage equal( double equal_c ) throw( VError ); +VImage ifthenelse( VImage ifthenelse_in1, VImage ifthenelse_in2 ) throw( VError ); +VImage less( VImage less_in2 ) throw( VError ); +VImage less( std::vector less_vec ) throw( VError ); +VImage less( double less_c ) throw( VError ); +VImage lesseq( VImage lesseq_in2 ) throw( VError ); +VImage lesseq( std::vector lesseq_vec ) throw( VError ); +VImage lesseq( double lesseq_c ) throw( VError ); +VImage more( VImage more_in2 ) throw( VError ); +VImage more( std::vector more_vec ) throw( VError ); +VImage more( double more_c ) throw( VError ); +VImage moreeq( VImage moreeq_in2 ) throw( VError ); +VImage moreeq( std::vector moreeq_vec ) throw( VError ); +VImage moreeq( double moreeq_c ) throw( VError ); +VImage notequal( VImage notequal_in2 ) throw( VError ); +VImage notequal( std::vector notequal_vec ) throw( VError ); +VImage notequal( double notequal_c ) throw( VError ); +VImage quadratic( VImage quadratic_coeff ) throw( VError ); // headers for package format // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -static VImage csv2vips( char* csv2vips_filename ); -static VImage fits2vips( char* fits2vips_in ); -static VImage jpeg2vips( char* jpeg2vips_in ); -static VImage magick2vips( char* magick2vips_in ); -static VImage png2vips( char* png2vips_in ); -static VImage exr2vips( char* exr2vips_in ); -static VImage ppm2vips( char* ppm2vips_filename ); -static VImage analyze2vips( char* analyze2vips_filename ); -static VImage tiff2vips( char* tiff2vips_in ); -void vips2csv( char* vips2csv_filename ); -void vips2dz( char* vips2dz_out ); -void vips2jpeg( char* vips2jpeg_out ); -void vips2mimejpeg( int vips2mimejpeg_qfac ); -void vips2png( char* vips2png_out ); -void vips2ppm( char* vips2ppm_filename ); -void vips2tiff( char* vips2tiff_out ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +static VImage csv2vips( char* csv2vips_filename ) throw( VError ); +static VImage fits2vips( char* fits2vips_in ) throw( VError ); +static VImage jpeg2vips( char* jpeg2vips_in ) throw( VError ); +static VImage magick2vips( char* magick2vips_in ) throw( VError ); +static VImage png2vips( char* png2vips_in ) throw( VError ); +static VImage exr2vips( char* exr2vips_in ) throw( VError ); +static VImage ppm2vips( char* ppm2vips_filename ) throw( VError ); +static VImage analyze2vips( char* analyze2vips_filename ) throw( VError ); +static VImage tiff2vips( char* tiff2vips_in ) throw( VError ); +void vips2csv( char* vips2csv_filename ) throw( VError ); +void vips2dz( char* vips2dz_out ) throw( VError ); +void vips2jpeg( char* vips2jpeg_out ) throw( VError ); +void vips2mimejpeg( int vips2mimejpeg_qfac ) throw( VError ); +void vips2png( char* vips2png_out ) throw( VError ); +void vips2ppm( char* vips2ppm_filename ) throw( VError ); +void vips2tiff( char* vips2tiff_out ) throw( VError ); // headers for package freq_filt // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -static VImage create_fmask( int create_fmask_width, int create_fmask_height, int create_fmask_type, double create_fmask_p1, double create_fmask_p2, double create_fmask_p3, double create_fmask_p4, double create_fmask_p5 ); -VImage disp_ps(); -VImage flt_image_freq( int flt_image_freq_type, double flt_image_freq_p1, double flt_image_freq_p2, double flt_image_freq_p3, double flt_image_freq_p4, double flt_image_freq_p5 ); -static VImage fractsurf( int fractsurf_size, double fractsurf_dimension ); -VImage freqflt( VImage freqflt_mask ); -VImage fwfft(); -VImage rotquad(); -VImage invfft(); -VImage phasecor_fft( VImage phasecor_fft_in2 ); -VImage invfftr(); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +static VImage create_fmask( int create_fmask_width, int create_fmask_height, int create_fmask_type, double create_fmask_p1, double create_fmask_p2, double create_fmask_p3, double create_fmask_p4, double create_fmask_p5 ) throw( VError ); +VImage disp_ps() throw( VError ); +VImage flt_image_freq( int flt_image_freq_type, double flt_image_freq_p1, double flt_image_freq_p2, double flt_image_freq_p3, double flt_image_freq_p4, double flt_image_freq_p5 ) throw( VError ); +static VImage fractsurf( int fractsurf_size, double fractsurf_dimension ) throw( VError ); +VImage freqflt( VImage freqflt_mask ) throw( VError ); +VImage fwfft() throw( VError ); +VImage rotquad() throw( VError ); +VImage invfft() throw( VError ); +VImage phasecor_fft( VImage phasecor_fft_in2 ) throw( VError ); +VImage invfftr() throw( VError ); // headers for package histograms_lut // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage gammacorrect( double gammacorrect_exponent ); -VImage heq( int heq_band_number ); -VImage hist( int hist_band_number ); -VImage histcum(); -VImage histeq(); -VImage hist_indexed( VImage hist_indexed_value ); -VImage histgr( int histgr_band_number ); -VImage histnD( int histnD_bins ); -VImage histnorm(); -VImage histplot(); -VImage histspec( VImage histspec_ref ); -VImage hsp( VImage hsp_ref ); -static VImage identity( int identity_nbands ); -static VImage identity_ushort( int identity_ushort_nbands, int identity_ushort_size ); -int ismonotonic(); -VImage lhisteq( int lhisteq_width, int lhisteq_height ); -int mpercent( double mpercent_percent ); -static VImage invertlut( VDMask invertlut_measures, int invertlut_lut_size ); -static VImage buildlut( VDMask buildlut_xyes ); -VImage maplut( VImage maplut_lut ); -VImage project( VImage& project_vout ); -VImage stdif( double stdif_a, double stdif_m0, double stdif_b, double stdif_s0, int stdif_xw, int stdif_yw ); -VImage tone_analyse( double tone_analyse_Ps, double tone_analyse_Pm, double tone_analyse_Ph, double tone_analyse_S, double tone_analyse_M, double tone_analyse_H ); -static VImage tone_build( double tone_build_Lb, double tone_build_Lw, double tone_build_Ps, double tone_build_Pm, double tone_build_Ph, double tone_build_S, double tone_build_M, double tone_build_H ); -static VImage tone_build_range( int tone_build_range_in_max, int tone_build_range_out_max, double tone_build_range_Lb, double tone_build_range_Lw, double tone_build_range_Ps, double tone_build_range_Pm, double tone_build_range_Ph, double tone_build_range_S, double tone_build_range_M, double tone_build_range_H ); -VImage tone_map( VImage tone_map_lut ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage gammacorrect( double gammacorrect_exponent ) throw( VError ); +VImage heq( int heq_band_number ) throw( VError ); +VImage hist( int hist_band_number ) throw( VError ); +VImage histcum() throw( VError ); +VImage histeq() throw( VError ); +VImage hist_indexed( VImage hist_indexed_value ) throw( VError ); +VImage histgr( int histgr_band_number ) throw( VError ); +VImage histnD( int histnD_bins ) throw( VError ); +VImage histnorm() throw( VError ); +VImage histplot() throw( VError ); +VImage histspec( VImage histspec_ref ) throw( VError ); +VImage hsp( VImage hsp_ref ) throw( VError ); +static VImage identity( int identity_nbands ) throw( VError ); +static VImage identity_ushort( int identity_ushort_nbands, int identity_ushort_size ) throw( VError ); +int ismonotonic() throw( VError ); +VImage lhisteq( int lhisteq_width, int lhisteq_height ) throw( VError ); +int mpercent( double mpercent_percent ) throw( VError ); +static VImage invertlut( VDMask invertlut_measures, int invertlut_lut_size ) throw( VError ); +static VImage buildlut( VDMask buildlut_xyes ) throw( VError ); +VImage maplut( VImage maplut_lut ) throw( VError ); +VImage project( VImage& project_vout ) throw( VError ); +VImage stdif( double stdif_a, double stdif_m0, double stdif_b, double stdif_s0, int stdif_xw, int stdif_yw ) throw( VError ); +VImage tone_analyse( double tone_analyse_Ps, double tone_analyse_Pm, double tone_analyse_Ph, double tone_analyse_S, double tone_analyse_M, double tone_analyse_H ) throw( VError ); +static VImage tone_build( double tone_build_Lb, double tone_build_Lw, double tone_build_Ps, double tone_build_Pm, double tone_build_Ph, double tone_build_S, double tone_build_M, double tone_build_H ) throw( VError ); +static VImage tone_build_range( int tone_build_range_in_max, int tone_build_range_out_max, double tone_build_range_Lb, double tone_build_range_Lw, double tone_build_range_Ps, double tone_build_range_Pm, double tone_build_range_Ph, double tone_build_range_S, double tone_build_range_M, double tone_build_range_H ) throw( VError ); +VImage tone_map( VImage tone_map_lut ) throw( VError ); // headers for package inplace // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -void draw_circle( int draw_circle_cx, int draw_circle_cy, int draw_circle_radius, int draw_circle_fill, std::vector draw_circle_ink ); -void draw_rect( int draw_rect_left, int draw_rect_top, int draw_rect_width, int draw_rect_height, int draw_rect_fill, std::vector draw_rect_ink ); -void draw_line( int draw_line_x1, int draw_line_y1, int draw_line_x2, int draw_line_y2, std::vector draw_line_ink ); -void draw_point( int draw_point_x, int draw_point_y, std::vector draw_point_ink ); -void draw_smudge( int draw_smudge_left, int draw_smudge_top, int draw_smudge_width, int draw_smudge_height ); -void draw_flood( int draw_flood_x, int draw_flood_y, std::vector draw_flood_ink ); -void draw_flood_blob( int draw_flood_blob_x, int draw_flood_blob_y, std::vector draw_flood_blob_ink ); -void draw_flood_other( VImage draw_flood_other_test, int draw_flood_other_x, int draw_flood_other_y, int draw_flood_other_serial ); -void draw_image( VImage draw_image_sub, int draw_image_x, int draw_image_y ); -void draw_mask( VImage draw_mask_mask, int draw_mask_x, int draw_mask_y, std::vector draw_mask_ink ); -VImage line( VImage line_mask, VImage line_ink, std::vector line_x1, std::vector line_y1, std::vector line_x2, std::vector line_y2 ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +void draw_circle( int draw_circle_cx, int draw_circle_cy, int draw_circle_radius, int draw_circle_fill, std::vector draw_circle_ink ) throw( VError ); +void draw_rect( int draw_rect_left, int draw_rect_top, int draw_rect_width, int draw_rect_height, int draw_rect_fill, std::vector draw_rect_ink ) throw( VError ); +void draw_line( int draw_line_x1, int draw_line_y1, int draw_line_x2, int draw_line_y2, std::vector draw_line_ink ) throw( VError ); +void draw_point( int draw_point_x, int draw_point_y, std::vector draw_point_ink ) throw( VError ); +void draw_smudge( int draw_smudge_left, int draw_smudge_top, int draw_smudge_width, int draw_smudge_height ) throw( VError ); +void draw_flood( int draw_flood_x, int draw_flood_y, std::vector draw_flood_ink ) throw( VError ); +void draw_flood_blob( int draw_flood_blob_x, int draw_flood_blob_y, std::vector draw_flood_blob_ink ) throw( VError ); +void draw_flood_other( VImage draw_flood_other_test, int draw_flood_other_x, int draw_flood_other_y, int draw_flood_other_serial ) throw( VError ); +void draw_image( VImage draw_image_sub, int draw_image_x, int draw_image_y ) throw( VError ); +void draw_mask( VImage draw_mask_mask, int draw_mask_x, int draw_mask_y, std::vector draw_mask_ink ) throw( VError ); +VImage line( VImage line_mask, VImage line_ink, std::vector line_x1, std::vector line_y1, std::vector line_x2, std::vector line_y2 ) throw( VError ); // headers for package iofuncs // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -static VImage binfile( char* binfile_filename, int binfile_width, int binfile_height, int binfile_bands, int binfile_offset ); -VImage cache( int cache_tile_width, int cache_tile_height, int cache_max_tiles ); -char* getext(); -int header_get_typeof( char* header_get_typeof_field ); -int header_int( char* header_int_field ); -double header_double( char* header_double_field ); -char* header_string( char* header_string_field ); -char* history_get(); -void printdesc(); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +static VImage binfile( char* binfile_filename, int binfile_width, int binfile_height, int binfile_bands, int binfile_offset ) throw( VError ); +VImage cache( int cache_tile_width, int cache_tile_height, int cache_max_tiles ) throw( VError ); +VImage tile_cache_random( int tile_cache_random_tile_width, int tile_cache_random_tile_height, int tile_cache_random_max_tiles ) throw( VError ); +char* getext() throw( VError ); +int header_get_typeof( char* header_get_typeof_field ) throw( VError ); +int header_int( char* header_int_field ) throw( VError ); +double header_double( char* header_double_field ) throw( VError ); +char* header_string( char* header_string_field ) throw( VError ); +char* history_get() throw( VError ); +void printdesc() throw( VError ); // headers for package mask // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // headers for package morphology // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -double cntlines( int cntlines_direction ); -VImage dilate( VIMask dilate_mask ); -VImage rank( int rank_xsize, int rank_ysize, int rank_n ); -static VImage rank_image( std::vector rank_image_in, int rank_image_index ); -static VImage maxvalue( std::vector maxvalue_in ); -VImage label_regions( int& label_regions_segments ); -VImage zerox( int zerox_flag ); -VImage erode( VIMask erode_mask ); -VImage profile( int profile_direction ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +double cntlines( int cntlines_direction ) throw( VError ); +VImage dilate( VIMask dilate_mask ) throw( VError ); +VImage rank( int rank_xsize, int rank_ysize, int rank_n ) throw( VError ); +static VImage rank_image( std::vector rank_image_in, int rank_image_index ) throw( VError ); +static VImage maxvalue( std::vector maxvalue_in ) throw( VError ); +VImage label_regions( int& label_regions_segments ) throw( VError ); +VImage zerox( int zerox_flag ) throw( VError ); +VImage erode( VIMask erode_mask ) throw( VError ); +VImage profile( int profile_direction ) throw( VError ); // headers for package mosaicing // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage align_bands(); -double correl( VImage correl_sec, int correl_xref, int correl_yref, int correl_xsec, int correl_ysec, int correl_hwindowsize, int correl_hsearchsize, int& correl_x, int& correl_y ); -int _find_lroverlap( VImage _find_lroverlap_sec, int _find_lroverlap_bandno, int _find_lroverlap_xr, int _find_lroverlap_yr, int _find_lroverlap_xs, int _find_lroverlap_ys, int _find_lroverlap_halfcorrelation, int _find_lroverlap_halfarea, int& _find_lroverlap_dy0, double& _find_lroverlap_scale1, double& _find_lroverlap_angle1, double& _find_lroverlap_dx1, double& _find_lroverlap_dy1 ); -int _find_tboverlap( VImage _find_tboverlap_sec, int _find_tboverlap_bandno, int _find_tboverlap_xr, int _find_tboverlap_yr, int _find_tboverlap_xs, int _find_tboverlap_ys, int _find_tboverlap_halfcorrelation, int _find_tboverlap_halfarea, int& _find_tboverlap_dy0, double& _find_tboverlap_scale1, double& _find_tboverlap_angle1, double& _find_tboverlap_dx1, double& _find_tboverlap_dy1 ); -VImage global_balance( double global_balance_gamma ); -VImage global_balancef( double global_balancef_gamma ); -VImage lrmerge( VImage lrmerge_sec, int lrmerge_dx, int lrmerge_dy, int lrmerge_mwidth ); -VImage lrmerge1( VImage lrmerge1_sec, int lrmerge1_xr1, int lrmerge1_yr1, int lrmerge1_xs1, int lrmerge1_ys1, int lrmerge1_xr2, int lrmerge1_yr2, int lrmerge1_xs2, int lrmerge1_ys2, int lrmerge1_mwidth ); -VImage lrmosaic( VImage lrmosaic_sec, int lrmosaic_bandno, int lrmosaic_xr, int lrmosaic_yr, int lrmosaic_xs, int lrmosaic_ys, int lrmosaic_halfcorrelation, int lrmosaic_halfarea, int lrmosaic_balancetype, int lrmosaic_mwidth ); -VImage lrmosaic1( VImage lrmosaic1_sec, int lrmosaic1_bandno, int lrmosaic1_xr1, int lrmosaic1_yr1, int lrmosaic1_xs1, int lrmosaic1_ys1, int lrmosaic1_xr2, int lrmosaic1_yr2, int lrmosaic1_xs2, int lrmosaic1_ys2, int lrmosaic1_halfcorrelation, int lrmosaic1_halfarea, int lrmosaic1_balancetype, int lrmosaic1_mwidth ); -VImage match_linear( VImage match_linear_sec, int match_linear_xref1, int match_linear_yref1, int match_linear_xsec1, int match_linear_ysec1, int match_linear_xref2, int match_linear_yref2, int match_linear_xsec2, int match_linear_ysec2 ); -VImage match_linear_search( VImage match_linear_search_sec, int match_linear_search_xref1, int match_linear_search_yref1, int match_linear_search_xsec1, int match_linear_search_ysec1, int match_linear_search_xref2, int match_linear_search_yref2, int match_linear_search_xsec2, int match_linear_search_ysec2, int match_linear_search_hwindowsize, int match_linear_search_hsearchsize ); -double maxpos_subpel( double& maxpos_subpel_y ); -VImage remosaic( char* remosaic_old_str, char* remosaic_new_str ); -VImage tbmerge( VImage tbmerge_sec, int tbmerge_dx, int tbmerge_dy, int tbmerge_mwidth ); -VImage tbmerge1( VImage tbmerge1_sec, int tbmerge1_xr1, int tbmerge1_yr1, int tbmerge1_xs1, int tbmerge1_ys1, int tbmerge1_xr2, int tbmerge1_yr2, int tbmerge1_xs2, int tbmerge1_ys2, int tbmerge1_mwidth ); -VImage tbmosaic( VImage tbmosaic_sec, int tbmosaic_bandno, int tbmosaic_xr, int tbmosaic_yr, int tbmosaic_xs, int tbmosaic_ys, int tbmosaic_halfcorrelation, int tbmosaic_halfarea, int tbmosaic_balancetype, int tbmosaic_mwidth ); -VImage tbmosaic1( VImage tbmosaic1_sec, int tbmosaic1_bandno, int tbmosaic1_xr1, int tbmosaic1_yr1, int tbmosaic1_xs1, int tbmosaic1_ys1, int tbmosaic1_xr2, int tbmosaic1_yr2, int tbmosaic1_xs2, int tbmosaic1_ys2, int tbmosaic1_halfcorrelation, int tbmosaic1_halfarea, int tbmosaic1_balancetype, int tbmosaic1_mwidth ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage align_bands() throw( VError ); +double correl( VImage correl_sec, int correl_xref, int correl_yref, int correl_xsec, int correl_ysec, int correl_hwindowsize, int correl_hsearchsize, int& correl_x, int& correl_y ) throw( VError ); +int _find_lroverlap( VImage _find_lroverlap_sec, int _find_lroverlap_bandno, int _find_lroverlap_xr, int _find_lroverlap_yr, int _find_lroverlap_xs, int _find_lroverlap_ys, int _find_lroverlap_halfcorrelation, int _find_lroverlap_halfarea, int& _find_lroverlap_dy0, double& _find_lroverlap_scale1, double& _find_lroverlap_angle1, double& _find_lroverlap_dx1, double& _find_lroverlap_dy1 ) throw( VError ); +int _find_tboverlap( VImage _find_tboverlap_sec, int _find_tboverlap_bandno, int _find_tboverlap_xr, int _find_tboverlap_yr, int _find_tboverlap_xs, int _find_tboverlap_ys, int _find_tboverlap_halfcorrelation, int _find_tboverlap_halfarea, int& _find_tboverlap_dy0, double& _find_tboverlap_scale1, double& _find_tboverlap_angle1, double& _find_tboverlap_dx1, double& _find_tboverlap_dy1 ) throw( VError ); +VImage global_balance( double global_balance_gamma ) throw( VError ); +VImage global_balancef( double global_balancef_gamma ) throw( VError ); +VImage lrmerge( VImage lrmerge_sec, int lrmerge_dx, int lrmerge_dy, int lrmerge_mwidth ) throw( VError ); +VImage lrmerge1( VImage lrmerge1_sec, int lrmerge1_xr1, int lrmerge1_yr1, int lrmerge1_xs1, int lrmerge1_ys1, int lrmerge1_xr2, int lrmerge1_yr2, int lrmerge1_xs2, int lrmerge1_ys2, int lrmerge1_mwidth ) throw( VError ); +VImage lrmosaic( VImage lrmosaic_sec, int lrmosaic_bandno, int lrmosaic_xr, int lrmosaic_yr, int lrmosaic_xs, int lrmosaic_ys, int lrmosaic_halfcorrelation, int lrmosaic_halfarea, int lrmosaic_balancetype, int lrmosaic_mwidth ) throw( VError ); +VImage lrmosaic1( VImage lrmosaic1_sec, int lrmosaic1_bandno, int lrmosaic1_xr1, int lrmosaic1_yr1, int lrmosaic1_xs1, int lrmosaic1_ys1, int lrmosaic1_xr2, int lrmosaic1_yr2, int lrmosaic1_xs2, int lrmosaic1_ys2, int lrmosaic1_halfcorrelation, int lrmosaic1_halfarea, int lrmosaic1_balancetype, int lrmosaic1_mwidth ) throw( VError ); +VImage match_linear( VImage match_linear_sec, int match_linear_xref1, int match_linear_yref1, int match_linear_xsec1, int match_linear_ysec1, int match_linear_xref2, int match_linear_yref2, int match_linear_xsec2, int match_linear_ysec2 ) throw( VError ); +VImage match_linear_search( VImage match_linear_search_sec, int match_linear_search_xref1, int match_linear_search_yref1, int match_linear_search_xsec1, int match_linear_search_ysec1, int match_linear_search_xref2, int match_linear_search_yref2, int match_linear_search_xsec2, int match_linear_search_ysec2, int match_linear_search_hwindowsize, int match_linear_search_hsearchsize ) throw( VError ); +double maxpos_subpel( double& maxpos_subpel_y ) throw( VError ); +VImage remosaic( char* remosaic_old_str, char* remosaic_new_str ) throw( VError ); +VImage tbmerge( VImage tbmerge_sec, int tbmerge_dx, int tbmerge_dy, int tbmerge_mwidth ) throw( VError ); +VImage tbmerge1( VImage tbmerge1_sec, int tbmerge1_xr1, int tbmerge1_yr1, int tbmerge1_xs1, int tbmerge1_ys1, int tbmerge1_xr2, int tbmerge1_yr2, int tbmerge1_xs2, int tbmerge1_ys2, int tbmerge1_mwidth ) throw( VError ); +VImage tbmosaic( VImage tbmosaic_sec, int tbmosaic_bandno, int tbmosaic_xr, int tbmosaic_yr, int tbmosaic_xs, int tbmosaic_ys, int tbmosaic_halfcorrelation, int tbmosaic_halfarea, int tbmosaic_balancetype, int tbmosaic_mwidth ) throw( VError ); +VImage tbmosaic1( VImage tbmosaic1_sec, int tbmosaic1_bandno, int tbmosaic1_xr1, int tbmosaic1_yr1, int tbmosaic1_xs1, int tbmosaic1_ys1, int tbmosaic1_xr2, int tbmosaic1_yr2, int tbmosaic1_xs2, int tbmosaic1_ys2, int tbmosaic1_halfcorrelation, int tbmosaic1_halfarea, int tbmosaic1_balancetype, int tbmosaic1_mwidth ) throw( VError ); // headers for package other // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage benchmark(); -double benchmark2(); -VImage benchmarkn( int benchmarkn_n ); -static VImage eye( int eye_xsize, int eye_ysize, double eye_factor ); -static VImage grey( int grey_xsize, int grey_ysize ); -static VImage feye( int feye_xsize, int feye_ysize, double feye_factor ); -static VImage fgrey( int fgrey_xsize, int fgrey_ysize ); -static VImage fzone( int fzone_size ); -static VImage make_xy( int make_xy_xsize, int make_xy_ysize ); -static VImage sines( int sines_xsize, int sines_ysize, double sines_horfreq, double sines_verfreq ); -static VImage zone( int zone_size ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage benchmark() throw( VError ); +double benchmark2() throw( VError ); +VImage benchmarkn( int benchmarkn_n ) throw( VError ); +static VImage eye( int eye_xsize, int eye_ysize, double eye_factor ) throw( VError ); +static VImage grey( int grey_xsize, int grey_ysize ) throw( VError ); +static VImage feye( int feye_xsize, int feye_ysize, double feye_factor ) throw( VError ); +static VImage fgrey( int fgrey_xsize, int fgrey_ysize ) throw( VError ); +static VImage fzone( int fzone_size ) throw( VError ); +static VImage make_xy( int make_xy_xsize, int make_xy_ysize ) throw( VError ); +static VImage sines( int sines_xsize, int sines_ysize, double sines_horfreq, double sines_verfreq ) throw( VError ); +static VImage zone( int zone_size ) throw( VError ); // headers for package resample // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -VImage rightshift_size( int rightshift_size_xshift, int rightshift_size_yshift, int rightshift_size_band_fmt ); -VImage shrink( double shrink_xfac, double shrink_yfac ); -VImage stretch3( double stretch3_xdisp, double stretch3_ydisp ); -VImage affinei( char* affinei_interpolate, double affinei_a, double affinei_b, double affinei_c, double affinei_d, double affinei_dx, double affinei_dy, int affinei_x, int affinei_y, int affinei_w, int affinei_h ); -VImage affinei_all( char* affinei_all_interpolate, double affinei_all_a, double affinei_all_b, double affinei_all_c, double affinei_all_d, double affinei_all_dx, double affinei_all_dy ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +VImage rightshift_size( int rightshift_size_xshift, int rightshift_size_yshift, int rightshift_size_band_fmt ) throw( VError ); +VImage shrink( double shrink_xfac, double shrink_yfac ) throw( VError ); +VImage stretch3( double stretch3_xdisp, double stretch3_ydisp ) throw( VError ); +VImage affinei( char* affinei_interpolate, double affinei_a, double affinei_b, double affinei_c, double affinei_d, double affinei_dx, double affinei_dy, int affinei_x, int affinei_y, int affinei_w, int affinei_h ) throw( VError ); +VImage affinei_all( char* affinei_all_interpolate, double affinei_all_a, double affinei_all_b, double affinei_all_c, double affinei_all_d, double affinei_all_dx, double affinei_all_dy ) throw( VError ); // headers for package video // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 -static VImage video_test( int video_test_brightness, int video_test_error ); -static VImage video_v4l1( char* video_v4l1_device, int video_v4l1_channel, int video_v4l1_brightness, int video_v4l1_colour, int video_v4l1_contrast, int video_v4l1_hue, int video_v4l1_ngrabs ); +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 +static VImage video_test( int video_test_brightness, int video_test_error ) throw( VError ); +static VImage video_v4l1( char* video_v4l1_device, int video_v4l1_channel, int video_v4l1_brightness, int video_v4l1_colour, int video_v4l1_contrast, int video_v4l1_hue, int video_v4l1_ngrabs ) throw( VError ); diff --git a/libvipsCC/vipsc++.cc b/libvipsCC/vipsc++.cc index d35ebb04..ebaa71c2 100644 --- a/libvipsCC/vipsc++.cc +++ b/libvipsCC/vipsc++.cc @@ -1,9 +1,9 @@ // bodies for package arithmetic // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_abs: absolute value -VImage VImage::abs() +VImage VImage::abs() throw( VError ) { VImage in = *this; VImage out; @@ -19,7 +19,7 @@ VImage VImage::abs() } // im_acostra: acos of image (result in degrees) -VImage VImage::acos() +VImage VImage::acos() throw( VError ) { VImage in = *this; VImage out; @@ -35,7 +35,7 @@ VImage VImage::acos() } // im_add: add two images -VImage VImage::add( VImage in2 ) +VImage VImage::add( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -53,7 +53,7 @@ VImage VImage::add( VImage in2 ) } // im_asintra: asin of image (result in degrees) -VImage VImage::asin() +VImage VImage::asin() throw( VError ) { VImage in = *this; VImage out; @@ -69,7 +69,7 @@ VImage VImage::asin() } // im_atantra: atan of image (result in degrees) -VImage VImage::atan() +VImage VImage::atan() throw( VError ) { VImage in = *this; VImage out; @@ -85,7 +85,7 @@ VImage VImage::atan() } // im_avg: average value of image -double VImage::avg() +double VImage::avg() throw( VError ) { VImage in = *this; double value; @@ -100,7 +100,7 @@ double VImage::avg() } // im_point: interpolate value at single point -double VImage::point( char* interpolate, double x, double y, int band ) +double VImage::point( char* interpolate, double x, double y, int band ) throw( VError ) { VImage in = *this; double out; @@ -120,7 +120,7 @@ double VImage::point( char* interpolate, double x, double y, int band ) } // im_point_bilinear: interpolate value at single point, linearly -double VImage::point_bilinear( double x, double y, int band ) +double VImage::point_bilinear( double x, double y, int band ) throw( VError ) { VImage in = *this; double val; @@ -138,7 +138,7 @@ double VImage::point_bilinear( double x, double y, int band ) } // im_bandmean: average image bands -VImage VImage::bandmean() +VImage VImage::bandmean() throw( VError ) { VImage in = *this; VImage out; @@ -154,7 +154,7 @@ VImage VImage::bandmean() } // im_ceil: round to smallest integer value not less than -VImage VImage::ceil() +VImage VImage::ceil() throw( VError ) { VImage in = *this; VImage out; @@ -170,7 +170,7 @@ VImage VImage::ceil() } // im_costra: cos of image (angles in degrees) -VImage VImage::cos() +VImage VImage::cos() throw( VError ) { VImage in = *this; VImage out; @@ -186,7 +186,7 @@ VImage VImage::cos() } // im_cross_phase: phase of cross power spectrum of two complex images -VImage VImage::cross_phase( VImage in2 ) +VImage VImage::cross_phase( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -204,7 +204,7 @@ VImage VImage::cross_phase( VImage in2 ) } // im_deviate: standard deviation of image -double VImage::deviate() +double VImage::deviate() throw( VError ) { VImage in = *this; double value; @@ -219,7 +219,7 @@ double VImage::deviate() } // im_divide: divide two images -VImage VImage::divide( VImage in2 ) +VImage VImage::divide( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -237,7 +237,7 @@ VImage VImage::divide( VImage in2 ) } // im_exp10tra: 10^pel of image -VImage VImage::exp10() +VImage VImage::exp10() throw( VError ) { VImage in = *this; VImage out; @@ -253,7 +253,7 @@ VImage VImage::exp10() } // im_expntra: x^pel of image -VImage VImage::expn( double x ) +VImage VImage::expn( double x ) throw( VError ) { VImage in = *this; VImage out; @@ -270,7 +270,7 @@ VImage VImage::expn( double x ) } // im_expntra_vec: [x,y,z]^pel of image -VImage VImage::expn( std::vector v ) +VImage VImage::expn( std::vector v ) throw( VError ) { VImage in = *this; VImage out; @@ -290,7 +290,7 @@ VImage VImage::expn( std::vector v ) } // im_exptra: e^pel of image -VImage VImage::exp() +VImage VImage::exp() throw( VError ) { VImage in = *this; VImage out; @@ -306,7 +306,7 @@ VImage VImage::exp() } // im_floor: round to largest integer value not greater than -VImage VImage::floor() +VImage VImage::floor() throw( VError ) { VImage in = *this; VImage out; @@ -322,7 +322,7 @@ VImage VImage::floor() } // im_invert: photographic negative -VImage VImage::invert() +VImage VImage::invert() throw( VError ) { VImage in = *this; VImage out; @@ -338,7 +338,7 @@ VImage VImage::invert() } // im_lintra: calculate a*in + b = outfile -VImage VImage::lin( double a, double b ) +VImage VImage::lin( double a, double b ) throw( VError ) { VImage in = *this; VImage out; @@ -356,7 +356,7 @@ VImage VImage::lin( double a, double b ) } // im_linreg: pixelwise linear regression -VImage VImage::linreg( std::vector ins, std::vector xs ) +VImage VImage::linreg( std::vector ins, std::vector xs ) throw( VError ) { VImage out; @@ -379,7 +379,7 @@ VImage VImage::linreg( std::vector ins, std::vector xs ) } // im_lintra_vec: calculate a*in + b -> out, a and b vectors -VImage VImage::lin( std::vector a, std::vector b ) +VImage VImage::lin( std::vector a, std::vector b ) throw( VError ) { VImage in = *this; VImage out; @@ -403,7 +403,7 @@ VImage VImage::lin( std::vector a, std::vector b ) } // im_log10tra: log10 of image -VImage VImage::log10() +VImage VImage::log10() throw( VError ) { VImage in = *this; VImage out; @@ -419,7 +419,7 @@ VImage VImage::log10() } // im_logtra: ln of image -VImage VImage::log() +VImage VImage::log() throw( VError ) { VImage in = *this; VImage out; @@ -435,7 +435,7 @@ VImage VImage::log() } // im_max: maximum value of image -double VImage::max() +double VImage::max() throw( VError ) { VImage in = *this; double value; @@ -450,7 +450,7 @@ double VImage::max() } // im_maxpos: position of maximum value of image -std::complex VImage::maxpos() +std::complex VImage::maxpos() throw( VError ) { VImage in = *this; std::complex position; @@ -465,7 +465,7 @@ std::complex VImage::maxpos() } // im_maxpos_avg: position of maximum value of image, averaging in case of draw -double VImage::maxpos_avg( double& y, double& out ) +double VImage::maxpos_avg( double& y, double& out ) throw( VError ) { VImage in = *this; double x; @@ -482,7 +482,7 @@ double VImage::maxpos_avg( double& y, double& out ) } // im_measure: measure averages of a grid of patches -VDMask VImage::measure( int x, int y, int w, int h, int h_patches, int v_patches ) +VDMask VImage::measure( int x, int y, int w, int h, int h_patches, int v_patches ) throw( VError ) { VImage in = *this; VDMask mask; @@ -504,7 +504,7 @@ VDMask VImage::measure( int x, int y, int w, int h, int h_patches, int v_patches } // im_min: minimum value of image -double VImage::min() +double VImage::min() throw( VError ) { VImage in = *this; double value; @@ -519,7 +519,7 @@ double VImage::min() } // im_minpos: position of minimum value of image -std::complex VImage::minpos() +std::complex VImage::minpos() throw( VError ) { VImage in = *this; std::complex position; @@ -534,7 +534,7 @@ std::complex VImage::minpos() } // im_multiply: multiply two images -VImage VImage::multiply( VImage in2 ) +VImage VImage::multiply( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -552,7 +552,7 @@ VImage VImage::multiply( VImage in2 ) } // im_powtra: pel^x of image -VImage VImage::pow( double x ) +VImage VImage::pow( double x ) throw( VError ) { VImage in = *this; VImage out; @@ -569,7 +569,7 @@ VImage VImage::pow( double x ) } // im_powtra_vec: pel^[x,y,z] of image -VImage VImage::pow( std::vector v ) +VImage VImage::pow( std::vector v ) throw( VError ) { VImage in = *this; VImage out; @@ -589,7 +589,7 @@ VImage VImage::pow( std::vector v ) } // im_recomb: linear recombination with mask -VImage VImage::recomb( VDMask matrix ) +VImage VImage::recomb( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -606,7 +606,7 @@ VImage VImage::recomb( VDMask matrix ) } // im_remainder: remainder after integer division -VImage VImage::remainder( VImage in2 ) +VImage VImage::remainder( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -624,7 +624,7 @@ VImage VImage::remainder( VImage in2 ) } // im_remainderconst: remainder after integer division by a constant -VImage VImage::remainder( double x ) +VImage VImage::remainder( double x ) throw( VError ) { VImage in = *this; VImage out; @@ -641,7 +641,7 @@ VImage VImage::remainder( double x ) } // im_remainder_vec: remainder after integer division by a vector of constants -VImage VImage::remainder( std::vector x ) +VImage VImage::remainder( std::vector x ) throw( VError ) { VImage in = *this; VImage out; @@ -661,7 +661,7 @@ VImage VImage::remainder( std::vector x ) } // im_rint: round to nearest integer value -VImage VImage::rint() +VImage VImage::rint() throw( VError ) { VImage in = *this; VImage out; @@ -677,7 +677,7 @@ VImage VImage::rint() } // im_sign: unit vector in direction of value -VImage VImage::sign() +VImage VImage::sign() throw( VError ) { VImage in = *this; VImage out; @@ -693,7 +693,7 @@ VImage VImage::sign() } // im_sintra: sin of image (angles in degrees) -VImage VImage::sin() +VImage VImage::sin() throw( VError ) { VImage in = *this; VImage out; @@ -709,7 +709,7 @@ VImage VImage::sin() } // im_stats: many image statistics in one pass -VDMask VImage::stats() +VDMask VImage::stats() throw( VError ) { VImage in = *this; VDMask statistics; @@ -725,7 +725,7 @@ VDMask VImage::stats() } // im_subtract: subtract two images -VImage VImage::subtract( VImage in2 ) +VImage VImage::subtract( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -743,7 +743,7 @@ VImage VImage::subtract( VImage in2 ) } // im_tantra: tan of image (angles in degrees) -VImage VImage::tan() +VImage VImage::tan() throw( VError ) { VImage in = *this; VImage out; @@ -761,9 +761,9 @@ VImage VImage::tan() // bodies for package cimg // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_greyc: noise-removing filter -VImage VImage::greyc( int iterations, double amplitude, double sharpness, double anisotropy, double alpha, double sigma, double dl, double da, double gauss_prec, int interpolation, int fast_approx ) +VImage VImage::greyc( int iterations, double amplitude, double sharpness, double anisotropy, double alpha, double sigma, double dl, double da, double gauss_prec, int interpolation, int fast_approx ) throw( VError ) { VImage src = *this; VImage dst; @@ -790,7 +790,7 @@ VImage VImage::greyc( int iterations, double amplitude, double sharpness, double } // im_greyc_mask: noise-removing filter, with a mask -VImage VImage::greyc_mask( VImage mask, int iterations, double amplitude, double sharpness, double anisotropy, double alpha, double sigma, double dl, double da, double gauss_prec, int interpolation, int fast_approx ) +VImage VImage::greyc_mask( VImage mask, int iterations, double amplitude, double sharpness, double anisotropy, double alpha, double sigma, double dl, double da, double gauss_prec, int interpolation, int fast_approx ) throw( VError ) { VImage src = *this; VImage dst; @@ -821,9 +821,9 @@ VImage VImage::greyc_mask( VImage mask, int iterations, double amplitude, double // bodies for package colour // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_LCh2Lab: convert LCh to Lab -VImage VImage::LCh2Lab() +VImage VImage::LCh2Lab() throw( VError ) { VImage in = *this; VImage out; @@ -839,7 +839,7 @@ VImage VImage::LCh2Lab() } // im_LCh2UCS: convert LCh to UCS -VImage VImage::LCh2UCS() +VImage VImage::LCh2UCS() throw( VError ) { VImage in = *this; VImage out; @@ -855,7 +855,7 @@ VImage VImage::LCh2UCS() } // im_Lab2LCh: convert Lab to LCh -VImage VImage::Lab2LCh() +VImage VImage::Lab2LCh() throw( VError ) { VImage in = *this; VImage out; @@ -871,7 +871,7 @@ VImage VImage::Lab2LCh() } // im_Lab2LabQ: convert Lab to LabQ -VImage VImage::Lab2LabQ() +VImage VImage::Lab2LabQ() throw( VError ) { VImage in = *this; VImage out; @@ -887,7 +887,7 @@ VImage VImage::Lab2LabQ() } // im_Lab2LabS: convert Lab to LabS -VImage VImage::Lab2LabS() +VImage VImage::Lab2LabS() throw( VError ) { VImage in = *this; VImage out; @@ -903,7 +903,7 @@ VImage VImage::Lab2LabS() } // im_Lab2UCS: convert Lab to UCS -VImage VImage::Lab2UCS() +VImage VImage::Lab2UCS() throw( VError ) { VImage in = *this; VImage out; @@ -919,7 +919,7 @@ VImage VImage::Lab2UCS() } // im_Lab2XYZ: convert D65 Lab to XYZ -VImage VImage::Lab2XYZ() +VImage VImage::Lab2XYZ() throw( VError ) { VImage in = *this; VImage out; @@ -935,7 +935,7 @@ VImage VImage::Lab2XYZ() } // im_Lab2XYZ_temp: convert Lab to XYZ, with a specified colour temperature -VImage VImage::Lab2XYZ_temp( double X0, double Y0, double Z0 ) +VImage VImage::Lab2XYZ_temp( double X0, double Y0, double Z0 ) throw( VError ) { VImage in = *this; VImage out; @@ -954,7 +954,7 @@ VImage VImage::Lab2XYZ_temp( double X0, double Y0, double Z0 ) } // im_Lab2disp: convert Lab to displayable -VImage VImage::Lab2disp( VDisplay disp ) +VImage VImage::Lab2disp( VDisplay disp ) throw( VError ) { VImage in = *this; VImage out; @@ -971,7 +971,7 @@ VImage VImage::Lab2disp( VDisplay disp ) } // im_LabQ2LabS: convert LabQ to LabS -VImage VImage::LabQ2LabS() +VImage VImage::LabQ2LabS() throw( VError ) { VImage in = *this; VImage out; @@ -987,7 +987,7 @@ VImage VImage::LabQ2LabS() } // im_LabQ2Lab: convert LabQ to Lab -VImage VImage::LabQ2Lab() +VImage VImage::LabQ2Lab() throw( VError ) { VImage in = *this; VImage out; @@ -1003,7 +1003,7 @@ VImage VImage::LabQ2Lab() } // im_LabQ2XYZ: convert LabQ to XYZ -VImage VImage::LabQ2XYZ() +VImage VImage::LabQ2XYZ() throw( VError ) { VImage in = *this; VImage out; @@ -1019,7 +1019,7 @@ VImage VImage::LabQ2XYZ() } // im_LabQ2disp: convert LabQ to displayable -VImage VImage::LabQ2disp( VDisplay disp ) +VImage VImage::LabQ2disp( VDisplay disp ) throw( VError ) { VImage in = *this; VImage out; @@ -1036,7 +1036,7 @@ VImage VImage::LabQ2disp( VDisplay disp ) } // im_LabS2LabQ: convert LabS to LabQ -VImage VImage::LabS2LabQ() +VImage VImage::LabS2LabQ() throw( VError ) { VImage in = *this; VImage out; @@ -1052,7 +1052,7 @@ VImage VImage::LabS2LabQ() } // im_LabS2Lab: convert LabS to Lab -VImage VImage::LabS2Lab() +VImage VImage::LabS2Lab() throw( VError ) { VImage in = *this; VImage out; @@ -1068,7 +1068,7 @@ VImage VImage::LabS2Lab() } // im_UCS2LCh: convert UCS to LCh -VImage VImage::UCS2LCh() +VImage VImage::UCS2LCh() throw( VError ) { VImage in = *this; VImage out; @@ -1084,7 +1084,7 @@ VImage VImage::UCS2LCh() } // im_UCS2Lab: convert UCS to Lab -VImage VImage::UCS2Lab() +VImage VImage::UCS2Lab() throw( VError ) { VImage in = *this; VImage out; @@ -1100,7 +1100,7 @@ VImage VImage::UCS2Lab() } // im_UCS2XYZ: convert UCS to XYZ -VImage VImage::UCS2XYZ() +VImage VImage::UCS2XYZ() throw( VError ) { VImage in = *this; VImage out; @@ -1116,7 +1116,7 @@ VImage VImage::UCS2XYZ() } // im_XYZ2Lab: convert D65 XYZ to Lab -VImage VImage::XYZ2Lab() +VImage VImage::XYZ2Lab() throw( VError ) { VImage in = *this; VImage out; @@ -1132,7 +1132,7 @@ VImage VImage::XYZ2Lab() } // im_XYZ2Lab_temp: convert XYZ to Lab, with a specified colour temperature -VImage VImage::XYZ2Lab_temp( double X0, double Y0, double Z0 ) +VImage VImage::XYZ2Lab_temp( double X0, double Y0, double Z0 ) throw( VError ) { VImage in = *this; VImage out; @@ -1151,7 +1151,7 @@ VImage VImage::XYZ2Lab_temp( double X0, double Y0, double Z0 ) } // im_XYZ2UCS: convert XYZ to UCS -VImage VImage::XYZ2UCS() +VImage VImage::XYZ2UCS() throw( VError ) { VImage in = *this; VImage out; @@ -1167,7 +1167,7 @@ VImage VImage::XYZ2UCS() } // im_XYZ2Yxy: convert XYZ to Yxy -VImage VImage::XYZ2Yxy() +VImage VImage::XYZ2Yxy() throw( VError ) { VImage in = *this; VImage out; @@ -1183,7 +1183,7 @@ VImage VImage::XYZ2Yxy() } // im_XYZ2disp: convert XYZ to displayble -VImage VImage::XYZ2disp( VDisplay disp ) +VImage VImage::XYZ2disp( VDisplay disp ) throw( VError ) { VImage in = *this; VImage out; @@ -1200,7 +1200,7 @@ VImage VImage::XYZ2disp( VDisplay disp ) } // im_XYZ2sRGB: convert XYZ to sRGB -VImage VImage::XYZ2sRGB() +VImage VImage::XYZ2sRGB() throw( VError ) { VImage in = *this; VImage out; @@ -1216,7 +1216,7 @@ VImage VImage::XYZ2sRGB() } // im_Yxy2XYZ: convert Yxy to XYZ -VImage VImage::Yxy2XYZ() +VImage VImage::Yxy2XYZ() throw( VError ) { VImage in = *this; VImage out; @@ -1232,7 +1232,7 @@ VImage VImage::Yxy2XYZ() } // im_dE00_fromLab: calculate delta-E CIE2000 for two Lab images -VImage VImage::dE00_fromLab( VImage in2 ) +VImage VImage::dE00_fromLab( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1250,7 +1250,7 @@ VImage VImage::dE00_fromLab( VImage in2 ) } // im_dECMC_fromLab: calculate delta-E CMC(1:1) for two Lab images -VImage VImage::dECMC_fromLab( VImage in2 ) +VImage VImage::dECMC_fromLab( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1268,7 +1268,7 @@ VImage VImage::dECMC_fromLab( VImage in2 ) } // im_dECMC_fromdisp: calculate delta-E CMC(1:1) for two displayable images -VImage VImage::dECMC_fromdisp( VImage in2, VDisplay disp ) +VImage VImage::dECMC_fromdisp( VImage in2, VDisplay disp ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1287,7 +1287,7 @@ VImage VImage::dECMC_fromdisp( VImage in2, VDisplay disp ) } // im_dE_fromLab: calculate delta-E for two Lab images -VImage VImage::dE_fromLab( VImage in2 ) +VImage VImage::dE_fromLab( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1305,7 +1305,7 @@ VImage VImage::dE_fromLab( VImage in2 ) } // im_dE_fromXYZ: calculate delta-E for two XYZ images -VImage VImage::dE_fromXYZ( VImage in2 ) +VImage VImage::dE_fromXYZ( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1323,7 +1323,7 @@ VImage VImage::dE_fromXYZ( VImage in2 ) } // im_dE_fromdisp: calculate delta-E for two displayable images -VImage VImage::dE_fromdisp( VImage in2, VDisplay disp ) +VImage VImage::dE_fromdisp( VImage in2, VDisplay disp ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1342,7 +1342,7 @@ VImage VImage::dE_fromdisp( VImage in2, VDisplay disp ) } // im_disp2Lab: convert displayable to Lab -VImage VImage::disp2Lab( VDisplay disp ) +VImage VImage::disp2Lab( VDisplay disp ) throw( VError ) { VImage in = *this; VImage out; @@ -1359,7 +1359,7 @@ VImage VImage::disp2Lab( VDisplay disp ) } // im_disp2XYZ: convert displayable to XYZ -VImage VImage::disp2XYZ( VDisplay disp ) +VImage VImage::disp2XYZ( VDisplay disp ) throw( VError ) { VImage in = *this; VImage out; @@ -1376,7 +1376,7 @@ VImage VImage::disp2XYZ( VDisplay disp ) } // im_float2rad: convert float to Radiance packed -VImage VImage::float2rad() +VImage VImage::float2rad() throw( VError ) { VImage in = *this; VImage out; @@ -1392,7 +1392,7 @@ VImage VImage::float2rad() } // im_icc_ac2rc: convert LAB from AC to RC using an ICC profile -VImage VImage::icc_ac2rc( char* profile ) +VImage VImage::icc_ac2rc( char* profile ) throw( VError ) { VImage in = *this; VImage out; @@ -1409,7 +1409,7 @@ VImage VImage::icc_ac2rc( char* profile ) } // im_icc_export_depth: convert a float LAB to device space with an ICC profile -VImage VImage::icc_export_depth( int depth, char* output_profile, int intent ) +VImage VImage::icc_export_depth( int depth, char* output_profile, int intent ) throw( VError ) { VImage in = *this; VImage out; @@ -1428,7 +1428,7 @@ VImage VImage::icc_export_depth( int depth, char* output_profile, int intent ) } // im_icc_import: convert a device image to float LAB with an ICC profile -VImage VImage::icc_import( char* input_profile, int intent ) +VImage VImage::icc_import( char* input_profile, int intent ) throw( VError ) { VImage in = *this; VImage out; @@ -1446,7 +1446,7 @@ VImage VImage::icc_import( char* input_profile, int intent ) } // im_icc_import_embedded: convert a device image to float LAB using the embedded profile -VImage VImage::icc_import_embedded( int intent ) +VImage VImage::icc_import_embedded( int intent ) throw( VError ) { VImage in = *this; VImage out; @@ -1463,7 +1463,7 @@ VImage VImage::icc_import_embedded( int intent ) } // im_icc_transform: convert between two device images with a pair of ICC profiles -VImage VImage::icc_transform( char* input_profile, char* output_profile, int intent ) +VImage VImage::icc_transform( char* input_profile, char* output_profile, int intent ) throw( VError ) { VImage in = *this; VImage out; @@ -1482,7 +1482,7 @@ VImage VImage::icc_transform( char* input_profile, char* output_profile, int int } // im_lab_morph: morph colourspace of a LAB image -VImage VImage::lab_morph( VDMask greyscale, double L_offset, double L_scale, double a_scale, double b_scale ) +VImage VImage::lab_morph( VDMask greyscale, double L_offset, double L_scale, double a_scale, double b_scale ) throw( VError ) { VImage in = *this; VImage out; @@ -1503,7 +1503,7 @@ VImage VImage::lab_morph( VDMask greyscale, double L_offset, double L_scale, dou } // im_rad2float: convert Radiance packed to float -VImage VImage::rad2float() +VImage VImage::rad2float() throw( VError ) { VImage in = *this; VImage out; @@ -1519,7 +1519,7 @@ VImage VImage::rad2float() } // im_sRGB2XYZ: convert sRGB to XYZ -VImage VImage::sRGB2XYZ() +VImage VImage::sRGB2XYZ() throw( VError ) { VImage in = *this; VImage out; @@ -1537,9 +1537,9 @@ VImage VImage::sRGB2XYZ() // bodies for package conversion // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_gaussnoise: generate image of gaussian noise with specified statistics -VImage VImage::gaussnoise( int xsize, int ysize, double mean, double sigma ) +VImage VImage::gaussnoise( int xsize, int ysize, double mean, double sigma ) throw( VError ) { VImage out; @@ -1556,7 +1556,7 @@ VImage VImage::gaussnoise( int xsize, int ysize, double mean, double sigma ) } // im_bandjoin: bandwise join of two images -VImage VImage::bandjoin( VImage in2 ) +VImage VImage::bandjoin( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -1574,7 +1574,7 @@ VImage VImage::bandjoin( VImage in2 ) } // im_black: generate black image -VImage VImage::black( int x_size, int y_size, int bands ) +VImage VImage::black( int x_size, int y_size, int bands ) throw( VError ) { VImage output; @@ -1590,7 +1590,7 @@ VImage VImage::black( int x_size, int y_size, int bands ) } // im_c2amph: convert real and imaginary to phase and amplitude -VImage VImage::c2amph() +VImage VImage::c2amph() throw( VError ) { VImage in = *this; VImage out; @@ -1606,7 +1606,7 @@ VImage VImage::c2amph() } // im_c2imag: extract imaginary part of complex image -VImage VImage::c2imag() +VImage VImage::c2imag() throw( VError ) { VImage in = *this; VImage out; @@ -1622,7 +1622,7 @@ VImage VImage::c2imag() } // im_c2real: extract real part of complex image -VImage VImage::c2real() +VImage VImage::c2real() throw( VError ) { VImage in = *this; VImage out; @@ -1638,7 +1638,7 @@ VImage VImage::c2real() } // im_c2rect: convert phase and amplitude to real and imaginary -VImage VImage::c2rect() +VImage VImage::c2rect() throw( VError ) { VImage in = *this; VImage out; @@ -1654,7 +1654,7 @@ VImage VImage::c2rect() } // im_clip2fmt: convert image format to ofmt -VImage VImage::clip2fmt( int ofmt ) +VImage VImage::clip2fmt( int ofmt ) throw( VError ) { VImage in = *this; VImage out; @@ -1671,7 +1671,7 @@ VImage VImage::clip2fmt( int ofmt ) } // im_copy: copy image -VImage VImage::copy() +VImage VImage::copy() throw( VError ) { VImage in = *this; VImage out; @@ -1687,7 +1687,7 @@ VImage VImage::copy() } // im_copy_file: copy image to a file and return that -VImage VImage::copy_file() +VImage VImage::copy_file() throw( VError ) { VImage in = *this; VImage out; @@ -1703,7 +1703,7 @@ VImage VImage::copy_file() } // im_copy_morph: copy image, setting pixel layout -VImage VImage::copy_morph( int Bands, int BandFmt, int Coding ) +VImage VImage::copy_morph( int Bands, int BandFmt, int Coding ) throw( VError ) { VImage input = *this; VImage output; @@ -1722,7 +1722,7 @@ VImage VImage::copy_morph( int Bands, int BandFmt, int Coding ) } // im_copy_swap: copy image, swapping byte order -VImage VImage::copy_swap() +VImage VImage::copy_swap() throw( VError ) { VImage in = *this; VImage out; @@ -1738,7 +1738,7 @@ VImage VImage::copy_swap() } // im_copy_set: copy image, setting informational fields -VImage VImage::copy_set( int Type, double Xres, double Yres, int Xoffset, int Yoffset ) +VImage VImage::copy_set( int Type, double Xres, double Yres, int Xoffset, int Yoffset ) throw( VError ) { VImage input = *this; VImage output; @@ -1759,7 +1759,7 @@ VImage VImage::copy_set( int Type, double Xres, double Yres, int Xoffset, int Yo } // im_extract_area: extract area -VImage VImage::extract_area( int left, int top, int width, int height ) +VImage VImage::extract_area( int left, int top, int width, int height ) throw( VError ) { VImage input = *this; VImage output; @@ -1779,7 +1779,7 @@ VImage VImage::extract_area( int left, int top, int width, int height ) } // im_extract_areabands: extract area and bands -VImage VImage::extract_areabands( int left, int top, int width, int height, int band, int nbands ) +VImage VImage::extract_areabands( int left, int top, int width, int height, int band, int nbands ) throw( VError ) { VImage input = *this; VImage output; @@ -1801,7 +1801,7 @@ VImage VImage::extract_areabands( int left, int top, int width, int height, int } // im_extract_band: extract band -VImage VImage::extract_band( int band ) +VImage VImage::extract_band( int band ) throw( VError ) { VImage input = *this; VImage output; @@ -1818,7 +1818,7 @@ VImage VImage::extract_band( int band ) } // im_extract_bands: extract several bands -VImage VImage::extract_bands( int band, int nbands ) +VImage VImage::extract_bands( int band, int nbands ) throw( VError ) { VImage input = *this; VImage output; @@ -1836,7 +1836,7 @@ VImage VImage::extract_bands( int band, int nbands ) } // im_extract: extract area/band -VImage VImage::extract( int left, int top, int width, int height, int band ) +VImage VImage::extract( int left, int top, int width, int height, int band ) throw( VError ) { VImage input = *this; VImage output; @@ -1857,7 +1857,7 @@ VImage VImage::extract( int left, int top, int width, int height, int band ) } // im_falsecolour: turn luminance changes into chrominance changes -VImage VImage::falsecolour() +VImage VImage::falsecolour() throw( VError ) { VImage in = *this; VImage out; @@ -1873,7 +1873,7 @@ VImage VImage::falsecolour() } // im_fliphor: flip image left-right -VImage VImage::fliphor() +VImage VImage::fliphor() throw( VError ) { VImage in = *this; VImage out; @@ -1889,7 +1889,7 @@ VImage VImage::fliphor() } // im_flipver: flip image top-bottom -VImage VImage::flipver() +VImage VImage::flipver() throw( VError ) { VImage in = *this; VImage out; @@ -1905,7 +1905,7 @@ VImage VImage::flipver() } // im_gbandjoin: bandwise join of many images -VImage VImage::gbandjoin( std::vector in ) +VImage VImage::gbandjoin( std::vector in ) throw( VError ) { VImage out; @@ -1924,7 +1924,7 @@ VImage VImage::gbandjoin( std::vector in ) } // im_grid: chop a tall thin image into a grid of images -VImage VImage::grid( int tile_height, int across, int down ) +VImage VImage::grid( int tile_height, int across, int down ) throw( VError ) { VImage input = *this; VImage output; @@ -1943,7 +1943,7 @@ VImage VImage::grid( int tile_height, int across, int down ) } // im_insert: insert sub-image into main image at position -VImage VImage::insert( VImage sub, int x, int y ) +VImage VImage::insert( VImage sub, int x, int y ) throw( VError ) { VImage in = *this; VImage out; @@ -1963,7 +1963,7 @@ VImage VImage::insert( VImage sub, int x, int y ) } // im_insertset: insert sub into main at every position in x, y -VImage VImage::insert( VImage sub, std::vector x, std::vector y ) +VImage VImage::insert( VImage sub, std::vector x, std::vector y ) throw( VError ) { VImage main = *this; VImage out; @@ -1987,7 +1987,7 @@ VImage VImage::insert( VImage sub, std::vector x, std::vector y ) } // im_insert_noexpand: insert sub-image into main image at position, no expansion -VImage VImage::insert_noexpand( VImage sub, int x, int y ) +VImage VImage::insert_noexpand( VImage sub, int x, int y ) throw( VError ) { VImage in = *this; VImage out; @@ -2007,7 +2007,7 @@ VImage VImage::insert_noexpand( VImage sub, int x, int y ) } // im_embed: embed in within a set of borders -VImage VImage::embed( int type, int x, int y, int width, int height ) +VImage VImage::embed( int type, int x, int y, int width, int height ) throw( VError ) { VImage in = *this; VImage out; @@ -2028,7 +2028,7 @@ VImage VImage::embed( int type, int x, int y, int width, int height ) } // im_lrjoin: join two images left-right -VImage VImage::lrjoin( VImage in2 ) +VImage VImage::lrjoin( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2046,7 +2046,7 @@ VImage VImage::lrjoin( VImage in2 ) } // im_msb: convert to uchar by discarding bits -VImage VImage::msb() +VImage VImage::msb() throw( VError ) { VImage in = *this; VImage out; @@ -2062,7 +2062,7 @@ VImage VImage::msb() } // im_msb_band: convert to single band uchar by discarding bits -VImage VImage::msb_band( int band ) +VImage VImage::msb_band( int band ) throw( VError ) { VImage in = *this; VImage out; @@ -2079,7 +2079,7 @@ VImage VImage::msb_band( int band ) } // im_replicate: replicate an image horizontally and vertically -VImage VImage::replicate( int across, int down ) +VImage VImage::replicate( int across, int down ) throw( VError ) { VImage input = *this; VImage output; @@ -2097,7 +2097,7 @@ VImage VImage::replicate( int across, int down ) } // im_ri2c: join two non-complex images to form complex -VImage VImage::ri2c( VImage in2 ) +VImage VImage::ri2c( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2115,7 +2115,7 @@ VImage VImage::ri2c( VImage in2 ) } // im_rot180: rotate image 180 degrees -VImage VImage::rot180() +VImage VImage::rot180() throw( VError ) { VImage in = *this; VImage out; @@ -2131,7 +2131,7 @@ VImage VImage::rot180() } // im_rot270: rotate image 270 degrees clockwise -VImage VImage::rot270() +VImage VImage::rot270() throw( VError ) { VImage in = *this; VImage out; @@ -2147,7 +2147,7 @@ VImage VImage::rot270() } // im_rot90: rotate image 90 degrees clockwise -VImage VImage::rot90() +VImage VImage::rot90() throw( VError ) { VImage in = *this; VImage out; @@ -2163,7 +2163,7 @@ VImage VImage::rot90() } // im_scale: scale image linearly to fit range 0-255 -VImage VImage::scale() +VImage VImage::scale() throw( VError ) { VImage in = *this; VImage out; @@ -2179,7 +2179,7 @@ VImage VImage::scale() } // im_scaleps: logarithmic scale of image to fit range 0-255 -VImage VImage::scaleps() +VImage VImage::scaleps() throw( VError ) { VImage in = *this; VImage out; @@ -2194,7 +2194,7 @@ VImage VImage::scaleps() } // im_subsample: subsample image by integer factors -VImage VImage::subsample( int xshrink, int yshrink ) +VImage VImage::subsample( int xshrink, int yshrink ) throw( VError ) { VImage in = *this; VImage out; @@ -2212,7 +2212,7 @@ VImage VImage::subsample( int xshrink, int yshrink ) } // im_system: run command on image -char* VImage::system( char* command ) +char* VImage::system( char* command ) throw( VError ) { VImage im = *this; char* output; @@ -2228,7 +2228,7 @@ char* VImage::system( char* command ) } // im_system_image: run command on image, with image output -VImage VImage::system_image( char* in_format, char* out_format, char* command, char*& log ) +VImage VImage::system_image( char* in_format, char* out_format, char* command, char*& log ) throw( VError ) { VImage in = *this; VImage out; @@ -2247,7 +2247,7 @@ VImage VImage::system_image( char* in_format, char* out_format, char* command, c } // im_tbjoin: join two images top-bottom -VImage VImage::tbjoin( VImage in2 ) +VImage VImage::tbjoin( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2265,7 +2265,7 @@ VImage VImage::tbjoin( VImage in2 ) } // im_text: generate text image -VImage VImage::text( char* text, char* font, int width, int alignment, int dpi ) +VImage VImage::text( char* text, char* font, int width, int alignment, int dpi ) throw( VError ) { VImage out; @@ -2283,7 +2283,7 @@ VImage VImage::text( char* text, char* font, int width, int alignment, int dpi ) } // im_wrap: shift image origin, wrapping at sides -VImage VImage::wrap( int x, int y ) +VImage VImage::wrap( int x, int y ) throw( VError ) { VImage in = *this; VImage out; @@ -2301,7 +2301,7 @@ VImage VImage::wrap( int x, int y ) } // im_zoom: simple zoom of an image by integer factors -VImage VImage::zoom( int xfac, int yfac ) +VImage VImage::zoom( int xfac, int yfac ) throw( VError ) { VImage input = *this; VImage output; @@ -2321,9 +2321,9 @@ VImage VImage::zoom( int xfac, int yfac ) // bodies for package convolution // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_aconvsep: approximate separable convolution -VImage VImage::aconvsep( VDMask matrix, int n_layers ) +VImage VImage::aconvsep( VDMask matrix, int n_layers ) throw( VError ) { VImage in = *this; VImage out; @@ -2341,7 +2341,7 @@ VImage VImage::aconvsep( VDMask matrix, int n_layers ) } // im_aconv: approximate convolution -VImage VImage::aconv( VDMask matrix, int n_layers, int cluster ) +VImage VImage::aconv( VDMask matrix, int n_layers, int cluster ) throw( VError ) { VImage in = *this; VImage out; @@ -2360,7 +2360,7 @@ VImage VImage::aconv( VDMask matrix, int n_layers, int cluster ) } // im_addgnoise: add gaussian noise with mean 0 and std. dev. sigma -VImage VImage::addgnoise( double sigma ) +VImage VImage::addgnoise( double sigma ) throw( VError ) { VImage in = *this; VImage out; @@ -2377,7 +2377,7 @@ VImage VImage::addgnoise( double sigma ) } // im_compass: convolve with 8-way rotating integer mask -VImage VImage::compass( VIMask matrix ) +VImage VImage::compass( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2394,7 +2394,7 @@ VImage VImage::compass( VIMask matrix ) } // im_contrast_surface: find high-contrast points in an image -VImage VImage::contrast_surface( int half_win_size, int spacing ) +VImage VImage::contrast_surface( int half_win_size, int spacing ) throw( VError ) { VImage in = *this; VImage out; @@ -2412,7 +2412,7 @@ VImage VImage::contrast_surface( int half_win_size, int spacing ) } // im_conv: convolve -VImage VImage::conv( VIMask matrix ) +VImage VImage::conv( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2429,7 +2429,7 @@ VImage VImage::conv( VIMask matrix ) } // im_conv_f: convolve, with DOUBLEMASK -VImage VImage::conv( VDMask matrix ) +VImage VImage::conv( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2446,7 +2446,7 @@ VImage VImage::conv( VDMask matrix ) } // im_convsep: seperable convolution -VImage VImage::convsep( VIMask matrix ) +VImage VImage::convsep( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2463,7 +2463,7 @@ VImage VImage::convsep( VIMask matrix ) } // im_convsep_f: seperable convolution, with DOUBLEMASK -VImage VImage::convsep( VDMask matrix ) +VImage VImage::convsep( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2480,7 +2480,7 @@ VImage VImage::convsep( VDMask matrix ) } // im_fastcor: fast correlate in2 within in1 -VImage VImage::fastcor( VImage in2 ) +VImage VImage::fastcor( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2498,7 +2498,7 @@ VImage VImage::fastcor( VImage in2 ) } // im_gradcor: non-normalised correlation of gradient of in2 within in1 -VImage VImage::gradcor( VImage in2 ) +VImage VImage::gradcor( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2516,7 +2516,7 @@ VImage VImage::gradcor( VImage in2 ) } // im_gradient: convolve with 2-way rotating mask -VImage VImage::gradient( VIMask matrix ) +VImage VImage::gradient( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2533,7 +2533,7 @@ VImage VImage::gradient( VIMask matrix ) } // im_grad_x: horizontal difference image -VImage VImage::grad_x() +VImage VImage::grad_x() throw( VError ) { VImage in = *this; VImage out; @@ -2549,7 +2549,7 @@ VImage VImage::grad_x() } // im_grad_y: vertical difference image -VImage VImage::grad_y() +VImage VImage::grad_y() throw( VError ) { VImage in = *this; VImage out; @@ -2565,7 +2565,7 @@ VImage VImage::grad_y() } // im_lindetect: convolve with 4-way rotating mask -VImage VImage::lindetect( VIMask matrix ) +VImage VImage::lindetect( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -2582,7 +2582,7 @@ VImage VImage::lindetect( VIMask matrix ) } // im_sharpen: sharpen high frequencies of L channel of LabQ -VImage VImage::sharpen( int mask_size, double x1, double y2, double y3, double m1, double m2 ) +VImage VImage::sharpen( int mask_size, double x1, double y2, double y3, double m1, double m2 ) throw( VError ) { VImage in = *this; VImage out; @@ -2604,7 +2604,7 @@ VImage VImage::sharpen( int mask_size, double x1, double y2, double y3, double m } // im_spcor: normalised correlation of in2 within in1 -VImage VImage::spcor( VImage in2 ) +VImage VImage::spcor( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2624,9 +2624,9 @@ VImage VImage::spcor( VImage in2 ) // bodies for package deprecated // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_argb2rgba: convert pre-multipled argb to png-style rgba -VImage VImage::argb2rgba() +VImage VImage::argb2rgba() throw( VError ) { VImage in = *this; VImage out; @@ -2642,7 +2642,7 @@ VImage VImage::argb2rgba() } // im_flood_copy: flood with ink from start_x, start_y while pixel == start pixel -VImage VImage::flood_copy( int start_x, int start_y, std::vector ink ) +VImage VImage::flood_copy( int start_x, int start_y, std::vector ink ) throw( VError ) { VImage in = *this; VImage out; @@ -2663,7 +2663,7 @@ VImage VImage::flood_copy( int start_x, int start_y, std::vector ink ) } // im_flood_blob_copy: flood with ink from start_x, start_y while pixel == start pixel -VImage VImage::flood_blob_copy( int start_x, int start_y, std::vector ink ) +VImage VImage::flood_blob_copy( int start_x, int start_y, std::vector ink ) throw( VError ) { VImage in = *this; VImage out; @@ -2684,7 +2684,7 @@ VImage VImage::flood_blob_copy( int start_x, int start_y, std::vector in } // im_flood_other_copy: flood mark with serial from start_x, start_y while pixel == start pixel -VImage VImage::flood_other_copy( VImage mark, int start_x, int start_y, int serial ) +VImage VImage::flood_other_copy( VImage mark, int start_x, int start_y, int serial ) throw( VError ) { VImage test = *this; VImage out; @@ -2703,7 +2703,7 @@ VImage VImage::flood_other_copy( VImage mark, int start_x, int start_y, int seri } // im_clip: convert to unsigned 8-bit integer -VImage VImage::clip() +VImage VImage::clip() throw( VError ) { VImage in = *this; VImage out; @@ -2719,7 +2719,7 @@ VImage VImage::clip() } // im_c2ps: find power spectrum of complex image -VImage VImage::c2ps() +VImage VImage::c2ps() throw( VError ) { VImage in = *this; VImage out; @@ -2735,7 +2735,7 @@ VImage VImage::c2ps() } // im_resize_linear: resize to X by Y pixels with linear interpolation -VImage VImage::resize_linear( int X, int Y ) +VImage VImage::resize_linear( int X, int Y ) throw( VError ) { VImage in = *this; VImage out; @@ -2752,7 +2752,7 @@ VImage VImage::resize_linear( int X, int Y ) } // im_cmulnorm: multiply two complex images, normalising output -VImage VImage::cmulnorm( VImage in2 ) +VImage VImage::cmulnorm( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2770,7 +2770,7 @@ VImage VImage::cmulnorm( VImage in2 ) } // im_fav4: average of 4 images -VImage VImage::fav4( VImage in2, VImage in3, VImage in4 ) +VImage VImage::fav4( VImage in2, VImage in3, VImage in4 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2788,7 +2788,7 @@ VImage VImage::fav4( VImage in2, VImage in3, VImage in4 ) } // im_gadd: calculate a*in1 + b*in2 + c = outfile -VImage VImage::gadd( double a, double b, VImage in2, double c ) +VImage VImage::gadd( double a, double b, VImage in2, double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -2807,7 +2807,7 @@ VImage VImage::gadd( double a, double b, VImage in2, double c ) } // im_icc_export: convert a float LAB to an 8-bit device image with an ICC profile -VImage VImage::icc_export( char* output_profile, int intent ) +VImage VImage::icc_export( char* output_profile, int intent ) throw( VError ) { VImage in = *this; VImage out; @@ -2825,7 +2825,7 @@ VImage VImage::icc_export( char* output_profile, int intent ) } // im_litecor: calculate max(white)*factor*(in/white), if clip == 1 -VImage VImage::litecor( VImage white, int clip, double factor ) +VImage VImage::litecor( VImage white, int clip, double factor ) throw( VError ) { VImage in = *this; VImage out; @@ -2843,7 +2843,7 @@ VImage VImage::litecor( VImage white, int clip, double factor ) } // im_affine: affine transform -VImage VImage::affine( double a, double b, double c, double d, double dx, double dy, int x, int y, int w, int h ) +VImage VImage::affine( double a, double b, double c, double d, double dx, double dy, int x, int y, int w, int h ) throw( VError ) { VImage in = *this; VImage out; @@ -2869,7 +2869,7 @@ VImage VImage::affine( double a, double b, double c, double d, double dx, double } // im_clip2c: convert to signed 8-bit integer -VImage VImage::clip2c() +VImage VImage::clip2c() throw( VError ) { VImage in = *this; VImage out; @@ -2885,7 +2885,7 @@ VImage VImage::clip2c() } // im_clip2cm: convert to complex -VImage VImage::clip2cm() +VImage VImage::clip2cm() throw( VError ) { VImage in = *this; VImage out; @@ -2901,7 +2901,7 @@ VImage VImage::clip2cm() } // im_clip2d: convert to double-precision float -VImage VImage::clip2d() +VImage VImage::clip2d() throw( VError ) { VImage in = *this; VImage out; @@ -2917,7 +2917,7 @@ VImage VImage::clip2d() } // im_clip2dcm: convert to double complex -VImage VImage::clip2dcm() +VImage VImage::clip2dcm() throw( VError ) { VImage in = *this; VImage out; @@ -2933,7 +2933,7 @@ VImage VImage::clip2dcm() } // im_clip2f: convert to single-precision float -VImage VImage::clip2f() +VImage VImage::clip2f() throw( VError ) { VImage in = *this; VImage out; @@ -2949,7 +2949,7 @@ VImage VImage::clip2f() } // im_clip2i: convert to signed 32-bit integer -VImage VImage::clip2i() +VImage VImage::clip2i() throw( VError ) { VImage in = *this; VImage out; @@ -2965,7 +2965,7 @@ VImage VImage::clip2i() } // im_convsub: convolve uchar to uchar, sub-sampling by xskip, yskip -VImage VImage::convsub( VIMask matrix, int xskip, int yskip ) +VImage VImage::convsub( VIMask matrix, int xskip, int yskip ) throw( VError ) { VImage in = *this; VImage out; @@ -2983,7 +2983,7 @@ VImage VImage::convsub( VIMask matrix, int xskip, int yskip ) } // im_convf: convolve, with DOUBLEMASK -VImage VImage::convf( VDMask matrix ) +VImage VImage::convf( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -3000,7 +3000,7 @@ VImage VImage::convf( VDMask matrix ) } // im_convsepf: seperable convolution, with DOUBLEMASK -VImage VImage::convsepf( VDMask matrix ) +VImage VImage::convsepf( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -3017,7 +3017,7 @@ VImage VImage::convsepf( VDMask matrix ) } // im_clip2s: convert to signed 16-bit integer -VImage VImage::clip2s() +VImage VImage::clip2s() throw( VError ) { VImage in = *this; VImage out; @@ -3033,7 +3033,7 @@ VImage VImage::clip2s() } // im_clip2ui: convert to unsigned 32-bit integer -VImage VImage::clip2ui() +VImage VImage::clip2ui() throw( VError ) { VImage in = *this; VImage out; @@ -3049,7 +3049,7 @@ VImage VImage::clip2ui() } // im_insertplaceset: insert sub into main at every position in x, y -VImage VImage::insertplace( VImage sub, std::vector x, std::vector y ) +VImage VImage::insertplace( VImage sub, std::vector x, std::vector y ) throw( VError ) { VImage main = *this; VImage out; @@ -3073,7 +3073,7 @@ VImage VImage::insertplace( VImage sub, std::vector x, std::vector y ) } // im_clip2us: convert to unsigned 16-bit integer -VImage VImage::clip2us() +VImage VImage::clip2us() throw( VError ) { VImage in = *this; VImage out; @@ -3089,7 +3089,7 @@ VImage VImage::clip2us() } // im_slice: slice an image using two thresholds -VImage VImage::slice( double thresh1, double thresh2 ) +VImage VImage::slice( double thresh1, double thresh2 ) throw( VError ) { VImage input = *this; VImage output; @@ -3106,7 +3106,7 @@ VImage VImage::slice( double thresh1, double thresh2 ) } // im_segment: number continuous regions in an image -VImage VImage::segment( int& segments ) +VImage VImage::segment( int& segments ) throw( VError ) { VImage test = *this; VImage mask; @@ -3122,7 +3122,7 @@ VImage VImage::segment( int& segments ) } // im_line: draw line between points (x1,y1) and (x2,y2) -void VImage::line( int x1, int y1, int x2, int y2, int pelval ) +void VImage::line( int x1, int y1, int x2, int y2, int pelval ) throw( VError ) { VImage im = *this; Vargv _vec( "im_line" ); @@ -3137,7 +3137,7 @@ void VImage::line( int x1, int y1, int x2, int y2, int pelval ) } // im_thresh: slice an image at a threshold -VImage VImage::thresh( double threshold ) +VImage VImage::thresh( double threshold ) throw( VError ) { VImage input = *this; VImage output; @@ -3153,7 +3153,7 @@ VImage VImage::thresh( double threshold ) } // im_convf_raw: convolve, with DOUBLEMASK, no border -VImage VImage::convf_raw( VDMask matrix ) +VImage VImage::convf_raw( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -3170,7 +3170,7 @@ VImage VImage::convf_raw( VDMask matrix ) } // im_conv_raw: convolve, no border -VImage VImage::conv_raw( VIMask matrix ) +VImage VImage::conv_raw( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -3187,7 +3187,7 @@ VImage VImage::conv_raw( VIMask matrix ) } // im_contrast_surface_raw: find high-contrast points in an image -VImage VImage::contrast_surface_raw( int half_win_size, int spacing ) +VImage VImage::contrast_surface_raw( int half_win_size, int spacing ) throw( VError ) { VImage in = *this; VImage out; @@ -3205,7 +3205,7 @@ VImage VImage::contrast_surface_raw( int half_win_size, int spacing ) } // im_convsepf_raw: seperable convolution, with DOUBLEMASK, no border -VImage VImage::convsepf_raw( VDMask matrix ) +VImage VImage::convsepf_raw( VDMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -3222,7 +3222,7 @@ VImage VImage::convsepf_raw( VDMask matrix ) } // im_convsep_raw: seperable convolution, no border -VImage VImage::convsep_raw( VIMask matrix ) +VImage VImage::convsep_raw( VIMask matrix ) throw( VError ) { VImage in = *this; VImage out; @@ -3239,7 +3239,7 @@ VImage VImage::convsep_raw( VIMask matrix ) } // im_fastcor_raw: fast correlate in2 within in1, no border -VImage VImage::fastcor_raw( VImage in2 ) +VImage VImage::fastcor_raw( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3257,7 +3257,7 @@ VImage VImage::fastcor_raw( VImage in2 ) } // im_gradcor_raw: non-normalised correlation of gradient of in2 within in1, no padding -VImage VImage::gradcor_raw( VImage in2 ) +VImage VImage::gradcor_raw( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3275,7 +3275,7 @@ VImage VImage::gradcor_raw( VImage in2 ) } // im_spcor_raw: normalised correlation of in2 within in1, no black padding -VImage VImage::spcor_raw( VImage in2 ) +VImage VImage::spcor_raw( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3293,7 +3293,7 @@ VImage VImage::spcor_raw( VImage in2 ) } // im_lhisteq_raw: local histogram equalisation, no border -VImage VImage::lhisteq_raw( int width, int height ) +VImage VImage::lhisteq_raw( int width, int height ) throw( VError ) { VImage in = *this; VImage out; @@ -3311,7 +3311,7 @@ VImage VImage::lhisteq_raw( int width, int height ) } // im_stdif_raw: statistical differencing, no border -VImage VImage::stdif_raw( double a, double m0, double b, double s0, int xw, int yw ) +VImage VImage::stdif_raw( double a, double m0, double b, double s0, int xw, int yw ) throw( VError ) { VImage in = *this; VImage out; @@ -3333,7 +3333,7 @@ VImage VImage::stdif_raw( double a, double m0, double b, double s0, int xw, int } // im_rank_raw: rank filter nth element of xsize/ysize window, no border -VImage VImage::rank_raw( int xsize, int ysize, int n ) +VImage VImage::rank_raw( int xsize, int ysize, int n ) throw( VError ) { VImage in = *this; VImage out; @@ -3352,7 +3352,7 @@ VImage VImage::rank_raw( int xsize, int ysize, int n ) } // im_dilate_raw: dilate image with mask -VImage VImage::dilate_raw( VIMask mask ) +VImage VImage::dilate_raw( VIMask mask ) throw( VError ) { VImage in = *this; VImage out; @@ -3369,7 +3369,7 @@ VImage VImage::dilate_raw( VIMask mask ) } // im_erode_raw: erode image with mask -VImage VImage::erode_raw( VIMask mask ) +VImage VImage::erode_raw( VIMask mask ) throw( VError ) { VImage in = *this; VImage out; @@ -3386,7 +3386,7 @@ VImage VImage::erode_raw( VIMask mask ) } // im_similarity_area: output area xywh of similarity transformation -VImage VImage::similarity_area( double a, double b, double dx, double dy, int x, int y, int w, int h ) +VImage VImage::similarity_area( double a, double b, double dx, double dy, int x, int y, int w, int h ) throw( VError ) { VImage in = *this; VImage out; @@ -3410,7 +3410,7 @@ VImage VImage::similarity_area( double a, double b, double dx, double dy, int x, } // im_similarity: similarity transformation -VImage VImage::similarity( double a, double b, double dx, double dy ) +VImage VImage::similarity( double a, double b, double dx, double dy ) throw( VError ) { VImage in = *this; VImage out; @@ -3430,7 +3430,7 @@ VImage VImage::similarity( double a, double b, double dx, double dy ) } // im_mask2vips: convert DOUBLEMASK to VIPS image -VImage VImage::mask2vips( VDMask input ) +VImage VImage::mask2vips( VDMask input ) throw( VError ) { VImage output; @@ -3444,7 +3444,7 @@ VImage VImage::mask2vips( VDMask input ) } // im_vips2mask: convert VIPS image to DOUBLEMASK -VDMask VImage::vips2mask() +VDMask VImage::vips2mask() throw( VError ) { VImage input = *this; VDMask output; @@ -3460,7 +3460,7 @@ VDMask VImage::vips2mask() } // im_insertplace: draw image sub inside image main at position (x,y) -void VImage::insertplace( VImage sub, int x, int y ) +void VImage::insertplace( VImage sub, int x, int y ) throw( VError ) { VImage main = *this; Vargv _vec( "im_insertplace" ); @@ -3473,7 +3473,7 @@ void VImage::insertplace( VImage sub, int x, int y ) } // im_circle: plot circle on image -void VImage::circle( int cx, int cy, int radius, int intensity ) +void VImage::circle( int cx, int cy, int radius, int intensity ) throw( VError ) { VImage image = *this; Vargv _vec( "im_circle" ); @@ -3487,7 +3487,7 @@ void VImage::circle( int cx, int cy, int radius, int intensity ) } // im_andimage: bitwise and of two images -VImage VImage::andimage( VImage in2 ) +VImage VImage::andimage( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3505,7 +3505,7 @@ VImage VImage::andimage( VImage in2 ) } // im_andimageconst: bitwise and of an image with a constant -VImage VImage::andimage( int c ) +VImage VImage::andimage( int c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3522,7 +3522,7 @@ VImage VImage::andimage( int c ) } // im_andimage_vec: bitwise and of an image with a vector constant -VImage VImage::andimage( std::vector vec ) +VImage VImage::andimage( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3542,7 +3542,7 @@ VImage VImage::andimage( std::vector vec ) } // im_orimage: bitwise or of two images -VImage VImage::orimage( VImage in2 ) +VImage VImage::orimage( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3560,7 +3560,7 @@ VImage VImage::orimage( VImage in2 ) } // im_orimageconst: bitwise or of an image with a constant -VImage VImage::orimage( int c ) +VImage VImage::orimage( int c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3577,7 +3577,7 @@ VImage VImage::orimage( int c ) } // im_orimage_vec: bitwise or of an image with a vector constant -VImage VImage::orimage( std::vector vec ) +VImage VImage::orimage( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3597,7 +3597,7 @@ VImage VImage::orimage( std::vector vec ) } // im_eorimage: bitwise eor of two images -VImage VImage::eorimage( VImage in2 ) +VImage VImage::eorimage( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3615,7 +3615,7 @@ VImage VImage::eorimage( VImage in2 ) } // im_eorimageconst: bitwise eor of an image with a constant -VImage VImage::eorimage( int c ) +VImage VImage::eorimage( int c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3632,7 +3632,7 @@ VImage VImage::eorimage( int c ) } // im_eorimage_vec: bitwise eor of an image with a vector constant -VImage VImage::eorimage( std::vector vec ) +VImage VImage::eorimage( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3652,7 +3652,7 @@ VImage VImage::eorimage( std::vector vec ) } // im_shiftleft_vec: shift image array bits to left -VImage VImage::shiftleft( std::vector vec ) +VImage VImage::shiftleft( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3672,7 +3672,7 @@ VImage VImage::shiftleft( std::vector vec ) } // im_shiftleft: shift image n bits to left -VImage VImage::shiftleft( int c ) +VImage VImage::shiftleft( int c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3689,7 +3689,7 @@ VImage VImage::shiftleft( int c ) } // im_shiftright_vec: shift image array bits to right -VImage VImage::shiftright( std::vector vec ) +VImage VImage::shiftright( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3709,7 +3709,7 @@ VImage VImage::shiftright( std::vector vec ) } // im_shiftright: shift integer image n bits to right -VImage VImage::shiftright( int c ) +VImage VImage::shiftright( int c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3726,7 +3726,7 @@ VImage VImage::shiftright( int c ) } // im_blend: use cond image to blend between images in1 and in2 -VImage VImage::blend( VImage in1, VImage in2 ) +VImage VImage::blend( VImage in1, VImage in2 ) throw( VError ) { VImage cond = *this; VImage out; @@ -3746,7 +3746,7 @@ VImage VImage::blend( VImage in1, VImage in2 ) } // im_equal: two images equal in value -VImage VImage::equal( VImage in2 ) +VImage VImage::equal( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3764,7 +3764,7 @@ VImage VImage::equal( VImage in2 ) } // im_equal_vec: image equals doublevec -VImage VImage::equal( std::vector vec ) +VImage VImage::equal( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3784,7 +3784,7 @@ VImage VImage::equal( std::vector vec ) } // im_equalconst: image equals const -VImage VImage::equal( double c ) +VImage VImage::equal( double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3801,7 +3801,7 @@ VImage VImage::equal( double c ) } // im_ifthenelse: use cond image to choose pels from image in1 or in2 -VImage VImage::ifthenelse( VImage in1, VImage in2 ) +VImage VImage::ifthenelse( VImage in1, VImage in2 ) throw( VError ) { VImage cond = *this; VImage out; @@ -3821,7 +3821,7 @@ VImage VImage::ifthenelse( VImage in1, VImage in2 ) } // im_less: in1 less than in2 in value -VImage VImage::less( VImage in2 ) +VImage VImage::less( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3839,7 +3839,7 @@ VImage VImage::less( VImage in2 ) } // im_less_vec: in less than doublevec -VImage VImage::less( std::vector vec ) +VImage VImage::less( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3859,7 +3859,7 @@ VImage VImage::less( std::vector vec ) } // im_lessconst: in less than const -VImage VImage::less( double c ) +VImage VImage::less( double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3876,7 +3876,7 @@ VImage VImage::less( double c ) } // im_lesseq: in1 less than or equal to in2 in value -VImage VImage::lesseq( VImage in2 ) +VImage VImage::lesseq( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3894,7 +3894,7 @@ VImage VImage::lesseq( VImage in2 ) } // im_lesseq_vec: in less than or equal to doublevec -VImage VImage::lesseq( std::vector vec ) +VImage VImage::lesseq( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3914,7 +3914,7 @@ VImage VImage::lesseq( std::vector vec ) } // im_lesseqconst: in less than or equal to const -VImage VImage::lesseq( double c ) +VImage VImage::lesseq( double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3931,7 +3931,7 @@ VImage VImage::lesseq( double c ) } // im_more: in1 more than in2 in value -VImage VImage::more( VImage in2 ) +VImage VImage::more( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3949,7 +3949,7 @@ VImage VImage::more( VImage in2 ) } // im_more_vec: in more than doublevec -VImage VImage::more( std::vector vec ) +VImage VImage::more( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -3969,7 +3969,7 @@ VImage VImage::more( std::vector vec ) } // im_moreconst: in more than const -VImage VImage::more( double c ) +VImage VImage::more( double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -3986,7 +3986,7 @@ VImage VImage::more( double c ) } // im_moreeq: in1 more than or equal to in2 in value -VImage VImage::moreeq( VImage in2 ) +VImage VImage::moreeq( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -4004,7 +4004,7 @@ VImage VImage::moreeq( VImage in2 ) } // im_moreeq_vec: in more than or equal to doublevec -VImage VImage::moreeq( std::vector vec ) +VImage VImage::moreeq( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -4024,7 +4024,7 @@ VImage VImage::moreeq( std::vector vec ) } // im_moreeqconst: in more than or equal to const -VImage VImage::moreeq( double c ) +VImage VImage::moreeq( double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -4041,7 +4041,7 @@ VImage VImage::moreeq( double c ) } // im_notequal: two images not equal in value -VImage VImage::notequal( VImage in2 ) +VImage VImage::notequal( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -4059,7 +4059,7 @@ VImage VImage::notequal( VImage in2 ) } // im_notequal_vec: image does not equal doublevec -VImage VImage::notequal( std::vector vec ) +VImage VImage::notequal( std::vector vec ) throw( VError ) { VImage in = *this; VImage out; @@ -4079,7 +4079,7 @@ VImage VImage::notequal( std::vector vec ) } // im_notequalconst: image does not equal const -VImage VImage::notequal( double c ) +VImage VImage::notequal( double c ) throw( VError ) { VImage in1 = *this; VImage out; @@ -4096,7 +4096,7 @@ VImage VImage::notequal( double c ) } // im_quadratic: transform via quadratic -VImage VImage::quadratic( VImage coeff ) +VImage VImage::quadratic( VImage coeff ) throw( VError ) { VImage in = *this; VImage out; @@ -4116,9 +4116,9 @@ VImage VImage::quadratic( VImage coeff ) // bodies for package format // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_csv2vips: read a file in csv format -VImage VImage::csv2vips( char* filename ) +VImage VImage::csv2vips( char* filename ) throw( VError ) { VImage im; @@ -4132,7 +4132,7 @@ VImage VImage::csv2vips( char* filename ) } // im_fits2vips: convert from fits -VImage VImage::fits2vips( char* in ) +VImage VImage::fits2vips( char* in ) throw( VError ) { VImage out; @@ -4146,7 +4146,7 @@ VImage VImage::fits2vips( char* in ) } // im_jpeg2vips: convert from jpeg -VImage VImage::jpeg2vips( char* in ) +VImage VImage::jpeg2vips( char* in ) throw( VError ) { VImage out; @@ -4160,7 +4160,7 @@ VImage VImage::jpeg2vips( char* in ) } // im_magick2vips: load file with libMagick -VImage VImage::magick2vips( char* in ) +VImage VImage::magick2vips( char* in ) throw( VError ) { VImage out; @@ -4174,7 +4174,7 @@ VImage VImage::magick2vips( char* in ) } // im_png2vips: convert PNG file to VIPS image -VImage VImage::png2vips( char* in ) +VImage VImage::png2vips( char* in ) throw( VError ) { VImage out; @@ -4188,7 +4188,7 @@ VImage VImage::png2vips( char* in ) } // im_exr2vips: convert an OpenEXR file to VIPS -VImage VImage::exr2vips( char* in ) +VImage VImage::exr2vips( char* in ) throw( VError ) { VImage out; @@ -4202,7 +4202,7 @@ VImage VImage::exr2vips( char* in ) } // im_ppm2vips: read a file in pbm/pgm/ppm format -VImage VImage::ppm2vips( char* filename ) +VImage VImage::ppm2vips( char* filename ) throw( VError ) { VImage im; @@ -4216,7 +4216,7 @@ VImage VImage::ppm2vips( char* filename ) } // im_analyze2vips: read a file in analyze format -VImage VImage::analyze2vips( char* filename ) +VImage VImage::analyze2vips( char* filename ) throw( VError ) { VImage im; @@ -4230,7 +4230,7 @@ VImage VImage::analyze2vips( char* filename ) } // im_tiff2vips: convert TIFF file to VIPS image -VImage VImage::tiff2vips( char* in ) +VImage VImage::tiff2vips( char* in ) throw( VError ) { VImage out; @@ -4244,7 +4244,7 @@ VImage VImage::tiff2vips( char* in ) } // im_vips2csv: write an image in csv format -void VImage::vips2csv( char* filename ) +void VImage::vips2csv( char* filename ) throw( VError ) { VImage in = *this; Vargv _vec( "im_vips2csv" ); @@ -4255,7 +4255,7 @@ void VImage::vips2csv( char* filename ) } // im_vips2dz: save as deepzoom -void VImage::vips2dz( char* out ) +void VImage::vips2dz( char* out ) throw( VError ) { VImage in = *this; Vargv _vec( "im_vips2dz" ); @@ -4266,7 +4266,7 @@ void VImage::vips2dz( char* out ) } // im_vips2jpeg: convert to jpeg -void VImage::vips2jpeg( char* out ) +void VImage::vips2jpeg( char* out ) throw( VError ) { VImage in = *this; Vargv _vec( "im_vips2jpeg" ); @@ -4277,7 +4277,7 @@ void VImage::vips2jpeg( char* out ) } // im_vips2mimejpeg: convert to jpeg as mime type on stdout -void VImage::vips2mimejpeg( int qfac ) +void VImage::vips2mimejpeg( int qfac ) throw( VError ) { VImage in = *this; Vargv _vec( "im_vips2mimejpeg" ); @@ -4288,7 +4288,7 @@ void VImage::vips2mimejpeg( int qfac ) } // im_vips2png: convert VIPS image to PNG file -void VImage::vips2png( char* out ) +void VImage::vips2png( char* out ) throw( VError ) { VImage in = *this; Vargv _vec( "im_vips2png" ); @@ -4299,7 +4299,7 @@ void VImage::vips2png( char* out ) } // im_vips2ppm: write a file in pbm/pgm/ppm format -void VImage::vips2ppm( char* filename ) +void VImage::vips2ppm( char* filename ) throw( VError ) { VImage im = *this; Vargv _vec( "im_vips2ppm" ); @@ -4310,7 +4310,7 @@ void VImage::vips2ppm( char* filename ) } // im_vips2tiff: convert VIPS image to TIFF file -void VImage::vips2tiff( char* out ) +void VImage::vips2tiff( char* out ) throw( VError ) { VImage in = *this; Vargv _vec( "im_vips2tiff" ); @@ -4323,9 +4323,9 @@ void VImage::vips2tiff( char* out ) // bodies for package freq_filt // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_create_fmask: create frequency domain filter mask -VImage VImage::create_fmask( int width, int height, int type, double p1, double p2, double p3, double p4, double p5 ) +VImage VImage::create_fmask( int width, int height, int type, double p1, double p2, double p3, double p4, double p5 ) throw( VError ) { VImage out; @@ -4346,7 +4346,7 @@ VImage VImage::create_fmask( int width, int height, int type, double p1, double } // im_disp_ps: make displayable power spectrum -VImage VImage::disp_ps() +VImage VImage::disp_ps() throw( VError ) { VImage in = *this; VImage out; @@ -4361,7 +4361,7 @@ VImage VImage::disp_ps() } // im_flt_image_freq: frequency domain filter image -VImage VImage::flt_image_freq( int type, double p1, double p2, double p3, double p4, double p5 ) +VImage VImage::flt_image_freq( int type, double p1, double p2, double p3, double p4, double p5 ) throw( VError ) { VImage in = *this; VImage out; @@ -4382,7 +4382,7 @@ VImage VImage::flt_image_freq( int type, double p1, double p2, double p3, double } // im_fractsurf: generate a fractal surface of given dimension -VImage VImage::fractsurf( int size, double dimension ) +VImage VImage::fractsurf( int size, double dimension ) throw( VError ) { VImage out; @@ -4397,7 +4397,7 @@ VImage VImage::fractsurf( int size, double dimension ) } // im_freqflt: frequency-domain filter of in with mask -VImage VImage::freqflt( VImage mask ) +VImage VImage::freqflt( VImage mask ) throw( VError ) { VImage in = *this; VImage out; @@ -4413,7 +4413,7 @@ VImage VImage::freqflt( VImage mask ) } // im_fwfft: forward fast-fourier transform -VImage VImage::fwfft() +VImage VImage::fwfft() throw( VError ) { VImage in = *this; VImage out; @@ -4428,7 +4428,7 @@ VImage VImage::fwfft() } // im_rotquad: rotate image quadrants to move origin to centre -VImage VImage::rotquad() +VImage VImage::rotquad() throw( VError ) { VImage in = *this; VImage out; @@ -4443,7 +4443,7 @@ VImage VImage::rotquad() } // im_invfft: inverse fast-fourier transform -VImage VImage::invfft() +VImage VImage::invfft() throw( VError ) { VImage in = *this; VImage out; @@ -4458,7 +4458,7 @@ VImage VImage::invfft() } // im_phasecor_fft: non-normalised correlation of gradient of in2 within in1 -VImage VImage::phasecor_fft( VImage in2 ) +VImage VImage::phasecor_fft( VImage in2 ) throw( VError ) { VImage in1 = *this; VImage out; @@ -4474,7 +4474,7 @@ VImage VImage::phasecor_fft( VImage in2 ) } // im_invfftr: real part of inverse fast-fourier transform -VImage VImage::invfftr() +VImage VImage::invfftr() throw( VError ) { VImage in = *this; VImage out; @@ -4491,9 +4491,9 @@ VImage VImage::invfftr() // bodies for package histograms_lut // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_gammacorrect: gamma-correct image -VImage VImage::gammacorrect( double exponent ) +VImage VImage::gammacorrect( double exponent ) throw( VError ) { VImage in = *this; VImage out; @@ -4510,7 +4510,7 @@ VImage VImage::gammacorrect( double exponent ) } // im_heq: histogram-equalise image -VImage VImage::heq( int band_number ) +VImage VImage::heq( int band_number ) throw( VError ) { VImage in = *this; VImage out; @@ -4527,7 +4527,7 @@ VImage VImage::heq( int band_number ) } // im_hist: find and graph histogram of image -VImage VImage::hist( int band_number ) +VImage VImage::hist( int band_number ) throw( VError ) { VImage in = *this; VImage out; @@ -4544,7 +4544,7 @@ VImage VImage::hist( int band_number ) } // im_histcum: turn histogram to cumulative histogram -VImage VImage::histcum() +VImage VImage::histcum() throw( VError ) { VImage in = *this; VImage out; @@ -4560,7 +4560,7 @@ VImage VImage::histcum() } // im_histeq: form histogram equalistion LUT -VImage VImage::histeq() +VImage VImage::histeq() throw( VError ) { VImage in = *this; VImage out; @@ -4576,7 +4576,7 @@ VImage VImage::histeq() } // im_hist_indexed: make a histogram with an index image -VImage VImage::hist_indexed( VImage value ) +VImage VImage::hist_indexed( VImage value ) throw( VError ) { VImage index = *this; VImage out; @@ -4594,7 +4594,7 @@ VImage VImage::hist_indexed( VImage value ) } // im_histgr: find histogram of image -VImage VImage::histgr( int band_number ) +VImage VImage::histgr( int band_number ) throw( VError ) { VImage in = *this; VImage out; @@ -4610,7 +4610,7 @@ VImage VImage::histgr( int band_number ) } // im_histnD: find 1D, 2D or 3D histogram of image -VImage VImage::histnD( int bins ) +VImage VImage::histnD( int bins ) throw( VError ) { VImage in = *this; VImage out; @@ -4626,7 +4626,7 @@ VImage VImage::histnD( int bins ) } // im_histnorm: form normalised histogram -VImage VImage::histnorm() +VImage VImage::histnorm() throw( VError ) { VImage in = *this; VImage out; @@ -4642,7 +4642,7 @@ VImage VImage::histnorm() } // im_histplot: plot graph of histogram -VImage VImage::histplot() +VImage VImage::histplot() throw( VError ) { VImage in = *this; VImage out; @@ -4658,7 +4658,7 @@ VImage VImage::histplot() } // im_histspec: find histogram which will make pdf of in match ref -VImage VImage::histspec( VImage ref ) +VImage VImage::histspec( VImage ref ) throw( VError ) { VImage in = *this; VImage out; @@ -4674,7 +4674,7 @@ VImage VImage::histspec( VImage ref ) } // im_hsp: match stats of in to stats of ref -VImage VImage::hsp( VImage ref ) +VImage VImage::hsp( VImage ref ) throw( VError ) { VImage in = *this; VImage out; @@ -4690,7 +4690,7 @@ VImage VImage::hsp( VImage ref ) } // im_identity: generate identity histogram -VImage VImage::identity( int nbands ) +VImage VImage::identity( int nbands ) throw( VError ) { VImage out; @@ -4704,7 +4704,7 @@ VImage VImage::identity( int nbands ) } // im_identity_ushort: generate ushort identity histogram -VImage VImage::identity_ushort( int nbands, int size ) +VImage VImage::identity_ushort( int nbands, int size ) throw( VError ) { VImage out; @@ -4719,7 +4719,7 @@ VImage VImage::identity_ushort( int nbands, int size ) } // im_ismonotonic: test LUT for monotonicity -int VImage::ismonotonic() +int VImage::ismonotonic() throw( VError ) { VImage lut = *this; int mono; @@ -4734,7 +4734,7 @@ int VImage::ismonotonic() } // im_lhisteq: local histogram equalisation -VImage VImage::lhisteq( int width, int height ) +VImage VImage::lhisteq( int width, int height ) throw( VError ) { VImage in = *this; VImage out; @@ -4752,7 +4752,7 @@ VImage VImage::lhisteq( int width, int height ) } // im_mpercent: find threshold above which there are percent values -int VImage::mpercent( double percent ) +int VImage::mpercent( double percent ) throw( VError ) { VImage in = *this; int thresh; @@ -4768,7 +4768,7 @@ int VImage::mpercent( double percent ) } // im_invertlut: generate correction table from set of measures -VImage VImage::invertlut( VDMask measures, int lut_size ) +VImage VImage::invertlut( VDMask measures, int lut_size ) throw( VError ) { VImage lut; @@ -4783,7 +4783,7 @@ VImage VImage::invertlut( VDMask measures, int lut_size ) } // im_buildlut: generate LUT table from set of x/y positions -VImage VImage::buildlut( VDMask xyes ) +VImage VImage::buildlut( VDMask xyes ) throw( VError ) { VImage lut; @@ -4797,7 +4797,7 @@ VImage VImage::buildlut( VDMask xyes ) } // im_maplut: map image through LUT -VImage VImage::maplut( VImage lut ) +VImage VImage::maplut( VImage lut ) throw( VError ) { VImage in = *this; VImage out; @@ -4815,7 +4815,7 @@ VImage VImage::maplut( VImage lut ) } // im_project: find horizontal and vertical projections of an image -VImage VImage::project( VImage& vout ) +VImage VImage::project( VImage& vout ) throw( VError ) { VImage in = *this; VImage hout; @@ -4831,7 +4831,7 @@ VImage VImage::project( VImage& vout ) } // im_stdif: statistical differencing -VImage VImage::stdif( double a, double m0, double b, double s0, int xw, int yw ) +VImage VImage::stdif( double a, double m0, double b, double s0, int xw, int yw ) throw( VError ) { VImage in = *this; VImage out; @@ -4853,7 +4853,7 @@ VImage VImage::stdif( double a, double m0, double b, double s0, int xw, int yw ) } // im_tone_analyse: analyse in and create LUT for tone adjustment -VImage VImage::tone_analyse( double Ps, double Pm, double Ph, double S, double M, double H ) +VImage VImage::tone_analyse( double Ps, double Pm, double Ph, double S, double M, double H ) throw( VError ) { VImage in = *this; VImage hist; @@ -4874,7 +4874,7 @@ VImage VImage::tone_analyse( double Ps, double Pm, double Ph, double S, double M } // im_tone_build: create LUT for tone adjustment of LabS images -VImage VImage::tone_build( double Lb, double Lw, double Ps, double Pm, double Ph, double S, double M, double H ) +VImage VImage::tone_build( double Lb, double Lw, double Ps, double Pm, double Ph, double S, double M, double H ) throw( VError ) { VImage hist; @@ -4895,7 +4895,7 @@ VImage VImage::tone_build( double Lb, double Lw, double Ps, double Pm, double Ph } // im_tone_build_range: create LUT for tone adjustment -VImage VImage::tone_build_range( int in_max, int out_max, double Lb, double Lw, double Ps, double Pm, double Ph, double S, double M, double H ) +VImage VImage::tone_build_range( int in_max, int out_max, double Lb, double Lw, double Ps, double Pm, double Ph, double S, double M, double H ) throw( VError ) { VImage hist; @@ -4918,7 +4918,7 @@ VImage VImage::tone_build_range( int in_max, int out_max, double Lb, double Lw, } // im_tone_map: map L channel of LabS or LabQ image through LUT -VImage VImage::tone_map( VImage lut ) +VImage VImage::tone_map( VImage lut ) throw( VError ) { VImage in = *this; VImage out; @@ -4938,9 +4938,9 @@ VImage VImage::tone_map( VImage lut ) // bodies for package inplace // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_draw_circle: draw circle on image -void VImage::draw_circle( int cx, int cy, int radius, int fill, std::vector ink ) +void VImage::draw_circle( int cx, int cy, int radius, int fill, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_circle" ); @@ -4958,7 +4958,7 @@ void VImage::draw_circle( int cx, int cy, int radius, int fill, std::vector ink ) +void VImage::draw_rect( int left, int top, int width, int height, int fill, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_rect" ); @@ -4977,7 +4977,7 @@ void VImage::draw_rect( int left, int top, int width, int height, int fill, std: } // im_draw_line: draw line on image -void VImage::draw_line( int x1, int y1, int x2, int y2, std::vector ink ) +void VImage::draw_line( int x1, int y1, int x2, int y2, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_line" ); @@ -4995,7 +4995,7 @@ void VImage::draw_line( int x1, int y1, int x2, int y2, std::vector ink } // im_draw_point: draw point on image -void VImage::draw_point( int x, int y, std::vector ink ) +void VImage::draw_point( int x, int y, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_point" ); @@ -5011,7 +5011,7 @@ void VImage::draw_point( int x, int y, std::vector ink ) } // im_draw_smudge: smudge part of an image -void VImage::draw_smudge( int left, int top, int width, int height ) +void VImage::draw_smudge( int left, int top, int width, int height ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_smudge" ); @@ -5025,7 +5025,7 @@ void VImage::draw_smudge( int left, int top, int width, int height ) } // im_draw_flood: flood with ink from x, y while pixel != ink -void VImage::draw_flood( int x, int y, std::vector ink ) +void VImage::draw_flood( int x, int y, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_flood" ); @@ -5041,7 +5041,7 @@ void VImage::draw_flood( int x, int y, std::vector ink ) } // im_draw_flood_blob: flood with ink from x, y while pixel == start -void VImage::draw_flood_blob( int x, int y, std::vector ink ) +void VImage::draw_flood_blob( int x, int y, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_flood_blob" ); @@ -5057,7 +5057,7 @@ void VImage::draw_flood_blob( int x, int y, std::vector ink ) } // im_draw_flood_other: flood image with serial from x, y while pixel == start -void VImage::draw_flood_other( VImage test, int x, int y, int serial ) +void VImage::draw_flood_other( VImage test, int x, int y, int serial ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_flood_other" ); @@ -5071,7 +5071,7 @@ void VImage::draw_flood_other( VImage test, int x, int y, int serial ) } // im_draw_image: draw image sub inside image main at position (x,y) -void VImage::draw_image( VImage sub, int x, int y ) +void VImage::draw_image( VImage sub, int x, int y ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_image" ); @@ -5084,7 +5084,7 @@ void VImage::draw_image( VImage sub, int x, int y ) } // im_draw_mask: draw mask sub inside image main at position (x,y) -void VImage::draw_mask( VImage mask, int x, int y, std::vector ink ) +void VImage::draw_mask( VImage mask, int x, int y, std::vector ink ) throw( VError ) { VImage image = *this; Vargv _vec( "im_draw_mask" ); @@ -5101,7 +5101,7 @@ void VImage::draw_mask( VImage mask, int x, int y, std::vector ink ) } // im_lineset: draw line between points (x1,y1) and (x2,y2) -VImage VImage::line( VImage mask, VImage ink, std::vector x1, std::vector y1, std::vector x2, std::vector y2 ) +VImage VImage::line( VImage mask, VImage ink, std::vector x1, std::vector y1, std::vector x2, std::vector y2 ) throw( VError ) { VImage in = *this; VImage out; @@ -5136,9 +5136,9 @@ VImage VImage::line( VImage mask, VImage ink, std::vector x1, std::vector in, int index ) +VImage VImage::rank_image( std::vector in, int index ) throw( VError ) { VImage out; @@ -5358,7 +5376,7 @@ VImage VImage::rank_image( std::vector in, int index ) } // im_maxvalue: point-wise maximum value -VImage VImage::maxvalue( std::vector in ) +VImage VImage::maxvalue( std::vector in ) throw( VError ) { VImage out; @@ -5377,7 +5395,7 @@ VImage VImage::maxvalue( std::vector in ) } // im_label_regions: number continuous regions in an image -VImage VImage::label_regions( int& segments ) +VImage VImage::label_regions( int& segments ) throw( VError ) { VImage test = *this; VImage mask; @@ -5393,7 +5411,7 @@ VImage VImage::label_regions( int& segments ) } // im_zerox: find +ve or -ve zero crossings in image -VImage VImage::zerox( int flag ) +VImage VImage::zerox( int flag ) throw( VError ) { VImage in = *this; VImage out; @@ -5410,7 +5428,7 @@ VImage VImage::zerox( int flag ) } // im_erode: erode image with mask, adding a black border -VImage VImage::erode( VIMask mask ) +VImage VImage::erode( VIMask mask ) throw( VError ) { VImage in = *this; VImage out; @@ -5427,7 +5445,7 @@ VImage VImage::erode( VIMask mask ) } // im_profile: find first horizontal/vertical edge -VImage VImage::profile( int direction ) +VImage VImage::profile( int direction ) throw( VError ) { VImage in = *this; VImage out; @@ -5445,9 +5463,9 @@ VImage VImage::profile( int direction ) // bodies for package mosaicing // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_align_bands: align the bands of an image -VImage VImage::align_bands() +VImage VImage::align_bands() throw( VError ) { VImage in = *this; VImage out; @@ -5462,7 +5480,7 @@ VImage VImage::align_bands() } // im_correl: search area around sec for match for area around ref -double VImage::correl( VImage sec, int xref, int yref, int xsec, int ysec, int hwindowsize, int hsearchsize, int& x, int& y ) +double VImage::correl( VImage sec, int xref, int yref, int xsec, int ysec, int hwindowsize, int hsearchsize, int& x, int& y ) throw( VError ) { VImage ref = *this; double correlation; @@ -5486,7 +5504,7 @@ double VImage::correl( VImage sec, int xref, int yref, int xsec, int ysec, int h } // im__find_lroverlap: search for left-right overlap of ref and sec -int VImage::_find_lroverlap( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int& dy0, double& scale1, double& angle1, double& dx1, double& dy1 ) +int VImage::_find_lroverlap( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int& dy0, double& scale1, double& angle1, double& dx1, double& dy1 ) throw( VError ) { VImage ref = *this; int dx0; @@ -5514,7 +5532,7 @@ int VImage::_find_lroverlap( VImage sec, int bandno, int xr, int yr, int xs, int } // im__find_tboverlap: search for top-bottom overlap of ref and sec -int VImage::_find_tboverlap( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int& dy0, double& scale1, double& angle1, double& dx1, double& dy1 ) +int VImage::_find_tboverlap( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int& dy0, double& scale1, double& angle1, double& dx1, double& dy1 ) throw( VError ) { VImage ref = *this; int dx0; @@ -5542,7 +5560,7 @@ int VImage::_find_tboverlap( VImage sec, int bandno, int xr, int yr, int xs, int } // im_global_balance: automatically rebuild mosaic with balancing -VImage VImage::global_balance( double gamma ) +VImage VImage::global_balance( double gamma ) throw( VError ) { VImage in = *this; VImage out; @@ -5559,7 +5577,7 @@ VImage VImage::global_balance( double gamma ) } // im_global_balancef: automatically rebuild mosaic with balancing, float output -VImage VImage::global_balancef( double gamma ) +VImage VImage::global_balancef( double gamma ) throw( VError ) { VImage in = *this; VImage out; @@ -5576,7 +5594,7 @@ VImage VImage::global_balancef( double gamma ) } // im_lrmerge: left-right merge of in1 and in2 -VImage VImage::lrmerge( VImage sec, int dx, int dy, int mwidth ) +VImage VImage::lrmerge( VImage sec, int dx, int dy, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5597,7 +5615,7 @@ VImage VImage::lrmerge( VImage sec, int dx, int dy, int mwidth ) } // im_lrmerge1: first-order left-right merge of ref and sec -VImage VImage::lrmerge1( VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int mwidth ) +VImage VImage::lrmerge1( VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5624,7 +5642,7 @@ VImage VImage::lrmerge1( VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2 } // im_lrmosaic: left-right mosaic of ref and sec -VImage VImage::lrmosaic( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int balancetype, int mwidth ) +VImage VImage::lrmosaic( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int balancetype, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5651,7 +5669,7 @@ VImage VImage::lrmosaic( VImage sec, int bandno, int xr, int yr, int xs, int ys, } // im_lrmosaic1: first-order left-right mosaic of ref and sec -VImage VImage::lrmosaic1( VImage sec, int bandno, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int halfcorrelation, int halfarea, int balancetype, int mwidth ) +VImage VImage::lrmosaic1( VImage sec, int bandno, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int halfcorrelation, int halfarea, int balancetype, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5682,7 +5700,7 @@ VImage VImage::lrmosaic1( VImage sec, int bandno, int xr1, int yr1, int xs1, int } // im_match_linear: resample ref so that tie-points match -VImage VImage::match_linear( VImage sec, int xref1, int yref1, int xsec1, int ysec1, int xref2, int yref2, int xsec2, int ysec2 ) +VImage VImage::match_linear( VImage sec, int xref1, int yref1, int xsec1, int ysec1, int xref2, int yref2, int xsec2, int ysec2 ) throw( VError ) { VImage ref = *this; VImage out; @@ -5708,7 +5726,7 @@ VImage VImage::match_linear( VImage sec, int xref1, int yref1, int xsec1, int ys } // im_match_linear_search: search sec, then resample so that tie-points match -VImage VImage::match_linear_search( VImage sec, int xref1, int yref1, int xsec1, int ysec1, int xref2, int yref2, int xsec2, int ysec2, int hwindowsize, int hsearchsize ) +VImage VImage::match_linear_search( VImage sec, int xref1, int yref1, int xsec1, int ysec1, int xref2, int yref2, int xsec2, int ysec2, int hwindowsize, int hsearchsize ) throw( VError ) { VImage ref = *this; VImage out; @@ -5736,7 +5754,7 @@ VImage VImage::match_linear_search( VImage sec, int xref1, int yref1, int xsec1, } // im_maxpos_subpel: subpixel position of maximum of (phase correlation) image -double VImage::maxpos_subpel( double& y ) +double VImage::maxpos_subpel( double& y ) throw( VError ) { VImage im = *this; double x; @@ -5752,7 +5770,7 @@ double VImage::maxpos_subpel( double& y ) } // im_remosaic: automatically rebuild mosaic with new files -VImage VImage::remosaic( char* old_str, char* new_str ) +VImage VImage::remosaic( char* old_str, char* new_str ) throw( VError ) { VImage in = *this; VImage out; @@ -5770,7 +5788,7 @@ VImage VImage::remosaic( char* old_str, char* new_str ) } // im_tbmerge: top-bottom merge of in1 and in2 -VImage VImage::tbmerge( VImage sec, int dx, int dy, int mwidth ) +VImage VImage::tbmerge( VImage sec, int dx, int dy, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5791,7 +5809,7 @@ VImage VImage::tbmerge( VImage sec, int dx, int dy, int mwidth ) } // im_tbmerge1: first-order top-bottom merge of in1 and in2 -VImage VImage::tbmerge1( VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int mwidth ) +VImage VImage::tbmerge1( VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5818,7 +5836,7 @@ VImage VImage::tbmerge1( VImage sec, int xr1, int yr1, int xs1, int ys1, int xr2 } // im_tbmosaic: top-bottom mosaic of in1 and in2 -VImage VImage::tbmosaic( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int balancetype, int mwidth ) +VImage VImage::tbmosaic( VImage sec, int bandno, int xr, int yr, int xs, int ys, int halfcorrelation, int halfarea, int balancetype, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5845,7 +5863,7 @@ VImage VImage::tbmosaic( VImage sec, int bandno, int xr, int yr, int xs, int ys, } // im_tbmosaic1: first-order top-bottom mosaic of ref and sec -VImage VImage::tbmosaic1( VImage sec, int bandno, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int halfcorrelation, int halfarea, int balancetype, int mwidth ) +VImage VImage::tbmosaic1( VImage sec, int bandno, int xr1, int yr1, int xs1, int ys1, int xr2, int yr2, int xs2, int ys2, int halfcorrelation, int halfarea, int balancetype, int mwidth ) throw( VError ) { VImage ref = *this; VImage out; @@ -5878,9 +5896,9 @@ VImage VImage::tbmosaic1( VImage sec, int bandno, int xr1, int yr1, int xs1, int // bodies for package other // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_benchmark: do something complicated for testing -VImage VImage::benchmark() +VImage VImage::benchmark() throw( VError ) { VImage in = *this; VImage out; @@ -5896,7 +5914,7 @@ VImage VImage::benchmark() } // im_benchmark2: do something complicated for testing -double VImage::benchmark2() +double VImage::benchmark2() throw( VError ) { VImage in = *this; double value; @@ -5911,7 +5929,7 @@ double VImage::benchmark2() } // im_benchmarkn: do something complicated for testing -VImage VImage::benchmarkn( int n ) +VImage VImage::benchmarkn( int n ) throw( VError ) { VImage in = *this; VImage out; @@ -5928,7 +5946,7 @@ VImage VImage::benchmarkn( int n ) } // im_eye: generate IM_BANDFMT_UCHAR [0,255] frequency/amplitude image -VImage VImage::eye( int xsize, int ysize, double factor ) +VImage VImage::eye( int xsize, int ysize, double factor ) throw( VError ) { VImage out; @@ -5944,7 +5962,7 @@ VImage VImage::eye( int xsize, int ysize, double factor ) } // im_grey: generate IM_BANDFMT_UCHAR [0,255] grey scale image -VImage VImage::grey( int xsize, int ysize ) +VImage VImage::grey( int xsize, int ysize ) throw( VError ) { VImage out; @@ -5959,7 +5977,7 @@ VImage VImage::grey( int xsize, int ysize ) } // im_feye: generate IM_BANDFMT_FLOAT [-1,1] frequency/amplitude image -VImage VImage::feye( int xsize, int ysize, double factor ) +VImage VImage::feye( int xsize, int ysize, double factor ) throw( VError ) { VImage out; @@ -5975,7 +5993,7 @@ VImage VImage::feye( int xsize, int ysize, double factor ) } // im_fgrey: generate IM_BANDFMT_FLOAT [0,1] grey scale image -VImage VImage::fgrey( int xsize, int ysize ) +VImage VImage::fgrey( int xsize, int ysize ) throw( VError ) { VImage out; @@ -5990,7 +6008,7 @@ VImage VImage::fgrey( int xsize, int ysize ) } // im_fzone: generate IM_BANDFMT_FLOAT [-1,1] zone plate image -VImage VImage::fzone( int size ) +VImage VImage::fzone( int size ) throw( VError ) { VImage out; @@ -6004,7 +6022,7 @@ VImage VImage::fzone( int size ) } // im_make_xy: generate image with pixel value equal to coordinate -VImage VImage::make_xy( int xsize, int ysize ) +VImage VImage::make_xy( int xsize, int ysize ) throw( VError ) { VImage out; @@ -6019,7 +6037,7 @@ VImage VImage::make_xy( int xsize, int ysize ) } // im_sines: generate 2D sine image -VImage VImage::sines( int xsize, int ysize, double horfreq, double verfreq ) +VImage VImage::sines( int xsize, int ysize, double horfreq, double verfreq ) throw( VError ) { VImage out; @@ -6036,7 +6054,7 @@ VImage VImage::sines( int xsize, int ysize, double horfreq, double verfreq ) } // im_zone: generate IM_BANDFMT_UCHAR [0,255] zone plate image -VImage VImage::zone( int size ) +VImage VImage::zone( int size ) throw( VError ) { VImage out; @@ -6052,9 +6070,9 @@ VImage VImage::zone( int size ) // bodies for package resample // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_rightshift_size: decrease size by a power-of-two factor -VImage VImage::rightshift_size( int xshift, int yshift, int band_fmt ) +VImage VImage::rightshift_size( int xshift, int yshift, int band_fmt ) throw( VError ) { VImage in = *this; VImage out; @@ -6073,7 +6091,7 @@ VImage VImage::rightshift_size( int xshift, int yshift, int band_fmt ) } // im_shrink: shrink image by xfac, yfac times -VImage VImage::shrink( double xfac, double yfac ) +VImage VImage::shrink( double xfac, double yfac ) throw( VError ) { VImage in = *this; VImage out; @@ -6091,7 +6109,7 @@ VImage VImage::shrink( double xfac, double yfac ) } // im_stretch3: stretch 3%, sub-pixel displace by xdisp/ydisp -VImage VImage::stretch3( double xdisp, double ydisp ) +VImage VImage::stretch3( double xdisp, double ydisp ) throw( VError ) { VImage in = *this; VImage out; @@ -6109,7 +6127,7 @@ VImage VImage::stretch3( double xdisp, double ydisp ) } // im_affinei: affine transform -VImage VImage::affinei( char* interpolate, double a, double b, double c, double d, double dx, double dy, int x, int y, int w, int h ) +VImage VImage::affinei( char* interpolate, double a, double b, double c, double d, double dx, double dy, int x, int y, int w, int h ) throw( VError ) { VImage in = *this; VImage out; @@ -6137,7 +6155,7 @@ VImage VImage::affinei( char* interpolate, double a, double b, double c, double } // im_affinei_all: affine transform of whole image -VImage VImage::affinei_all( char* interpolate, double a, double b, double c, double d, double dx, double dy ) +VImage VImage::affinei_all( char* interpolate, double a, double b, double c, double d, double dx, double dy ) throw( VError ) { VImage in = *this; VImage out; @@ -6163,9 +6181,9 @@ VImage VImage::affinei_all( char* interpolate, double a, double b, double c, dou // bodies for package video // this file automatically generated from -// VIPS library 7.34.0-Tue Jun 11 11:18:24 BST 2013 +// VIPS library 8.6.0-Sun Nov 26 17:26:29 GMT 2017 // im_video_test: test video grabber -VImage VImage::video_test( int brightness, int error ) +VImage VImage::video_test( int brightness, int error ) throw( VError ) { VImage out; @@ -6180,7 +6198,7 @@ VImage VImage::video_test( int brightness, int error ) } // im_video_v4l1: grab a video frame with v4l1 -VImage VImage::video_v4l1( char* device, int channel, int brightness, int colour, int contrast, int hue, int ngrabs ) +VImage VImage::video_v4l1( char* device, int channel, int brightness, int colour, int contrast, int hue, int ngrabs ) throw( VError ) { VImage out;