Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
EventPipeEventProvider.cs
Go to the documentation of this file.
2
4{
6
7 unsafe uint IEventProvider.EventRegister(EventSource eventSource, Interop.Advapi32.EtwEnableCallback enableCallback, void* callbackContext, ref long registrationHandle)
8 {
9 uint result = 0u;
10 m_provHandle = EventPipeInternal.CreateProvider(eventSource.Name, enableCallback);
12 {
13 registrationHandle = 1L;
14 }
15 else
16 {
17 result = 1u;
18 }
19 return result;
20 }
21
22 uint IEventProvider.EventUnregister(long registrationHandle)
23 {
25 return 0u;
26 }
27
28 unsafe EventProvider.WriteEventErrorCode IEventProvider.EventWriteTransfer(long registrationHandle, in EventDescriptor eventDescriptor, IntPtr eventHandle, Guid* activityId, Guid* relatedActivityId, int userDataCount, EventProvider.EventData* userData)
29 {
30 if (eventHandle != IntPtr.Zero)
31 {
32 if (userDataCount == 0)
33 {
34 EventPipeInternal.WriteEventData(eventHandle, null, 0u, activityId, relatedActivityId);
36 }
37 if (eventDescriptor.Channel == 11)
38 {
39 userData += 3;
40 userDataCount -= 3;
41 }
42 EventPipeInternal.WriteEventData(eventHandle, userData, (uint)userDataCount, activityId, relatedActivityId);
43 }
45 }
46
47 unsafe IntPtr IEventProvider.DefineEventHandle(uint eventID, string eventName, long keywords, uint eventVersion, uint level, byte* pMetadata, uint metadataLength)
48 {
49 return EventPipeInternal.DefineEvent(m_provHandle, eventID, keywords, eventVersion, level, pMetadata, metadataLength);
50 }
51
52 internal static int EventActivityIdControl(Interop.Advapi32.ActivityControl ControlCode, ref Guid ActivityId)
53 {
54 return EventPipeInternal.EventActivityIdControl((uint)ControlCode, ref ActivityId);
55 }
56}
unsafe delegate void EtwEnableCallback(in Guid sourceId, int isEnabled, byte level, long matchAnyKeywords, long matchAllKeywords, EVENT_FILTER_DESCRIPTOR *filterData, void *callbackContext)
static int EventActivityIdControl(Interop.Advapi32.ActivityControl ControlCode, ref Guid ActivityId)
static unsafe void WriteEventData(IntPtr eventHandle, EventProvider.EventData *pEventData, uint dataCount, Guid *activityId, Guid *relatedActivityId)
static int EventActivityIdControl(uint controlCode, ref Guid activityId)
static void DeleteProvider(IntPtr provHandle)
static unsafe IntPtr DefineEvent(IntPtr provHandle, uint eventID, long keywords, uint eventVersion, uint level, void *pMetadata, uint metadataLength)
static IntPtr CreateProvider(string providerName, Interop.Advapi32.EtwEnableCallback callbackFunc)
unsafe uint EventRegister(EventSource eventSource, Interop.Advapi32.EtwEnableCallback enableCallback, void *callbackContext, ref long registrationHandle)
unsafe EventProvider.WriteEventErrorCode EventWriteTransfer(long registrationHandle, in EventDescriptor eventDescriptor, IntPtr eventHandle, Guid *activityId, Guid *relatedActivityId, int userDataCount, EventProvider.EventData *userData)
uint EventUnregister(long registrationHandle)
unsafe IntPtr DefineEventHandle(uint eventID, string eventName, long keywords, uint eventVersion, uint level, byte *pMetadata, uint metadataLength)
static readonly IntPtr Zero
Definition IntPtr.cs:18