﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
107	psImagePixelInterpolate prototype definition tweaks	robert.desonia@…	eugene	"I have a few small issues/questions/suggestions regarding the specification of
psImagePixelInterpolate.

1. the input image should probably be qualified as const.

2. should not the return type to psF64, given it is a valid operation for psF64
imagery and there is no real need for the reduction in precision here?

3. I'd like to add a parameter for the value returned if x,y is not in the image
area.  That is a great help for psImageRotate (ref: psImageRotate's 'exposed'
parameter).

4. FYI: In implementing this beast, I made specific (inline) private functions
for every type/mode combination (to increase performance by avoiding nested
switch statement in loops, etc.).  Not sure if you'd want them in the Doxygen
documentation or not.  Their definition is currently as follows:

#define p_psImagePixelInterpolateFcns(TYPE) \
inline psF64 p_psImagePixelInterpolateFLAT_##TYPE( \
        const psImage *input, \
        float x, \
        float y, \
        psF64 unexposedValue \
); \
inline psF64 p_psImagePixelInterpolateBILINEAR_##TYPE( \
        const psImage *input, \
        float x, \
        float y, \
        psF64 unexposedValue \
); 


The suggested new prototype for psImagePixelInterpolate is:

psF64 psImagePixelInterpolate(
        const psImage *input,
        float x,
        float y,
        psF64 unexposedValue,
        psImageInterpolateMode mode
);"	defect	closed	high		math	unspecified	normal	fixed	PSLib	
