xpmgr/BuildTools/Include/dxva2trace.h

156 lines
4.7 KiB
C

//------------------------------------------------------------------------------
// File: dxva2Trace.h
//
// Desc: DirectX Video Acceleration 2 header file for ETW data
//
// Copyright (c) 1999 - 2005, Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
#ifndef __inc_dxva2Trace_h
#define __inc_dxva2Trace_h
#ifdef __cplusplus
extern "C" {
#endif
DEFINE_GUID(DXVA2Trace_Control, 0xa0386e75,0xf70c,0x464c,
0xa9, 0xce, 0x33, 0xc4, 0x4e, 0x09, 0x16, 0x23);
// -------------------------------------------------------------------------
// DXVA2 Video Decoder ETW definitions
//
// There are event for:
// Device creation
// Device destruction
//
// When the device is being used there are events for:
// Begin frame
// Begin execute
// End execute
// End frame
// -------------------------------------------------------------------------
//
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
ULONGLONG pD3DDevice;
GUID DeviceGuid;
ULONG Width;
ULONG Height;
BOOL Enter;
} DXVA2Trace_DecodeDevCreatedData;
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
BOOL Enter;
} DXVA2Trace_DecodeDeviceData;
typedef DXVA2Trace_DecodeDeviceData DXVA2Trace_DecodeDevDestroyedData;
typedef DXVA2Trace_DecodeDeviceData DXVA2Trace_DecodeDevExecuteData;
typedef DXVA2Trace_DecodeDeviceData DXVA2Trace_DecodeDevEndFrameData;
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
ULONGLONG pRenderTarget;
BOOL Enter;
} DXVA2Trace_DecodeDevBeginFrameData;
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
UINT BufferType;
BOOL Enter;
} DXVA2Trace_DecodeDevGetBufferData;
DEFINE_GUID(DXVA2Trace_DecodeDevCreated, 0xb4de17a1,0xc5b2,0x44fe,
0x86, 0xd5, 0xd9, 0x7a, 0x64, 0x81, 0x14, 0xff);
DEFINE_GUID(DXVA2Trace_DecodeDevDestroyed, 0x853ebdf2,0x4160,0x421d,
0x88, 0x93, 0x63, 0xdc, 0xea, 0x4f, 0x18, 0xbb);
DEFINE_GUID(DXVA2Trace_DecodeDevBeginFrame, 0x9fd1acf6,0x44cb,0x4637,
0xbc, 0x62, 0x2c, 0x11, 0xa9, 0x60, 0x8f, 0x90);
DEFINE_GUID(DXVA2Trace_DecodeDevExecute,0x850aeb4c,0xd19a,0x4609,
0xb3, 0xb4, 0xbc, 0xbf, 0x0e, 0x22, 0x12, 0x1e);
DEFINE_GUID(DXVA2Trace_DecodeDevGetBuffer,0x57b128fb,0x72cb,0x4137,
0xa5, 0x75, 0xd9, 0x1f, 0xa3, 0x16, 0x08, 0x97);
DEFINE_GUID(DXVA2Trace_DecodeDevEndFrame, 0x9fb3cb33,0x47dc,0x4899,
0x98, 0xc8, 0xc0, 0xc6, 0xcd, 0x7c, 0xd3, 0xcb);
// -------------------------------------------------------------------------
// DXVA2 Video Processing ETW definitions
//
// There are event for:
// Device creation
// Device destruction
//
// When the device is being used there are events for:
// Begin VideoProcessBlt
// End VideoProcessBlt
// -------------------------------------------------------------------------
//
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
ULONGLONG pD3DDevice;
GUID DeviceGuid;
ULONG RTFourCC;
ULONG Width;
ULONG Height;
BOOL Enter;
} DXVA2Trace_VideoProcessDevCreatedData;
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
BOOL Enter;
} DXVA2Trace_VideoProcessDeviceData;
typedef DXVA2Trace_VideoProcessDeviceData DXVA2Trace_VideoProcessDevDestroyedData;
typedef DXVA2Trace_VideoProcessDeviceData DXVA2Trace_VideoProcessBltEndData;
typedef struct {
#ifndef DXVA2Trace_PostProcessing
EVENT_TRACE_HEADER wmiHeader;
#endif
ULONGLONG pObject;
ULONGLONG pRenderTarget;
ULONGLONG TargetFrameTime;
RECT TargetRect;
BOOL Enter;
} DXVA2TraceVideoProcessBltData;
#define DXVA2TraceVideoProcessBltDataData DXVA2TraceVideoProcessBltData;
DEFINE_GUID(DXVA2Trace_VideoProcessDevCreated, 0x895508c6,0x540d,0x4c87,
0x98, 0xf8, 0x8d, 0xcb, 0xf2, 0xda, 0xbb, 0x2a);
DEFINE_GUID(DXVA2Trace_VideoProcessDevDestroyed, 0xf97f30b1,0xfb49,0x42c7,
0x8e, 0xe8, 0x88, 0xbd, 0xfa, 0x92, 0xd4, 0xe2);
DEFINE_GUID(DXVA2Trace_VideoProcessBlt, 0x69089cc0,0x71ab,0x42d0,
0x95, 0x3a, 0x28, 0x87, 0xbf, 0x05, 0xa8, 0xaf);
#ifdef __cplusplus
}
#endif
#endif