2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS ReactX
4 * FILE: dll/directx/d3d9/d3d9_helpers.h
5 * PURPOSE: d3d9.dll helper functions
6 * PROGRAMERS: Gregor Brunmar <gregor (dot) brunmar (at) home (dot) se>
8 #ifndef _D3D9_HELPERS_H_
9 #define _D3D9_HELPERS_H_
11 #include "d3d9_common.h"
12 #include "d3d9_private.h"
14 /* Convert a IDirect3D9 pointer safely to the internal implementation struct */
15 LPDIRECT3D9_INT
impl_from_IDirect3D9(LPDIRECT3D9 iface
);
17 /* Reads a registry value if it's of the correct value type */
18 BOOL
ReadRegistryValue(IN DWORD ValueType
, IN LPCSTR ValueName
, OUT LPBYTE DataBuffer
, IN OUT LPDWORD DataBufferSize
);
20 /* Formats debug strings */
21 HRESULT
FormatDebugString(IN OUT LPSTR Buffer
, IN LONG BufferSize
, IN LPCSTR FormatString
, ... );
23 /* Allocates memory and returns an aligned pointer */
24 HRESULT
AlignedAlloc(IN OUT LPVOID
*ppObject
, IN SIZE_T dwSize
);
26 /* Frees memory allocated with AlignedAlloc */
27 VOID
AlignedFree(IN OUT LPVOID pObject
);
30 #endif // _D3D9_HELPERS_H_