|
|
//0c2c06fa Generated File. Do not edit.
// File created by WPP compiler version 0.01-Sat Apr 1 17:27:32 2000
// on 07/22/2000 at 04:41:51 UTC
//
// Source files: name_table.c prefix.c.
#ifndef _WPP_H_
#define _WPP_H_
#define _DFS_ENABLE_USER_AGENT 0x0001
#define _DFS_ENABLE_ERRORS 0x0002
#define _DFS_ENABLE_PREFIX 0x0004
#define _DFS_ENABLE_RPC 0x0008
#define _DFS_ENABLE_REFERRAL_SERVER 0x0010
#define _DFS_ENABLE_UNUSED11 0x0020
#define _DFS_ENABLE_UNUSED10 0x0040
#define _DFS_ENABLE_UNUSED9 0x0080
#define _DFS_ENABLE_UNUSED8 0x0100
#define _DFS_ENABLE_UNUSED7 0x0200
#define _DFS_ENABLE_UNUSED6 0x0400
#define _DFS_ENABLE_UNUSED5 0x0800
#define _DFS_ENABLE_UNUSED4 0x1000
#define _DFS_ENABLE_UNUSED3 0x2000
#define _DFS_ENABLE_UNUSED2 0x4000
#define _DFS_ENABLE_UNUSED1 0x8000
#define _LEVEL_HIGH 0x1
#define _LEVEL_NORM 0x2
#define _LEVEL_LOW 0x4
#define LOG_FLAGS(_flag) _DFS_ENABLE_ ## _flag
#define LOG_ENABLED( _level, _flags) \
(( DfsRtlWmiReg.EnableLevel >= (_level) ) && \ ( DfsRtlWmiReg.EnableFlags & _flags )) #define DFS_LOG_ENABLED(_ArrayPrefix_, _Id_, _level, _flags) \
((_ArrayPrefix_ ## ControlGuids[0].EnableFlags & _flags ) && \ (_ArrayPrefix_ ## ControlGuids[0].EnableLevel >= (_level))) #define DFS_LOG(_level, _flags, _id, _arg) \
{ \ if ( DFS_LOG_ENABLED(PrefixLib_, _id, _level, _flags) ) { \ WmlData.Trace( WPP_MSG_NO(_id), \ &WPP_TRACE_GUID(PrefixLib_,_id) , \ PrefixLib_ ## ControlGuids[0].LoggerHandle, _arg 0); \ } \ }
#define SET_LIB_TRACE(_prefix) \
_prefix ## ControlGuids = PrefixLib_ ## ControlGuids;
#define DFS_TRACE_NORM(_flags, _msg, _args) \
DFS_LOG(_LEVEL_NORM, LOG_FLAGS(_flags), MSG_ID_WPP_AUTO_ID, _args) #define DFS_TRACE_LOW(_flags, _msg, _args) \
DFS_LOG(_LEVEL_LOW, LOG_FLAGS(_flags), MSG_ID_WPP_AUTO_ID, _args) #define DFS_TRACE_HIGH( _flag, _msg, _arg) \
DFS_LOG(_LEVEL_HIGH, LOG_FLAGS(_flag), MSG_ID_WPP_AUTO_ID, _arg)
#define DFS_TRACE_ERROR_NORM(_status, _flag, _msg, _arg) \
DFS_LOG(_LEVEL_NORM, (LOG_FLAGS(_flag) | (NT_ERROR(_status) ? LOG_FLAGS(ERRORS) : 0)), MSG_ID_WPP_AUTO_ID, _arg)
#define DFS_TRACE_ERROR_HIGH(_status, _flag, _msg, _arg) \
DFS_LOG(_LEVEL_HIGH, (LOG_FLAGS(_flag) | (NT_ERROR(_status) ? LOG_FLAGS(ERRORS) : 0)), MSG_ID_WPP_AUTO_ID, _arg)
#define DFS_TRACE_ERROR_LOW(_status, _flag, _msg, _arg) \
DFS_LOG(_LEVEL_LOW, (LOG_FLAGS(_flag) | (NT_ERROR(_status) ? LOG_FLAGS(ERRORS) : 0)), MSG_ID_WPP_AUTO_ID, _arg)
enum WPP_FILES {WPP_FILE_name_table_c,WPP_FILE_prefix_c,};
//
// Unless disabled, WPP selects one of the source
// files as a "guid store". That file will have definitions
// of trace and control arrays
//
#if defined(NAME_TABLE_C)
#define WPP_DEFINE_ARRAYS
#endif
# define WPP_CONTROL_GUID_ARRAY PrefixLib_ControlGuids
//
// Define default flavors of the trace macro
//
#if defined(WMLUM_H)
extern WML_DATA WmlData; # define WPP_TRACE_MESSAGE(_lh,_fl,_guid,_id,_msg,_arg) (*WmlData.Trace)(_id,&_guid,_lh,_arg)
# define WPP_DECLARE_CONTROL_GUIDS
#elif defined(WMLKM_H)
# define WPP_TRACE_MESSAGE(_lh,_fl,_guid,_id,_msg,_arg) WmlTrace(_id,&_guid,_lh,_arg)
# define WPP_DECLARE_CONTROL_GUIDS
#else
# define WPP_PTRLEN
# define WPP_USE_WmiTraceMessage
# if defined(WPP_KERNEL_MODE)
# define WPP_WMI_TRACE_MESSAGE WmiTraceMessage
# else
# define WPP_WMI_TRACE_MESSAGE TraceMessage
# endif
# define WPP_TRACE_MESSAGE(_lh,_fl,_guid,_id,_msg,_arg) WPP_WMI_TRACE_MESSAGE(_lh,_fl,_guid,_id,_arg)
#endif
#if defined(WPP_DEFINE_ARRAYS)
# define WPP_DEFINE_TRACE_GUIDS
# define WPP_DEFINE_CONTROL_GUIDS
#endif
#define NOARGS // Yep. No args, alright.
#define LOGNOTHING 0,
# define WPP_DEFINE_GRP_ID(_a,_b) ( ((_a) << 16) | ( _b) )
# define WPP_CTRL_FLAGS(_id) (1 << ((_id) & 0xFFFF) )
# define WPP_CTRL_GUID_NO(_id) ((_id) >> 16)
# define WPP_DEFINE_MSG_ID(_a,_b) ( ((_a) << 16) | ( _b) )
# define WPP_MSG_NO(_id) ((_id) & 0xFFFF)
# define WPP_TRACE_GUID_NO(_id) ((_id) >> 16)
#define WPP_TRACE_GUID(_ArrayPrefix_,_Id_) (_ArrayPrefix_ ## TraceGuids[ WPP_TRACE_GUID_NO(_Id_) ] )
#define WPP_LOGGER_HANDLE(_ArrayPrefix_,_Id_) (_ArrayPrefix_ ## ControlGuids[ WPP_CTRL_GUID_NO(_Id_) ].LoggerHandle )
#define WPP_ENABLED(_ArrayPrefix_,_Id_) \
(_ArrayPrefix_ ## ControlGuids[ WPP_CTRL_GUID_NO(_Id_) ].EnableFlags & WPP_CTRL_FLAGS(_Id_) )
#define LOGARSTR(_Value_) WPP_LOGASTR( _Value_ )
#define LOGBOOLEAN(_Value_) WPP_LOGTYPEVAL(signed char, _Value_ )
#define LOGPTR(_Value_) WPP_LOGTYPEVAL(void*, _Value_ )
#define LOGSTATUS(_Value_) WPP_LOGTYPEVAL(signed int, _Value_ )
# define MSG_ID_prefix_c114 WPP_DEFINE_MSG_ID(0,11)
# define MSG_ID_prefix_c163 WPP_DEFINE_MSG_ID(0,12)
# define MSG_ID_prefix_c69 WPP_DEFINE_MSG_ID(0,10)
extern GUID PrefixLib_TraceGuids[]; #define PrefixLib_TraceGuids_len 1 // I don't think we need this [BUGBUG]
#if defined(WPP_DECLARE_CONTROL_GUIDS)
extern WML_CONTROL_GUID_REG WPP_CONTROL_GUID_ARRAY[]; #endif
#ifdef WPP_DEFINE_TRACE_GUIDS
#if 1 // if # traceguids > 0
GUID PrefixLib_TraceGuids[] = { // 0da06be7-a84a-4d9b-be44-70a2e7917f35 prefix.c
{0x0da06be7,0xa84a,0x4d9b,{0xbe,0x44,0x70,0xa2,0xe7,0x91,0x7f,0x35}}, // prefix.c
}; #endif
#endif // WPP_DEFINE_TRACE_GUIDS
#if defined(WMLUM_H)
# define WPP_INIT_TRACING_SIMPLE_EX(AppName, PrintFunc) \
do { \ DWORD status; \ LOADWML(status, WmlData); \ SetupReg( \ AppName, \ L"%SystemRoot%\\PrefixLib_.log",\ ); \ if (status == ERROR_SUCCESS) { \ status = (*WmlData.Initialize)( \ AppName, \ PrintFunc, \ &WPP_CONTROL_GUID_ARRAY[0]); \ } \ } while(0) # define WPP_INIT_TRACING_SIMPLE(AppName) WPP_INIT_TRACING_SIMPLE_EX(AppName, NULL)
#endif
#ifdef WPP_DEFINE_CONTROL_GUIDS
#if defined(WMLUM_H)
WML_DATA WmlData; #endif
# if 0 == 0 // if # CtrlGuids == 0
WML_CONTROL_GUID_REG WPP_CONTROL_GUID_ARRAY[1]; # else
WML_CONTROL_GUID_REG WPP_CONTROL_GUID_ARRAY[] = { }; #endif
#endif // WPP_DEFINE_CONTROL_GUIDS
#define WPP_DEFAULT_GROUP_ID WPP_DEFINE_GRP_ID(0,0)
#if !defined(DFS_TRACE_ERROR_HIGH)
#define DFS_TRACE_ERROR_HIGH(_unknown1, _unknown2, MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(DFS_TRACE_ERROR_LOW)
#define DFS_TRACE_ERROR_LOW(_unknown1, _unknown2, MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(DFS_TRACE_ERROR_NORM)
#define DFS_TRACE_ERROR_NORM(_unknown1, _unknown2, MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(DFS_TRACE_HIGH)
#define DFS_TRACE_HIGH(_unknown1, MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(DFS_TRACE_LOW)
#define DFS_TRACE_LOW(_unknown1, MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(DFS_TRACE_NORM)
#define DFS_TRACE_NORM(_unknown1, MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(SimpleTrace)
#define SimpleTrace(MSG, ARG) WPP_LOG(PrefixLib_, WPP_DEFAULT_GROUP_ID, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if !defined(SimpleTraceEx)
#define SimpleTraceEx(GRP, MSG, ARG) WPP_LOG(PrefixLib_, GRP, MSG_ID_ ## WPP_AUTO_ID, MSG, ARG -0)
#endif
#if 0 // Real check is done in elif
#elif defined(NAME_TABLE_C) // name_table.c
# define WPP_THIS_FILE name_table_c
#elif defined(PREFIX_C) // prefix.c
# define WPP_THIS_FILE prefix_c
#endif
#define WPP_EVAL(_value_) _value_
#define MSG_ID_WPP_AUTO_ID WPP_EVAL(MSG_ID_) ## WPP_EVAL(WPP_THIS_FILE) ## WPP_EVAL(__LINE__)
//
// WPP_CHECKED_ZERO will be expanded to 0, if
// expression _value has the same size as the type _Type,
// or to division by 0, if the sizes are different
//
// This is poor man compile time argument checking. So don't be surprised
// if a compiler will tell you suddenly that you have a division by 0
// in line such and such
//
#define WPP_CHECKED_ZERO(_Value, _Type) \
(0 * (1/(int)!(sizeof(_Type) - sizeof(_Value) )))
#define WPP_CHECKED_SIZEOF(_Value, _Type) \
(sizeof(_Value) + WPP_CHECKED_ZERO( _Value, _Type) )
#if defined(WPP_PTRLEN)
# define WPP_LOGPAIR(_Size, _Addr) (_Addr),(_Size),
#else
# define WPP_LOGPAIR(_Size, _Addr) (_Size),(_Addr),
#endif
# define WPP_LOGTYPEVAL(_Type, _Value) \
WPP_LOGPAIR(WPP_CHECKED_SIZEOF(_Value, _Type), &(_Value))
# define WPP_LOGASTR(_value) \
WPP_LOGPAIR( strlen(_value) + WPP_CHECKED_SIZEOF((_value)[0],CHAR), _value )
# define WPP_LOGWSTR(_value) \
WPP_LOGPAIR( wcslen(_value) * sizeof(WCHAR) + WPP_CHECKED_SIZEOF((_value)[0],WCHAR), _value)
# define WPP_LOGCSTR(_x) \
WPP_LOGPAIR( sizeof((_x).Length) + WPP_CHECKED_ZERO(_x,STRING), &(_x).Length ) \ WPP_LOGPAIR( (_x).Length, (_x).Buffer )
# define WPP_LOGUSTR(_x) \
WPP_LOGPAIR( WPP_CHECKED_SIZEOF((_x).Length, short) \ + WPP_CHECKED_ZERO((_x),UNICODE_STRING), &(_x).Length) \ WPP_LOGPAIR( (_x).Length, (_x).Buffer )
# define WPP_LOG(_ArrayPrefix_, _Group_, _Id_, _Msg_, _Args_) \
if (!WPP_ENABLED(_ArrayPrefix_, _Group_)) {;} else \ WPP_TRACE_MESSAGE(WPP_LOGGER_HANDLE(_ArrayPrefix_, _Group_), \ WPP_TRACE_FLAGS, \ WPP_TRACE_GUID(_ArrayPrefix_,_Id_), \ WPP_MSG_NO(_Id_), _Msg_, _Args_)
#endif // _WPP_H_
|