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