00001 #if !defined (__COMPOSITEEXCEPTION_HPP)
00002 #define __COMPOSITEEXCEPTION_HPP
00003
00004 /*
00005 CoreLinux++
00006 Copyright (C) 2000 CoreLinux Consortium
00007
00008 The CoreLinux++ Library is free software; you can redistribute it and/or
00009 modify it under the terms of the GNU Library General Public License as
00010 published by the Free Software Foundation; either version 2 of the
00011 License, or (at your option) any later version.
00012
00013 The CoreLinux++ Library Library is distributed in the hope that it will
00014 be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00016 Library General Public License for more details.
00017
00018 You should have received a copy of the GNU Library General Public
00019 License along with the GNU C Library; see the file COPYING.LIB. If not,
00020 write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00021 Boston, MA 02111-1307, USA.
00022 */
00023
00024 #if !defined(__COMMON_HPP)
00025 #include <Common.hpp>
00026 #endif
00027
00028 namespace corelinux
00029 {
00030
00031
00032 DECLARE_CLASS( CompositeException );
00033
00039 class CompositeException : public Exception
00040 {
00041
00042 public:
00043
00052 CompositeException
00053 (
00054 CharCptr file,
00055 LineNum line,
00056 Severity severity = Exception::CONTINUABLE,
00057 bool outOfMemory = false
00058 );
00059
00065 CompositeException( CompositeExceptionCref );
00066
00068
00069 virtual ~CompositeException( void );
00070
00071 //
00072 // Operator overloads
00073 //
00074
00081 CompositeExceptionRef operator=( CompositeExceptionCref );
00082
00089 bool operator==( CompositeExceptionCref ) const;
00090
00091 //
00092 // Accessor methods
00093 //
00094
00095
00096 //
00097 // Mutator methods
00098 //
00099
00100
00101 protected:
00102
00112 CompositeException
00113 (
00114 CharCptr why,
00115 CharCptr file,
00116 LineNum line,
00117 Severity severity = Exception::CONTINUABLE,
00118 bool outOfMemory = false
00119 );
00120
00127 CompositeException( void );
00128
00129
00130 private:
00131
00132 private:
00133
00134 };
00135
00136 }
00137
00138
00139 #endif // !defined __COMPOSITEEXCEPTION_HPP
00140
00141 /*
00142 Common rcs information do not modify
00143 $Author: prudhomm $
00144 $Revision: 1.1 $
00145 $Date: 2000/04/23 20:43:13 $
00146 $Locker: $
00147 */
00148
00149
00150