00001 #ifndef __J2K__ErrorCode_CPP__ 00002 00003 #define __J2K__ErrorCode_CPP__ 00004 00005 00006 00007 #include <j2k/Fred/Error/ErrorCode.hpp> 00008 00009 00010 00011 ErrorCode::ErrorCode() 00012 00013 : err(Success), PboResp( new BOOL( FALSE ) ) { } 00014 00015 00016 00017 ErrorCode::ErrorCode(const ErrorCode& src) 00018 00019 : err(src.err), PboResp( new BOOL(TRUE) ) 00020 00021 { 00022 00023 *src.PboResp = FALSE; 00024 00025 } 00026 00027 00028 00029 ErrorCode::ErrorCode(const ErrorCodeValue val) 00030 00031 : err( val ), PboResp( new BOOL(TRUE) ) { } 00032 00033 00034 00035 ErrorCode::~ErrorCode() 00036 00037 { 00038 00039 if ( *PboResp ) { 00040 00041 cerr << "Destruction of untested error code: value " << err << endl; 00042 00043 } 00044 00045 00046 00047 delete PboResp; 00048 00049 } 00050 00051 00052 00053 ErrorCode& ErrorCode::operator= (const ErrorCode& right) 00054 00055 { 00056 00057 if (*PboResp) 00058 00059 cerr << "Untested error code (value " << err 00060 00061 << ") erased by new value " << right.err << endl; 00062 00063 00064 00065 err = right.err; 00066 00067 *PboResp = *right.PboResp; 00068 00069 *right.PboResp = FALSE; 00070 00071 00072 00073 return *this; 00074 00075 } 00076 00077 00078 00079 BOOL ErrorCode::operator!= (const ErrorCode& right) const 00080 00081 { 00082 00083 *PboResp = FALSE; 00084 00085 *right.PboResp = FALSE; 00086 00087 00088 00089 return (err != right.err); 00090 00091 } 00092 00093 00094 00095 #endif 00096