00001
#if !defined (__SEMAPHOREEXCEPTION_HPP)
00002
#define __SEMAPHOREEXCEPTION_HPP
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
#if !defined(__COMMON_HPP)
00025
#include <Common.hpp>
00026
#endif
00027
00028
namespace corelinux
00029 {
00030
00031
00032 DECLARE_CLASS( SemaphoreException );
00033
00039 class SemaphoreException :
public Exception
00040 {
00041
00042
public:
00043
00053
SemaphoreException
00054 (
00055 CharCptr why,
00056 CharCptr file,
00057 LineNum line,
00058 Severity severity = Exception::CONTINUABLE,
00059
bool outOfMemory =
false ,
00060 Int errNum = 0
00061 );
00062
00068
SemaphoreException(
SemaphoreExceptionCref );
00069
00071
00072
virtual ~SemaphoreException(
void );
00073
00074
00075
00076
00077
00084
SemaphoreExceptionRef operator=(
SemaphoreExceptionCref );
00085
00092
bool operator==(
SemaphoreExceptionCref )
const;
00093
00094
00095
00096
00097
00098 IntCref getErrNum(
void )
const;
00099
00100
00101
00102
00103
00104
00105
protected:
00106
00115
SemaphoreException
00116 (
00117 CharCptr file,
00118 LineNum line,
00119 Severity severity = Exception::CONTINUABLE,
00120
bool outOfMemory =
false ,
00121 Int errNum = 0
00122 );
00123
00130
SemaphoreException(
void );
00131
00132
00133
private:
00134
00135 Int theErrorNumberFromKernel;
00136
00137 };
00138
00139 }
00140
00141
00142
#endif // !defined __SemaphoreEXCEPTION_HPP
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153