>
> Hi all,
>
> I added some macros in util.h.
>
These look great! But one small complaint: do we really
need a LAME_ASSERT macro for assert? assert is already
a macro, and part of ANSI C. assert() is disabled by default,
and should only be used for tracking down bugs in the encoding
library.
Mark
> ------
> #define LAME_STD_PRINT
>
> #ifdef LAME_STD_PRINT
> extern void lame_errorf(const char *, ...);
>
> #define DEBUGF printf
> #define ERRORF lame_errorf
> #define MSGF lame_errorf
>
> #define FLUSH_DEBUG() fflush(stdout)
> #define FLUSH_ERROR() fflush(stderr)
> #define FLUSH_MSG() fflush(stderr)
> #endif
>
> #define LAME_ASSERT(x) assert(x)
>
> #define LAME_EXIT(n) exit(n)
> #define LAME_NORMAL_EXIT() exit(0)
> #define LAME_ERROR_EXIT() exit(1)
> #define LAME_FATAL_EXIT() exit(2)
> ------
>
> lame_errorf() was added in util.c.
> I intend to replace fprintf(),printf(),assert() and exit()
> with these macros.
>
> These macros will be used like this:
>
> DEBUGF("%d: r = %f\n", i, r); // debugging message
> MSGF("multiple pipeline mode was selected.\n");
> // information for users
>
> LAME_ASSERT(ee >= 0); // assertion
>
> if (len == 0) {
> ERRORF("illegal length\n"); // error message
> LAME_ERROR_EXIT(); // program will quit
> // with result code = 1
> }
>
> These macros would be helpful when using LAME as a library.
> The messages might be omitted, or output with alternative
> methods.
>
>
> Iwasa Kazmi
> --
> MP3 ENCODER mailing list ( http://geek.rcc.se/mp3encoder/ )
>
--
MP3 ENCODER mailing list ( http://geek.rcc.se/mp3encoder/ )