VImage.h | VImage.h | |||
---|---|---|---|---|
skipping to change at line 258 | skipping to change at line 258 | |||
// Derived fields | // Derived fields | |||
const char *filename(); | const char *filename(); | |||
const char *Hist(); | const char *Hist(); | |||
// metadata | // metadata | |||
#ifndef SWIG | #ifndef SWIG | |||
// base functionality | // base functionality | |||
// we don't wrap GValue, so we can't wrap these for now | // we don't wrap GValue, so we can't wrap these for now | |||
void meta_set( const char *field, GValue *value ) throw( VError ); | void meta_set( const char *field, GValue *value ) throw( VError ); | |||
void meta_get( const char *field, GValue *value_copy ) throw( VError ); | void meta_get( const char *field, GValue *value_copy ) throw( VError ); | |||
GType meta_get_typeof( const char *field ) throw( VError ); | ||||
#endif /*SWIG*/ | #endif /*SWIG*/ | |||
// We can wrap these, fwiw | ||||
gboolean meta_remove( const char *field ); | ||||
GType meta_get_typeof( const char *field ); | ||||
// convenience functions | // convenience functions | |||
int meta_get_int( const char *field ) throw( VError ); | int meta_get_int( const char *field ) throw( VError ); | |||
double meta_get_double( const char *field ) throw( VError ); | double meta_get_double( const char *field ) throw( VError ); | |||
const char *meta_get_string( const char *field ) throw( VError ); | const char *meta_get_string( const char *field ) throw( VError ); | |||
void *meta_get_area( const char *field ) throw( VError ); | void *meta_get_area( const char *field ) throw( VError ); | |||
void *meta_get_blob( const char *field, size_t *length ) | void *meta_get_blob( const char *field, size_t *length ) | |||
throw( VError ); | throw( VError ); | |||
void meta_set( const char *field, int value ) throw( VError ); | void meta_set( const char *field, int value ) throw( VError ); | |||
void meta_set( const char *field, double value ) throw( VError ); | void meta_set( const char *field, double value ) throw( VError ); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
almostdeprecated.h | almostdeprecated.h | |||
---|---|---|---|---|
/* Old and broken stuff that we still enable by default | /* Old and broken stuff that we still enable by default, but don't document | |||
* and certainly don't recommend. | ||||
* | * | |||
* 30/6/09 | * 30/6/09 | |||
* - from vips.h | * - from vips.h | |||
*/ | */ | |||
/* | /* | |||
This file is part of VIPS. | This file is part of VIPS. | |||
VIPS is free software; you can redistribute it and/or modify | VIPS is free software; you can redistribute it and/or modify | |||
skipping to change at line 74 | skipping to change at line 75 | |||
/* Compatibility typedefs. | /* Compatibility typedefs. | |||
*/ | */ | |||
typedef VipsDemandStyle im_demand_type; | typedef VipsDemandStyle im_demand_type; | |||
typedef VipsProgress im_time_t; | typedef VipsProgress im_time_t; | |||
typedef VipsImage IMAGE; | typedef VipsImage IMAGE; | |||
int im_extract( IMAGE *, IMAGE *, IMAGE_BOX * ); | int im_extract( IMAGE *, IMAGE *, IMAGE_BOX * ); | |||
DOUBLEMASK *im_measure( IMAGE *im, IMAGE_BOX *box, int h, int v, | DOUBLEMASK *im_measure( IMAGE *im, IMAGE_BOX *box, int h, int v, | |||
int *sel, int nsel, const char *name ); | int *sel, int nsel, const char *name ); | |||
gboolean im_isuint( IMAGE *im ); | ||||
gboolean im_isint( IMAGE *im ); | ||||
gboolean im_isfloat( IMAGE *im ); | ||||
gboolean im_isscalar( IMAGE *im ); | ||||
gboolean im_iscomplex( IMAGE *im ); | ||||
int im_c2ps( IMAGE *in, IMAGE *out ); | ||||
int im_clip( IMAGE *in, IMAGE *out ); | ||||
#define MASK_IDEAL_HIGHPASS VIPS_MASK_IDEAL_HIGHPASS | ||||
#define MASK_IDEAL_LOWPASS VIPS_MASK_IDEAL_LOWPASS | ||||
#define MASK_BUTTERWORTH_HIGHPASS VIPS_MASK_BUTTERWORTH_HIGHPASS | ||||
#define MASK_BUTTERWORTH_LOWPASS VIPS_MASK_BUTTERWORTH_LOWPASS | ||||
#define MASK_GAUSS_HIGHPASS VIPS_MASK_GAUSS_HIGHPASS | ||||
#define MASK_GAUSS_LOWPASS VIPS_MASK_GAUSS_LOWPASS | ||||
#define MASK_IDEAL_RINGPASS VIPS_MASK_IDEAL_RINGPASS | ||||
#define MASK_IDEAL_RINGREJECT VIPS_MASK_IDEAL_RINGREJECT | ||||
#define MASK_BUTTERWORTH_RINGPASS VIPS_MASK_BUTTERWORTH_RINGPASS | ||||
#define MASK_BUTTERWORTH_RINGREJECT VIPS_MASK_BUTTERWORTH_RINGREJECT | ||||
#define MASK_GAUSS_RINGPASS VIPS_MASK_GAUSS_RINGPASS | ||||
#define MASK_GAUSS_RINGREJECT VIPS_MASK_GAUSS_RINGREJECT | ||||
#define MASK_IDEAL_BANDPASS VIPS_MASK_IDEAL_BANDPASS | ||||
#define MASK_IDEAL_BANDREJECT VIPS_MASK_IDEAL_BANDREJECT | ||||
#define MASK_BUTTERWORTH_BANDPASS VIPS_MASK_BUTTERWORTH_BANDPASS | ||||
#define MASK_BUTTERWORTH_BANDREJECT VIPS_MASK_BUTTERWORTH_BANDREJECT | ||||
#define MASK_GAUSS_BANDPASS VIPS_MASK_GAUSS_BANDPASS | ||||
#define MASK_GAUSS_BANDREJECT VIPS_MASK_GAUSS_BANDREJECT | ||||
#define MASK_FRACTAL_FLT VIPS_MASK_FRACTAL_FLT | ||||
#define MaskType VipsMaskType | ||||
/* Copy and swap types. | ||||
*/ | ||||
typedef enum { | ||||
IM_ARCH_NATIVE, | ||||
IM_ARCH_BYTE_SWAPPED, | ||||
IM_ARCH_LSB_FIRST, | ||||
IM_ARCH_MSB_FIRST | ||||
} im_arch_type; | ||||
gboolean im_isnative( im_arch_type arch ); | ||||
int im_copy_from( IMAGE *in, IMAGE *out, im_arch_type architecture ); | ||||
/* Backwards compatibility macros. | ||||
*/ | ||||
#define im_clear_error_string() im_error_clear() | ||||
#define im_errorstring() im_error_buffer() | ||||
/* Deprecated API. | ||||
*/ | ||||
void im_errormsg( const char *fmt, ... ) | ||||
__attribute__((format(printf, 1, 2))); | ||||
void im_verrormsg( const char *fmt, va_list ap ); | ||||
void im_errormsg_system( int err, const char *fmt, ... ) | ||||
__attribute__((format(printf, 2, 3))); | ||||
void im_diagnostics( const char *fmt, ... ) | ||||
__attribute__((format(printf, 1, 2))); | ||||
void im_warning( const char *fmt, ... ) | ||||
__attribute__((format(printf, 1, 2))); | ||||
/* Deprecated operations. | ||||
*/ | ||||
int im_cmulnorm( IMAGE *in1, IMAGE *in2, IMAGE *out ); | ||||
int im_fav4( IMAGE **, IMAGE * ); | ||||
int im_gadd( double, IMAGE *, double, IMAGE *, double, IMAGE *); | ||||
int im_litecor( IMAGE *, IMAGE *, IMAGE *, int, double ); | ||||
int im_render_fade( IMAGE *in, IMAGE *out, IMAGE *mask, | ||||
int width, int height, int max, | ||||
int fps, int steps, | ||||
int priority, | ||||
void (*notify)( IMAGE *, Rect *, void * ), void *client ); | ||||
int im_render( IMAGE *in, IMAGE *out, IMAGE *mask, | ||||
int width, int height, int max, | ||||
void (*notify)( IMAGE *, Rect *, void * ), void *client ); | ||||
/* Renamed operations. | ||||
*/ | ||||
/* arithmetic | ||||
*/ | ||||
int im_remainderconst_vec( IMAGE *in, IMAGE *out, int n, double *c ); | ||||
/* boolean | ||||
*/ | ||||
int im_andconst( IMAGE *, IMAGE *, double ); | ||||
int im_and_vec( IMAGE *, IMAGE *, int, double * ); | ||||
int im_orconst( IMAGE *, IMAGE *, double ); | ||||
int im_or_vec( IMAGE *, IMAGE *, int, double * ); | ||||
int im_eorconst( IMAGE *, IMAGE *, double ); | ||||
int im_eor_vec( IMAGE *, IMAGE *, int, double * ); | ||||
/* mosaicing | ||||
*/ | ||||
int im_affine( IMAGE *in, IMAGE *out, | ||||
double a, double b, double c, double d, double dx, double dy, | ||||
int ox, int oy, int ow, int oh ); | ||||
int im_similarity( IMAGE *in, IMAGE *out, | ||||
double a, double b, double dx, double dy ); | ||||
int im_similarity_area( IMAGE *in, IMAGE *out, | ||||
double a, double b, double dx, double dy, | ||||
int ox, int oy, int ow, int oh ); | ||||
/* colour | ||||
*/ | ||||
int im_icc_export( IMAGE *in, IMAGE *out, | ||||
const char *output_profile_filename, int intent ); | ||||
/* conversion | ||||
*/ | ||||
int im_clip2dcm( IMAGE *in, IMAGE *out ); | ||||
int im_clip2cm( IMAGE *in, IMAGE *out ); | ||||
int im_clip2us( IMAGE *in, IMAGE *out ); | ||||
int im_clip2ui( IMAGE *in, IMAGE *out ); | ||||
int im_clip2s( IMAGE *in, IMAGE *out ); | ||||
int im_clip2i( IMAGE *in, IMAGE *out ); | ||||
int im_clip2d( IMAGE *in, IMAGE *out ); | ||||
int im_clip2f( IMAGE *in, IMAGE *out ); | ||||
int im_clip2c( IMAGE *in, IMAGE *out ); | ||||
int im_slice( IMAGE *in, IMAGE *out, double, double ); | ||||
int im_thresh( IMAGE *in, IMAGE *out, double ); | ||||
int im_print( const char *message ); | ||||
int im_convsub( IMAGE *in, IMAGE *out, INTMASK *mask, int xskip, int yskip | ||||
); | ||||
int im_bernd( const char *tiffname, int x, int y, int w, int h ); | ||||
int im_resize_linear( IMAGE *, IMAGE *, int, int ); | ||||
int im_line( IMAGE *, int, int, int, int, int ); | ||||
int im_segment( IMAGE *test, IMAGE *mask, int *segments ); | ||||
int im_convf( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_convsepf( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_conv_raw( IMAGE *in, IMAGE *out, INTMASK *mask ); | ||||
int im_convf_raw( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_convsep_raw( IMAGE *in, IMAGE *out, INTMASK *mask ); | ||||
int im_convsepf_raw( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_fastcor_raw( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_spcor_raw( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_gradcor_raw( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_contrast_surface_raw( IMAGE *in, IMAGE *out, | ||||
int half_win_size, int spacing ); | ||||
int im_stdif_raw( IMAGE *in, IMAGE *out, | ||||
double a, double m0, double b, double s0, int xwin, int ywin ); | ||||
int im_lhisteq_raw( IMAGE *in, IMAGE *out, int xwin, int ywin ); | ||||
int im_erode_raw( IMAGE *in, IMAGE *out, INTMASK *m ); | ||||
int im_dilate_raw( IMAGE *in, IMAGE *out, INTMASK *m ); | ||||
int im_rank_raw( IMAGE *in, IMAGE *out, int xsize, int ysize, int order ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_ALMOSTDEPRECATED_H*/ | #endif /*IM_ALMOSTDEPRECATED_H*/ | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 160 lines changed or added | |||
callback.h | callback.h | |||
---|---|---|---|---|
skipping to change at line 43 | skipping to change at line 43 | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
/* Also used for eg. im_local() and friends. | /* Also used for eg. im_local() and friends. | |||
*/ | */ | |||
typedef int (*im_callback_fn)( void *a, void *b ); | typedef int (*im_callback_fn)( void *a, void *b ); | |||
int im_add_close_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ) ; | int im_add_close_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ) ; | |||
int im_add_preclose_callback( IMAGE *im, im_callback_fn fn, void *a, void * b ); | int im_add_preclose_callback( IMAGE *im, im_callback_fn fn, void *a, void * b ); | |||
int im_add_postclose_callback( IMAGE *im, im_callback_fn fn, void *a, void | ||||
*b ); | ||||
int im_add_written_callback( IMAGE *im, im_callback_fn fn, void *a, void *b | ||||
); | ||||
int im_add_evalstart_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ); | int im_add_evalstart_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ); | |||
int im_add_eval_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ); | int im_add_eval_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ); | |||
int im_add_evalend_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ); | int im_add_evalend_callback( IMAGE *im, im_callback_fn fn, void *a, void *b ); | |||
int im_add_invalidate_callback( IMAGE *im, | int im_add_invalidate_callback( IMAGE *im, | |||
im_callback_fn fn, void *a, void *b ); | im_callback_fn fn, void *a, void *b ); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 5 lines changed or added | |||
check.h | check.h | |||
---|---|---|---|---|
skipping to change at line 48 | skipping to change at line 48 | |||
int im_rwcheck( IMAGE *im ); | int im_rwcheck( IMAGE *im ); | |||
int im_iocheck( IMAGE *in, IMAGE *out ); | int im_iocheck( IMAGE *in, IMAGE *out ); | |||
int im_incheck( IMAGE *im ); | int im_incheck( IMAGE *im ); | |||
int im_outcheck( IMAGE *im ); | int im_outcheck( IMAGE *im ); | |||
int im_piocheck( IMAGE *in, IMAGE *out ); | int im_piocheck( IMAGE *in, IMAGE *out ); | |||
int im_pincheck( IMAGE *im ); | int im_pincheck( IMAGE *im ); | |||
int im_poutcheck( IMAGE *im ); | int im_poutcheck( IMAGE *im ); | |||
int im_check_uncoded( const char *domain, IMAGE *im ); | int im_check_uncoded( const char *domain, IMAGE *im ); | |||
int im_check_known_coded( const char *domain, IMAGE *im ); | int im_check_coding_known( const char *domain, IMAGE *im ); | |||
int im_check_coding_labq( const char *domain, IMAGE *im ); | ||||
int im_check_coding_rad( const char *domain, IMAGE *im ); | ||||
int im_check_coding_same( const char *domain, IMAGE *im1, IMAGE *im2 ); | ||||
int im_check_mono( const char *domain, IMAGE *im ); | int im_check_mono( const char *domain, IMAGE *im ); | |||
int im_check_bands_1or3( const char *domain, IMAGE *in ); | ||||
int im_check_bands( const char *domain, IMAGE *im, int bands ); | int im_check_bands( const char *domain, IMAGE *im, int bands ); | |||
int im_check_bands_1orn( const char *domain, IMAGE *im1, IMAGE *im2 ); | int im_check_bands_1orn( const char *domain, IMAGE *im1, IMAGE *im2 ); | |||
int im_check_bands_same( const char *domain, IMAGE *im1, IMAGE *im2 ); | ||||
int im_check_bandno( const char *domain, IMAGE *im, int bandno ); | ||||
int im_check_int( const char *domain, IMAGE *im ); | int im_check_int( const char *domain, IMAGE *im ); | |||
int im_check_uint( const char *domain, IMAGE *im ); | ||||
int im_check_uintorf( const char *domain, IMAGE *im ); | ||||
int im_check_noncomplex( const char *domain, IMAGE *im ); | int im_check_noncomplex( const char *domain, IMAGE *im ); | |||
int im_check_complex( const char *domain, IMAGE *im ); | int im_check_complex( const char *domain, IMAGE *im ); | |||
int im_check_format( const char *domain, IMAGE *im, VipsBandFmt fmt ); | int im_check_format( const char *domain, IMAGE *im, VipsBandFmt fmt ); | |||
int im_check_u8or16( const char *domain, IMAGE *im ); | int im_check_u8or16( const char *domain, IMAGE *im ); | |||
int im_check_same_size( const char *domain, IMAGE *im1, IMAGE *im2 ); | int im_check_8or16( const char *domain, IMAGE *im ); | |||
int im_check_same_bands( const char *domain, IMAGE *im1, IMAGE *im2 ); | int im_check_u8or16orf( const char *domain, IMAGE *im ); | |||
int im_check_same_format( const char *domain, IMAGE *im1, IMAGE *im2 ); | int im_check_format_same( const char *domain, IMAGE *im1, IMAGE *im2 ); | |||
int im_check_same_coding( const char *domain, IMAGE *im1, IMAGE *im2 ); | int im_check_size_same( const char *domain, IMAGE *im1, IMAGE *im2 ); | |||
int im_check_vector( const char *domain, int n, IMAGE *im ); | int im_check_vector( const char *domain, int n, IMAGE *im ); | |||
int im_check_hist( const char *domain, IMAGE *im ); | ||||
gboolean im_isuint( IMAGE *im ); | int im_check_imask( const char *domain, INTMASK *mask ); | |||
gboolean im_isint( IMAGE *im ); | int im_check_dmask( const char *domain, DOUBLEMASK *mask ); | |||
gboolean im_isfloat( IMAGE *im ); | ||||
gboolean im_isscalar( IMAGE *im ); | gboolean vips_bandfmt_isint( VipsBandFmt fmt ); | |||
gboolean im_iscomplex( IMAGE *im ); | gboolean vips_bandfmt_isuint( VipsBandFmt fmt ); | |||
gboolean vips_bandfmt_isfloat( VipsBandFmt fmt ); | ||||
gboolean vips_bandfmt_iscomplex( VipsBandFmt fmt ); | ||||
gboolean im_isfile( IMAGE *im ); | gboolean im_isfile( IMAGE *im ); | |||
gboolean im_ispartial( IMAGE *im ); | gboolean im_ispartial( IMAGE *im ); | |||
gboolean im_isMSBfirst( IMAGE *im ); | gboolean im_isMSBfirst( IMAGE *im ); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
End of changes. 6 change blocks. | ||||
11 lines changed or deleted | 21 lines changed or added | |||
colour.h | colour.h | |||
---|---|---|---|---|
skipping to change at line 150 | skipping to change at line 150 | |||
int im_XYZ2UCS( IMAGE *in, IMAGE *out ); | int im_XYZ2UCS( IMAGE *in, IMAGE *out ); | |||
int im_sRGB2XYZ( IMAGE *in, IMAGE *out ); | int im_sRGB2XYZ( IMAGE *in, IMAGE *out ); | |||
int im_XYZ2sRGB( IMAGE *in, IMAGE *out ); | int im_XYZ2sRGB( IMAGE *in, IMAGE *out ); | |||
int im_Yxy2XYZ( IMAGE *in, IMAGE *out ); | int im_Yxy2XYZ( IMAGE *in, IMAGE *out ); | |||
int im_XYZ2Yxy( IMAGE *in, IMAGE *out ); | int im_XYZ2Yxy( IMAGE *in, IMAGE *out ); | |||
int im_dECMC_fromLab( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_dECMC_fromLab( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_dE00_fromLab( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_dE00_fromLab( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_dE_fromXYZ( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_dE_fromXYZ( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_dE_fromLab( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_dE_fromLab( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_dE_fromXYZ( IMAGE *, IMAGE *, IMAGE * ); | ||||
int im_dE_fromLab( IMAGE *, IMAGE *, IMAGE * ); | ||||
int im_lab_morph( IMAGE *in, IMAGE *out, | ||||
DOUBLEMASK *mask, | ||||
double L_offset, double L_scale, | ||||
double a_scale, double b_scale ); | ||||
void im_col_make_tables_UCS( void ); | ||||
int im_lab_morph( IMAGE *in, IMAGE *out, | int im_lab_morph( IMAGE *in, IMAGE *out, | |||
DOUBLEMASK *mask, | DOUBLEMASK *mask, | |||
double L_offset, double L_scale, | double L_offset, double L_scale, | |||
double a_scale, double b_scale ); | double a_scale, double b_scale ); | |||
/* Render intents for icc wrappers. | /* Render intents for icc wrappers. | |||
*/ | */ | |||
typedef enum { | typedef enum { | |||
IM_INTENT_PERCEPTUAL = 0, | IM_INTENT_PERCEPTUAL = 0, | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 9 lines changed or added | |||
conversion.h | conversion.h | |||
---|---|---|---|---|
skipping to change at line 40 | skipping to change at line 40 | |||
*/ | */ | |||
#ifndef IM_CONVERSION_H | #ifndef IM_CONVERSION_H | |||
#define IM_CONVERSION_H | #define IM_CONVERSION_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
/* Copy and swap types. | ||||
*/ | ||||
typedef enum { | ||||
IM_ARCH_NATIVE, | ||||
IM_ARCH_BYTE_SWAPPED, | ||||
IM_ARCH_LSB_FIRST, | ||||
IM_ARCH_MSB_FIRST | ||||
} im_arch_type; | ||||
gboolean im_isnative( im_arch_type arch ); | ||||
DOUBLEMASK *im_vips2mask( IMAGE *in, const char *out ); | DOUBLEMASK *im_vips2mask( IMAGE *in, const char *out ); | |||
int im_mask2vips( DOUBLEMASK *in, IMAGE *out ); | int im_mask2vips( DOUBLEMASK *in, IMAGE *out ); | |||
int im_copy( IMAGE *in, IMAGE *out ); | ||||
int im_copy_set( IMAGE *in, IMAGE *out, | int im_copy_set( IMAGE *in, IMAGE *out, | |||
int type, float xres, float yres, int x, int y ); | VipsType type, float xres, float yres, int xoffset, int yoffset ); | |||
int im_copy_set_meta( IMAGE *in, IMAGE *out, const char *field, GValue *met a ); | int im_copy_set_meta( IMAGE *in, IMAGE *out, const char *field, GValue *met a ); | |||
int im_copy_morph( IMAGE *in, IMAGE *out, | int im_copy_morph( IMAGE *in, IMAGE *out, | |||
int Bands, int BandFmt, int Coding ); | int bands, VipsBandFmt bandfmt, VipsCoding coding ); | |||
int im_copy( IMAGE *in, IMAGE *out ); | ||||
int im_copy_swap( IMAGE *in, IMAGE *out ); | int im_copy_swap( IMAGE *in, IMAGE *out ); | |||
int im_copy_from( IMAGE *in, IMAGE *out, im_arch_type architecture ); | int im_copy_native( IMAGE *in, IMAGE *out, gboolean is_msb_first ); | |||
int im_copy_file( IMAGE *in, IMAGE *out ); | int im_copy_file( IMAGE *in, IMAGE *out ); | |||
int im_clip2fmt( IMAGE *in, IMAGE *out, int ofmt ); | int im_clip2fmt( IMAGE *in, IMAGE *out, VipsBandFmt fmt ); | |||
int im_scale( IMAGE *in, IMAGE *out ); | int im_scale( IMAGE *in, IMAGE *out ); | |||
int im_clip( IMAGE *in, IMAGE *out ); | ||||
int im_msb( IMAGE *in, IMAGE *out ); | int im_msb( IMAGE *in, IMAGE *out ); | |||
int im_msb_band( IMAGE *in, IMAGE *out, int band ); | int im_msb_band( IMAGE *in, IMAGE *out, int band ); | |||
int im_c2amph( IMAGE *in, IMAGE *out ); | int im_c2amph( IMAGE *in, IMAGE *out ); | |||
int im_c2rect( IMAGE *in, IMAGE *out ); | int im_c2rect( IMAGE *in, IMAGE *out ); | |||
int im_ri2c( IMAGE *real_in, IMAGE *imag_in, IMAGE *out ); | int im_ri2c( IMAGE *real_in, IMAGE *imag_in, IMAGE *out ); | |||
int im_c2imag( IMAGE *in, IMAGE *out ); | int im_c2imag( IMAGE *in, IMAGE *out ); | |||
int im_c2real( IMAGE *in, IMAGE *out ); | int im_c2real( IMAGE *in, IMAGE *out ); | |||
int im_c2ps( IMAGE *in, IMAGE *out ); | ||||
int im_scaleps( IMAGE *in, IMAGE *out ); | int im_scaleps( IMAGE *in, IMAGE *out ); | |||
int im_falsecolour( IMAGE *in, IMAGE *out ); | int im_falsecolour( IMAGE *in, IMAGE *out ); | |||
int im_addgnoise( IMAGE *, IMAGE *, double ); | int im_gaussnoise( IMAGE *out, int x, int y, double mean, double sigma ); | |||
int im_gaussnoise( IMAGE *, int, int, double, double ); | ||||
int im_black( IMAGE *out, int width, int height, int bands ); | int im_black( IMAGE *out, int width, int height, int bands ); | |||
int im_text( IMAGE *out, const char *text, const char *font, | int im_text( IMAGE *out, const char *text, const char *font, | |||
int width, int alignment, int dpi ); | int width, int alignment, int dpi ); | |||
int im_extract_band( IMAGE *in, IMAGE *out, int band ); | int im_extract_band( IMAGE *in, IMAGE *out, int band ); | |||
int im_extract_bands( IMAGE *in, IMAGE *out, int band, int nbands ); | int im_extract_bands( IMAGE *in, IMAGE *out, int band, int nbands ); | |||
int im_extract_area( IMAGE *in, IMAGE *out, int x, int y, int w, int h ); | int im_extract_area( IMAGE *in, IMAGE *out, | |||
int left, int top, int width, int height ); | ||||
int im_extract_areabands( IMAGE *in, IMAGE *out, | int im_extract_areabands( IMAGE *in, IMAGE *out, | |||
int left, int top, int width, int height, int band, int nbands ); | int left, int top, int width, int height, int band, int nbands ); | |||
int im_embed( IMAGE *in, IMAGE *out, int type, | int im_embed( IMAGE *in, IMAGE *out, | |||
int left, int top, int width, int height ); | int type, int x, int y, int width, int height ); | |||
int im_bandjoin( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_bandjoin( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_gbandjoin( IMAGE **in, IMAGE *out, int n ); | int im_gbandjoin( IMAGE **in, IMAGE *out, int n ); | |||
int im_insert( IMAGE *main, IMAGE *sub, IMAGE *out, int x, int y ); | int im_insert( IMAGE *main, IMAGE *sub, IMAGE *out, int x, int y ); | |||
int im_insert_noexpand( IMAGE *main, IMAGE *sub, IMAGE *out, int x, int y ) ; | int im_insert_noexpand( IMAGE *main, IMAGE *sub, IMAGE *out, int x, int y ) ; | |||
int im_insertset( IMAGE *main, IMAGE *sub, IMAGE *out, int n, int *x, int * y ); | int im_insertset( IMAGE *main, IMAGE *sub, IMAGE *out, int n, int *x, int * y ); | |||
int im_lrjoin( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_lrjoin( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_tbjoin( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_tbjoin( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_replicate( IMAGE *in, IMAGE *out, int across, int down ); | int im_replicate( IMAGE *in, IMAGE *out, int across, int down ); | |||
int im_grid( IMAGE *in, IMAGE *out, int tile_height, int across, int down ) ; | int im_grid( IMAGE *in, IMAGE *out, int tile_height, int across, int down ) ; | |||
int im_wrap( IMAGE *in, IMAGE *out, int x, int y ); | int im_wrap( IMAGE *in, IMAGE *out, int x, int y ); | |||
skipping to change at line 114 | skipping to change at line 101 | |||
int im_fliphor( IMAGE *in, IMAGE *out ); | int im_fliphor( IMAGE *in, IMAGE *out ); | |||
int im_flipver( IMAGE *in, IMAGE *out ); | int im_flipver( IMAGE *in, IMAGE *out ); | |||
int im_rot90( IMAGE *in, IMAGE *out ); | int im_rot90( IMAGE *in, IMAGE *out ); | |||
int im_rot180( IMAGE *in, IMAGE *out ); | int im_rot180( IMAGE *in, IMAGE *out ); | |||
int im_rot270( IMAGE *in, IMAGE *out ); | int im_rot270( IMAGE *in, IMAGE *out ); | |||
int im_subsample( IMAGE *in, IMAGE *out, int x, int y ); | int im_subsample( IMAGE *in, IMAGE *out, int x, int y ); | |||
int im_zoom( IMAGE *in, IMAGE *out, int x, int y ); | int im_zoom( IMAGE *in, IMAGE *out, int x, int y ); | |||
int im_system( IMAGE *im, const char *cmd, char **out ); | int im_system( IMAGE *im, const char *cmd, char **out ); | |||
IMAGE *im_system_image( IMAGE *im, | ||||
const char *in_format, const char *out_format, const char *cmd_forma | ||||
t, | ||||
char **log ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_CONVERSION_H*/ | #endif /*IM_CONVERSION_H*/ | |||
End of changes. 12 change blocks. | ||||
23 lines changed or deleted | 14 lines changed or added | |||
convolution.h | convolution.h | |||
---|---|---|---|---|
skipping to change at line 63 | skipping to change at line 63 | |||
int im_grad_x( IMAGE *in, IMAGE *out ); | int im_grad_x( IMAGE *in, IMAGE *out ); | |||
int im_grad_y( IMAGE *in, IMAGE *out ); | int im_grad_y( IMAGE *in, IMAGE *out ); | |||
int im_fastcor( IMAGE *in, IMAGE *ref, IMAGE *out ); | int im_fastcor( IMAGE *in, IMAGE *ref, IMAGE *out ); | |||
int im_spcor( IMAGE *in, IMAGE *ref, IMAGE *out ); | int im_spcor( IMAGE *in, IMAGE *ref, IMAGE *out ); | |||
int im_gradcor( IMAGE *in, IMAGE *ref, IMAGE *out ); | int im_gradcor( IMAGE *in, IMAGE *ref, IMAGE *out ); | |||
int im_contrast_surface( IMAGE *in, IMAGE *out, | int im_contrast_surface( IMAGE *in, IMAGE *out, | |||
int half_win_size, int spacing ); | int half_win_size, int spacing ); | |||
int im_addgnoise( IMAGE *in, IMAGE *out, double sigma ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_CONVOLUTION_H*/ | #endif /*IM_CONVOLUTION_H*/ | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 2 lines changed or added | |||
debug.h | debug.h | |||
---|---|---|---|---|
skipping to change at line 37 | skipping to change at line 37 | |||
*/ | */ | |||
#ifndef IM_DEBUG_H | #ifndef IM_DEBUG_H | |||
#define IM_DEBUG_H | #define IM_DEBUG_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#ifdef VIPS_DEBUG | ||||
#define VIPS_DEBUG_MSG( ... ) \ | ||||
G_STMT_START printf( __VA_ARGS__ ); G_STMT_END | ||||
#else | ||||
#define VIPS_DEBUG_MSG( ... ) \ | ||||
G_STMT_START ; G_STMT_END | ||||
#endif /*VIPS_DEBUG*/ | ||||
#ifdef VIPS_DEBUG_RED | ||||
#define VIPS_DEBUG_MSG_RED( ... ) \ | ||||
G_STMT_START printf( "red: " __VA_ARGS__ ); G_STMT_END | ||||
#else | ||||
#define VIPS_DEBUG_MSG_RED( ... ) \ | ||||
G_STMT_START ; G_STMT_END | ||||
#endif /*VIPS_DEBUG_RED*/ | ||||
#ifdef VIPS_DEBUG_AMBER | ||||
#define VIPS_DEBUG_MSG_AMBER( ... ) \ | ||||
G_STMT_START printf( "amber: " __VA_ARGS__ ); G_STMT_END | ||||
#else | ||||
#define VIPS_DEBUG_MSG_AMBER( ... ) \ | ||||
G_STMT_START ; G_STMT_END | ||||
#endif /*VIPS_DEBUG_AMBER*/ | ||||
#ifdef VIPS_DEBUG_GREEN | ||||
#define VIPS_DEBUG_MSG_GREEN( ... ) \ | ||||
G_STMT_START printf( "green: " __VA_ARGS__ ); G_STMT_END | ||||
#else | ||||
#define VIPS_DEBUG_MSG_GREEN( ... ) \ | ||||
G_STMT_START ; G_STMT_END | ||||
#endif /*VIPS_DEBUG_GREEN*/ | ||||
/* All open image descriptors ... see im_init() and im_close(). | /* All open image descriptors ... see im_init() and im_close(). | |||
*/ | */ | |||
extern GSList *im__open_images; | extern GSList *im__open_images; | |||
/* Print one line for each descriptor, complete dump for one descriptor. | /* Print one line for each descriptor, complete dump for one descriptor. | |||
*/ | */ | |||
void im__print_one( int n ); | void im__print_one( int n ); | |||
void im__print_all( void ); | void im__print_all( void ); | |||
const char *im_Type2char( VipsType type ); | const char *im_Type2char( VipsType type ); | |||
skipping to change at line 62 | skipping to change at line 94 | |||
int im_char2Type( const char *str ); | int im_char2Type( const char *str ); | |||
int im_char2BandFmt( const char *str ); | int im_char2BandFmt( const char *str ); | |||
int im_char2Coding( const char *str ); | int im_char2Coding( const char *str ); | |||
int im_char2Compression( const char *str ); | int im_char2Compression( const char *str ); | |||
im_desc_type im_char2dtype( const char *str ); | im_desc_type im_char2dtype( const char *str ); | |||
im_demand_type im_char2dhint( const char *str ); | im_demand_type im_char2dhint( const char *str ); | |||
void im_printdesc( IMAGE *image ); | void im_printdesc( IMAGE *image ); | |||
int im_image_sanity( IMAGE *im ); | int im_image_sanity( IMAGE *im ); | |||
void im_image_sanity_all( void ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /* IM_DEBUG_H */ | #endif /* IM_DEBUG_H */ | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 33 lines changed or added | |||
deprecated.h | deprecated.h | |||
---|---|---|---|---|
skipping to change at line 118 | skipping to change at line 118 | |||
#define LABPACK_COMPRESSED 3 | #define LABPACK_COMPRESSED 3 | |||
#define RGB_COMPRESSED 4 | #define RGB_COMPRESSED 4 | |||
#define LUM_COMPRESSED 5 | #define LUM_COMPRESSED 5 | |||
/* Compression type | /* Compression type | |||
*/ | */ | |||
#define NO_COMPRESSION 0 | #define NO_COMPRESSION 0 | |||
#define TCSF_COMPRESSION 1 | #define TCSF_COMPRESSION 1 | |||
#define JPEG_COMPRESSION 2 | #define JPEG_COMPRESSION 2 | |||
/* Macros on IMAGEs. | ||||
* esize() sizeof band element | ||||
* psize() sizeof pel | ||||
* lsize() sizeof scan line | ||||
* niele() number of elements in scan line | ||||
*/ | ||||
#define esize(I) IM_IMAGE_SIZEOF_ELEMENT(I) | #define esize(I) IM_IMAGE_SIZEOF_ELEMENT(I) | |||
#define psize(I) IM_IMAGE_SIZEOF_PEL(I) | #define psize(I) IM_IMAGE_SIZEOF_PEL(I) | |||
#define lsize(I) IM_IMAGE_SIZEOF_LINE(I) | #define lsize(I) IM_IMAGE_SIZEOF_LINE(I) | |||
#define niele(I) IM_IMAGE_N_ELEMENTS(I) | #define niele(I) IM_IMAGE_N_ELEMENTS(I) | |||
/* Macros on REGIONs. | #define lskip(B) IM_REGION_LSKIP(B) | |||
* lskip() add to move down line | #define nele(B) IM_REGION_N_ELEMENTS(B) | |||
* nele() number of elements across region | #define rsize(B) IM_REGION_SIZEOF_LINE(B) | |||
* rsize() sizeof width of region | ||||
* addr() address of pixel in region | ||||
*/ | ||||
#define lskip(B) ((B)->bpl) | ||||
#define nele(B) ((B)->valid.width*(B)->im->Bands) | ||||
#define rsize(B) ((B)->valid.width*psize((B)->im)) | ||||
/* addr() is special: if DEBUG is defined, make an addr() with bounds check | #define addr(B,X,Y) IM_REGION_ADDR(B,X,Y) | |||
ing. | ||||
*/ | ||||
#ifdef DEBUG | ||||
#define addr(B,X,Y) \ | ||||
( (im_rect_includespoint( &(B)->valid, (X), (Y) ))? \ | ||||
((B)->data + ((Y) - (B)->valid.top)*lskip(B) + \ | ||||
((X) - (B)->valid.left)*psize((B)->im)): \ | ||||
(fprintf( stderr, \ | ||||
"addr: point out of bounds, file \"%s\", line %d\n" \ | ||||
"(point x=%d, y=%d\n" \ | ||||
" should have been within Rect left=%d, top=%d, " \ | ||||
"width=%d, height=%d)\n", \ | ||||
__FILE__, __LINE__, \ | ||||
(X), (Y), \ | ||||
(B)->valid.left, \ | ||||
(B)->valid.top, \ | ||||
(B)->valid.width, \ | ||||
(B)->valid.height ), abort(), (char *) NULL) \ | ||||
) | ||||
#else /*DEBUG*/ | ||||
#define addr(B,X,Y) ((B)->data + ((Y)-(B)->valid.top)*lskip(B) + \ | ||||
((X)-(B)->valid.left)*psize((B)->im)) | ||||
#endif /*DEBUG*/ | ||||
#ifndef MAX | #ifndef MAX | |||
#define MAX(A,B) ((A)>(B)?(A):(B)) | #define MAX(A,B) IM_MAX(A, B) | |||
#define MIN(A,B) ((A)<(B)?(A):(B)) | #define MIN(A,B) IM_MIN(A, B) | |||
#endif /*MAX*/ | #endif /*MAX*/ | |||
#define CLIP(A,V,B) MAX( (A), MIN( (B), (V) ) ) | #define CLIP(A,V,B) IM_CLIP(A, V, B) | |||
#define NEW(IM,A) ((A *)im_malloc((IM),sizeof(A))) | #define NEW(IM,A) IM_NEW(IM,A) | |||
#define NUMBER(R) (sizeof(R)/sizeof(R[0])) | #define NUMBER(R) IM_NUMBER(R) | |||
#define ARRAY(IM,N,T) ((T *)im_malloc((IM),(N) * sizeof(T))) | #define ARRAY(IM,N,T) IM_ARRAY(IM,N,T) | |||
/* Duff's device. Do OPERation N times in a 16-way unrolled loop. | #define UNROLL( N, OPER ) IM_UNROLL( N, OPER ) | |||
*/ | #define RINT( R ) IM_RINT( R ) | |||
#define UNROLL( N, OPER ) { \ | ||||
if( (N) ) { \ | #define CLIP_UCHAR( V, SEQ ) IM_CLIP_UCHAR( V, SEQ ) | |||
int duff_count = ((N) + 15) / 16; \ | #define CLIP_USHORT( V, SEQ ) IM_CLIP_USHORT( V, SEQ ) | |||
\ | #define CLIP_CHAR( V, SEQ ) IM_CLIP_CHAR( V, SEQ ) | |||
switch( (N) % 16 ) { \ | #define CLIP_SHORT( V, SEQ ) IM_CLIP_SHORT( V, SEQ ) | |||
case 0: do { OPER; \ | #define CLIP_NONE( V, SEQ ) IM_CLIP_NONE( V, SEQ ) | |||
case 15: OPER; \ | ||||
case 14: OPER; \ | ||||
case 13: OPER; \ | ||||
case 12: OPER; \ | ||||
case 11: OPER; \ | ||||
case 10: OPER; \ | ||||
case 9: OPER; \ | ||||
case 8: OPER; \ | ||||
case 7: OPER; \ | ||||
case 6: OPER; \ | ||||
case 5: OPER; \ | ||||
case 4: OPER; \ | ||||
case 3: OPER; \ | ||||
case 2: OPER; \ | ||||
case 1: OPER; \ | ||||
} while( --duff_count > 0 ); \ | ||||
} \ | ||||
} \ | ||||
} | ||||
/* Round a float to the nearest integer. This should give an identical resu | ||||
lt | ||||
* to the math.h rint() function (and the old SunOS nint() function), but b | ||||
e | ||||
* much faster. Beware: it evaluates its argument more than once, so don't | ||||
use | ||||
* ++! | ||||
*/ | ||||
#define RINT( R ) ((int)((R)>0?((R)+0.5):((R)-0.5))) | ||||
/* Various integer range clips. Record over/under flows. | #define right(R) IM_RECT_RIGHT(R) | |||
*/ | #define bottom(R) IM_RECT_BOTTOM(R) | |||
#define CLIP_UCHAR( V, SEQ ) { \ | ||||
if( (V) & (UCHAR_MAX ^ -1) ) { \ | ||||
if( (V) < 0 ) { \ | ||||
(SEQ)->underflow++; \ | ||||
(V) = 0; \ | ||||
} \ | ||||
if( (V) > UCHAR_MAX ) { \ | ||||
(SEQ)->overflow++; \ | ||||
(V) = UCHAR_MAX; \ | ||||
} \ | ||||
} \ | ||||
} | ||||
#define CLIP_USHORT( V, SEQ ) { \ | ||||
if( (V) & (USHRT_MAX ^ -1) ) { \ | ||||
if( (V) < 0 ) { \ | ||||
(SEQ)->underflow++; \ | ||||
(V) = 0; \ | ||||
} \ | ||||
if( (V) > USHRT_MAX ) { \ | ||||
(SEQ)->overflow++; \ | ||||
(V) = USHRT_MAX; \ | ||||
} \ | ||||
} \ | ||||
} | ||||
#define CLIP_CHAR( V, SEQ ) { \ | ||||
if( (V) < SCHAR_MIN ) { \ | ||||
(SEQ)->underflow++; \ | ||||
(V) = SCHAR_MIN; \ | ||||
} \ | ||||
if( (V) > SCHAR_MAX ) { \ | ||||
(SEQ)->overflow++; \ | ||||
(V) = SCHAR_MAX; \ | ||||
} \ | ||||
} | ||||
#define CLIP_SHORT( V, SEQ ) { \ | ||||
if( (V) < SHRT_MIN ) { \ | ||||
(SEQ)->underflow++; \ | ||||
(V) = SHRT_MIN; \ | ||||
} \ | ||||
if( (V) > SHRT_MAX ) { \ | ||||
(SEQ)->overflow++; \ | ||||
(V) = SHRT_MAX; \ | ||||
} \ | ||||
} | ||||
#define CLIP_NONE( V, SEQ ) {} | ||||
/* On Rect. | ||||
*/ | ||||
#define right(R) ((R)->left + (R)->width) | ||||
#define bottom(R) ((R)->top + (R)->height) | ||||
/* Backwards compatibility macros. | ||||
*/ | ||||
#define im_clear_error_string() im_error_clear() | ||||
#define im_errorstring() im_error_buffer() | ||||
/* Deprecated API. | ||||
*/ | ||||
void im_errormsg( const char *fmt, ... ) | ||||
__attribute__((format(printf, 1, 2))); | ||||
void im_verrormsg( const char *fmt, va_list ap ); | ||||
void im_errormsg_system( int err, const char *fmt, ... ) | ||||
__attribute__((format(printf, 2, 3))); | ||||
void im_diagnostics( const char *fmt, ... ) | ||||
__attribute__((format(printf, 1, 2))); | ||||
void im_warning( const char *fmt, ... ) | ||||
__attribute__((format(printf, 1, 2))); | ||||
/* Deprecated operations. | ||||
*/ | ||||
int im_cmulnorm( IMAGE *in1, IMAGE *in2, IMAGE *out ); | ||||
int im_fav4( IMAGE **, IMAGE * ); | ||||
int im_gadd( double, IMAGE *, double, IMAGE *, double, IMAGE *); | ||||
int im_litecor( IMAGE *, IMAGE *, IMAGE *, int, double ); | ||||
int im_render_fade( IMAGE *in, IMAGE *out, IMAGE *mask, | ||||
int width, int height, int max, | ||||
int fps, int steps, | ||||
int priority, | ||||
void (*notify)( IMAGE *, Rect *, void * ), void *client ); | ||||
int im_render( IMAGE *in, IMAGE *out, IMAGE *mask, | ||||
int width, int height, int max, | ||||
void (*notify)( IMAGE *, Rect *, void * ), void *client ); | ||||
/* Renamed operations. | ||||
*/ | ||||
/* arithmetic | ||||
*/ | ||||
int im_remainderconst_vec( IMAGE *in, IMAGE *out, int n, double *c ); | ||||
/* boolean | ||||
*/ | ||||
int im_andconst( IMAGE *, IMAGE *, double ); | ||||
int im_and_vec( IMAGE *, IMAGE *, int, double * ); | ||||
int im_orconst( IMAGE *, IMAGE *, double ); | ||||
int im_or_vec( IMAGE *, IMAGE *, int, double * ); | ||||
int im_eorconst( IMAGE *, IMAGE *, double ); | ||||
int im_eor_vec( IMAGE *, IMAGE *, int, double * ); | ||||
/* mosaicing | ||||
*/ | ||||
int im_affine( IMAGE *in, IMAGE *out, | ||||
double a, double b, double c, double d, double dx, double dy, | ||||
int ox, int oy, int ow, int oh ); | ||||
int im_similarity( IMAGE *in, IMAGE *out, | ||||
double a, double b, double dx, double dy ); | ||||
int im_similarity_area( IMAGE *in, IMAGE *out, | ||||
double a, double b, double dx, double dy, | ||||
int ox, int oy, int ow, int oh ); | ||||
/* colour | ||||
*/ | ||||
int im_icc_export( IMAGE *in, IMAGE *out, | ||||
const char *output_profile_filename, VipsIntent intent ); | ||||
/* conversion | ||||
*/ | ||||
int im_clip2dcm( IMAGE *in, IMAGE *out ); | ||||
int im_clip2cm( IMAGE *in, IMAGE *out ); | ||||
int im_clip2us( IMAGE *in, IMAGE *out ); | ||||
int im_clip2ui( IMAGE *in, IMAGE *out ); | ||||
int im_clip2s( IMAGE *in, IMAGE *out ); | ||||
int im_clip2i( IMAGE *in, IMAGE *out ); | ||||
int im_clip2d( IMAGE *in, IMAGE *out ); | ||||
int im_clip2f( IMAGE *in, IMAGE *out ); | ||||
int im_clip2c( IMAGE *in, IMAGE *out ); | ||||
int im_slice( IMAGE *in, IMAGE *out, double, double ); | ||||
int im_thresh( IMAGE *in, IMAGE *out, double ); | ||||
int im_print( const char *message ); | ||||
int im_convsub( IMAGE *in, IMAGE *out, INTMASK *mask, int xskip, int yskip | ||||
); | ||||
int im_bernd( const char *tiffname, int x, int y, int w, int h ); | ||||
int im_resize_linear( IMAGE *, IMAGE *, int, int ); | ||||
int im_line( IMAGE *, int, int, int, int, int ); | ||||
int im_segment( IMAGE *test, IMAGE *mask, int *segments ); | ||||
int im_convf( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_convsepf( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_conv_raw( IMAGE *in, IMAGE *out, INTMASK *mask ); | ||||
int im_convf_raw( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_convsep_raw( IMAGE *in, IMAGE *out, INTMASK *mask ); | ||||
int im_convsepf_raw( IMAGE *in, IMAGE *out, DOUBLEMASK *mask ); | ||||
int im_fastcor_raw( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_spcor_raw( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_gradcor_raw( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_contrast_surface_raw( IMAGE *in, IMAGE *out, | ||||
int half_win_size, int spacing ); | ||||
int im_stdif_raw( IMAGE *in, IMAGE *out, | ||||
double a, double m0, double b, double s0, int xwin, int ywin ); | ||||
int im_lhisteq_raw( IMAGE *in, IMAGE *out, int xwin, int ywin ); | ||||
int im_erode_raw( IMAGE *in, IMAGE *out, INTMASK *m ); | ||||
int im_dilate_raw( IMAGE *in, IMAGE *out, INTMASK *m ); | ||||
int im_rank_raw( IMAGE *in, IMAGE *out, int xsize, int ysize, int order ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_DEPRECATED_H*/ | #endif /*IM_DEPRECATED_H*/ | |||
End of changes. 6 change blocks. | ||||
250 lines changed or deleted | 21 lines changed or added | |||
disp.h | disp.h | |||
---|---|---|---|---|
skipping to change at line 78 | skipping to change at line 78 | |||
float d_Y0R; /* Residual light for black pixel */ | float d_Y0R; /* Residual light for black pixel */ | |||
float d_Y0G; | float d_Y0G; | |||
float d_Y0B; | float d_Y0B; | |||
float d_gammaR; /* Gamma values for the three guns * / | float d_gammaR; /* Gamma values for the three guns * / | |||
float d_gammaG; | float d_gammaG; | |||
float d_gammaB; | float d_gammaB; | |||
float d_B; /* 'Background' (like brightness) */ | float d_B; /* 'Background' (like brightness) */ | |||
float d_P; /* 'Picture' (like contrast) */ | float d_P; /* 'Picture' (like contrast) */ | |||
}; | }; | |||
/* Structure for holding the lookup tables for XYZ<=>rgb conversion. | ||||
* Also holds the luminance to XYZ matrix and the inverse one. | ||||
*/ | ||||
struct im_col_tab_disp { | ||||
/* All private. | ||||
*/ | ||||
/*< private >*/ | ||||
float t_Yr2r[1501]; /* Conversion of Yr to r */ | ||||
float t_Yg2g[1501]; /* Conversion of Yg to g */ | ||||
float t_Yb2b[1501]; /* Conversion of Yb to b */ | ||||
float t_r2Yr[1501]; /* Conversion of r to Yr */ | ||||
float t_g2Yg[1501]; /* Conversion of g to Yg */ | ||||
float t_b2Yb[1501]; /* Conversion of b to Yb */ | ||||
float mat_XYZ2lum[3][3]; /* XYZ to Yr, Yg, Yb matrix */ | ||||
float mat_lum2XYZ[3][3]; /* Yr, Yg, Yb to XYZ matrix */ | ||||
float rstep, gstep, bstep; | ||||
float ristep, gistep, bistep; | ||||
}; | ||||
struct im_col_tab_disp *im_col_make_tables_RGB( | ||||
IMAGE *im, | ||||
struct im_col_display *d ); | ||||
struct im_col_tab_disp *im_col_display_get_table( struct im_col_display *d | ||||
); | ||||
int im_col_rgb2XYZ( struct im_col_display *d, | int im_col_rgb2XYZ( struct im_col_display *d, | |||
int r, int g, int b, | int r, int g, int b, | |||
float *X, float *Y, float *Z ); | float *X, float *Y, float *Z ); | |||
int im_col_XYZ2rgb( | int im_col_XYZ2rgb( | |||
struct im_col_display *d, | struct im_col_display *d, | |||
float X, float Y, float Z, | float X, float Y, float Z, | |||
int *r_ret, int *g_ret, int *b_ret, | int *r_ret, int *g_ret, int *b_ret, | |||
int *or_ret ); | int *or_ret ); | |||
int im_XYZ2disp( IMAGE *in, IMAGE *out, struct im_col_display *d ); | int im_XYZ2disp( IMAGE *in, IMAGE *out, struct im_col_display *d ); | |||
End of changes. 1 change blocks. | ||||
25 lines changed or deleted | 0 lines changed or added | |||
format.h | format.h | |||
---|---|---|---|---|
skipping to change at line 120 | skipping to change at line 120 | |||
VipsFormatClass *vips_format_for_name( const char *filename ); | VipsFormatClass *vips_format_for_name( const char *filename ); | |||
VipsFormatFlags vips_format_get_flags( VipsFormatClass *format, | VipsFormatFlags vips_format_get_flags( VipsFormatClass *format, | |||
const char *filename ); | const char *filename ); | |||
/* Read/write an image convenience functions. | /* Read/write an image convenience functions. | |||
*/ | */ | |||
int vips_format_read( const char *filename, IMAGE *out ); | int vips_format_read( const char *filename, IMAGE *out ); | |||
int vips_format_write( IMAGE *in, const char *filename ); | int vips_format_write( IMAGE *in, const char *filename ); | |||
/* Low-level read/write operations. | ||||
*/ | ||||
int im_jpeg2vips( const char *filename, IMAGE *out ); | int im_jpeg2vips( const char *filename, IMAGE *out ); | |||
int im_vips2jpeg( IMAGE *in, const char *filename ); | int im_vips2jpeg( IMAGE *in, const char *filename ); | |||
int im_vips2mimejpeg( IMAGE *in, int qfac ); | int im_vips2mimejpeg( IMAGE *in, int qfac ); | |||
int im_vips2bufjpeg( IMAGE *in, IMAGE *out, int qfac, char **obuf, int *ole n ); | int im_vips2bufjpeg( IMAGE *in, IMAGE *out, int qfac, char **obuf, int *ole n ); | |||
int im_vips2tiff( IMAGE *in, const char *filename ); | ||||
int im_tiff2vips( const char *filename, IMAGE *out ); | int im_tiff2vips( const char *filename, IMAGE *out ); | |||
int im_vips2tiff( IMAGE *in, const char *filename ); | ||||
int im_tile_cache( IMAGE *in, IMAGE *out, | int im_tile_cache( IMAGE *in, IMAGE *out, | |||
int tile_width, int tile_height, int max_tiles ); | int tile_width, int tile_height, int max_tiles ); | |||
int im_magick2vips( const char *filename, IMAGE * ); | ||||
int im_png2vips( const char *filename, IMAGE *out ); | int im_magick2vips( const char *filename, IMAGE *out ); | |||
int im_exr2vips( const char *filename, IMAGE *out ); | int im_exr2vips( const char *filename, IMAGE *out ); | |||
int im_ppm2vips( const char *filename, IMAGE *out ); | int im_ppm2vips( const char *filename, IMAGE *out ); | |||
int im_vips2ppm( IMAGE *in, const char *filename ); | int im_vips2ppm( IMAGE *in, const char *filename ); | |||
int im_analyze2vips( const char *filename, IMAGE *out ); | int im_analyze2vips( const char *filename, IMAGE *out ); | |||
int im_vips2csv( IMAGE *in, const char *filename ); | ||||
int im_csv2vips( const char *filename, IMAGE *out ); | int im_csv2vips( const char *filename, IMAGE *out ); | |||
int im_vips2csv( IMAGE *in, const char *filename ); | ||||
int im_png2vips( const char *filename, IMAGE *out ); | ||||
int im_vips2png( IMAGE *in, const char *filename ); | int im_vips2png( IMAGE *in, const char *filename ); | |||
int im_raw2vips( const char *filename, IMAGE *out, | int im_raw2vips( const char *filename, IMAGE *out, | |||
int width, int height, int bpp, int offset ); | int width, int height, int bpp, int offset ); | |||
int im_vips2raw( IMAGE *in, int fd ); | int im_vips2raw( IMAGE *in, int fd ); | |||
int im_mat2vips( const char *filename, IMAGE *out ); | ||||
int im_rad2vips( const char *filename, IMAGE *out ); | ||||
int im_vips2rad( IMAGE *in, const char *filename ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_FORMAT_H*/ | #endif /*IM_FORMAT_H*/ | |||
End of changes. 10 change blocks. | ||||
4 lines changed or deleted | 19 lines changed or added | |||
freq_filt.h | freq_filt.h | |||
---|---|---|---|---|
skipping to change at line 40 | skipping to change at line 40 | |||
*/ | */ | |||
#ifndef IM_FREQ_H | #ifndef IM_FREQ_H | |||
#define IM_FREQ_H | #define IM_FREQ_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
int im_fractsurf( IMAGE *out, int size, double frd ); | typedef enum { | |||
int im_freqflt( IMAGE *in, IMAGE *mask, IMAGE *out ); | VIPS_MASK_IDEAL_HIGHPASS = 0, | |||
int im_disp_ps( IMAGE *in, IMAGE *out ); | VIPS_MASK_IDEAL_LOWPASS = 1, | |||
int im_rotquad( IMAGE *in, IMAGE *out ); | VIPS_MASK_BUTTERWORTH_HIGHPASS = 2, | |||
VIPS_MASK_BUTTERWORTH_LOWPASS = 3, | ||||
VIPS_MASK_GAUSS_HIGHPASS = 4, | ||||
VIPS_MASK_GAUSS_LOWPASS = 5, | ||||
VIPS_MASK_IDEAL_RINGPASS = 6, | ||||
VIPS_MASK_IDEAL_RINGREJECT = 7, | ||||
VIPS_MASK_BUTTERWORTH_RINGPASS = 8, | ||||
VIPS_MASK_BUTTERWORTH_RINGREJECT = 9, | ||||
VIPS_MASK_GAUSS_RINGPASS = 10, | ||||
VIPS_MASK_GAUSS_RINGREJECT = 11, | ||||
VIPS_MASK_IDEAL_BANDPASS = 12, | ||||
VIPS_MASK_IDEAL_BANDREJECT = 13, | ||||
VIPS_MASK_BUTTERWORTH_BANDPASS = 14, | ||||
VIPS_MASK_BUTTERWORTH_BANDREJECT = 15, | ||||
VIPS_MASK_GAUSS_BANDPASS = 16, | ||||
VIPS_MASK_GAUSS_BANDREJECT = 17, | ||||
VIPS_MASK_FRACTAL_FLT = 18 | ||||
} VipsMaskType; | ||||
int im_fwfft( IMAGE *in, IMAGE *out ); | int im_fwfft( IMAGE *in, IMAGE *out ); | |||
int im_invfft( IMAGE *in, IMAGE *out ); | int im_invfft( IMAGE *in, IMAGE *out ); | |||
int im_invfftr( IMAGE *in, IMAGE *out ); | int im_invfftr( IMAGE *in, IMAGE *out ); | |||
int im_freqflt( IMAGE *in, IMAGE *mask, IMAGE *out ); | ||||
int im_disp_ps( IMAGE *in, IMAGE *out ); | ||||
int im_rotquad( IMAGE *in, IMAGE *out ); | ||||
int im_phasecor_fft( IMAGE *in1, IMAGE *in2, IMAGE *out ); | int im_phasecor_fft( IMAGE *in1, IMAGE *in2, IMAGE *out ); | |||
int im_flt_image_freq( IMAGE *in, IMAGE *out, VipsMaskType flag, ... ); | ||||
int im_create_fmask( IMAGE *out, int xsize, int ysize, VipsMaskType flag, . | ||||
.. ); | ||||
int im_fractsurf( IMAGE *out, int size, double frd ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_FREQ_H*/ | #endif /*IM_FREQ_H*/ | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 34 lines changed or added | |||
histograms_lut.h | histograms_lut.h | |||
---|---|---|---|---|
skipping to change at line 40 | skipping to change at line 40 | |||
*/ | */ | |||
#ifndef IM_HIST_H | #ifndef IM_HIST_H | |||
#define IM_HIST_H | #define IM_HIST_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
int im_maplut( IMAGE *in, IMAGE *out, IMAGE *lut ); | ||||
int im_gammacorrect( IMAGE *in, IMAGE *out, double exponent ); | ||||
int im_heq( IMAGE *in, IMAGE *out, int bandno ); | ||||
int im_hist( IMAGE *in, IMAGE *out, int bandno ); | ||||
int im_hist_indexed( IMAGE *index, IMAGE *value, IMAGE *out ); | ||||
int im_histeq( IMAGE *in, IMAGE *out ); | ||||
int im_histnorm( IMAGE *in, IMAGE *out ); | ||||
int im_histcum( IMAGE *in, IMAGE *out ); | ||||
int im_histgr( IMAGE *in, IMAGE *out, int bandno ); | int im_histgr( IMAGE *in, IMAGE *out, int bandno ); | |||
int im_histnD( IMAGE *in, IMAGE *out, int bins ); | int im_histnD( IMAGE *in, IMAGE *out, int bins ); | |||
int im_histplot( IMAGE *hist, IMAGE *histplot ); | int im_hist_indexed( IMAGE *index, IMAGE *value, IMAGE *out ); | |||
int im_histspec( IMAGE *hin, IMAGE *href, IMAGE *lut ); | ||||
int im_hsp( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_identity( IMAGE *lut, int bands ); | int im_identity( IMAGE *lut, int bands ); | |||
int im_identity_ushort( IMAGE *lut, int bands, int sz ); | int im_identity_ushort( IMAGE *lut, int bands, int sz ); | |||
int im_lhisteq( IMAGE *in, IMAGE *out, int xwin, int ywin ); | ||||
int im_invertlut( DOUBLEMASK *input, IMAGE *output, int lut_size ); | int im_invertlut( DOUBLEMASK *input, IMAGE *output, int lut_size ); | |||
int im_buildlut( DOUBLEMASK *input, IMAGE *output ); | int im_buildlut( DOUBLEMASK *input, IMAGE *output ); | |||
int im_project( IMAGE *in, IMAGE *hout, IMAGE *vout ); | ||||
int im_histnorm( IMAGE *in, IMAGE *out ); | ||||
int im_histcum( IMAGE *in, IMAGE *out ); | ||||
int im_histeq( IMAGE *in, IMAGE *out ); | ||||
int im_histspec( IMAGE *hin, IMAGE *href, IMAGE *lut ); | ||||
int im_ismonotonic( IMAGE *lut, int *out ); | ||||
int im_histplot( IMAGE *hist, IMAGE *histplot ); | ||||
int im_maplut( IMAGE *in, IMAGE *out, IMAGE *lut ); | ||||
int im_hist( IMAGE *in, IMAGE *out, int bandno ); | ||||
int im_hsp( IMAGE *in, IMAGE *ref, IMAGE *out ); | ||||
int im_gammacorrect( IMAGE *in, IMAGE *out, double exponent ); | ||||
int im_mpercent( IMAGE *in, double percent, int *out ); | ||||
int im_mpercent_hist( IMAGE *hist, double percent, int *out ); | ||||
int im_heq( IMAGE *in, IMAGE *out, int bandno ); | ||||
int im_lhisteq( IMAGE *in, IMAGE *out, int xwin, int ywin ); | ||||
int im_stdif( IMAGE *in, IMAGE *out, | int im_stdif( IMAGE *in, IMAGE *out, | |||
double a, double m0, double b, double s0, int xwin, int ywin ); | double a, double m0, double b, double s0, int xwin, int ywin ); | |||
int im_tone_build_range( IMAGE *out, | int im_tone_build_range( IMAGE *out, | |||
int in_max, int out_max, | int in_max, int out_max, | |||
double Lb, double Lw, double Ps, double Pm, double Ph, | double Lb, double Lw, double Ps, double Pm, double Ph, | |||
double S, double M, double H ); | double S, double M, double H ); | |||
int im_tone_build( IMAGE *out, | int im_tone_build( IMAGE *out, | |||
double Lb, double Lw, double Ps, double Pm, double Ph, | double Lb, double Lw, double Ps, double Pm, double Ph, | |||
double S, double M, double H ); | double S, double M, double H ); | |||
int im_tone_analyse( IMAGE *in, IMAGE *lut, | int im_tone_analyse( IMAGE *in, IMAGE *lut, | |||
double Ps, double Pm, double Ph, double S, double M, double H ); | double Ps, double Pm, double Ph, double S, double M, double H ); | |||
int im_ismonotonic( IMAGE *lut, int *out ); | ||||
int im_tone_map( IMAGE *in, IMAGE *out, IMAGE *lut ); | int im_tone_map( IMAGE *in, IMAGE *out, IMAGE *lut ); | |||
int im_project( IMAGE *in, IMAGE *hout, IMAGE *vout ); | ||||
int im_mpercent( IMAGE *in, double percent, int *out ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_HIST_H*/ | #endif /*IM_HIST_H*/ | |||
End of changes. 7 change blocks. | ||||
15 lines changed or deleted | 22 lines changed or added | |||
image.h | image.h | |||
---|---|---|---|---|
skipping to change at line 45 | skipping to change at line 45 | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
/* Needed for 'unused' below. Remove this when we remove that. | /* Needed for 'unused' below. Remove this when we remove that. | |||
*/ | */ | |||
#include <time.h> | #include <time.h> | |||
/* If you read MSB first, you get these two values. | /* If you read MSB first, you get these two values. | |||
* intel order: byte 0 = b6 | * intel order: byte 0 = b6 | |||
* SPARC order: byte 0 = 08 | * SPARC order: byte 0 = 08 | |||
*/ | */ | |||
#define IM_MAGIC_INTEL (0xb6a6f208U) | #define IM_MAGIC_INTEL (0xb6a6f208U) | |||
#define IM_MAGIC_SPARC (0x08f2a6b6U) | #define IM_MAGIC_SPARC (0x08f2a6b6U) | |||
/* Demand style from im_generate(). See im_demand_hint(). | /* Demand style from im_generate(). See im_demand_hint(). | |||
*/ | */ | |||
typedef enum { | typedef enum { | |||
IM_SMALLTILE, | IM_SMALLTILE, | |||
IM_FATSTRIP, | IM_FATSTRIP, | |||
IM_THINSTRIP, | IM_THINSTRIP, | |||
skipping to change at line 132 | skipping to change at line 132 | |||
/* Fields from file header. | /* Fields from file header. | |||
*/ | */ | |||
int Xsize; /* image width, in pixels */ | int Xsize; /* image width, in pixels */ | |||
int Ysize; /* image height, in pixels */ | int Ysize; /* image height, in pixels */ | |||
int Bands; /* number of image bands */ | int Bands; /* number of image bands */ | |||
/*< private >*/ | /*< private >*/ | |||
/* No longer used. | /* No longer used. | |||
*/ | */ | |||
int Bbits; /* was number of bits in this format */ | int Bbits; /* was number of bits in this format */ | |||
/*< public >*/ | /*< public >*/ | |||
int BandFmt; /* #VipsBandFmt describing the pixel format | VipsBandFmt BandFmt; /* #VipsBandFmt describing the pixel format | |||
*/ | */ | |||
int Coding; /* #VipsCoding describing the pixel coding * | VipsCoding Coding; /* #VipsCoding describing the pixel coding * | |||
/ | / | |||
int Type; /* #VipsType hinting at pixel interpretation | VipsType Type; /* #VipsType hinting at pixel interpretation | |||
*/ | */ | |||
float Xres; /* horizontal pixels per millimetre */ | float Xres; /* horizontal pixels per millimetre */ | |||
float Yres; /* vertical pixels per millimetre */ | float Yres; /* vertical pixels per millimetre */ | |||
/*< private >*/ | /*< private >*/ | |||
/* No longer used. | /* No longer used. | |||
*/ | */ | |||
int Length; | int Length; | |||
short Compression; | short Compression; | |||
short Level; | short Level; | |||
/*< public >*/ | /*< public >*/ | |||
int Xoffset; /* image origin hint */ | int Xoffset; /* image origin hint */ | |||
skipping to change at line 198 | skipping to change at line 198 | |||
* for binary file read. | * for binary file read. | |||
*/ | */ | |||
int sizeof_header; | int sizeof_header; | |||
/* If this is a large disc image, don't map the whole thing, instead | /* If this is a large disc image, don't map the whole thing, instead | |||
* have a set of windows shared between the regions active on the | * have a set of windows shared between the regions active on the | |||
* image. List of im_window_t. | * image. List of im_window_t. | |||
*/ | */ | |||
GSList *windows; | GSList *windows; | |||
/* Parent/child relationships, built from args to im_demand_hint(). | /* Upstream/downstream relationships, built from args to | |||
* We use these to invalidate pixel buffers on im_invalidate(). Use | * im_demand_hint(). | |||
* 'serial' to spot circular dependencies. | ||||
* | * | |||
* Parents are later in the tree, so it's child1 + child2 -> parent, | * We use these to invalidate downstream pixel buffers on | |||
* for example. On im_invalidate(), we dispose the caches on all | * im_invalidate(). Use 'serial' to spot circular dependencies. | |||
* parents of an image. | ||||
* | * | |||
* See also hint_set below. | * See also hint_set below. | |||
*/ | */ | |||
GSList *parents; | GSList *upstream; | |||
GSList *children; | GSList *downstream; | |||
int serial; | int serial; | |||
/* Keep a list of recounted GValue strings so we can share hist | /* Keep a list of recounted GValue strings so we can share hist | |||
* efficiently. | * efficiently. | |||
*/ | */ | |||
GSList *history_list; | GSList *history_list; | |||
/* The VipsImage (if any) we should signal eval progress on. | /* The VipsImage (if any) we should signal eval progress on. | |||
*/ | */ | |||
struct _VipsImage *progress; | struct _VipsImage *progress; | |||
/* Some more callbacks. Appended to IMAGE for binary compatibility. | /* Some more callbacks. | |||
*/ | */ | |||
GSList *evalstartfns; /* list of start eval callbacks */ | GSList *evalstartfns; /* list of start eval callbacks */ | |||
GSList *preclosefns; /* list of pre-close callbacks */ | GSList *preclosefns; /* list of pre-close callbacks */ | |||
GSList *invalidatefns; /* list of invalidate callbacks */ | GSList *invalidatefns; /* list of invalidate callbacks */ | |||
/* Record the file length here. We use this to stop ourselves mappin g | /* Record the file length here. We use this to stop ourselves mappin g | |||
* things beyond the end of the file in the case that the file has | * things beyond the end of the file in the case that the file has | |||
* been truncated. | * been truncated. | |||
* | * | |||
* gint64 so that we can guarantee to work even on systems with | * gint64 so that we can guarantee to work even on systems with | |||
* strange ideas about large files. | * strange ideas about large files. | |||
*/ | */ | |||
gint64 file_length; | gint64 file_length; | |||
/* Set this when im_demand_hint_array() is called, and check in any | /* Set this when im_demand_hint_array() is called, and check in any | |||
* operation that will demand pixels from the image. | * operation that will demand pixels from the image. | |||
* | * | |||
* We use im_demand_hint_array() to build the tree of parent/child | * We use im_demand_hint_array() to build the tree of | |||
* relationships, so it's a mandatory thing. | * upstream/downstream relationships, so it's a mandatory thing. | |||
*/ | */ | |||
gboolean hint_set; | gboolean hint_set; | |||
/* Post-close callbacks happen on finalize. Eg. deleting the file | ||||
* associated with this temp image. | ||||
*/ | ||||
GSList *postclosefns; | ||||
/* Written callbacks are triggered when an image has been written to | ||||
. | ||||
* Used by eg. im_open("x.jpg", "w") to do the final write to jpeg. | ||||
*/ | ||||
GSList *writtenfns; | ||||
} VipsImage; | } VipsImage; | |||
extern const size_t im__sizeof_bandfmt[]; | extern const size_t im__sizeof_bandfmt[]; | |||
/* Pixel address calculation macros. | /* Pixel address calculation macros. | |||
*/ | */ | |||
#define IM_IMAGE_SIZEOF_ELEMENT(I) \ | #define IM_IMAGE_SIZEOF_ELEMENT(I) \ | |||
(im__sizeof_bandfmt[(I)->BandFmt]) | (im__sizeof_bandfmt[(I)->BandFmt]) | |||
#define IM_IMAGE_SIZEOF_PEL(I) \ | #define IM_IMAGE_SIZEOF_PEL(I) \ | |||
(IM_IMAGE_SIZEOF_ELEMENT(I) * (I)->Bands) | (IM_IMAGE_SIZEOF_ELEMENT(I) * (I)->Bands) | |||
skipping to change at line 286 | skipping to change at line 294 | |||
(I)->Xsize, \ | (I)->Xsize, \ | |||
(I)->Ysize ), abort(), (char *) NULL) \ | (I)->Ysize ), abort(), (char *) NULL) \ | |||
) | ) | |||
#else /*DEBUG*/ | #else /*DEBUG*/ | |||
#define IM_IMAGE_ADDR(I,X,Y) \ | #define IM_IMAGE_ADDR(I,X,Y) \ | |||
((I)->data + \ | ((I)->data + \ | |||
(Y) * IM_IMAGE_SIZEOF_LINE(I) + \ | (Y) * IM_IMAGE_SIZEOF_LINE(I) + \ | |||
(X) * IM_IMAGE_SIZEOF_PEL(I)) | (X) * IM_IMAGE_SIZEOF_PEL(I)) | |||
#endif /*DEBUG*/ | #endif /*DEBUG*/ | |||
const char *im_get_argv0( void ); | ||||
int im_init_world( const char *argv0 ); | int im_init_world( const char *argv0 ); | |||
GOptionGroup *im_get_option_group( void ); | GOptionGroup *im_get_option_group( void ); | |||
const char *im_version_string( void ); | const char *im_version_string( void ); | |||
int im_version( int flag ); | int im_version( int flag ); | |||
const char *im_guess_prefix( const char *, const char * ); | const char *im_guess_prefix( const char *argv0, const char *env_name ); | |||
const char *im_guess_libdir( const char *, const char * ); | const char *im_guess_libdir( const char *argv0, const char *env_name ); | |||
VipsImage *im_open( const char *filename, const char *mode ); | VipsImage *im_open( const char *filename, const char *mode ); | |||
#define im_open_local( IM, NAME, MODE ) \ | #define im_open_local( IM, NAME, MODE ) \ | |||
((IMAGE *) im_local( (IM), \ | ((IMAGE *) im_local( (IM), \ | |||
(im_construct_fn) im_open, (im_callback_fn) im_close, \ | (im_construct_fn) im_open, (im_callback_fn) im_close, \ | |||
(void *) (NAME), (void *) (MODE), NULL )) | (void *) (NAME), (void *) (MODE), NULL )) | |||
/* Strange double cast stops bogus warnings from gcc 4.1 | /* Strange double cast stops bogus warnings from gcc 4.1 | |||
*/ | */ | |||
End of changes. 10 change blocks. | ||||
21 lines changed or deleted | 31 lines changed or added | |||
inplace.h | inplace.h | |||
---|---|---|---|---|
skipping to change at line 51 | skipping to change at line 51 | |||
int im_smear( IMAGE *im, int ix, int iy, Rect *r ); | int im_smear( IMAGE *im, int ix, int iy, Rect *r ); | |||
int im_smudge( IMAGE *im, int ix, int iy, Rect *r ); | int im_smudge( IMAGE *im, int ix, int iy, Rect *r ); | |||
int im_paintrect( IMAGE *im, Rect *r, PEL *ink ); | int im_paintrect( IMAGE *im, Rect *r, PEL *ink ); | |||
int im_circle( IMAGE *im, int cx, int cy, int radius, int intensity ); | int im_circle( IMAGE *im, int cx, int cy, int radius, int intensity ); | |||
int im_insertplace( IMAGE *main, IMAGE *sub, int x, int y ); | int im_insertplace( IMAGE *main, IMAGE *sub, int x, int y ); | |||
int im_fastline( IMAGE *im, int x1, int y1, int x2, int y2, PEL *pel ); | int im_fastline( IMAGE *im, int x1, int y1, int x2, int y2, PEL *pel ); | |||
int im_fastlineuser( IMAGE *im, | int im_fastlineuser( IMAGE *im, | |||
int x1, int y1, int x2, int y2, | int x1, int y1, int x2, int y2, | |||
int (*fn)(), void *client1, void *client2, void *client3 ); | int (*fn)(), void *client1, void *client2, void *client3 ); | |||
int im_readpoint( IMAGE *im, int x, int y, PEL *pel ); | int im_readpoint( IMAGE *im, int x, int y, PEL *pel ); | |||
int im_flood( IMAGE *im, int x, int y, PEL *ink, Rect *dout ); | int im_flood( IMAGE *im, int x, int y, PEL *ink, Rect *dout ); | |||
int im_flood_blob( IMAGE *im, int x, int y, PEL *ink, Rect *dout ); | int im_flood_blob( IMAGE *im, int x, int y, PEL *ink, Rect *dout ); | |||
int im_flood_other( IMAGE *test, IMAGE *mark, | ||||
int x, int y, int serial, Rect *dout ); | ||||
int im_flood_copy( IMAGE *in, IMAGE *out, int x, int y, PEL *ink ); | ||||
int im_flood_blob_copy( IMAGE *in, IMAGE *out, int x, int y, PEL *ink ); | int im_flood_blob_copy( IMAGE *in, IMAGE *out, int x, int y, PEL *ink ); | |||
int im_flood_other( IMAGE *mask, IMAGE *test, int x, int y, int serial ); | int im_flood_other_copy( IMAGE *test, IMAGE *mark, IMAGE *out, | |||
int im_flood_other_copy( IMAGE *mask, IMAGE *test, IMAGE *out, | ||||
int x, int y, int serial ); | int x, int y, int serial ); | |||
int im_lineset( IMAGE *in, IMAGE *out, IMAGE *mask, IMAGE *ink, | int im_lineset( IMAGE *in, IMAGE *out, IMAGE *mask, IMAGE *ink, | |||
int n, int *x1v, int *y1v, int *x2v, int *y2v ); | int n, int *x1v, int *y1v, int *x2v, int *y2v ); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_INPLACE_H*/ | #endif /*IM_INPLACE_H*/ | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 6 lines changed or added | |||
interpolate.h | interpolate.h | |||
---|---|---|---|---|
skipping to change at line 86 | skipping to change at line 86 | |||
int (*get_window_size)( VipsInterpolate * ); | int (*get_window_size)( VipsInterpolate * ); | |||
/* Or just set this if you want a constant. | /* Or just set this if you want a constant. | |||
*/ | */ | |||
int window_size; | int window_size; | |||
/* Stencils are offset by this much. Default to window_size / 2 | /* Stencils are offset by this much. Default to window_size / 2 | |||
* (centering) if undefined. | * (centering) if undefined. | |||
*/ | */ | |||
int (*get_window_offset)( VipsInterpolate * ); | int (*get_window_offset)( VipsInterpolate * ); | |||
int window_offset; | ||||
} VipsInterpolateClass; | } VipsInterpolateClass; | |||
GType vips_interpolate_get_type( void ); | GType vips_interpolate_get_type( void ); | |||
void vips_interpolate( VipsInterpolate *interpolate, | void vips_interpolate( VipsInterpolate *interpolate, | |||
PEL *out, REGION *in, double x, double y ); | PEL *out, REGION *in, double x, double y ); | |||
VipsInterpolateMethod vips_interpolate_get_method( VipsInterpolate * ); | VipsInterpolateMethod vips_interpolate_get_method( VipsInterpolate * ); | |||
int vips_interpolate_get_window_size( VipsInterpolate *interpolate ); | int vips_interpolate_get_window_size( VipsInterpolate *interpolate ); | |||
int vips_interpolate_get_window_offset( VipsInterpolate *interpolate ); | int vips_interpolate_get_window_offset( VipsInterpolate *interpolate ); | |||
/* How many bits of precision we keep for transformations, ie. how many | /* How many bits of precision we keep for transformations, ie. how many | |||
* pre-computed matricies we have. | * pre-computed matricies we have. | |||
*/ | */ | |||
#define VIPS_TRANSFORM_SHIFT (5) | #define VIPS_TRANSFORM_SHIFT (6) | |||
#define VIPS_TRANSFORM_SCALE (1 << VIPS_TRANSFORM_SHIFT) | #define VIPS_TRANSFORM_SCALE (1 << VIPS_TRANSFORM_SHIFT) | |||
/* How many bits of precision we keep for interpolation, ie. where the deci mal | /* How many bits of precision we keep for interpolation, ie. where the deci mal | |||
* is in the fixed-point tables. For 16-bit pixels, we need 16 bits for the | * is in the fixed-point tables. For 16-bit pixels, we need 16 bits for the | |||
* data and 4 bits to add 16 values together. That leaves 12 bits for the | * data and 4 bits to add 16 values together. That leaves 12 bits for the | |||
* fractional part. | * fractional part. | |||
*/ | */ | |||
#define VIPS_INTERPOLATE_SHIFT (12) | #define VIPS_INTERPOLATE_SHIFT (12) | |||
#define VIPS_INTERPOLATE_SCALE (1 << VIPS_INTERPOLATE_SHIFT) | #define VIPS_INTERPOLATE_SCALE (1 << VIPS_INTERPOLATE_SHIFT) | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
mask.h | mask.h | |||
---|---|---|---|---|
skipping to change at line 106 | skipping to change at line 106 | |||
DOUBLEMASK *im_mattrn( DOUBLEMASK *in, const char *name ); | DOUBLEMASK *im_mattrn( DOUBLEMASK *in, const char *name ); | |||
DOUBLEMASK *im_matcat( DOUBLEMASK *in1, DOUBLEMASK *in2, const char *name ) ; | DOUBLEMASK *im_matcat( DOUBLEMASK *in1, DOUBLEMASK *in2, const char *name ) ; | |||
DOUBLEMASK *im_matmul( DOUBLEMASK *in1, DOUBLEMASK *in2, const char *name ) ; | DOUBLEMASK *im_matmul( DOUBLEMASK *in1, DOUBLEMASK *in2, const char *name ) ; | |||
DOUBLEMASK *im_lu_decomp( const DOUBLEMASK *mat, const char *name ); | DOUBLEMASK *im_lu_decomp( const DOUBLEMASK *mat, const char *name ); | |||
int im_lu_solve( const DOUBLEMASK *lu, double *vec ); | int im_lu_solve( const DOUBLEMASK *lu, double *vec ); | |||
DOUBLEMASK *im_matinv( const DOUBLEMASK *mat, const char *name ); | DOUBLEMASK *im_matinv( const DOUBLEMASK *mat, const char *name ); | |||
int im_matinv_inplace( DOUBLEMASK *mat ); | int im_matinv_inplace( DOUBLEMASK *mat ); | |||
DOUBLEMASK *im_local_dmask( struct _VipsImage *out, DOUBLEMASK *mask ); | ||||
INTMASK *im_local_imask( struct _VipsImage *out, INTMASK *mask ); | ||||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_MASK_H*/ | #endif /*IM_MASK_H*/ | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 3 lines changed or added | |||
meta.h | meta.h | |||
---|---|---|---|---|
skipping to change at line 110 | skipping to change at line 110 | |||
* | * | |||
* The #GType for an #im_blob. | * The #GType for an #im_blob. | |||
*/ | */ | |||
#define IM_TYPE_BLOB (im_blob_get_type()) | #define IM_TYPE_BLOB (im_blob_get_type()) | |||
GType im_blob_get_type( void ); | GType im_blob_get_type( void ); | |||
void *im_blob_get( const GValue *value, size_t *data_length ); | void *im_blob_get( const GValue *value, size_t *data_length ); | |||
int im_blob_set( GValue *value, im_callback_fn free_fn, | int im_blob_set( GValue *value, im_callback_fn free_fn, | |||
void *data, size_t length ); | void *data, size_t length ); | |||
int im_meta_set( IMAGE *, const char *field, GValue * ); | int im_meta_set( IMAGE *, const char *field, GValue * ); | |||
gboolean im_meta_remove( IMAGE *im, const char *field ); | ||||
int im_meta_get( IMAGE *, const char *field, GValue * ); | int im_meta_get( IMAGE *, const char *field, GValue * ); | |||
GType im_meta_get_typeof( IMAGE *im, const char *field ); | GType im_meta_get_typeof( IMAGE *im, const char *field ); | |||
int im_meta_set_int( IMAGE *, const char *field, int i ); | int im_meta_set_int( IMAGE *, const char *field, int i ); | |||
int im_meta_get_int( IMAGE *, const char *field, int *i ); | int im_meta_get_int( IMAGE *, const char *field, int *i ); | |||
int im_meta_set_double( IMAGE *, const char *field, double d ); | int im_meta_set_double( IMAGE *, const char *field, double d ); | |||
int im_meta_get_double( IMAGE *, const char *field, double *d ); | int im_meta_get_double( IMAGE *, const char *field, double *d ); | |||
int im_meta_set_area( IMAGE *, const char *field, im_callback_fn, void * ); | int im_meta_set_area( IMAGE *, const char *field, im_callback_fn, void * ); | |||
int im_meta_get_area( IMAGE *, const char *field, void **data ); | int im_meta_get_area( IMAGE *, const char *field, void **data ); | |||
int im_meta_set_string( IMAGE *, const char *field, const char *str ); | int im_meta_set_string( IMAGE *, const char *field, const char *str ); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
private.h | private.h | |||
---|---|---|---|---|
skipping to change at line 44 | skipping to change at line 44 | |||
#ifndef IM_PRIVATE_H | #ifndef IM_PRIVATE_H | |||
#define IM_PRIVATE_H | #define IM_PRIVATE_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#define IM_SPARE (8) | #define IM_SPARE (8) | |||
/* Private to iofuncs: the image size above which we switch from | /* Private to iofuncs: the minimum number of scanlines we add above and bel | |||
* mmap()-whole-image behaviour to mmap()-window, plus window margins. | ow | |||
* | * the window as a margin for slop. | |||
* Always use mmap windows, they put a lot less strain on the VM system whe | ||||
n | ||||
* we have many open images. | ||||
*/ | */ | |||
#define IM__MMAP_LIMIT (0) | #define IM__WINDOW_MARGIN_PIXELS (128) | |||
#define IM__WINDOW_MARGIN (128) | ||||
/* Private to iofuncs: add at least this many bytes above and below the win | ||||
dow. | ||||
* There's no point mapping just a few KB of a small image. | ||||
*/ | ||||
#define IM__WINDOW_MARGIN_BYTES (1024 * 1024 * 10) | ||||
/* sizeof() a VIPS header on disc. | /* sizeof() a VIPS header on disc. | |||
*/ | */ | |||
#define IM_SIZEOF_HEADER (64) | #define IM_SIZEOF_HEADER (64) | |||
typedef unsigned char PEL; /* useful datum */ | typedef unsigned char PEL; /* useful datum */ | |||
/* Types of image descriptor we may have. The type field is advisory only: it | /* Types of image descriptor we may have. The type field is advisory only: it | |||
* does not imply that any fields in IMAGE have valid data. | * does not imply that any fields in IMAGE have valid data. | |||
*/ | */ | |||
typedef enum { | typedef enum { | |||
IM_NONE, /* no type set */ | IM_NONE, /* no type set */ | |||
IM_SETBUF, /* malloced memory array */ | IM_SETBUF, /* malloced memory array */ | |||
IM_SETBUF_FOREIGN, /* memory array, don't free on close */ | IM_SETBUF_FOREIGN, /* memory array, don't free on close */ | |||
IM_OPENIN, /* input from fd */ | IM_OPENIN, /* input from fd with a window */ | |||
IM_MMAPIN, /* memory mapped input file */ | IM_MMAPIN, /* memory mapped input file */ | |||
IM_MMAPINRW, /* memory mapped read/write file */ | IM_MMAPINRW, /* memory mapped read/write file */ | |||
IM_OPENOUT, /* output to fd */ | IM_OPENOUT, /* output to fd */ | |||
IM_PARTIAL /* partial image */ | IM_PARTIAL /* partial image */ | |||
} im_desc_type; | } im_desc_type; | |||
/* What we track for each mmap window. Have a list of these on an openin | /* What we track for each mmap window. Have a list of these on an openin | |||
* IMAGE. | * IMAGE. | |||
*/ | */ | |||
typedef struct { | typedef struct { | |||
skipping to change at line 122 | skipping to change at line 123 | |||
/* What we track for each pixel buffer. | /* What we track for each pixel buffer. | |||
*/ | */ | |||
typedef struct im__buffer_t { | typedef struct im__buffer_t { | |||
int ref_count; /* # of regions referencing us */ | int ref_count; /* # of regions referencing us */ | |||
struct _VipsImage *im; /* IMAGE we are attached to */ | struct _VipsImage *im; /* IMAGE we are attached to */ | |||
Rect area; /* Area this pixel buffer covers */ | Rect area; /* Area this pixel buffer covers */ | |||
gboolean done; /* Calculated and in cache */ | gboolean done; /* Calculated and in cache */ | |||
im_buffer_cache_t *cache; | im_buffer_cache_t *cache; | |||
gboolean invalid; /* Needs to be recalculated */ | ||||
char *buf; /* Private malloc() area */ | char *buf; /* Private malloc() area */ | |||
size_t bsize; /* Size of private malloc() */ | size_t bsize; /* Size of private malloc() */ | |||
} im_buffer_t; | } im_buffer_t; | |||
void im_buffer_done( im_buffer_t *buffer ); | void im_buffer_done( im_buffer_t *buffer ); | |||
void im_buffer_undone( im_buffer_t *buffer ); | void im_buffer_undone( im_buffer_t *buffer ); | |||
void im_buffer_unref( im_buffer_t *buffer ); | void im_buffer_unref( im_buffer_t *buffer ); | |||
im_buffer_t *im_buffer_new( struct _VipsImage *im, Rect *area ); | ||||
im_buffer_t *im_buffer_ref( struct _VipsImage *im, Rect *area ); | im_buffer_t *im_buffer_ref( struct _VipsImage *im, Rect *area ); | |||
im_buffer_t *im_buffer_unref_ref( im_buffer_t *buffer, | im_buffer_t *im_buffer_unref_ref( im_buffer_t *buffer, | |||
struct _VipsImage *im, Rect *area ); | struct _VipsImage *im, Rect *area ); | |||
void im_buffer_print( im_buffer_t *buffer ); | void im_buffer_print( im_buffer_t *buffer ); | |||
/* Sections of region.h that are private to VIPS. | /* Sections of region.h that are private to VIPS. | |||
*/ | */ | |||
/* Region types. | /* Region types. | |||
*/ | */ | |||
End of changes. 5 change blocks. | ||||
10 lines changed or deleted | 12 lines changed or added | |||
region.h | region.h | |||
---|---|---|---|---|
skipping to change at line 68 | skipping to change at line 68 | |||
*/ | */ | |||
GThread *thread; | GThread *thread; | |||
/* Ref to the window we use for this region, if any. | /* Ref to the window we use for this region, if any. | |||
*/ | */ | |||
im_window_t *window; | im_window_t *window; | |||
/* Ref to the buffer we use for this region, if any. | /* Ref to the buffer we use for this region, if any. | |||
*/ | */ | |||
im_buffer_t *buffer; | im_buffer_t *buffer; | |||
/* The image this region is on has changed and caches need to be | ||||
* dropped. | ||||
*/ | ||||
gboolean invalid; | ||||
} REGION; | } REGION; | |||
REGION *im_region_create( IMAGE *im ); | REGION *im_region_create( IMAGE *im ); | |||
void im_region_free( REGION *reg ); | void im_region_free( REGION *reg ); | |||
int im_region_buffer( REGION *reg, Rect *r ); | int im_region_buffer( REGION *reg, Rect *r ); | |||
int im_region_image( REGION *reg, Rect *r ); | int im_region_image( REGION *reg, Rect *r ); | |||
int im_region_region( REGION *reg, REGION *to, Rect *r, int x, int y ); | int im_region_region( REGION *reg, REGION *to, Rect *r, int x, int y ); | |||
int im_region_equalsregion( REGION *reg1, REGION *reg2 ); | int im_region_equalsregion( REGION *reg1, REGION *reg2 ); | |||
int im_region_position( REGION *reg1, int x, int y ); | int im_region_position( REGION *reg1, int x, int y ); | |||
void im_region_paint( REGION *reg, Rect *r, int value ); | ||||
void im_region_black( REGION *reg ); | ||||
void im_region_copy( REGION *reg, REGION *dest, Rect *r, int x, int y ); | ||||
/* Macros on REGIONs. | /* Macros on REGIONs. | |||
* IM_REGION_LSKIP() add to move down line | * IM_REGION_LSKIP() add to move down line | |||
* IM_REGION_N_ELEMENTS() number of elements across region | * IM_REGION_N_ELEMENTS() number of elements across region | |||
* IM_REGION_SIZEOF_LINE() sizeof width of region | * IM_REGION_SIZEOF_LINE() sizeof width of region | |||
* IM_REGION_ADDR() address of pixel in region | * IM_REGION_ADDR() address of pixel in region | |||
*/ | */ | |||
#define IM_REGION_LSKIP(R) \ | #define IM_REGION_LSKIP(R) \ | |||
((size_t)((R)->bpl)) | ((size_t)((R)->bpl)) | |||
#define IM_REGION_N_ELEMENTS(R) \ | #define IM_REGION_N_ELEMENTS(R) \ | |||
((size_t)((R)->valid.width * (R)->im->Bands)) | ((size_t)((R)->valid.width * (R)->im->Bands)) | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 9 lines changed or added | |||
util.h | util.h | |||
---|---|---|---|---|
skipping to change at line 59 | skipping to change at line 59 | |||
#define IM_RAD( r ) (((r) / 360.0) * 2.0 * IM_PI) | #define IM_RAD( r ) (((r) / 360.0) * 2.0 * IM_PI) | |||
#define IM_DEG( a ) (((a) / (2.0 * IM_PI)) * 360.0) | #define IM_DEG( a ) (((a) / (2.0 * IM_PI)) * 360.0) | |||
#define IM_MAX(A,B) ((A)>(B)?(A):(B)) | #define IM_MAX(A,B) ((A)>(B)?(A):(B)) | |||
#define IM_MIN(A,B) ((A)<(B)?(A):(B)) | #define IM_MIN(A,B) ((A)<(B)?(A):(B)) | |||
#define IM_ABS(x) (((x) >= 0) ? (x) : -(x)) | #define IM_ABS(x) (((x) >= 0) ? (x) : -(x)) | |||
#define IM_CLIP(A,V,B) IM_MAX( (A), IM_MIN( (B), (V) ) ) | #define IM_CLIP(A,V,B) IM_MAX( (A), IM_MIN( (B), (V) ) ) | |||
#define IM_NUMBER(R) ((int)(sizeof(R)/sizeof(R[0]))) | #define IM_NUMBER(R) ((int)(sizeof(R)/sizeof(R[0]))) | |||
#define IM_FREEF( F, S ) do { \ | #define IM_FREEF( F, S ) \ | |||
G_STMT_START \ | ||||
if( S ) { \ | if( S ) { \ | |||
(void) F( (S) ); \ | (void) F( (S) ); \ | |||
(S) = 0; \ | (S) = 0; \ | |||
} \ | } \ | |||
} while( 0 ) | G_STMT_END | |||
/* Can't just use IM_FREEF(), we want the extra cast to void on the argumen t | /* Can't just use IM_FREEF(), we want the extra cast to void on the argumen t | |||
* to im_free() to make sure we can work for "const char *" variables. | * to im_free() to make sure we can work for "const char *" variables. | |||
*/ | */ | |||
#define IM_FREE( S ) do { \ | #define IM_FREE( S ) \ | |||
G_STMT_START \ | ||||
if( S ) { \ | if( S ) { \ | |||
(void) im_free( (void *) (S) ); \ | (void) im_free( (void *) (S) ); \ | |||
(S) = 0; \ | (S) = 0; \ | |||
} \ | } \ | |||
} while( 0 ) | G_STMT_END | |||
#define IM_SETSTR( S, V ) do { \ | #define IM_SETSTR( S, V ) \ | |||
G_STMT_START { \ | ||||
const char *sst = (V); \ | const char *sst = (V); \ | |||
\ | \ | |||
if( (S) != sst ) { \ | if( (S) != sst ) { \ | |||
if( !(S) || !sst || strcmp( (S), sst ) != 0 ) { \ | if( !(S) || !sst || strcmp( (S), sst ) != 0 ) { \ | |||
IM_FREE( S ); \ | IM_FREE( S ); \ | |||
if( sst ) \ | if( sst ) \ | |||
(S) = im_strdup( NULL, sst ); \ | (S) = im_strdup( NULL, sst ); \ | |||
} \ | } \ | |||
} \ | } \ | |||
} while( 0 ) | } G_STMT_END | |||
/* Duff's device. Do OPERation N times in a 16-way unrolled loop. | /* Duff's device. Do OPERation N times in a 16-way unrolled loop. | |||
*/ | */ | |||
#define IM_UNROLL( N, OPER ) { \ | #define IM_UNROLL( N, OPER ) { \ | |||
if( (N) ) { \ | if( (N) ) { \ | |||
int duff_count = ((N) + 15) / 16; \ | int duff_count = ((N) + 15) / 16; \ | |||
\ | \ | |||
switch( (N) % 16 ) { \ | switch( (N) % 16 ) { \ | |||
case 0: do { OPER; \ | case 0: do { OPER; \ | |||
case 15: OPER; \ | case 15: OPER; \ | |||
skipping to change at line 116 | skipping to change at line 119 | |||
case 5: OPER; \ | case 5: OPER; \ | |||
case 4: OPER; \ | case 4: OPER; \ | |||
case 3: OPER; \ | case 3: OPER; \ | |||
case 2: OPER; \ | case 2: OPER; \ | |||
case 1: OPER; \ | case 1: OPER; \ | |||
} while( --duff_count > 0 ); \ | } while( --duff_count > 0 ); \ | |||
} \ | } \ | |||
} \ | } \ | |||
} | } | |||
/* Round a float to the nearest integer. This should give an identical resu | /* Round a float to the nearest integer. Much faster than rint(). | |||
lt | ||||
* to the math.h rint() function (and the old SunOS nint() function), but b | ||||
e | ||||
* much faster. Beware: it evaluates its argument more than once, so don't | ||||
use | ||||
* ++! | ||||
*/ | */ | |||
#define IM_RINT( R ) ((int)((R)>0?((R)+0.5):((R)-0.5))) | #define IM_RINT( R ) ((int)((R)>0?((R)+0.5):((R)-0.5))) | |||
/* Various integer range clips. Record over/under flows. | /* Various integer range clips. Record over/under flows. | |||
*/ | */ | |||
#define IM_CLIP_UCHAR( V, SEQ ) { \ | #define IM_CLIP_UCHAR( V, SEQ ) { \ | |||
if( (V) < 0 ) { \ | if( (V) < 0 ) { \ | |||
(SEQ)->underflow++; \ | (SEQ)->underflow++; \ | |||
(V) = 0; \ | (V) = 0; \ | |||
} \ | } \ | |||
skipping to change at line 231 | skipping to change at line 231 | |||
const char *im_skip_dir( const char *filename ); | const char *im_skip_dir( const char *filename ); | |||
void im_filename_split( const char *path, char *name, char *mode ); | void im_filename_split( const char *path, char *name, char *mode ); | |||
void im_filename_suffix( const char *path, char *suffix ); | void im_filename_suffix( const char *path, char *suffix ); | |||
int im_filename_suffix_match( const char *path, const char *suffixes[] ); | int im_filename_suffix_match( const char *path, const char *suffixes[] ); | |||
char *im_getnextoption( char **in ); | char *im_getnextoption( char **in ); | |||
char *im_getsuboption( const char *buf ); | char *im_getsuboption( const char *buf ); | |||
gint64 im_file_length( int fd ); | gint64 im_file_length( int fd ); | |||
int im__write( int fd, const void *buf, size_t count ); | int im__write( int fd, const void *buf, size_t count ); | |||
FILE *im__file_open_read( const char *filename ); | FILE *im__file_open_read( const char *filename, const char *fallback_dir ); | |||
FILE *im__file_open_write( const char *filename ); | FILE *im__file_open_write( const char *filename ); | |||
char *im__file_read( FILE *fp, const char *name, unsigned int *length_out ) ; | char *im__file_read( FILE *fp, const char *name, unsigned int *length_out ) ; | |||
char *im__file_read_name( const char *name, unsigned int *length_out ); | char *im__file_read_name( const char *name, const char *fallback_dir, | |||
unsigned int *length_out ); | ||||
int im__file_write( void *data, size_t size, size_t nmemb, FILE *stream ); | int im__file_write( void *data, size_t size, size_t nmemb, FILE *stream ); | |||
typedef enum { | typedef enum { | |||
VIPS_TOKEN_LEFT = 1, /* ({[ */ | VIPS_TOKEN_LEFT = 1, /* ({[ */ | |||
VIPS_TOKEN_RIGHT, /* ]}) */ | VIPS_TOKEN_RIGHT, /* ]}) */ | |||
VIPS_TOKEN_STRING, /* string or "str\"ing" */ | VIPS_TOKEN_STRING, /* string or "str\"ing" */ | |||
VIPS_TOKEN_EQUALS, /* = */ | VIPS_TOKEN_EQUALS, /* = */ | |||
VIPS_TOKEN_COMMA /* , */ | VIPS_TOKEN_COMMA /* , */ | |||
} VipsToken; | } VipsToken; | |||
const char *vips__token_get( const char *buffer, | const char *vips__token_get( const char *buffer, | |||
VipsToken *token, char *string, int size ); | VipsToken *token, char *string, int size ); | |||
const char *vips__token_must( const char *buffer, VipsToken *token, | const char *vips__token_must( const char *buffer, VipsToken *token, | |||
char *string, int size ); | char *string, int size ); | |||
const char *vips__token_need( const char *buffer, VipsToken need_token, | const char *vips__token_need( const char *buffer, VipsToken need_token, | |||
char *string, int size ); | char *string, int size ); | |||
int im_existsf( const char *name, ... ) | int im_existsf( const char *name, ... ) | |||
__attribute__((format(printf, 1, 2))); | __attribute__((format(printf, 1, 2))); | |||
FILE *im_popenf( const char *fmt, const char *mode, ... ) | ||||
__attribute__((format(printf, 1, 3))); | ||||
int im_ispoweroftwo( int p ); | int im_ispoweroftwo( int p ); | |||
int im_isvips( const char *filename ); | int im_isvips( const char *filename ); | |||
int im_amiMSBfirst( void ); | int im_amiMSBfirst( void ); | |||
IMAGE *im__open_temp( void ); | char *im__temp_name( const char *format ); | |||
IMAGE *im__open_temp( const char *format ); | ||||
int im_bits_of_fmt( VipsBandFmt fmt ); | int im_bits_of_fmt( VipsBandFmt fmt ); | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#endif /*IM_UTIL_H*/ | #endif /*IM_UTIL_H*/ | |||
End of changes. 11 change blocks. | ||||
16 lines changed or deleted | 17 lines changed or added | |||
version.h | version.h | |||
---|---|---|---|---|
/* Macros for the header version. | /* Macros for the header version. | |||
*/ | */ | |||
#ifndef IM_VERSION_H | #ifndef IM_VERSION_H | |||
#define IM_VERSION_H | #define IM_VERSION_H | |||
#define IM_VERSION "7.20.7" | #define IM_VERSION "7.22.0" | |||
#define IM_VERSION_STRING "7.20.7-Tue Jan 21 00:49:39 MSK 2014" | #define IM_VERSION_STRING "7.22.0-Tue Jan 21 00:47:39 MSK 2014" | |||
#define IM_MAJOR_VERSION (7) | #define IM_MAJOR_VERSION (7) | |||
#define IM_MINOR_VERSION (20) | #define IM_MINOR_VERSION (22) | |||
#define IM_MICRO_VERSION (7) | #define IM_MICRO_VERSION (0) | |||
#define IM_INTERFACE_AGE (@IM_INTERFACE_AGE@) | #define IM_INTERFACE_AGE (@IM_INTERFACE_AGE@) | |||
#define IM_BINARY_AGE (@IM_BINARY_AGE@) | #define IM_BINARY_AGE (@IM_BINARY_AGE@) | |||
#endif /*IM_VERSION_H*/ | #endif /*IM_VERSION_H*/ | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
vips.h | vips.h | |||
---|---|---|---|---|
skipping to change at line 85 | skipping to change at line 85 | |||
*/ | */ | |||
#ifndef IM_VIPS_H | #ifndef IM_VIPS_H | |||
#define IM_VIPS_H | #define IM_VIPS_H | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
extern "C" { | extern "C" { | |||
#endif /*__cplusplus*/ | #endif /*__cplusplus*/ | |||
#include <glib.h> | #include <glib.h> | |||
#include <glib/gstdio.h> | ||||
#include <gmodule.h> | #include <gmodule.h> | |||
#include <glib-object.h> | #include <glib-object.h> | |||
/* If we're being parsed by SWIG, remove gcc attributes. | /* If we're being parsed by SWIG, remove gcc attributes. | |||
*/ | */ | |||
#ifdef SWIG | #ifdef SWIG | |||
# ifndef __attribute__ | # ifndef __attribute__ | |||
# define __attribute__(x) /*NOTHING*/ | # define __attribute__(x) /*NOTHING*/ | |||
# endif | # endif | |||
#endif /*SWIG*/ | #endif /*SWIG*/ | |||
skipping to change at line 118 | skipping to change at line 119 | |||
#include <vips/callback.h> | #include <vips/callback.h> | |||
#include <vips/error.h> | #include <vips/error.h> | |||
#include <vips/util.h> | #include <vips/util.h> | |||
#include <vips/format.h> | #include <vips/format.h> | |||
#include <vips/dispatch.h> | #include <vips/dispatch.h> | |||
#include <vips/region.h> | #include <vips/region.h> | |||
#include <vips/generate.h> | #include <vips/generate.h> | |||
#include <vips/check.h> | #include <vips/check.h> | |||
#include <vips/interpolate.h> | #include <vips/interpolate.h> | |||
#include <vips/semaphore.h> | #include <vips/semaphore.h> | |||
#include <vips/threadgroup.h> | #include <vips/threadpool.h> | |||
#include <vips/meta.h> | #include <vips/meta.h> | |||
#include <vips/header.h> | #include <vips/header.h> | |||
#include <vips/arithmetic.h> | #include <vips/arithmetic.h> | |||
#include <vips/boolean.h> | #include <vips/boolean.h> | |||
#include <vips/relational.h> | #include <vips/relational.h> | |||
#include <vips/conversion.h> | #include <vips/conversion.h> | |||
#include <vips/convolution.h> | #include <vips/convolution.h> | |||
#include <vips/morphology.h> | #include <vips/morphology.h> | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
vipsc++.h | vipsc++.h | |||
---|---|---|---|---|
// headers for package arithmetic | // headers for package arithmetic | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage abs() throw( VError ); | VImage abs() throw( VError ); | |||
VImage acos() throw( VError ); | VImage acos() throw( VError ); | |||
VImage add( VImage ) throw( VError ); | VImage add( VImage ) throw( VError ); | |||
VImage asin() throw( VError ); | VImage asin() throw( VError ); | |||
VImage atan() throw( VError ); | VImage atan() throw( VError ); | |||
double avg() throw( VError ); | double avg() throw( VError ); | |||
double point_bilinear( double, double, int ) throw( VError ); | double point_bilinear( double, double, int ) throw( VError ); | |||
VImage bandmean() throw( VError ); | VImage bandmean() throw( VError ); | |||
VImage ceil() throw( VError ); | VImage ceil() throw( VError ); | |||
VImage cmulnorm( VImage ) throw( VError ); | ||||
VImage cos() throw( VError ); | VImage cos() throw( VError ); | |||
VImage cross_phase( VImage ) throw( VError ); | VImage cross_phase( VImage ) throw( VError ); | |||
double deviate() throw( VError ); | double deviate() throw( VError ); | |||
VImage divide( VImage ) throw( VError ); | VImage divide( VImage ) throw( VError ); | |||
VImage exp10() throw( VError ); | VImage exp10() throw( VError ); | |||
VImage expn( double ) throw( VError ); | VImage expn( double ) throw( VError ); | |||
VImage expn( std::vector<double> ) throw( VError ); | VImage expn( std::vector<double> ) throw( VError ); | |||
VImage exp() throw( VError ); | VImage exp() throw( VError ); | |||
VImage fav4( VImage, VImage, VImage ) throw( VError ); | ||||
VImage floor() throw( VError ); | VImage floor() throw( VError ); | |||
VImage gadd( double, double, VImage, double ) throw( VError ); | ||||
VImage invert() throw( VError ); | VImage invert() throw( VError ); | |||
VImage lin( double, double ) throw( VError ); | VImage lin( double, double ) throw( VError ); | |||
static VImage linreg( std::vector<VImage>, std::vector<double> ) throw( VEr ror ); | static VImage linreg( std::vector<VImage>, std::vector<double> ) throw( VEr ror ); | |||
VImage lin( std::vector<double>, std::vector<double> ) throw( VError ); | VImage lin( std::vector<double>, std::vector<double> ) throw( VError ); | |||
VImage litecor( VImage, int, double ) throw( VError ); | ||||
VImage log10() throw( VError ); | VImage log10() throw( VError ); | |||
VImage log() throw( VError ); | VImage log() throw( VError ); | |||
double max() throw( VError ); | double max() throw( VError ); | |||
std::complex<double> maxpos() throw( VError ); | std::complex<double> maxpos() throw( VError ); | |||
double maxpos_avg( double&, double& ) throw( VError ); | double maxpos_avg( double&, double& ) throw( VError ); | |||
VDMask measure( int, int, int, int, int, int ) throw( VError ); | VDMask measure( int, int, int, int, int, int ) throw( VError ); | |||
double min() throw( VError ); | double min() throw( VError ); | |||
std::complex<double> minpos() throw( VError ); | std::complex<double> minpos() throw( VError ); | |||
VImage multiply( VImage ) throw( VError ); | VImage multiply( VImage ) throw( VError ); | |||
VImage pow( double ) throw( VError ); | VImage pow( double ) throw( VError ); | |||
VImage pow( std::vector<double> ) throw( VError ); | VImage pow( std::vector<double> ) throw( VError ); | |||
VImage recomb( VDMask ) throw( VError ); | ||||
VImage remainder( VImage ) throw( VError ); | VImage remainder( VImage ) throw( VError ); | |||
VImage remainder( double ) throw( VError ); | VImage remainder( double ) throw( VError ); | |||
VImage remainder( std::vector<double> ) throw( VError ); | VImage remainder( std::vector<double> ) throw( VError ); | |||
VImage rint() throw( VError ); | VImage rint() throw( VError ); | |||
VImage sign() throw( VError ); | VImage sign() throw( VError ); | |||
VImage sin() throw( VError ); | VImage sin() throw( VError ); | |||
VDMask stats() throw( VError ); | VDMask stats() throw( VError ); | |||
VImage subtract( VImage ) throw( VError ); | VImage subtract( VImage ) throw( VError ); | |||
VImage tan() throw( VError ); | VImage tan() throw( VError ); | |||
// headers for package boolean | // headers for package boolean | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage andimage( VImage ) throw( VError ); | VImage andimage( VImage ) throw( VError ); | |||
VImage andimage( int ) throw( VError ); | VImage andimage( int ) throw( VError ); | |||
VImage andimage( std::vector<double> ) throw( VError ); | VImage andimage( std::vector<double> ) throw( VError ); | |||
VImage orimage( VImage ) throw( VError ); | VImage orimage( VImage ) throw( VError ); | |||
VImage orimage( int ) throw( VError ); | VImage orimage( int ) throw( VError ); | |||
VImage orimage( std::vector<double> ) throw( VError ); | VImage orimage( std::vector<double> ) throw( VError ); | |||
VImage eorimage( VImage ) throw( VError ); | VImage eorimage( VImage ) throw( VError ); | |||
VImage eorimage( int ) throw( VError ); | VImage eorimage( int ) throw( VError ); | |||
VImage eorimage( std::vector<double> ) throw( VError ); | VImage eorimage( std::vector<double> ) throw( VError ); | |||
VImage shiftleft( std::vector<double> ) throw( VError ); | ||||
VImage shiftleft( int ) throw( VError ); | VImage shiftleft( int ) throw( VError ); | |||
VImage shiftright( std::vector<double> ) throw( VError ); | ||||
VImage shiftright( int ) throw( VError ); | VImage shiftright( int ) throw( VError ); | |||
// headers for package cimg | // headers for package cimg | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage greyc( int, double, double, double, double, double, double, double, double, int, int ) throw( VError ); | VImage greyc( int, double, double, double, double, double, double, double, double, int, int ) throw( VError ); | |||
VImage greyc_mask( VImage, int, double, double, double, double, double, dou ble, double, double, int, int ) throw( VError ); | VImage greyc_mask( VImage, int, double, double, double, double, double, dou ble, double, double, int, int ) throw( VError ); | |||
// headers for package colour | // headers for package colour | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage LCh2Lab() throw( VError ); | VImage LCh2Lab() throw( VError ); | |||
VImage LCh2UCS() throw( VError ); | VImage LCh2UCS() throw( VError ); | |||
VImage Lab2LCh() throw( VError ); | VImage Lab2LCh() throw( VError ); | |||
VImage Lab2LabQ() throw( VError ); | VImage Lab2LabQ() throw( VError ); | |||
VImage Lab2LabS() throw( VError ); | VImage Lab2LabS() throw( VError ); | |||
VImage Lab2UCS() throw( VError ); | VImage Lab2UCS() throw( VError ); | |||
VImage Lab2XYZ() throw( VError ); | VImage Lab2XYZ() throw( VError ); | |||
VImage Lab2XYZ_temp( double, double, double ) throw( VError ); | VImage Lab2XYZ_temp( double, double, double ) throw( VError ); | |||
VImage Lab2disp( VDisplay ) throw( VError ); | VImage Lab2disp( VDisplay ) throw( VError ); | |||
VImage LabQ2LabS() throw( VError ); | VImage LabQ2LabS() throw( VError ); | |||
skipping to change at line 110 | skipping to change at line 111 | |||
VImage dE00_fromLab( VImage ) throw( VError ); | VImage dE00_fromLab( VImage ) throw( VError ); | |||
VImage dECMC_fromLab( VImage ) throw( VError ); | VImage dECMC_fromLab( VImage ) throw( VError ); | |||
VImage dECMC_fromdisp( VImage, VDisplay ) throw( VError ); | VImage dECMC_fromdisp( VImage, VDisplay ) throw( VError ); | |||
VImage dE_fromLab( VImage ) throw( VError ); | VImage dE_fromLab( VImage ) throw( VError ); | |||
VImage dE_fromXYZ( VImage ) throw( VError ); | VImage dE_fromXYZ( VImage ) throw( VError ); | |||
VImage dE_fromdisp( VImage, VDisplay ) throw( VError ); | VImage dE_fromdisp( VImage, VDisplay ) throw( VError ); | |||
VImage disp2Lab( VDisplay ) throw( VError ); | VImage disp2Lab( VDisplay ) throw( VError ); | |||
VImage disp2XYZ( VDisplay ) throw( VError ); | VImage disp2XYZ( VDisplay ) throw( VError ); | |||
VImage float2rad() throw( VError ); | VImage float2rad() throw( VError ); | |||
VImage icc_ac2rc( char* ) throw( VError ); | VImage icc_ac2rc( char* ) throw( VError ); | |||
VImage icc_export( char*, int ) throw( VError ); | ||||
VImage icc_export_depth( int, char*, int ) throw( VError ); | VImage icc_export_depth( int, char*, int ) throw( VError ); | |||
VImage icc_import( char*, int ) throw( VError ); | VImage icc_import( char*, int ) throw( VError ); | |||
VImage icc_import_embedded( int ) throw( VError ); | VImage icc_import_embedded( int ) throw( VError ); | |||
VImage icc_transform( char*, char*, int ) throw( VError ); | VImage icc_transform( char*, char*, int ) throw( VError ); | |||
VImage lab_morph( VDMask, double, double, double, double ) throw( VError ); | VImage lab_morph( VDMask, double, double, double, double ) throw( VError ); | |||
VImage rad2float() throw( VError ); | VImage rad2float() throw( VError ); | |||
VImage sRGB2XYZ() throw( VError ); | VImage sRGB2XYZ() throw( VError ); | |||
// headers for package conversion | // headers for package conversion | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage addgnoise( double ) throw( VError ); | ||||
static VImage gaussnoise( int, int, double, double ) throw( VError ); | ||||
VImage bandjoin( VImage ) throw( VError ); | VImage bandjoin( VImage ) throw( VError ); | |||
static VImage black( int, int, int ) throw( VError ); | static VImage black( int, int, int ) throw( VError ); | |||
VImage c2amph() throw( VError ); | VImage c2amph() throw( VError ); | |||
VImage c2imag() throw( VError ); | VImage c2imag() throw( VError ); | |||
VImage c2ps() throw( VError ); | VImage c2ps() throw( VError ); | |||
VImage c2real() throw( VError ); | VImage c2real() throw( VError ); | |||
VImage c2rect() throw( VError ); | VImage c2rect() throw( VError ); | |||
VImage clip() throw( VError ); | VImage clip2c() throw( VError ); | |||
VImage clip2cm() throw( VError ); | ||||
VImage clip2d() throw( VError ); | ||||
VImage clip2dcm() throw( VError ); | ||||
VImage clip2f() throw( VError ); | ||||
VImage clip2fmt( int ) throw( VError ); | VImage clip2fmt( int ) throw( VError ); | |||
VImage clip2i() throw( VError ); | ||||
VImage clip2s() throw( VError ); | ||||
VImage clip2ui() throw( VError ); | ||||
VImage clip2us() throw( VError ); | ||||
VImage clip() throw( VError ); | ||||
VImage copy() throw( VError ); | VImage copy() throw( VError ); | |||
VImage copy_file() throw( VError ); | ||||
VImage copy_morph( int, int, int ) throw( VError ); | VImage copy_morph( int, int, int ) throw( VError ); | |||
VImage copy_swap() throw( VError ); | VImage copy_swap() throw( VError ); | |||
VImage copy_( int, double, double, int, int ) throw( VError ); | VImage copy_set( int, double, double, int, int ) throw( VError ); | |||
VImage extract_area( int, int, int, int ) throw( VError ); | VImage extract_area( int, int, int, int ) throw( VError ); | |||
VImage extract_areabands( int, int, int, int, int, int ) throw( VError ); | VImage extract_areabands( int, int, int, int, int, int ) throw( VError ); | |||
VImage extract_band( int ) throw( VError ); | VImage extract_band( int ) throw( VError ); | |||
VImage extract_bands( int, int ) throw( VError ); | VImage extract_bands( int, int ) throw( VError ); | |||
VImage extract( int, int, int, int, int ) throw( VError ); | VImage extract( int, int, int, int, int ) throw( VError ); | |||
VImage falsecolour() throw( VError ); | VImage falsecolour() throw( VError ); | |||
VImage fliphor() throw( VError ); | VImage fliphor() throw( VError ); | |||
VImage flipver() throw( VError ); | VImage flipver() throw( VError ); | |||
static VImage gbandjoin( std::vector<VImage> ) throw( VError ); | static VImage gbandjoin( std::vector<VImage> ) throw( VError ); | |||
VImage grid( int, int, int ) throw( VError ); | VImage grid( int, int, int ) throw( VError ); | |||
VImage insert( VImage, int, int ) throw( VError ); | VImage insert( VImage, int, int ) throw( VError ); | |||
VImage insert( VImage, std::vector<int>, std::vector<int> ) throw( VError ) ; | ||||
VImage insert_noexpand( VImage, int, int ) throw( VError ); | VImage insert_noexpand( VImage, int, int ) throw( VError ); | |||
VImage embed( int, int, int, int, int ) throw( VError ); | ||||
VImage lrjoin( VImage ) throw( VError ); | VImage lrjoin( VImage ) throw( VError ); | |||
static VImage mask2vips( VDMask ) throw( VError ); | static VImage mask2vips( VDMask ) throw( VError ); | |||
VImage msb() throw( VError ); | VImage msb() throw( VError ); | |||
VImage msb_band( int ) throw( VError ); | VImage msb_band( int ) throw( VError ); | |||
VImage recomb( VDMask ) throw( VError ); | ||||
VImage replicate( int, int ) throw( VError ); | VImage replicate( int, int ) throw( VError ); | |||
VImage ri2c( VImage ) throw( VError ); | VImage ri2c( VImage ) throw( VError ); | |||
VImage rot180() throw( VError ); | VImage rot180() throw( VError ); | |||
VImage rot270() throw( VError ); | VImage rot270() throw( VError ); | |||
VImage rot90() throw( VError ); | VImage rot90() throw( VError ); | |||
VImage scale() throw( VError ); | VImage scale() throw( VError ); | |||
VImage scaleps() throw( VError ); | VImage scaleps() throw( VError ); | |||
VImage rightshift_size( int, int, int ) throw( VError ); | ||||
VImage slice( double, double ) throw( VError ); | ||||
VImage subsample( int, int ) throw( VError ); | VImage subsample( int, int ) throw( VError ); | |||
char* system( char* ) throw( VError ); | char* system( char* ) throw( VError ); | |||
VImage tbjoin( VImage ) throw( VError ); | VImage tbjoin( VImage ) throw( VError ); | |||
static VImage text( char*, char*, int, int, int ) throw( VError ); | static VImage text( char*, char*, int, int, int ) throw( VError ); | |||
VImage thresh( double ) throw( VError ); | ||||
VDMask vips2mask() throw( VError ); | VDMask vips2mask() throw( VError ); | |||
VImage wrap( int, int ) throw( VError ); | VImage wrap( int, int ) throw( VError ); | |||
VImage zoom( int, int ) throw( VError ); | VImage zoom( int, int ) throw( VError ); | |||
// headers for package convolution | // headers for package convolution | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage addgnoise( double ) throw( VError ); | ||||
VImage compass( VIMask ) throw( VError ); | VImage compass( VIMask ) throw( VError ); | |||
VImage contrast_surface( int, int ) throw( VError ); | VImage contrast_surface( int, int ) throw( VError ); | |||
VImage contrast_surface_raw( int, int ) throw( VError ); | ||||
VImage conv( VIMask ) throw( VError ); | VImage conv( VIMask ) throw( VError ); | |||
VImage conv( VDMask ) throw( VError ); | VImage conv_raw( VIMask ) throw( VError ); | |||
VImage convf( VDMask ) throw( VError ); | ||||
VImage convf_raw( VDMask ) throw( VError ); | ||||
VImage convsep( VIMask ) throw( VError ); | VImage convsep( VIMask ) throw( VError ); | |||
VImage convsep( VDMask ) throw( VError ); | VImage convsep_raw( VIMask ) throw( VError ); | |||
VImage convsepf( VDMask ) throw( VError ); | ||||
VImage convsepf_raw( VDMask ) throw( VError ); | ||||
VImage convsub( VIMask, int, int ) throw( VError ); | ||||
VImage embed( int, int, int, int, int ) throw( VError ); | ||||
VImage fastcor( VImage ) throw( VError ); | VImage fastcor( VImage ) throw( VError ); | |||
VImage gradcor( VImage ) throw( VError ); | VImage fastcor_raw( VImage ) throw( VError ); | |||
VImage gradient( VIMask ) throw( VError ); | static VImage gaussnoise( int, int, double, double ) throw( VError ); | |||
VImage grad_x() throw( VError ); | VImage grad_x() throw( VError ); | |||
VImage grad_y() throw( VError ); | VImage grad_y() throw( VError ); | |||
VImage gradcor( VImage ) throw( VError ); | ||||
VImage gradcor_raw( VImage ) throw( VError ); | ||||
VImage gradient( VIMask ) throw( VError ); | ||||
static VImage rank_image( std::vector<VImage>, int ) throw( VError ); | ||||
VImage lindetect( VIMask ) throw( VError ); | VImage lindetect( VIMask ) throw( VError ); | |||
static VImage maxvalue( std::vector<VImage> ) throw( VError ); | ||||
int mpercent( double ) throw( VError ); | ||||
VImage phasecor_fft( VImage ) throw( VError ); | ||||
VImage rank( int, int, int ) throw( VError ); | ||||
VImage rank_raw( int, int, int ) throw( VError ); | ||||
VImage resize_linear( int, int ) throw( VError ); | ||||
VImage sharpen( int, double, double, double, double, double ) throw( VError ); | VImage sharpen( int, double, double, double, double, double ) throw( VError ); | |||
VImage shrink( double, double ) throw( VError ); | ||||
VImage spcor( VImage ) throw( VError ); | VImage spcor( VImage ) throw( VError ); | |||
// headers for package deprecated | ||||
// this file automatically generated from | ||||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | ||||
VImage resize_linear( int, int ) throw( VError ); | ||||
VImage cmulnorm( VImage ) throw( VError ); | ||||
VImage fav4( VImage, VImage, VImage ) throw( VError ); | ||||
VImage gadd( double, double, VImage, double ) throw( VError ); | ||||
VImage icc_export( char*, int ) throw( VError ); | ||||
VImage litecor( VImage, int, double ) throw( VError ); | ||||
VImage affine( double, double, double, double, double, double, int, int, in | ||||
t, int ) 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, int, int ) throw( VError ); | ||||
VImage convf( VDMask ) throw( VError ); | ||||
VImage convsepf( VDMask ) throw( VError ); | ||||
VImage clip2s() throw( VError ); | ||||
VImage clip2ui() throw( VError ); | ||||
VImage insertplace( VImage, std::vector<int>, std::vector<int> ) throw( VEr | ||||
ror ); | ||||
VImage clip2us() throw( VError ); | ||||
VImage slice( double, double ) throw( VError ); | ||||
VImage segment( int& ) throw( VError ); | ||||
void line( int, int, int, int, int ) throw( VError ); | ||||
VImage thresh( double ) throw( VError ); | ||||
VImage convf_raw( VDMask ) throw( VError ); | ||||
VImage conv_raw( VIMask ) throw( VError ); | ||||
VImage contrast_surface_raw( int, int ) throw( VError ); | ||||
VImage convsepf_raw( VDMask ) throw( VError ); | ||||
VImage convsep_raw( VIMask ) throw( VError ); | ||||
VImage fastcor_raw( VImage ) throw( VError ); | ||||
VImage gradcor_raw( VImage ) throw( VError ); | ||||
VImage spcor_raw( VImage ) throw( VError ); | VImage spcor_raw( VImage ) throw( VError ); | |||
VImage lhisteq_raw( int, int ) throw( VError ); | VImage stretch3( double, double ) throw( VError ); | |||
VImage stdif_raw( double, double, double, double, int, int ) throw( VError | VImage zerox( int ) throw( VError ); | |||
); | ||||
VImage rank_raw( int, int, int ) throw( VError ); | ||||
VImage dilate_raw( VIMask ) throw( VError ); | ||||
VImage erode_raw( VIMask ) throw( VError ); | ||||
VImage similarity_area( double, double, double, double, int, int, int, int | ||||
) throw( VError ); | ||||
VImage similarity( double, double, double, double ) throw( VError ); | ||||
// headers for package format | // headers for package format | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
static VImage csv2vips( char* ) throw( VError ); | static VImage csv2vips( char* ) throw( VError ); | |||
static VImage jpeg2vips( char* ) throw( VError ); | static VImage jpeg2vips( char* ) throw( VError ); | |||
static VImage magick2vips( char* ) throw( VError ); | static VImage magick2vips( char* ) throw( VError ); | |||
static VImage png2vips( char* ) throw( VError ); | static VImage png2vips( char* ) throw( VError ); | |||
static VImage exr2vips( char* ) throw( VError ); | static VImage exr2vips( char* ) throw( VError ); | |||
static VImage ppm2vips( char* ) throw( VError ); | static VImage ppm2vips( char* ) throw( VError ); | |||
static VImage analyze2vips( char* ) throw( VError ); | static VImage analyze2vips( char* ) throw( VError ); | |||
static VImage tiff2vips( char* ) throw( VError ); | static VImage tiff2vips( char* ) throw( VError ); | |||
void vips2csv( char* ) throw( VError ); | void vips2csv( char* ) throw( VError ); | |||
void vips2jpeg( char* ) throw( VError ); | void vips2jpeg( char* ) throw( VError ); | |||
void vips2mimejpeg( int ) throw( VError ); | void vips2mimejpeg( int ) throw( VError ); | |||
void vips2png( char* ) throw( VError ); | void vips2png( char* ) throw( VError ); | |||
void vips2ppm( char* ) throw( VError ); | void vips2ppm( char* ) throw( VError ); | |||
void vips2tiff( char* ) throw( VError ); | void vips2tiff( char* ) throw( VError ); | |||
// headers for package freq_filt | // headers for package freq_filt | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
static VImage create_fmask( int, int, int, double, double, double, double, double ) throw( VError ); | static VImage create_fmask( int, int, int, double, double, double, double, double ) throw( VError ); | |||
VImage disp_ps() throw( VError ); | VImage disp_ps() throw( VError ); | |||
VImage flt_image_freq( int, double, double, double, double, double ) throw( VError ); | VImage flt_image_freq( int, double, double, double, double, double ) throw( VError ); | |||
static VImage fractsurf( int, double ) throw( VError ); | static VImage fractsurf( int, double ) throw( VError ); | |||
VImage freqflt( VImage ) throw( VError ); | VImage freqflt( VImage ) throw( VError ); | |||
VImage fwfft() throw( VError ); | VImage fwfft() throw( VError ); | |||
VImage rotquad() throw( VError ); | VImage rotquad() throw( VError ); | |||
VImage invfft() throw( VError ); | VImage invfft() throw( VError ); | |||
VImage phasecor_fft( VImage ) throw( VError ); | ||||
VImage invfftr() throw( VError ); | VImage invfftr() throw( VError ); | |||
// headers for package histograms_lut | // headers for package histograms_lut | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage gammacorrect( double ) throw( VError ); | VImage gammacorrect( double ) throw( VError ); | |||
VImage heq( int ) throw( VError ); | VImage heq( int ) throw( VError ); | |||
VImage hist( int ) throw( VError ); | VImage hist( int ) throw( VError ); | |||
VImage histcum() throw( VError ); | VImage histcum() throw( VError ); | |||
VImage histeq() throw( VError ); | VImage histeq() throw( VError ); | |||
VImage hist_indexed( VImage ) throw( VError ); | ||||
VImage histgr( int ) throw( VError ); | VImage histgr( int ) throw( VError ); | |||
VImage histnD( int ) throw( VError ); | VImage histnD( int ) throw( VError ); | |||
VImage histnorm() throw( VError ); | VImage histnorm() throw( VError ); | |||
VImage histplot() throw( VError ); | VImage histplot() throw( VError ); | |||
VImage histspec( VImage ) throw( VError ); | VImage histspec( VImage ) throw( VError ); | |||
VImage hsp( VImage ) throw( VError ); | VImage hsp( VImage ) throw( VError ); | |||
static VImage identity( int ) throw( VError ); | static VImage identity( int ) throw( VError ); | |||
static VImage identity_ushort( int, int ) throw( VError ); | static VImage identity_ushort( int, int ) throw( VError ); | |||
int ismonotonic() throw( VError ); | int ismonotonic() throw( VError ); | |||
VImage lhisteq( int, int ) throw( VError ); | VImage lhisteq( int, int ) throw( VError ); | |||
int mpercent( double ) throw( VError ); | VImage lhisteq_raw( int, int ) throw( VError ); | |||
static VImage invertlut( VDMask, int ) throw( VError ); | static VImage invertlut( VDMask, int ) throw( VError ); | |||
static VImage buildlut( VDMask ) throw( VError ); | static VImage buildlut( VDMask ) throw( VError ); | |||
VImage maplut( VImage ) throw( VError ); | VImage maplut( VImage ) throw( VError ); | |||
VImage project( VImage& ) throw( VError ); | VImage project( VImage& ) throw( VError ); | |||
VImage stdif( double, double, double, double, int, int ) throw( VError ); | VImage stdif( double, double, double, double, int, int ) throw( VError ); | |||
VImage stdif_raw( double, double, double, double, int, int ) throw( VError ); | ||||
VImage tone_analyse( double, double, double, double, double, double ) throw ( VError ); | VImage tone_analyse( double, double, double, double, double, double ) throw ( VError ); | |||
static VImage tone_build( double, double, double, double, double, double, d ouble, double ) throw( VError ); | static VImage tone_build( double, double, double, double, double, double, d ouble, double ) throw( VError ); | |||
static VImage tone_build_range( int, int, double, double, double, double, d ouble, double, double, double ) throw( VError ); | static VImage tone_build_range( int, int, double, double, double, double, d ouble, double, double, double ) throw( VError ); | |||
VImage tone_map( VImage ) throw( VError ); | VImage tone_map( VImage ) throw( VError ); | |||
// headers for package inplace | // headers for package inplace | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
void circle( int, int, int, int ) throw( VError ); | void circle( int, int, int, int ) throw( VError ); | |||
VImage flood_blob_copy( int, int, std::vector<double> ) throw( VError ); | VImage flood_blob_copy( int, int, std::vector<double> ) throw( VError ); | |||
VImage flood_other_copy( VImage, int, int, int ) throw( VError ); | ||||
void insertplace( VImage, int, int ) throw( VError ); | void insertplace( VImage, int, int ) throw( VError ); | |||
VImage line( VImage, VImage, std::vector<int>, std::vector<int>, std::vecto | void line( int, int, int, int, int ) throw( VError ); | |||
r<int>, std::vector<int> ) throw( VError ); | VImage lineset( VImage, VImage, std::vector<int>, std::vector<int>, std::ve | |||
ctor<int>, std::vector<int> ) throw( VError ); | ||||
// headers for package iofuncs | // headers for package iofuncs | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
static VImage binfile( char*, int, int, int, int ) throw( VError ); | static VImage binfile( char*, int, int, int, int ) throw( VError ); | |||
VImage cache( int, int, int ) throw( VError ); | VImage cache( int, int, int ) throw( VError ); | |||
char* getext() throw( VError ); | int header_get_type( char* ) throw( VError ); | |||
int header_get_typeof( char* ) throw( VError ); | ||||
int header_int( char* ) throw( VError ); | int header_int( char* ) throw( VError ); | |||
double header_double( char* ) throw( VError ); | double header_double( char* ) throw( VError ); | |||
char* header_string( char* ) throw( VError ); | char* header_string( char* ) throw( VError ); | |||
char* history_get() throw( VError ); | ||||
void printdesc() throw( VError ); | ||||
// headers for package mask | // headers for package matrix | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
// headers for package morphology | // headers for package morphology | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
double cntlines( int ) throw( VError ); | double cntlines( int ) throw( VError ); | |||
VImage dilate( VIMask ) throw( VError ); | VImage dilate( VIMask ) throw( VError ); | |||
VImage rank( int, int, int ) throw( VError ); | VImage dilate_raw( VIMask ) throw( VError ); | |||
static VImage rank_image( std::vector<VImage>, int ) throw( VError ); | ||||
static VImage maxvalue( std::vector<VImage> ) throw( VError ); | ||||
VImage label_regions( int& ) throw( VError ); | ||||
VImage zerox( int ) throw( VError ); | ||||
VImage erode( VIMask ) throw( VError ); | VImage erode( VIMask ) throw( VError ); | |||
VImage erode_raw( VIMask ) throw( VError ); | ||||
VImage profile( int ) throw( VError ); | VImage profile( int ) throw( VError ); | |||
// headers for package mosaicing | // headers for package mosaicing | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage align_bands() throw( VError ); | VImage align_bands() throw( VError ); | |||
double correl( VImage, int, int, int, int, int, int, int&, int& ) throw( VE rror ); | double correl( VImage, int, int, int, int, int, int, int&, int& ) throw( VE rror ); | |||
int _find_lroverlap( VImage, int, int, int, int, int, int, int, int&, doubl e&, double&, double&, double& ) throw( VError ); | int _find_lroverlap( VImage, int, int, int, int, int, int, int, int&, doubl e&, double&, double&, double& ) throw( VError ); | |||
int _find_tboverlap( VImage, int, int, int, int, int, int, int, int&, doubl e&, double&, double&, double& ) throw( VError ); | int _find_tboverlap( VImage, int, int, int, int, int, int, int, int&, doubl e&, double&, double&, double& ) throw( VError ); | |||
VImage global_balance( double ) throw( VError ); | VImage global_balance( double ) throw( VError ); | |||
VImage global_balancef( double ) throw( VError ); | VImage global_balancef( double ) throw( VError ); | |||
VImage lrmerge( VImage, int, int, int ) throw( VError ); | VImage lrmerge( VImage, int, int, int ) throw( VError ); | |||
VImage lrmerge1( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | VImage lrmerge1( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | |||
VImage lrmosaic( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | VImage lrmosaic( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | |||
VImage lrmosaic1( VImage, int, int, int, int, int, int, int, int, int, int, int, int, int ) throw( VError ); | VImage lrmosaic1( VImage, int, int, int, int, int, int, int, int, int, int, int, int, int ) throw( VError ); | |||
skipping to change at line 356 | skipping to change at line 338 | |||
VImage match_linear_search( VImage, int, int, int, int, int, int, int, int, int, int ) throw( VError ); | VImage match_linear_search( VImage, int, int, int, int, int, int, int, int, int, int ) throw( VError ); | |||
double maxpos_subpel( double& ) throw( VError ); | double maxpos_subpel( double& ) throw( VError ); | |||
VImage remosaic( char*, char* ) throw( VError ); | VImage remosaic( char*, char* ) throw( VError ); | |||
VImage tbmerge( VImage, int, int, int ) throw( VError ); | VImage tbmerge( VImage, int, int, int ) throw( VError ); | |||
VImage tbmerge1( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | VImage tbmerge1( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | |||
VImage tbmosaic( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | VImage tbmosaic( VImage, int, int, int, int, int, int, int, int, int ) thro w( VError ); | |||
VImage tbmosaic1( VImage, int, int, int, int, int, int, int, int, int, int, int, int, int ) throw( VError ); | VImage tbmosaic1( VImage, int, int, int, int, int, int, int, int, int, int, int, int, int ) throw( VError ); | |||
// headers for package other | // headers for package other | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage benchmark() throw( VError ); | VImage benchmark() throw( VError ); | |||
double benchmark2() throw( VError ); | double benchmark2() throw( VError ); | |||
VImage benchmarkn( int ) throw( VError ); | VImage benchmarkn( int ) throw( VError ); | |||
static VImage eye( int, int, double ) throw( VError ); | static VImage eye( int, int, double ) throw( VError ); | |||
static VImage grey( int, int ) throw( VError ); | static VImage grey( int, int ) throw( VError ); | |||
static VImage feye( int, int, double ) throw( VError ); | static VImage feye( int, int, double ) throw( VError ); | |||
static VImage fgrey( int, int ) throw( VError ); | static VImage fgrey( int, int ) throw( VError ); | |||
static VImage fzone( int ) throw( VError ); | static VImage fzone( int ) throw( VError ); | |||
static VImage make_xy( int, int ) throw( VError ); | static VImage make_xy( int, int ) throw( VError ); | |||
static VImage zone( int ) throw( VError ); | static VImage zone( int ) throw( VError ); | |||
// headers for package relational | // headers for package relational | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage blend( VImage, VImage ) throw( VError ); | VImage blend( VImage, VImage ) throw( VError ); | |||
VImage equal( VImage ) throw( VError ); | VImage equal( VImage ) throw( VError ); | |||
VImage equal( std::vector<double> ) throw( VError ); | VImage equal( std::vector<double> ) throw( VError ); | |||
VImage equal( double ) throw( VError ); | VImage equal( double ) throw( VError ); | |||
VImage ifthenelse( VImage, VImage ) throw( VError ); | VImage ifthenelse( VImage, VImage ) throw( VError ); | |||
VImage less( VImage ) throw( VError ); | VImage less( VImage ) throw( VError ); | |||
VImage less( std::vector<double> ) throw( VError ); | VImage less( std::vector<double> ) throw( VError ); | |||
VImage less( double ) throw( VError ); | VImage less( double ) throw( VError ); | |||
VImage lesseq( VImage ) throw( VError ); | VImage lesseq( VImage ) throw( VError ); | |||
VImage lesseq( std::vector<double> ) throw( VError ); | VImage lesseq( std::vector<double> ) throw( VError ); | |||
skipping to change at line 394 | skipping to change at line 376 | |||
VImage more( double ) throw( VError ); | VImage more( double ) throw( VError ); | |||
VImage moreeq( VImage ) throw( VError ); | VImage moreeq( VImage ) throw( VError ); | |||
VImage moreeq( std::vector<double> ) throw( VError ); | VImage moreeq( std::vector<double> ) throw( VError ); | |||
VImage moreeq( double ) throw( VError ); | VImage moreeq( double ) throw( VError ); | |||
VImage notequal( VImage ) throw( VError ); | VImage notequal( VImage ) throw( VError ); | |||
VImage notequal( std::vector<double> ) throw( VError ); | VImage notequal( std::vector<double> ) throw( VError ); | |||
VImage notequal( double ) throw( VError ); | VImage notequal( double ) throw( VError ); | |||
// headers for package resample | // headers for package resample | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
VImage rightshift_size( int, int, int ) throw( VError ); | VImage affine( double, double, double, double, double, double, int, int, in | |||
VImage shrink( double, double ) throw( VError ); | t, int ) throw( VError ); | |||
VImage stretch3( double, double ) throw( VError ); | VImage similarity_area( double, double, double, double, int, int, int, int | |||
) throw( VError ); | ||||
VImage similarity( double, double, double, double ) throw( VError ); | ||||
// headers for package video | // headers for package video | |||
// this file automatically generated from | // this file automatically generated from | |||
// VIPS library 7.20.7-Wed Jan 13 11:47:21 GMT 2010 | // VIPS library 7.18.1-Tue Sep 8 04:54:03 UTC 2009 | |||
static VImage video_test( int, int ) throw( VError ); | static VImage video_test( int, int ) throw( VError ); | |||
static VImage video_v4l1( char*, int, int, int, int, int, int ) throw( VErr or ); | static VImage video_v4l1( char*, int, int, int, int, int, int ) throw( VErr or ); | |||
End of changes. 55 change blocks. | ||||
97 lines changed or deleted | 77 lines changed or added | |||