メインページ | クラス階層 | アルファベット順一覧 | 構成 | Directories | ファイル一覧 | 構成メンバ | ファイルメンバ

Exception.h

説明を見る。
00001 
00011 #ifndef EXCEPTION_H
00012 #define EXCEPTION_H
00013 
00014 #include <basic.h>
00015 
00017 
00020 class Exception {
00021 
00022  protected:
00024   W err;
00025 
00026  public:
00028 
00032   Exception(W e) : err(e) {}
00033 
00035 
00039   W getErrorCode() const {
00040     return err;
00041   }
00042 
00043 };
00044 
00046 
00049 class FileException : public Exception {
00050 
00051  protected:
00053   W filedes;
00054 
00055  public:
00057 
00062   FileException(W fd, W e) : Exception(e), filedes(fd) {}
00063 
00065 
00069   W getFileDescripter() const {
00070     return filedes;
00071   }
00072 };
00073 
00075 
00078 class FileOpenException : public FileException {
00079 
00080  public:
00082 
00087   FileOpenException(W fd, W e) : FileException(fd, e) {}
00088 };
00089 
00091 
00094 class FileReadException : public FileException {
00095 
00096  public:
00098 
00103   FileReadException(W fd, W e) : FileException(fd, e) {}
00104 };
00105 
00107 
00110 class FileWriteException : public FileException {
00111 
00112  public:
00114 
00119   FileWriteException(W fd, W e) : FileException(fd, e) {}
00120 };
00121 
00123 
00126 class UserException : public Exception {
00127 
00128  public:
00130 
00134   UserException(W e = 0) : Exception(e) {}
00135 
00136 };
00137 
00139 
00143 class FailureException : public UserException {
00144 
00145  public:
00147 
00151   FailureException(W e = 0) : UserException(e) {}
00152 
00157   virtual void errorPanel() const = 0;
00158 };
00159 
00161 
00165 class MessagedFailureException : public FailureException {
00166 
00167  protected:
00169   const TC* message;
00170 
00171  public:
00177   MessagedFailureException(const TC* msg, W e = 0)
00178     : FailureException(e), message(msg) {}
00179   
00184   const TC* what() const {
00185     return message;
00186   }
00187 
00188   virtual void errorPanel() const;
00189 
00190 };
00191 
00193 
00197 class PaneledFailureException : public FailureException {
00198 
00199  protected:
00201   W dbox_index;
00202 
00203  public:
00209   PaneledFailureException(W db, W e = 0)
00210     : FailureException(e), dbox_index(db) {}
00211 
00212   virtual void errorPanel() const;
00213 };
00214 
00215 #endif // EXCEPTION_H

KanjiPad+に対してFri Oct 7 23:47:11 2005に生成されました。  doxygen 1.4.1