00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00028 #ifndef _RTXDIAG_H_
00029 #define _RTXDIAG_H_
00030
00031 #include <stdarg.h>
00032 #include "rtxsrc/rtxContext.h"
00033 #include "rtxsrc/rtxPrintToStream.h"
00034
00035 #ifdef __cplusplus
00036 extern "C" {
00037 #endif
00038
00039
00052 #ifdef _TRACE
00053 #define RTDIAG1(pctxt,msg) rtxDiagPrint(pctxt,msg)
00054 #define RTDIAG2(pctxt,msg,a) rtxDiagPrint(pctxt,msg,a)
00055 #define RTDIAG3(pctxt,msg,a,b) rtxDiagPrint(pctxt,msg,a,b)
00056 #define RTDIAG4(pctxt,msg,a,b,c) rtxDiagPrint(pctxt,msg,a,b,c)
00057 #define RTDIAG5(pctxt,msg,a,b,c,d) rtxDiagPrint(pctxt,msg,a,b,c,d)
00058 #define RTDIAGU(pctxt,ucstr) rtxDiagPrintUCS(pctxt,ucstr)
00059 #define RTHEXDUMP(pctxt,buffer,numocts) rtxDiagHexDump(pctxt,buffer,numocts)
00060 #define RTDIAGCHARS(pctxt,buf,nchars) rtxDiagPrintChars(pctxt,buf,nchars)
00061 #define RTDIAGSTRM2(pctxt,msg) rtxDiagStream(pctxt,msg)
00062 #define RTDIAGSTRM3(pctxt,msg,a) rtxDiagStream(pctxt,msg,a)
00063 #define RTDIAGSTRM4(pctxt,msg,a,b) rtxDiagStream(pctxt,msg,a,b)
00064 #define RTDIAGSTRM5(pctxt,msg,a,b,c) rtxDiagStream(pctxt,msg,a,b,c)
00065 #define RTHEXDUMPSTRM(pctxt,buffer,numocts) \
00066 rtxDiagStreamHexDump(pctxt,buffer,numocts)
00067 #define RTDIAGSCHARS(pctxt,buf,nchars) \
00068 rtxDiagStreamPrintChars(pctxt,buf,nchars)
00069 #else
00070 #define RTDIAG1(pctxt,msg)
00071 #define RTDIAG2(pctxt,msg,a)
00072 #define RTDIAG3(pctxt,msg,a,b)
00073 #define RTDIAG4(pctxt,msg,a,b,c)
00074 #define RTDIAG5(pctxt,msg,a,b,c,d)
00075 #define RTDIAGU(pctxt,ucstr)
00076 #define RTHEXDUMP(pctxt,buffer,numocts)
00077 #define RTDIAGCHARS(pctxt,buf,nchars)
00078 #define RTDIAGSTRM2(pctxt,msg)
00079 #define RTDIAGSTRM3(pctxt,msg,a)
00080 #define RTDIAGSTRM4(pctxt,msg,a,b)
00081 #define RTDIAGSTRM5(pctxt,msg,a,b,c)
00082 #define RTHEXDUMPSTRM(pctxt,buffer,numocts)
00083 #define RTDIAGSCHARS(pctxt,buf,nchars)
00084 #endif
00085
00086 typedef enum {
00087 OSRTDiagError,
00088 OSRTDiagWarning,
00089 OSRTDiagInfo,
00090 OSRTDiagDebug
00091 } OSRTDiagTraceLevel;
00092
00101 EXTERNRT OSBOOL rtxDiagEnabled (OSCTXT* pctxt);
00102
00115 EXTERNRT OSBOOL rtxSetDiag (OSCTXT* pctxt, OSBOOL value);
00116
00117 #ifndef __SYMBIAN32__
00118
00127 EXTERNRT OSBOOL rtxSetGlobalDiag (OSBOOL value);
00128 #endif
00129
00148 EXTERNRT void rtxDiagPrint (OSCTXT* pctxt, const char* fmtspec, ...);
00149
00159 EXTERNRT void rtxDiagStream (OSCTXT* pctxt, const char* fmtspec, ...);
00160
00169 EXTERNRT void rtxDiagHexDump
00170 (OSCTXT* pctxt, const OSOCTET* data, OSUINT32 numocts);
00171
00180 EXTERNRT void rtxDiagStreamHexDump
00181 (OSCTXT* pctxt, const OSOCTET* data, OSUINT32 numocts);
00182
00193 EXTERNRT void rtxDiagPrintChars
00194 (OSCTXT* pctxt, const char* data, OSUINT32 nchars);
00195
00206 EXTERNRT void rtxDiagStreamPrintChars
00207 (OSCTXT* pctxt, const char* data, OSUINT32 nchars);
00208
00219 EXTERNRT void rtxDiagSetTraceLevel (OSCTXT* pctxt, OSRTDiagTraceLevel level);
00220
00225 #ifdef __cplusplus
00226 }
00227 #endif
00228
00229 #endif