//	Tab Size: 2
//	Comments:																								*Column 60*

#ifndef	__X4D_FETCH_PIXEL_UTILS__
#define	__X4D_FETCH_PIXEL_UTILS__

#include "x4d_filter.h"

typedef	struct PIXEL_ROOT	*PIXEL_REF;

extern PIXEL_REF	new_pixel_fetcher( BM_REF bm, LONG tile_flags, LONG no_cached_tiles );
extern void				delete_pixel_fetcher( PIXEL_REF pf );
extern Bool				pf_get_pixel( PIXEL_REF pf, LONG x, LONG y, UCHAR *pixel );
extern UCHAR			*pf_get_pixel_addr( PIXEL_REF pf, LONG x, LONG y );
extern Bool				pf_get_pixel_bilinear( PIXEL_REF pf, LReal fx, LReal fy, UCHAR *pixel );

extern UCHAR	bilinear8( LReal x, LReal y, UCHAR *values );
extern UWORD	bilinear16( LReal x, LReal y, UWORD *values );
extern LReal	bilinear_double( LReal x, LReal y, LReal *values );


#endif