Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkFEMException.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Insight Segmentation & Registration Toolkit
00004   Module:    $RCSfile: itkFEMException.h,v $
00005   Language:  C++
00006   Date:      $Date: 2002/02/27 19:16:12 $
00007   Version:   $Revision: 1.8 $
00008 
00009   Copyright (c) 2002 Insight Consortium. All rights reserved.
00010   See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
00011 
00012      This software is distributed WITHOUT ANY WARRANTY; without even 
00013      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00014      PURPOSE.  See the above copyright notices for more information.
00015 
00016 =========================================================================*/
00017 #ifndef __itkFEMException_h
00018 #define __itkFEMException_h
00019 
00020 #include <typeinfo>
00021 #include <string>
00022 
00023 #include "itkMacro.h"
00024 
00025 namespace itk {
00026 namespace fem {
00027 
00038 class FEMException : public itk::ExceptionObject
00039 {
00040 public:
00049   FEMException(const char *file, unsigned int lineNumber, std::string location="Unknown");
00050 
00052   virtual ~FEMException() throw() {}
00053 
00055   itkTypeMacro(FEMException, ExceptionObject);
00056 };
00057 
00058 
00059 
00060 
00067 class FEMExceptionIO : public FEMException
00068 {
00069 public:
00075   FEMExceptionIO(const char *file, unsigned int lineNumber, std::string location, std::string moreDescription);
00076 
00078   virtual ~FEMExceptionIO() throw() {}
00079   
00081   itkTypeMacro(FEMExceptionIO,FEMException);
00082 };
00083 
00084 
00085 
00086 
00104 class FEMExceptionWrongClass : public FEMException
00105 {
00106 public:
00107   FEMExceptionWrongClass(const char *file, unsigned int lineNumber, std::string location);
00108 
00110   virtual ~FEMExceptionWrongClass() throw() {}
00111   
00113   itkTypeMacro(FEMExceptionWrongClass,FEMException);
00114 };
00115 
00116 
00117 
00118 
00126 class FEMExceptionObjectNotFound : public FEMException
00127 {
00128 public:
00129   FEMExceptionObjectNotFound(const char *file, unsigned int lineNumber, std::string location, std::string baseClassName, int GN);
00130 
00132   virtual ~FEMExceptionObjectNotFound() throw() {}
00133 
00135   itkTypeMacro(FEMExceptionObjectNotFound,FEMException);
00136 
00140   std::string m_baseClassName;
00141   int m_GN;
00142 
00143 };
00144 
00145 
00146 
00147 
00155 class FEMExceptionSolution : public FEMException
00156 {
00157 public:
00163   FEMExceptionSolution(const char *file, unsigned int lineNumber, std::string location, std::string moreDescription);
00164  
00166   virtual ~FEMExceptionSolution() throw() {}
00167   
00169   itkTypeMacro(FEMExceptionSolution,FEMException);
00170   
00171 };
00172 
00173 
00174 
00175 
00176 }} // end namespace itk::fem
00177 
00178 #endif // #ifndef __itkFEMException_h

Generated at Fri May 21 01:14:43 2004 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000