diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2014-09-07 13:29:54 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2014-09-07 13:29:54 +0200 |
commit | a879b4e708b3e46c9697ba6581687eeb5b02a320 (patch) | |
tree | f85acc5cb1a7c0b03a050c879c20cab3deb9f40e /rspl/rev.c | |
parent | 556dffcdad42b938bc196819aa463247de709765 (diff) | |
parent | c07d0c2d2f6f7b0eb6e92cc6204bf05037957e82 (diff) |
state from 2014-09-07 13:30 MESZ
Diffstat (limited to 'rspl/rev.c')
-rw-r--r-- | rspl/rev.c | 34 |
1 files changed, 24 insertions, 10 deletions
@@ -22,11 +22,24 @@ Should fix the clipping case so that a direction weighting funtion can be applied. This should be used just like the perceptual case to increase L* constance for dark - colors. Will this stuff up the geometric consistency though ? - [ See fill_nncell(), fill_nncell() and users of calc_fwd_nn_cell_list(), - ie. nnearest_clip_solve(), clipn_setsort() etc. ] + colors. This would entail large scale changes though, + since a lot of code assumes minimal euclidean distance + goal, from the cell selection structure [ See fill_nncell(), + fill_nncell() and users of calc_fwd_nn_cell_list() ] and + the within cell computation [ ie. See nnearest_clip_solve(), + clipn_setsort() etc. ] + XYZ PCS couldn't work with a simple weighting - it would have + to be a position dependent weighting. The SVD least squares computation case makes this hard to change ? Would have to feed in a weighting function, or can it be general ? + - + Can this be solved some other way, ie. by using gamut + mapping type look up ? Problem is precision. + - + Vector clip could be used (if intent can be turned + into computable vector clip direction), but it is slow, + because it search all cells from source until it + hits surface. Allow function callback to set auxiliary values for flag RSPL_AUXLOCUS. @@ -1437,7 +1450,8 @@ unsigned int tcount /* grid touch count for this operation */ nunlk++; } fprintf(stdout,"Diagnostic: rev.sz = %lu, rev.max_sz = %lu, numlocked = %d, nunlk = %d\n", - rc->s->rev.sz, rc->s->rev.max_sz, rc->nunlocked,nunlk); + (unsigned long)rc->s->rev.sz, (unsigned long)rc->s->rev.max_sz, + rc->nunlocked, nunlk); error("Not enough memory to process in chunks"); } break; /* cache has run out of room, so abandon, and do it next time */ @@ -4971,7 +4985,7 @@ rspl *s /* Pointer to rspl grid */ g_no_rev_cache_instances > 1 ? "are" : "is", g_no_rev_cache_instances, g_no_rev_cache_instances > 1 ? "s" : "", - ram_portion/1000000); + (unsigned long)ram_portion/1000000); } } @@ -6165,7 +6179,7 @@ if (prop != NULL) { g_no_rev_cache_instances > 1 ? "are" : "is", g_no_rev_cache_instances, g_no_rev_cache_instances > 1 ? "s" : "", - ram_portion/1000000); + (unsigned long)ram_portion/1000000); } s->rev.rev_valid = 1; @@ -6233,7 +6247,7 @@ rspl *s /* Pointer to rspl grid */ g_no_rev_cache_instances > 1 ? "are" : "is", g_no_rev_cache_instances, g_no_rev_cache_instances > 1 ? "s" : "", - ram_portion/1000000); + (unsigned long)ram_portion/1000000); } } s->rev.rev_valid = 0; @@ -6497,7 +6511,7 @@ rspl *s if (g_avail_ram > safe_max_vmem) { g_avail_ram = safe_max_vmem; if (s->verbose && repsr == 0) - fprintf(stdout,"%cTrimmed maximum cache RAM to %lu Mbytes to allow for VM limit\n",cr_char,g_avail_ram/1000000); + fprintf(stdout,"%cTrimmed maximum cache RAM to %lu Mbytes to allow for VM limit\n",cr_char,(unsigned long)g_avail_ram/1000000); } } @@ -6516,7 +6530,7 @@ rspl *s } if (max_vmem != 0 && g_avail_ram > max_vmem && repsr == 0) { g_avail_ram = (size_t)(0.95 * max_vmem); - fprintf(stdout,"%cARGYLL_REV_CACHE_MULT * RAM trimmed to %lu Mbytes to allow for VM limit\n",cr_char,g_avail_ram/1000000); + fprintf(stdout,"%cARGYLL_REV_CACHE_MULT * RAM trimmed to %lu Mbytes to allow for VM limit\n",cr_char,(unsigned long)g_avail_ram/1000000); } } @@ -6525,7 +6539,7 @@ rspl *s DBG(("reverse cache max memory = %d Mbytes\n",s->rev.max_sz/1000000)); if (s->verbose && repsr == 0) { - fprintf(stdout, "%cRev cache RAM = %lu Mbytes\n",cr_char,g_avail_ram/1000000); + fprintf(stdout, "%cRev cache RAM = %lu Mbytes\n",cr_char,(unsigned long)g_avail_ram/1000000); repsr = 1; } |