make rtengine::processImage return an Imagefloat instead of an Image16

This is for supporting saving to 32-bit float TIFFs
This commit is contained in:
Alberto Griggio
2017-11-20 00:10:51 +01:00
parent d47e7f67b2
commit bc8b8902e6
15 changed files with 157 additions and 96 deletions

View File

@@ -1270,21 +1270,18 @@ void ImProcCoordinator::saveInputICCReference (const Glib::ustring& fname, bool
}
}
Image16* im16 = im->to16();
delete im;
int imw, imh;
double tmpScale = ipf.resizeScale (&params, fW, fH, imw, imh);
if (tmpScale != 1.0) {
Image16* tempImage = new Image16 (imw, imh);
ipf.resize (im16, tempImage, tmpScale);
delete im16;
im16 = tempImage;
Imagefloat* tempImage = new Imagefloat (imw, imh);
ipf.resize (im, tempImage, tmpScale);
delete im;
im = tempImage;
}
im16->saveTIFF (fname, 16, true);
delete im16;
im->saveTIFF (fname, 16, true);
delete im;
if (plistener) {
plistener->setProgressState (false);