9 /* Add ROS Master debug functions if not added yet */
10 #ifndef __INTERNAL_DEBUG
16 #include <reactos/debug.h>
20 #if !defined(_MSC_VER) || _MSC_VER < 8
21 #define __FUNCTION__ ""
23 #define inline __inline
26 unsigned long DbgPrint(char *Format
,...);
30 /* Exported definitions and macros */
32 /* These function return a printable version of a string, including
33 quotes. The string will be valid for some time, but not indefinitely
34 as strings are re-used. */
35 extern const char *wine_dbgstr_w( const WCHAR
*s
);
36 extern const char *wine_dbgstr_an( const char * s
, int n
);
37 extern const char *wine_dbgstr_wn( const wchar_t *s
, int n
);
38 extern const char *wine_dbgstr_guid( const struct _GUID
*id
);
39 extern const char *wine_dbgstr_longlong( unsigned long long ll
);
40 extern const char *wine_dbg_sprintf( const char *format
, ... );
42 inline static const char *debugstr_an( const char * s
, int n
) { return wine_dbgstr_an( s
, n
); }
43 inline static const char *debugstr_wn( const wchar_t *s
, int n
) { return wine_dbgstr_wn( s
, n
); }
44 inline static const char *debugstr_guid( const struct _GUID
*id
) { return wine_dbgstr_guid(id
); }
45 inline static const char *debugstr_a( const char *s
) { return wine_dbgstr_an( s
, 80 ); }
46 inline static const char *debugstr_w( const wchar_t *s
) { return wine_dbgstr_wn( s
, 80 ); }
47 inline static const char *debugres_a( const char *s
) { return wine_dbgstr_an( s
, 80 ); }
48 inline static const char *debugres_w( const wchar_t *s
) { return wine_dbgstr_wn( s
, 80 ); }
50 static inline const char *wine_dbgstr_point( const POINT
*pt
)
52 if (!pt
) return "(null)";
53 return wine_dbg_sprintf( "(%ld,%ld)", pt
->x
, pt
->y
);
56 static inline const char *wine_dbgstr_size( const SIZE
*size
)
58 if (!size
) return "(null)";
59 return wine_dbg_sprintf( "(%ld,%ld)", size
->cx
, size
->cy
);
62 static inline const char *wine_dbgstr_rect( const RECT
*rect
)
64 if (!rect
) return "(null)";
65 return wine_dbg_sprintf( "(%ld,%ld)-(%ld,%ld)", rect
->left
, rect
->top
, rect
->right
, rect
->bottom
);
69 #define TRACE_(ch) DPRINT
71 #define TRACE_ON(ch) 0
73 #define TRACE_ON(ch) 1
76 #define WINE_TRACE DPRINT
77 #define WINE_TRACE_(ch) DPRINT
79 #define WINE_TRACE_ON(ch) 0
81 #define WINE_TRACE_ON(ch) 1
85 #define WARN_(ch) DPRINT
96 #define FIXME_(ch) DPRINT1
98 #define FIXME_ON(ch) 0
100 #define FIXME_ON(ch) 1
106 #define WINE_FIXME DPRINT1
107 #define WINE_FIXME_(ch) DPRINT1
109 #define WINE_FIXME_ON(ch) 0
111 #define WINE_FIXME_ON(ch) 1
115 #define ERR_(ch) DPRINT1
122 #define WINE_ERR DPRINT1
123 #define WINE_ERR_(ch) DPRINT1
125 #define WINE_ERR_ON(ch) 0
127 #define WINE_ERR_ON(ch) 1
130 #define DECLARE_DEBUG_CHANNEL(ch)
131 #define DEFAULT_DEBUG_CHANNEL(ch)
133 #define WINE_DECLARE_DEBUG_CHANNEL(ch) DECLARE_DEBUG_CHANNEL(ch)
134 #define WINE_DEFAULT_DEBUG_CHANNEL(ch) DEFAULT_DEBUG_CHANNEL(ch)
136 #define DPRINTF DPRINT
137 #define MESSAGE DPRINT
139 #endif /* __WINE_DEBUG_H */