FE_error.cpp
上传用户:italyroyal
上传日期:2013-05-06
资源大小:473k
文件大小:3k
源码类别:

语音合成与识别

开发平台:

Visual C++

  1. ///////////////////////////////////////////////////////////////////////////////
  2. // This is a part of the Feature program.
  3. // Version: 1.0
  4. // Date: February 22, 2003
  5. // Programmer: Oh-Wook Kwon
  6. // Copyright(c) 2003 Oh-Wook Kwon. All rights reserved. owkwon@ucsd.edu
  7. ///////////////////////////////////////////////////////////////////////////////
  8. /**********************************
  9.  * Error handling routines        *
  10.  **********************************/
  11. #include "StdAfx.h"
  12. #include <stdlib.h>
  13. #include <stdarg.h>
  14. #include "FE_feature.h"
  15. int Fe::FE_INFO (char *fmt, ... )
  16. {
  17. fprintf(stderr, "INFO(%s, %s): ", __FILE__,__LINE__);
  18.     va_list args;
  19.     va_start (args, fmt);
  20. err_ret(fmt, args);
  21.     va_end (args);
  22. return 1;
  23. }
  24. int Fe::FE_WARN (char *fmt, ... )
  25. {
  26. fprintf(stderr, "WARN(%s, %s): ", __FILE__,__LINE__);
  27.     va_list args;
  28.     va_start (args, fmt);
  29. err_ret(fmt, args);
  30.     va_end (args);
  31. return 1;
  32. }
  33. int Fe::FE_ERROR (char *fmt, ... )
  34. {
  35. fprintf(stderr, "ERROR(%s, %s): ", __FILE__,__LINE__);
  36.     va_list args;
  37.     va_start (args, fmt);
  38. err_quit(fmt, args);
  39.     va_end (args);
  40. return 1;
  41. }
  42. int Fe::FE_FATAL (char *fmt, ... )
  43. {
  44. fprintf(stderr, "FATAL(%s, %s): ", __FILE__,__LINE__);
  45.     va_list args;
  46.     va_start (args, fmt);
  47. err_quit(fmt, args);
  48.     va_end (args);
  49. return 1;
  50. }
  51. /*
  52.  * Fatal error. Print a message and terminate.
  53.  *      err_quit(format,arg1,arg2, ...)
  54.  * The string "format" must specify the conversion specification for any args.
  55.  */
  56. int Fe::err_quit (char *fmt, ... )
  57. {
  58.     va_list args;
  59.     va_start (args, fmt);
  60.     //int *next_int = va_arg (args, int *);
  61.     (void) vfprintf (stderr, fmt, args);
  62.     va_end (args);
  63. #ifndef _WIN32
  64.     exit (1);
  65. #endif
  66. return 1;
  67. }
  68. /*
  69.  * Recoverable error. Print a message, and return to caller.
  70.  *      err_ret(format,arg1,arg2, ...)
  71.  * The string "format" must specify the conversion specification for any args.
  72.  */
  73. int Fe::err_ret (char *fmt, ... )
  74. {
  75. va_list args;
  76.     va_start (args, fmt);
  77.     //int *next_int = va_arg (args, int *);
  78.     (void) vfprintf (stderr, fmt, args);
  79.     va_end (args);
  80.     return (1);
  81. }
  82. /*
  83.  * Fatal error. Print a message, dump core (for debugging) and terminate.
  84.  *      err_dump(format,arg1,arg2, ...)
  85.  * The string "format" must specify the conversion specification for any args.
  86.  */
  87. int Fe::err_dump (char *fmt, ... )
  88. {
  89. va_list args;
  90.     va_start (args, fmt);
  91.     //int *next_int = va_arg (args, int *);
  92.     (void) vfprintf (stderr, fmt, args);
  93.     va_end (args);
  94.     abort (); /* dump core and terminate */
  95. #ifndef _WIN32
  96.     exit (1); /* shouldn't get here */
  97. #endif
  98. return 1;
  99. }
  100. int Fe::err_fopen (const char *s)
  101. {
  102.     fprintf (stderr, "nFile open error (%s) !!! n", s);
  103. assert(0);
  104.     //exit (1);
  105. return 0;
  106. }