2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
13 #include <WINNT/afsclass.h>
15 #ifndef DEBUG // building retail?
18 #define ASSERT(b) ((b) ? TRUE : FALSE) // take failure paths if retail asserts
21 #else // building debug?
24 #define ASSERT(b) AssertFn(b, #b, __LINE__, __FILE__)
30 typedef unsigned char uchar;
31 typedef unsigned short ushort;
33 #define ANGLES_ON "[AnglesOn]"
34 #define ANGLES_OFF "[AnglesOff]"
35 #define LASTERROR "[LastError]"
39 * DEFINITIONS ________________________________________________________________
51 * TYPEDEFS ___________________________________________________________________
60 Debugstr & operator<< (char *psz);
61 Debugstr & operator<< (void *psz);
62 Debugstr & operator<< (long v);
63 Debugstr & operator<< (size_t v);
64 Debugstr & operator<< (ushort v);
65 Debugstr & operator<< (short v);
66 Debugstr & operator<< (uchar ch);
67 Debugstr & operator<< (char ch);
68 Debugstr & operator<< (double f);
69 Debugstr & operator<< (RECT r);
70 Debugstr & operator<< (LPIDENT lpi);
75 static LRESULT APIENTRY DebugWndProc (HWND, UINT, WPARAM, LPARAM);
77 void OutString (char *str, BOOL fRecord);
85 static void Register (void);
86 static void Initialize (void);
87 void Output (HDC hdc, char *str, BOOL fRecord);
89 static int fRegistered;
93 static ushort gx, gcX;
94 static ushort gy, gcY;
95 static char gdata[ yMAX ][ xMAX ];
107 cdecl LogOut (char *format, ...);
111 char pszFormat[ 256 ];
113 char *aPtr[ MAX_ARGS ];
120 * VARIABLES __________________________________________________________________
124 extern Debugstr debug;
128 * PROTOTYPES _________________________________________________________________
132 extern int AssertFn (int, char *, int, char *);