00001 #ifndef BALL_LINALG_EXCEPTION_H 00002 #define BALL_LINALG_EXCEPTION_H 00003 00004 #ifndef BALL_COMMON_EXCEPTION_H 00005 #include <BALL/COMMON/exception.h> 00006 #endif 00007 00008 #include <iostream> 00009 00010 namespace BALL 00011 { 00012 namespace Exception 00013 { 00014 class BALL_EXPORT MatrixHasWrongDimension : public BALL::Exception::GeneralException 00015 { 00016 public: 00017 MatrixHasWrongDimension(); 00018 00019 MatrixHasWrongDimension(const char* file, unsigned long line); 00020 00021 virtual ~MatrixHasWrongDimension() throw(); 00022 }; 00023 00024 class BALL_EXPORT VectorHasWrongDimension : public BALL::Exception::GeneralException 00025 { 00026 public: 00027 VectorHasWrongDimension(); 00028 00029 VectorHasWrongDimension(const char* file, unsigned long line); 00030 00031 virtual ~VectorHasWrongDimension() throw(); 00032 }; 00033 00034 class BALL_EXPORT MatrixNotRegular : public BALL::Exception::GeneralException 00035 { 00036 public: 00037 MatrixNotRegular(); 00038 00039 ~MatrixNotRegular() throw(); 00040 }; 00041 00042 class BALL_EXPORT MatrixNotQuadratic : public BALL::Exception::GeneralException 00043 { 00044 public: 00045 MatrixNotQuadratic(); 00046 00047 ~MatrixNotQuadratic() throw(); 00048 }; 00049 00050 class BALL_EXPORT MatrixIsSingular : public BALL::Exception::GeneralException 00051 { 00052 public: 00053 MatrixIsSingular(const char* file, unsigned long line); 00054 00055 ~MatrixIsSingular() throw(); 00056 }; 00057 00058 class BALL_EXPORT SingularIterator : public BALL::Exception::GeneralException 00059 { 00060 public: 00061 SingularIterator(); 00062 00063 ~SingularIterator() throw(); 00064 }; 00065 00066 class BALL_EXPORT Uninitialized : public BALL::Exception::GeneralException 00067 { 00068 public: 00069 Uninitialized(); 00070 ~Uninitialized() throw(); 00071 }; 00072 } 00073 00074 } 00075 00076 #endif // BALL_COMMON_EXCEPTION_H