00001 #ifndef _CTBretcode_HXX
00002 #define _CTBretcode_HXX 1
00003
00008
00009
00010
00011
00012
00013
00014
00015
00016 class CTBretcode {
00017 public:
00018
00019 CTBretcode();
00020 CTBretcode(int i_code);
00021 CTBretcode(int i_code, const char* c_text1);
00022 CTBretcode(int i_code, const char* c_text1,
00023 const char* c_text2);
00024 CTBretcode(int i_code, const char* c_text1,
00025 const char* c_text2, const char* c_text3);
00026
00027 CTBretcode(int i_code, int i_errno);
00028 CTBretcode(int i_code, const char* c_text1,
00029 int i_errno);
00030
00031 CTBretcode(int i_code, const CTBretcode& rc);
00032 CTBretcode(int i_code, const char* c_text1,
00033 const CTBretcode& rc);
00034
00035 CTBretcode(const CTBretcode& rhs);
00036
00037 void Set(int i_code);
00038 void Set(int i_code, const char* c_text1);
00039 void Set(int i_code, const char* c_text1,
00040 const char* c_text2);
00041 void Set(int i_code, const char* c_text1,
00042 const char* c_text2, const char* c_text3);
00043
00044 void Set(int i_code, int i_errno);
00045 void Set(int i_code, const char* c_text1,
00046 int i_errno);
00047
00048 void Set(int i_code, const CTBretcode& rc);
00049 void Set(int i_code, const char* c_text1,
00050 const CTBretcode& rc);
00051
00052 int Code() const;
00053 int Errno() const;
00054 const char* Text1() const;
00055 const char* Text2() const;
00056 const char* Text3() const;
00057
00058 void ToStream(ostream& os = cout) const;
00059
00060 bool operator!() const;
00061
00062 operator int() const;
00063 operator const char* () const;
00064
00065 CTBretcode& operator=(const CTBretcode& rhs);
00066 CTBretcode& operator=(int i_code);
00067
00068 private:
00069
00070 int mi_code;
00071 int mi_errno;
00072 const char* mc_text1;
00073 const char* mc_text2;
00074 const char* mc_text3;
00075 };
00076
00077 ostream& operator<<(ostream& os, const CTBretcode& obj);
00078
00079
00080
00081 #if !(defined(CTB__OutLine) || defined(CTBretcode__OutLine))
00082 #include "CTBretcode.icc"
00083 #endif
00084
00085 #endif