VIPS_INTERPOLATE(3) VIPS_INTERPOLATE(3)
NAME
VipsInterpolate, vips_interpolate, vips_interpolate_get_method,
vips_interpolate_get_window_size - base class for VIPS interpolators
SYNOPSIS
#include <vips/vips.h>
typedef void (*VipsInterpolateMethod)( VipsInterpolate *,
PEL *out, REGION *in, double x, double y );
typedef struct _VipsInterpolateClass {
VipsObjectClass parent_class;
VipsInterpolateMethod interpolate;
int (*get_window_size)( VipsInterpolate * );
int window_size;
} VipsInterpolateClass;
void vips_interpolate( VipsInterpolate *interpolate,
PEL *out, REGION *in, double x, double y );
VipsInterpolateMethod vips_interpolate_get_method( VipsInterpolate * );
int vips_interpolate_get_window_size( VipsInterpolate *interpolate );
VipsInterpolate *vips_interpolate_nearest_static( void );
VipsInterpolate *vips_interpolate_bilinear_static( void );
VipsInterpolate *vips_interpolate_bicubic_static( void );
VipsInterpolate *vips_interpolate_new( const char *nickname );
DESCRIPTION
VipsInterpolate is the base class for VIPS interpolators. It provides a
simple framework that subclasses use to implement the various interpo-
lators that VIPS ships with. You can add new interpolators by sub-
classing VipsInterpolated and implementing an interpolate method. You
can use any interpolator in your code via the methods of VipsInterpo-
late.
vips_interpolate(3) looks up the interpolate method for the object and
calls it for you.
vips_interpolate_get_method(3) just does the lookup and returns a
pointer to the interpolate function. You can use this to take the
lookup out of an inner loop.
vips_interpolate_get_window_size(3) either calls get_window_size() or
if it is NULL, returns window_size.
vips_interpolate_nearest_static(3), vips_interpolate_bilinear_static(3)
and vips_interpolate_bicubic_static(3) are convenience functions which
return a pointer to a static instance of a nearest-neighbour, bilinear
and bicubic interpolator. You can pass these to any function which
needs a VipsInterpolator as an argument. No need to free the result.
vips_interpolate_new(3) is a convenience function which makes an inter-
polator from a nickname. Free the result with g_object_unref(3) when
you're done with it.
SUPPORTED INTERPOLATORS
You can list the supported interpolators with
$ vips --list classes
look for subclasses of VipsInterpolate.
RETURN VALUE
Unless otherwise noted, functions return 0 success and -1 on error.
SEE ALSO
VipsObject(3), VipsInterpolate(3), vips_type_find(3), vips(1).
AUTHOR
John Cupitt
28 March 2009 VIPS_INTERPOLATE(3)
vips 7.18.1 - Generated Sat Apr 18 09:49:15 CDT 2009
