00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef NBASEOUTPUT_H
00023 #define NBASEOUTPUT_H
00024
00029 #include "nstring.h"
00030
00034 class DllDeclSpec NBaseOutput {
00035 public:
00039 enum Base {
00040 HEXADECIMAL,
00041 DECIMAL,
00042 OCTAL
00043 };
00044
00048 NBaseOutput(void);
00049
00053 virtual ~NBaseOutput(void);
00054
00060 NBaseOutput &setBase(Base base);
00061
00062 protected:
00067 void print(nint32 val);
00068
00073 void print(nuint32 val);
00074
00075
00080 void print(nint64 val);
00081
00086 void print(nuint64 val);
00087
00092 static void print(double d);
00093
00098 static void print(char c);
00099
00104 static void print(const NString &str);
00105
00110 static void print(const void *ptr);
00111
00112
00120 static void print(const char *str);
00121
00126 static void println(const NString &str);
00127
00128 private:
00129 Base m_base;
00130 };
00131
00132 #endif // NBASEOUTPUT_H