/[escript]/trunk/escript/src/DataException.h
ViewVC logotype

Diff of /trunk/escript/src/DataException.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1388 by trankine, Fri Jan 11 07:45:58 2008 UTC revision 1649 by phornby, Tue Jul 15 08:41:02 2008 UTC
# Line 19  Line 19 
19    
20  #include "esysUtils/EsysException.h"  #include "esysUtils/EsysException.h"
21    
22  #include <string>  namespace escript
23    {
24    
25  namespace escript {    /**
26      \brief
27      DataException exception class.
28    
29  /**    Description:
30     \brief    DataException exception class.
31     DataException exception class.    The class provides a public function returning the exception name
32      */
33      class DataException : public esysUtils::EsysException
34      {
35    
36     Description:    protected:
    DataException exception class.  
    The class provides a public function returning the exception name  
 */  
 class DataException:public esysUtils::EsysException {  
37    
38   public:       typedef EsysException Parent;
   /**  
      \brief  
      Default constructor for the exception.  
   */  
   ESCRIPT_DLL_API  
   DataException() : esysUtils::EsysException() {}  
   /**  
      \brief  
      Constructor for the exception.  
   */  
   ESCRIPT_DLL_API  
   DataException(const char *cstr) : esysUtils::EsysException(cstr) {}  
   /**  
      \brief  
      Constructor for the exception.  
   */  
   ESCRIPT_DLL_API  
   DataException(const std::string &str) : esysUtils::EsysException(str) {}  
39    
40    /// Destructor    public:
41    ESCRIPT_DLL_API      /**
42    virtual ~DataException() throw() {}      \brief
43        Default constructor for the exception.
44        */
45        ESCRIPT_DLL_API
46        DataException() : Parent() { updateMessage();}
47        /**
48        \brief
49        Constructor for the exception.
50        */
51        ESCRIPT_DLL_API
52        DataException(const char *cstr) : Parent(cstr) { updateMessage();}
53        /**
54        \brief
55        Constructor for the exception.
56        */
57        ESCRIPT_DLL_API
58        DataException(const std::string &str) : Parent(str) { updateMessage();}
59        /**
60        \brief
61        Copy Constructor for the exception.
62        */
63        ESCRIPT_DLL_API
64        DataException(const DataException &other) : Parent(other)
65          {
66            updateMessage();
67          }
68    
69        ESCRIPT_DLL_API
70        inline DataException &
71        operator=(const DataException &other ) THROW_ANY
72           {
73             Parent::operator=(other);
74             updateMessage();
75             return *this;
76           }
77    
78    
79        /// Destructor
80        ESCRIPT_DLL_API
81        virtual ~DataException() THROW_ANY {}
82    
83        /**
84        \brief
85        Returns the name of the exception.
86        */
87        ESCRIPT_DLL_API
88        virtual const std::string & exceptionName() const;
89    
90      private:
91    
92        //
93        // the exception name is immutable and class-wide.
94        // Inheritor note; you need one of these too.
95        // and an overloaded exceptionName() in your .cpp implementation file.
96        static const std::string exceptionNameValue;
97    
98    /**  
99       \brief    };
      Returns the name of the exception.  
   */  
   ESCRIPT_DLL_API  
   virtual std::string exceptionName() const {return "DataException";}  
 };  
100    
101  } // end of namespace  } // end of namespace
102    
103    
104  #endif  #endif

Legend:
Removed from v.1388  
changed lines
  Added in v.1649

  ViewVC Help
Powered by ViewVC 1.1.26