00001 /* 00002 * frontend/console.h 00003 * 00004 * This 00005 * 00006 * 00007 */ 00008 00009 #ifndef LAME_CONSOLE_H 00010 #define LAME_CONSOLE_H 00011 00012 #if defined(_WIN32) && !defined(__CYGWIN__) 00013 # include <windows.h> 00014 #endif 00015 00016 typedef struct { 00017 unsigned long ClassID; 00018 unsigned long ClassProt; 00019 FILE *Console_fp; /* filepointer to stream reporting information */ 00020 FILE *Error_fp; /* filepointer to stream fatal error reporting information */ 00021 FILE *Report_fp; /* filepointer to stream reports (normally a text file or /dev/null) */ 00022 #if defined(_WIN32) && !defined(__CYGWIN__) 00023 HANDLE Console_Handle; 00024 #endif 00025 int disp_width; 00026 int disp_height; 00027 char str_up[10]; 00028 char str_clreoln[10]; 00029 char str_emph[10]; 00030 char str_norm[10]; 00031 char Console_buff[2048]; 00032 int Console_file_type; 00033 } Console_IO_t; 00034 00035 extern Console_IO_t Console_IO; 00036 extern int frontend_open_console(void); 00037 extern void frontend_close_console(void); 00038 00039 extern void frontend_msgf(const char *format, va_list ap); 00040 extern void frontend_debugf(const char *format, va_list ap); 00041 extern void frontend_errorf(const char *format, va_list ap); 00042 00043 int console_printf(const char *format, ...); 00044 int error_printf(const char *format, ...); 00045 int report_printf(const char *format, ...); 00046 00047 void console_flush(void); 00048 void error_flush(void); 00049 void report_flush(void); 00050 00051 void console_up(int n_lines); 00052 00053 void set_debug_file(const char *fn); 00054 00055 #endif /* LAME_CONSOLE_H */ 00056 00057 /* end of console.h */