]> git.cworth.org Git - apitrace/blob - d3d9/idirect3d_device9.hpp
Dump flags.
[apitrace] / d3d9 / idirect3d_device9.hpp
1 #pragma once
2
3 class TraceDirect3DDevice9: public IDirect3DDevice9 {
4 public:
5     TraceDirect3DDevice9(IDirect3DDevice9* pOriginal);
6     virtual ~TraceDirect3DDevice9(void);
7
8     // START: The original DX9 function definitions
9     HRESULT __stdcall QueryInterface(REFIID riid, void** ppvObj);
10     ULONG __stdcall AddRef(void);
11     ULONG __stdcall Release(void);
12     HRESULT __stdcall TestCooperativeLevel(void);
13     UINT __stdcall GetAvailableTextureMem(void);
14     HRESULT __stdcall EvictManagedResources(void);
15     HRESULT __stdcall GetDirect3D(IDirect3D9** ppD3D9);
16     HRESULT __stdcall GetDeviceCaps(D3DCAPS9* pCaps);
17     HRESULT __stdcall GetDisplayMode(UINT iSwapChain, D3DDISPLAYMODE* pMode);
18     HRESULT __stdcall GetCreationParameters(D3DDEVICE_CREATION_PARAMETERS *pParameters);
19     HRESULT __stdcall SetCursorProperties(UINT XHotSpot, UINT YHotSpot, IDirect3DSurface9* pCursorBitmap);
20     void __stdcall SetCursorPosition(int X, int Y, DWORD Flags);
21     BOOL __stdcall ShowCursor(BOOL bShow);
22     HRESULT __stdcall CreateAdditionalSwapChain(D3DPRESENT_PARAMETERS* pPresentationParameters, IDirect3DSwapChain9** pSwapChain);
23     HRESULT __stdcall GetSwapChain(UINT iSwapChain, IDirect3DSwapChain9** pSwapChain);
24     UINT __stdcall GetNumberOfSwapChains(void);
25     HRESULT __stdcall Reset(D3DPRESENT_PARAMETERS* pPresentationParameters);
26     HRESULT __stdcall Present(CONST RECT* pSourceRect,CONST RECT* pDestRect,HWND hDestWindowOverride,CONST RGNDATA* pDirtyRegion);
27     HRESULT __stdcall GetBackBuffer(UINT iSwapChain,UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface9** ppBackBuffer);
28     HRESULT __stdcall GetRasterStatus(UINT iSwapChain,D3DRASTER_STATUS* pRasterStatus);
29     HRESULT __stdcall SetDialogBoxMode(BOOL bEnableDialogs);
30     void __stdcall SetGammaRamp(UINT iSwapChain,DWORD Flags,CONST D3DGAMMARAMP* pRamp);
31     void __stdcall GetGammaRamp(UINT iSwapChain,D3DGAMMARAMP* pRamp);
32     HRESULT __stdcall CreateTexture(UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture9** ppTexture,HANDLE* pSharedHandle);
33     HRESULT __stdcall CreateVolumeTexture(UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture9** ppVolumeTexture,HANDLE* pSharedHandle);
34     HRESULT __stdcall CreateCubeTexture(UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture9** ppCubeTexture,HANDLE* pSharedHandle);
35     HRESULT __stdcall CreateVertexBuffer(UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer9** ppVertexBuffer,HANDLE* pSharedHandle);
36     HRESULT __stdcall CreateIndexBuffer(UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer9** ppIndexBuffer,HANDLE* pSharedHandle);
37     HRESULT __stdcall CreateRenderTarget(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle);
38     HRESULT __stdcall CreateDepthStencilSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle);
39     HRESULT __stdcall UpdateSurface(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestinationSurface,CONST POINT* pDestPoint);
40     HRESULT __stdcall UpdateTexture(IDirect3DBaseTexture9* pSourceTexture,IDirect3DBaseTexture9* pDestinationTexture);
41     HRESULT __stdcall GetRenderTargetData(IDirect3DSurface9* pRenderTarget,IDirect3DSurface9* pDestSurface);
42     HRESULT __stdcall GetFrontBufferData(UINT iSwapChain,IDirect3DSurface9* pDestSurface);
43     HRESULT __stdcall StretchRect(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestSurface,CONST RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter);
44     HRESULT __stdcall ColorFill(IDirect3DSurface9* pSurface,CONST RECT* pRect,D3DCOLOR color);
45     HRESULT __stdcall CreateOffscreenPlainSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle);
46     HRESULT __stdcall SetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9* pRenderTarget);
47     HRESULT __stdcall GetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9** ppRenderTarget);
48     HRESULT __stdcall SetDepthStencilSurface(IDirect3DSurface9* pNewZStencil);
49     HRESULT __stdcall GetDepthStencilSurface(IDirect3DSurface9** ppZStencilSurface);
50     HRESULT __stdcall BeginScene(void);
51     HRESULT __stdcall EndScene(void);
52     HRESULT __stdcall Clear(DWORD Count,CONST D3DRECT* pRects,DWORD Flags,D3DCOLOR Color,float Z,DWORD Stencil);
53     HRESULT __stdcall SetTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix);
54     HRESULT __stdcall GetTransform(D3DTRANSFORMSTATETYPE State,D3DMATRIX* pMatrix);
55     HRESULT __stdcall MultiplyTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix);
56     HRESULT __stdcall SetViewport(CONST D3DVIEWPORT9* pViewport);
57     HRESULT __stdcall GetViewport(D3DVIEWPORT9* pViewport);
58     HRESULT __stdcall SetMaterial(CONST D3DMATERIAL9* pMaterial);
59     HRESULT __stdcall GetMaterial(D3DMATERIAL9* pMaterial);
60     HRESULT __stdcall SetLight(DWORD Index,CONST D3DLIGHT9* pLight);
61     HRESULT __stdcall GetLight(DWORD Index,D3DLIGHT9* pLight);
62     HRESULT __stdcall LightEnable(DWORD Index,BOOL Enable);
63     HRESULT __stdcall GetLightEnable(DWORD Index,BOOL* pEnable);
64     HRESULT __stdcall SetClipPlane(DWORD Index,CONST float* pPlane);
65     HRESULT __stdcall GetClipPlane(DWORD Index,float* pPlane);
66     HRESULT __stdcall SetRenderState(D3DRENDERSTATETYPE State,DWORD Value);
67     HRESULT __stdcall GetRenderState(D3DRENDERSTATETYPE State,DWORD* pValue);
68     HRESULT __stdcall CreateStateBlock(D3DSTATEBLOCKTYPE Type,IDirect3DStateBlock9** ppSB);
69     HRESULT __stdcall BeginStateBlock(void);
70     HRESULT __stdcall EndStateBlock(IDirect3DStateBlock9** ppSB);
71     HRESULT __stdcall SetClipStatus(CONST D3DCLIPSTATUS9* pClipStatus);
72     HRESULT __stdcall GetClipStatus(D3DCLIPSTATUS9* pClipStatus);
73     HRESULT __stdcall GetTexture(DWORD Stage,IDirect3DBaseTexture9** ppTexture);
74     HRESULT __stdcall SetTexture(DWORD Stage,IDirect3DBaseTexture9* pTexture);
75     HRESULT __stdcall GetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD* pValue);
76     HRESULT __stdcall SetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value);
77     HRESULT __stdcall GetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD* pValue);
78     HRESULT __stdcall SetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD Value);
79     HRESULT __stdcall ValidateDevice(DWORD* pNumPasses);
80     HRESULT __stdcall SetPaletteEntries(UINT PaletteNumber,CONST PALETTEENTRY* pEntries);
81     HRESULT __stdcall GetPaletteEntries(UINT PaletteNumber,PALETTEENTRY* pEntries);
82     HRESULT __stdcall SetCurrentTexturePalette(UINT PaletteNumber);
83     HRESULT __stdcall GetCurrentTexturePalette(UINT *PaletteNumber);
84     HRESULT __stdcall SetScissorRect(CONST RECT* pRect);
85     HRESULT __stdcall GetScissorRect( RECT* pRect);
86     HRESULT __stdcall SetSoftwareVertexProcessing(BOOL bSoftware);
87     BOOL __stdcall GetSoftwareVertexProcessing(void);
88     HRESULT __stdcall SetNPatchMode(float nSegments);
89     float __stdcall GetNPatchMode(void);
90     HRESULT __stdcall DrawPrimitive(D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount);
91     HRESULT __stdcall DrawIndexedPrimitive(D3DPRIMITIVETYPE PrimitiveType,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount);
92     HRESULT __stdcall DrawPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT PrimitiveCount,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride);
93     HRESULT __stdcall DrawIndexedPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT MinVertexIndex,UINT NumVertices,UINT PrimitiveCount,CONST void* pIndexData,D3DFORMAT IndexDataFormat,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride);
94     HRESULT __stdcall ProcessVertices(UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer9* pDestBuffer,IDirect3DVertexDeclaration9* pVertexDecl,DWORD Flags);
95     HRESULT __stdcall CreateVertexDeclaration(CONST D3DVERTEXELEMENT9* pVertexElements,IDirect3DVertexDeclaration9** ppDecl);
96     HRESULT __stdcall SetVertexDeclaration(IDirect3DVertexDeclaration9* pDecl);
97     HRESULT __stdcall GetVertexDeclaration(IDirect3DVertexDeclaration9** ppDecl);
98     HRESULT __stdcall SetFVF(DWORD FVF);
99     HRESULT __stdcall GetFVF(DWORD* pFVF);
100     HRESULT __stdcall CreateVertexShader(CONST DWORD* pFunction,IDirect3DVertexShader9** ppShader);
101     HRESULT __stdcall SetVertexShader(IDirect3DVertexShader9* pShader);
102     HRESULT __stdcall GetVertexShader(IDirect3DVertexShader9** ppShader);
103     HRESULT __stdcall SetVertexShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount);
104     HRESULT __stdcall GetVertexShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount);
105     HRESULT __stdcall SetVertexShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount);
106     HRESULT __stdcall GetVertexShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount);
107     HRESULT __stdcall SetVertexShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount);
108     HRESULT __stdcall GetVertexShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount);
109     HRESULT __stdcall SetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9* pStreamData,UINT OffsetInBytes,UINT Stride);
110     HRESULT __stdcall GetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9** ppStreamData,UINT* OffsetInBytes,UINT* pStride);
111     HRESULT __stdcall SetStreamSourceFreq(UINT StreamNumber,UINT Divider);
112     HRESULT __stdcall GetStreamSourceFreq(UINT StreamNumber,UINT* Divider);
113     HRESULT __stdcall SetIndices(IDirect3DIndexBuffer9* pIndexData);
114     HRESULT __stdcall GetIndices(IDirect3DIndexBuffer9** ppIndexData);
115     HRESULT __stdcall CreatePixelShader(CONST DWORD* pFunction,IDirect3DPixelShader9** ppShader);
116     HRESULT __stdcall SetPixelShader(IDirect3DPixelShader9* pShader);
117     HRESULT __stdcall GetPixelShader(IDirect3DPixelShader9** ppShader);
118     HRESULT __stdcall SetPixelShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount);
119     HRESULT __stdcall GetPixelShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount);
120     HRESULT __stdcall SetPixelShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount);
121     HRESULT __stdcall GetPixelShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount);
122     HRESULT __stdcall SetPixelShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount);
123     HRESULT __stdcall GetPixelShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount);
124     HRESULT __stdcall DrawRectPatch(UINT Handle,CONST float* pNumSegs,CONST D3DRECTPATCH_INFO* pRectPatchInfo);
125     HRESULT __stdcall DrawTriPatch(UINT Handle,CONST float* pNumSegs,CONST D3DTRIPATCH_INFO* pTriPatchInfo);
126     HRESULT __stdcall DeletePatch(UINT Handle);
127     HRESULT __stdcall CreateQuery(D3DQUERYTYPE Type,IDirect3DQuery9** ppQuery);
128     // END: The original DX9 function definitions
129
130 private:
131     IDirect3DDevice9 *m_pIDirect3DDevice9;
132
133     // This is our test function
134     void ShowWeAreHere(void);
135 };