2 * Copyright 2010 Hans Leidekker for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
27 #define EVNTAPI DECLSPEC_IMPORT WINAPI
30 #define EVENT_LEVEL_MIN 0x00
31 #define EVENT_LEVEL_MAX 0xff
33 typedef ULONGLONG REGHANDLE
, *PREGHANDLE
;
35 typedef struct _EVENT_DATA_DESCRIPTOR
40 } EVENT_DATA_DESCRIPTOR
, *PEVENT_DATA_DESCRIPTOR
;
42 typedef struct _EVENT_DESCRIPTOR
53 typedef EVENT_DESCRIPTOR
*PEVENT_DESCRIPTOR
;
54 typedef const EVENT_DESCRIPTOR
*PCEVENT_DESCRIPTOR
;
56 typedef struct _EVENT_FILTER_DESCRIPTOR
62 } EVENT_FILTER_DESCRIPTOR
, *PEVENT_FILTER_DESCRIPTOR
;
64 typedef VOID (NTAPI
*PENABLECALLBACK
)(LPCGUID
,ULONG
,UCHAR
,ULONGLONG
,ULONGLONG
,PEVENT_FILTER_DESCRIPTOR
,PVOID
);
66 typedef enum _EVENT_INFO_CLASS
68 EventProviderBinaryTrackInfo
= 0,
69 EventProviderSetTraits
,
70 EventProviderUseDescriptorType
,
74 BOOLEAN EVNTAPI
EventEnabled(REGHANDLE
, PCEVENT_DESCRIPTOR
);
75 BOOLEAN EVNTAPI
EventProviderEnabled(REGHANDLE
, UCHAR
, ULONGLONG
);
76 ULONG EVNTAPI
EventRegister(LPCGUID
,PENABLECALLBACK
,PVOID
,PREGHANDLE
);
77 ULONG EVNTAPI
EventSetInformation(REGHANDLE
, EVENT_INFO_CLASS
, PVOID
, ULONG
);
78 ULONG EVNTAPI
EventUnregister(REGHANDLE
);
79 ULONG EVNTAPI
EventWrite(REGHANDLE
,PCEVENT_DESCRIPTOR
,ULONG
,PEVENT_DATA_DESCRIPTOR
);
80 ULONG EVNTAPI
EventWriteString(REGHANDLE
,UCHAR
,ULONGLONG
,const WCHAR
*);
81 ULONG EVNTAPI
EventWriteTransfer(REGHANDLE
,PCEVENT_DESCRIPTOR
,LPCGUID
,LPCGUID
,ULONG
,PEVENT_DATA_DESCRIPTOR
);
87 #endif /* _EVNTPROV_H_ */