on avance vers du mieux

This commit is contained in:
tth
2021-04-03 05:37:03 +02:00
parent 0a92028c56
commit d7a3074561
4 changed files with 53 additions and 63 deletions

View File

@@ -19,7 +19,8 @@
*/
extern int verbosity;
/* private vars of this module - it was very dirty
/* private vars of this module - it was very dirty,
* but simple and efficient.
*/
static A_Fifo g_fifo;
@@ -45,6 +46,11 @@ int faire_la_somme(A_Fifo *pfifo, FloatImg *destination, int step)
int idx, foo;
FloatImg *pdest;
#if DEBUG_LEVEL
fprintf(stderr, ">>> %s ( %p %p %d )\n", __func__,
pfifo, destination, step);
#endif
if (NULL==destination) {
pdest = &(pfifo->total); }
else {
@@ -62,24 +68,26 @@ for (idx=0; idx<pfifo->nbslots; idx += step) {
}
}
fprintf(stderr, "*** %s %s writing debug file ***\n",
/* XXX
fprintf(stderr, "*** %s:%s writing debugB file ***\n",
__FILE__, __func__);
fimg_dump_to_file(&g_fifo.total, "debugB.fimg", 0);
XXX */
return 0;
}
/* -------------------------------------------------------------- */
/* called by 'fonderie.c'
* this func save the fifo content as
* - float FIMG
* - 16 bits PNM
* - 8 bits PNG
*/
int export_fifo(char *fname, int step)
{
int foo, type;
foo = faire_la_somme(&g_fifo, NULL, step);
#if DEBUG_LEVEL
fprintf(stderr, ">>> %s ( '%s' %d )\n", __func__, fname, step);
#endif
foo = faire_la_somme(&g_fifo, NULL, 1);
foo = filterstack_run(1, &g_fifo.total, 0);
if (foo) {
@@ -88,24 +96,7 @@ if (foo) {
return foo;
}
type = format_from_extension(fname);
switch (type) {
case FILE_TYPE_PNG:
foo = fimg_save_as_png(&g_fifo.total, fname, 0);
break;
case FILE_TYPE_PNM:
foo = fimg_save_as_pnm(&g_fifo.total, fname, 0);
break;
case FILE_TYPE_FIMG:
foo = fimg_dump_to_file(&g_fifo.total, fname, 0);
break;
default:
fprintf(stderr, "%s : type of '%s' unknow\n",
__func__, fname);
foo = 888;
break;
}
foo = fimg_export_picture(&g_fifo.total, fname, 0);
if (foo) {
fprintf(stderr, "ERR EXPORT '%s' is %d\n", fname, foo);
exit(3);
@@ -117,7 +108,11 @@ return 0;
int insert_picture(FloatImg *src)
{
FloatImg *dst;
int nbre;
int nbre, foo;
#if DEBUG_LEVEL
fprintf(stderr, ">>> %s ( %p )\n", __func__, src);
#endif
dst = &g_fifo.slots[g_fifo.next];
@@ -126,9 +121,12 @@ memcpy(dst->R, src->R, nbre);
memcpy(dst->G, src->G, nbre);
memcpy(dst->B, src->B, nbre);
fprintf(stderr, "*** %s %s writing debug file ***\n",
/* XXX
fprintf(stderr, "*** %s:%s writing debugA file ***\n",
__FILE__, __func__);
fimg_dump_to_file(dst, "debugA.fimg", 0);
foo = fimg_dump_to_file(dst, "debugA.fimg", 0);
fprintf(stderr, " ok file dumped %d\n", foo);
XXX */
g_fifo.next++; g_fifo.next %= g_fifo.nbslots;