Introducting soft-proofing and Black Point Compensation, simplify the

CMM at the end of the pipeline + sparse code refactoring
A new BPC checkbutton has been created in 'Preferences/Color Management'
and in the ICM tool. Better hanbling of widget sensitivity of the output
profile / gamma part of the ICM tool.
This commit is contained in:
Hombre
2016-08-24 22:32:06 +02:00
parent b710595335
commit 5affa18341
34 changed files with 1321 additions and 709 deletions

View File

@@ -23,6 +23,8 @@
#include <glibmm.h>
#include <map>
#include <string>
#include <cstdint>
#include "procparams.h"
#include "../rtgui/threadutils.h"
namespace rtengine
@@ -85,8 +87,11 @@ public:
void init (const Glib::ustring& usrICCDir, const Glib::ustring& stdICCDir);
static void getGammaArray(const procparams::ColorManagementParams &icm, double ga[]); // ga must be an array of double with 6 elements
static cmsHPROFILE makeStdGammaProfile (cmsHPROFILE iprof);
static cmsHPROFILE createFromMatrix (const double matrix[3][3], bool gamma = false, const Glib::ustring& name = Glib::ustring());
static cmsHPROFILE createGammaProfile (const procparams::ColorManagementParams &icm, double ga[]);
static cmsHPROFILE createCustomGammaOutputProfile (const procparams::ColorManagementParams &icm, double ga[]);
// Main monitors standard profile name, from OS
void findDefaultMonitorProfile ();
@@ -98,9 +103,10 @@ public:
TMatrix workingSpaceMatrix (const Glib::ustring& name) const;
TMatrix workingSpaceInverseMatrix (const Glib::ustring& name) const;
cmsHPROFILE getProfile (const Glib::ustring& name) const;
cmsHPROFILE getStdProfile (const Glib::ustring& name) const;
ProfileContent getContent (const Glib::ustring& name) const;
bool outputProfileExist (const Glib::ustring& name) const;
cmsHPROFILE getProfile (const Glib::ustring& name) const;
cmsHPROFILE getStdProfile (const Glib::ustring& name) const;
ProfileContent getContent (const Glib::ustring& name) const;
cmsHPROFILE getXYZProfile () const;
cmsHPROFILE getsRGBProfile () const;