#include <vips/vips.h>
int IM_RINT( float )
any IM_MAX( any, any )
any IM_MIN( any, any )
These macros provide some simple but fast math functions --- IM_MAX(3) returns the maximum of its two arguments, IM_MIN(3) the smallest, and IM_RINT(3) rounds a float or double to the nearest integer.
Beware: these macros may evaluate their argument more than once, so you MUST NOT use ++,--, or a function call in their argument lists.
They are defined as:
#define IM_MAX(A,B) ((A)>(B)?(A):(B))
#define IM_MIN(A,B) ((A)<(B)?(A):(B))
#define IM_RINT(R) ((int)((R)>0?((R)+0.5):((R)-0.5)))