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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2548 - (hide annotations)
Mon Jul 20 06:20:06 2009 UTC (10 years, 2 months ago) by jfenwick
File MIME type: text/plain
File size: 2231 byte(s)
Updating copyright notices
1 jgs 474
2 ksteube 1312 /*******************************************************
3 ksteube 1811 *
4 jfenwick 2548 * Copyright (c) 2003-2009 by University of Queensland
5 ksteube 1811 * Earth Systems Science Computational Center (ESSCC)
6     * http://www.uq.edu.au/esscc
7     *
8     * Primary Business: Queensland, Australia
9     * Licensed under the Open Software License version 3.0
10     * http://www.opensource.org/licenses/osl-3.0.php
11     *
12     *******************************************************/
13 ksteube 1312
14 ksteube 1811
15 jgs 82 #if !defined escript_DataException_20040324_H
16     #define escript_DataException_20040324_H
17 woo409 757 #include "system_dep.h"
18 jgs 82
19 robwdcock 682 #include "esysUtils/EsysException.h"
20 jgs 474
21 phornby 1455 namespace escript
22     {
23 jgs 82
24 phornby 1455 /**
25     \brief
26     DataException exception class.
27 jgs 82
28 phornby 1455 Description:
29     DataException exception class.
30     The class provides a public function returning the exception name
31     */
32     class DataException : public esysUtils::EsysException
33     {
34 jgs 82
35 phornby 1455 protected:
36 jgs 82
37 phornby 1455 typedef EsysException Parent;
38 phornby 1020
39 phornby 1455 public:
40     /**
41     \brief
42     Default constructor for the exception.
43     */
44     ESCRIPT_DLL_API
45     DataException() : Parent() { updateMessage();}
46     /**
47     \brief
48     Constructor for the exception.
49     */
50     ESCRIPT_DLL_API
51     DataException(const char *cstr) : Parent(cstr) { updateMessage();}
52     /**
53     \brief
54     Constructor for the exception.
55     */
56     ESCRIPT_DLL_API
57     DataException(const std::string &str) : Parent(str) { updateMessage();}
58     /**
59     \brief
60     Copy Constructor for the exception.
61     */
62     ESCRIPT_DLL_API
63     DataException(const DataException &other) : Parent(other)
64     {
65     updateMessage();
66     }
67 phornby 1020
68 phornby 1628 ESCRIPT_DLL_API
69 phornby 1649 inline DataException &
70 phornby 2019 operator=(const DataException &other ) THROW(NO_ARG)
71 phornby 1628 {
72     Parent::operator=(other);
73     updateMessage();
74     return *this;
75     }
76 jgs 82
77 phornby 1628
78 phornby 1455 /// Destructor
79     ESCRIPT_DLL_API
80 phornby 2019 virtual ~DataException() THROW(NO_ARG) {}
81 phornby 1455
82     /**
83     \brief
84     Returns the name of the exception.
85     */
86     ESCRIPT_DLL_API
87     virtual const std::string & exceptionName() const;
88    
89     private:
90    
91     //
92     // the exception name is immutable and class-wide.
93     // Inheritor note; you need one of these too.
94     // and an overloaded exceptionName() in your .cpp implementation file.
95     static const std::string exceptionNameValue;
96    
97    
98     };
99    
100 jgs 82 } // end of namespace
101 phornby 1455
102    
103 jgs 82 #endif

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.26