12 |
|
#define LOGLUV_PUBLIC 1 |
13 |
|
|
14 |
|
#include <stdio.h> |
15 |
+ |
#include <stdlib.h> |
16 |
|
#include <string.h> |
17 |
|
#include <math.h> |
17 |
– |
#include "tiffio.h" |
18 |
|
#include "tmprivat.h" |
19 |
+ |
#include "tiffio.h" |
20 |
|
#include "tmaptiff.h" |
21 |
|
|
22 |
|
#define uvflgop(p,uv,op) ((p)->rgbflg[(uv)>>5] op (1L<<((uv)&0x1f))) |
267 |
|
returnErr(TM_E_ILLEGAL); |
268 |
|
/* check scaling offset */ |
269 |
|
if (!FEQ(tms->inpsf, lastsf)) { |
270 |
< |
offset = BRT2SCALE(64); |
270 |
< |
if (tms->inpsf > 1.0001) |
271 |
< |
offset -= (int)(TM_BRTSCALE*log(tms->inpsf)+.5); |
272 |
< |
else if (tms->inpsf < 0.9999) |
273 |
< |
offset -= (int)(TM_BRTSCALE*log(tms->inpsf)-.5); |
270 |
> |
offset = BRT2SCALE(64) - tmCvLuminance(tms->inpsf); |
271 |
|
lastsf = tms->inpsf; |
272 |
|
} |
273 |
|
/* convert each pixel */ |
292 |
|
exit(1); |
293 |
|
} |
294 |
|
ld = (LUV32DATA *)tms->pd[luv32Reg]; |
295 |
< |
ld->offset = BRT2SCALE(64); |
299 |
< |
if (tms->inpsf > 1.0001) |
300 |
< |
ld->offset -= (int)(TM_BRTSCALE*log(tms->inpsf)+.5); |
301 |
< |
else if (tms->inpsf < 0.9999) |
302 |
< |
ld->offset -= (int)(TM_BRTSCALE*log(tms->inpsf)-.5); |
295 |
> |
ld->offset = BRT2SCALE(64) - tmCvLuminance(tms->inpsf); |
296 |
|
clruvall(ld); |
297 |
|
} |
298 |
|
|
323 |
|
exit(1); |
324 |
|
} |
325 |
|
ld = (LUV24DATA *)tms->pd[luv24Reg]; |
326 |
< |
ld->offset = BRT2SCALE(12); |
334 |
< |
if (tms->inpsf > 1.0001) |
335 |
< |
ld->offset -= (int)(TM_BRTSCALE*log(tms->inpsf)+.5); |
336 |
< |
else if (tms->inpsf < 0.9999) |
337 |
< |
ld->offset -= (int)(TM_BRTSCALE*log(tms->inpsf)-.5); |
326 |
> |
ld->offset = BRT2SCALE(12) - tmCvLuminance(tms->inpsf); |
327 |
|
clruvall(ld); |
328 |
|
} |
329 |
|
|