switch (
out.getPixelFormat()) { \
Func<IN_R, SingleByteBitmapWriter>::process(in,
out, args...); \
break; \
Func<IN_R, TripleByteBitmapWriter>::process(in,
out, args...); \
break; \
Func<IN_R, QuadByteBitmapWriter>::process(in,
out, args...); \
break; \
Func<IN_R, SingleFloatBitmapWriter>::process(in,
out, args...); \
break; \
Func<IN_R, TripleFloatBitmapWriter>::process(in,
out, args...); \
break; \
Func<IN_R, QuadFloatBitmapWriter>::process(in,
out, args...); \
break; \
Func<IN_R, BinaryMaskWriter>::process(in,
out, args...); \
break; \
Func<IN_R, QuaternaryMaskWriter>::process(in,
out, args...); \
break; \
Func<IN_R, HexMaskWriter>::process(in,
out, args...); \
break; \
default:
throw ProcessingActionNotImplemented(
out.getPixelFormat()); \
}
@ SingleByte
single channel of 8 bits per pixel (like grayscale), unsigned integer values
@ SingleFloat
single channel of 32 bits per pixel (like grayscale), single precision floating point values
@ QuaternaryMask
2 bits per pixel
@ QuadFloat
4 channels of 32 bits per pixel, single precision floating point values,
@ TripleFloat
3 channels of 32 bits per pixel, single precision floating point values
@ QuadByte
4 channels of 8 bits per pixel (like RGBA), unsigned integer values
@ TripleByte
3 channels of 8 bits per pixel (like RGB), unsigned integer values
@ BinaryMask
1 bit per pixel
@ HexMask
4 bits per pixel