⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 error.h

📁 这是一个从音频信号里提取特征参量的程序
💻 H
字号:
// file: $isip/class/system/Error/Error.h// version: $Id: Error.h,v 1.41 2001/03/26 16:59:11 duncan Exp $//// make sure definitions are only made once//#ifndef ISIP_ERROR#define ISIP_ERROR// isip include files//#ifndef ISIP_INTEGRAL#include <Integral.h>#endif// macro for checks which can be optimized out//#ifdef ISIP_OPTIMIZE#define ISIP_FULL_CHECK(s)#else#define ISIP_FULL_CHECK(s) s#endif// forward class definitions//class SysString;// Error: define a class that is used for error handling. everything// in this class is static, so there is only one way to handle errors// per program. this class will never be instantiated.//class Error {    //---------------------------------------------------------------------------  //  // public constants  //  //---------------------------------------------------------------------------public:    // define the class name  //  static const SysString CLASS_NAME;    //---------------------------------------  //  // error message related constants  //  //---------------------------------------      // format of the error codes  //  static const SysString CODE_FMT;  // default value for the extras string that users can pass in  // to handle()  //  static const SysString DEF_EXTRAS;  // format and components of error messages  //  static const long ERROR_MESSAGE_SIZE = 256;  static const SysString ERROR_MESSAGE_00;  static const SysString ERROR_MESSAGE_01;  static const SysString ERROR_MESSAGE_02;  static const SysString ERROR_MESSAGE_03;  static const SysString ERROR_MESSAGE_04;  static const SysString ERROR_MESSAGE_05;  static const SysString ERROR_MESSAGE_99;  // error message for the undefined error code  //  static const SysString UNDEFINED_MESSAGE;    // declare exit levels:  //  these levels affect the behavior of error handling  //  NONE - never exit; ERROR - exit on errors;  //  WARNING - always exit, even if it is only a warning  //  enum EXIT { NONE = 0, ERROR, WARNING, DEF_EXIT = ERROR };  //---------------------------------------  //  // error codes  //  //---------------------------------------    // file errors  //  static const long FILE_NOTFND		=	0;  static const long IO			=	1;  static const long PERMISSION_DENIED	=	2;  static const long SEEK		=	3;  static const long WRITE_CLOSED	=	4;  static const long READ_CLOSED		=	5;  static const long WRITE		=	6;  static const long READ		=	7;  static const long MOD_READONLY	=	8;  static const long FILE_LOCK_READONLY	=	11;  static const long FILE_LOCK		=	12;  static const long FILE_UNLOCK		=	13;  static const long FILE_REOPEN		=	14;  static const long FILENAME_EXPAND	=	15;      // coding errors  //  static const long ENV_VAR		=	21;  static const long SYS_CALL		=	24;  static const long TEST		=	25;  static const long INTERNAL_DATA	=	41;  static const long BAD_CSTR		=	45;  static const long DESTRUCTOR		=	50;  static const long UNK_CMODE		=	51;  static const long ARG			=	52;  static const long RELEASE		=	53;  static const long MEM			=	54;  static const long NOMEM		=	55;  static const long MEM_OFLOW		=	56;  static const long STATIC_CLASS	=	57;  static const long TEMPLATE_TYPE	=	58;  static const long ENUM		=	59;  static const long NULL_ARG            =       60;  static const long STACK_EXCEEDED      =	61;  static const long DATATYPE_RANGE	=	62;  static const long BOUNDS		=	65;  static const long NOT_IMPLEM		=	66;  static const long ALLOC_MODE          =       75;  static const long VIRTUAL_PTR         =       80;    // utility errors  //  static const long NO_PARAM_FILE	=	500;  static const long NO_INPUT_FILE	=	501;    // Error class general errors (only here for uniformity)  //  static const long ERR = 1800;    //---------------------------------------------------------------------------  //  // protected data  //  //---------------------------------------------------------------------------protected:  // static flags to control behaviors upon exit  //  static boolean initialized_d;  static EXIT exit_level_d;    // declare a static debug level  //  static Integral::DEBUG debug_level_d;    //---------------------------------------------------------------------------  //  // required public methods  //  //---------------------------------------------------------------------------public:  // method: name  //  static const SysString& name() {    return CLASS_NAME;  }  // other static methods  //  static boolean diagnose(Integral::DEBUG debug_level);  // method: setDebug  //  static boolean setDebug(Integral::DEBUG level) {    debug_level_d = level;    return true;  }  // other debug methods  //  static boolean debug(const unichar* message);    // destructor/constructor(s) are private  //  // assign methods:  //  these methods are omitted because Error objects  //  can not be instantiated  //  // operator= methods:  //  these methods are omitted because Error objects  //  can not be instantiated  //  // i/o methods:  //  these methods are omitted because Error objects  //  can not be instantiated  //  // equality methods:  //  these methods are omitted because Error objects  //  can not be instantiated  //  // memory management methods:  //  these methods are omitted because Error objects  //  can not be instantiated  //  //---------------------------------------------------------------------------  //  // class-specific public methods  //  error handler methods  //  //---------------------------------------------------------------------------    // method: set  //  the exit_level affects the behavior or error handling  //  static boolean set(EXIT exit_level) {    if (!initialized_d) {      exit_level_d = exit_level;    }    return (initialized_d = true);  }  // method: reset  //  the level needs to be reset before being set again  //  static boolean reset() {      exit_level_d = DEF_EXIT;      return (!(initialized_d = false));  }  // error handler methods  //  static boolean handle(const SysString& cname, const unichar* mname,			long ecode, char* file, long line,			EXIT level = DEF_EXIT,			const SysString& extras = DEF_EXTRAS);    static boolean handle(const SysString& cname, const SysString& mname,			long ecode, char* file, long line,			EXIT level = DEF_EXIT,			const SysString& extras = DEF_EXTRAS);    //---------------------------------------------------------------------------  //  // class-specific public methods  //  exit related methods  //  //---------------------------------------------------------------------------    // Sof closing methods:  //  these methods setup cleanup functions called upon exit.  //  they are part of an implementation that causes any fatal  //  error from anywhere in the code structure (high or low) to close  //  all open Sof files. users should never use these methods directly.  //  static boolean setSofPointer(boolean (*method)(void));  static boolean closeSof();    // exit methods  //  static boolean isExiting();  static volatile void exit();    //---------------------------------------------------------------------------  //  // private methods  //  //---------------------------------------------------------------------------private:  // destructor/constructor(s):  //  these methods are private so the class cannot be instantiated  //  ~Error();  Error();  Error(const Error& arg);    // error message lookup methods  //  static boolean getMessage(SysString& msg, long code);};// end of include file// #endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -