117 lines
2.2 KiB
Plaintext
117 lines
2.2 KiB
Plaintext
/*++
|
|
|
|
Copyright (c) 2000 Microsoft Corporation
|
|
|
|
Module Name:
|
|
wtrace.idl
|
|
|
|
Abstract:
|
|
This module contains the WinTrace interfaces.
|
|
|
|
Author:
|
|
Michael Tsang (MikeTs) 29-Jun-2000
|
|
|
|
Environment:
|
|
User mode
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
import "WTypes.idl";
|
|
|
|
[
|
|
uuid(5484d3bb-d1f6-47fd-93c1-130252f31660),
|
|
version(1.0),
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface WTServer
|
|
{
|
|
//
|
|
// Implementation constants
|
|
//
|
|
const int MAX_PROCNAME_LEN = 32;
|
|
const int NUM_TRIGPTS = 10;
|
|
|
|
typedef struct _SETTINGS
|
|
{
|
|
int iVerboseLevel;
|
|
int iTraceLevel;
|
|
DWORD dwfSettings;
|
|
} SETTINGS, *PSETTINGS;
|
|
|
|
//
|
|
// Settings flags (Settings.dwfSettings)
|
|
//
|
|
const DWORD SETTINGS_TRIGMODE_ENABLED = 0x00000001;
|
|
const DWORD SETTINGS_TRACE_TO_DEBUGGER = 0x00000002;
|
|
|
|
typedef struct _TRIGPT
|
|
{
|
|
char szProcName[MAX_PROCNAME_LEN];
|
|
DWORD dwfTrigPt;
|
|
} TRIGPT, *PTRIGPT;
|
|
|
|
//
|
|
// Trigger Point flags (TrigPt.dwfTrigPt)
|
|
//
|
|
const DWORD TRIGPT_TRACE_ENABLED = 0x00000001;
|
|
const DWORD TRIGPT_BREAK_ENABLED = 0x00000002;
|
|
|
|
typedef struct _CLIENTINFO
|
|
{
|
|
SETTINGS Settings;
|
|
TRIGPT TrigPts[NUM_TRIGPTS];
|
|
} CLIENTINFO, *PCLIENTINFO;
|
|
|
|
typedef DWORD_PTR HCLIENT;
|
|
|
|
HCLIENT
|
|
WTRegisterClient(
|
|
[in] handle_t hBinding,
|
|
[in,string] unsigned char *pszClientName
|
|
);
|
|
|
|
void
|
|
WTDeregisterClient(
|
|
[in] handle_t hBinding,
|
|
[in] HCLIENT hClient
|
|
);
|
|
|
|
void
|
|
WTTraceProc(
|
|
[in] handle_t hBinding,
|
|
[in] HCLIENT hClient,
|
|
[in] DWORD dwThreadId,
|
|
[in] int iIndentLevel,
|
|
[in,string] unsigned char *pszText
|
|
);
|
|
|
|
void
|
|
WTTraceMsg(
|
|
[in] handle_t hBinding,
|
|
[in] HCLIENT hClient,
|
|
[in,string] unsigned char *pszMsg
|
|
);
|
|
|
|
void
|
|
WTDispatchServerRequests(
|
|
[in] handle_t hBinding,
|
|
[in] HCLIENT hClient
|
|
);
|
|
|
|
[callback]
|
|
void
|
|
WTGetClientInfo(
|
|
[out] PCLIENTINFO ClientInfo
|
|
);
|
|
|
|
[callback]
|
|
void
|
|
WTSetClientInfo(
|
|
[in] PCLIENTINFO ClientInfo
|
|
);
|
|
|
|
}
|