b049f77702c697806d9650d7bfcbf85e8df4d877
[reactos.git] / reactos / base / applications / dxdiag / precomp.h
1 #ifndef PRECOMP_H__
2 #define PRECOMP_H__
3
4 #define DIRECTINPUT_VERSION 0x0800
5 #define DIRECTSOUND_VERSION 0x0800
6 #define D3D_OVERLOADS
7
8 #include <stdio.h>
9 #include <windows.h>
10 #include <limits.h>
11 #include <mmsystem.h>
12 #include <setupapi.h>
13 #include <commctrl.h>
14 #include <ddraw.h>
15
16 #include <mmreg.h>
17 #include <wintrust.h>
18 #include <softpub.h>
19 #include <mscat.h>
20 #include "resource.h"
21
22 typedef struct
23 {
24 HWND hMainDialog;
25 HWND hTabCtrl;
26 ULONG NumDisplayAdapter;
27 HWND * hDisplayWnd;
28 ULONG NumSoundAdapter;
29 HWND * hSoundWnd;
30 HWND hDialogs[5];
31 }DXDIAG_CONTEXT, *PDXDIAG_CONTEXT;
32
33 /* globals */
34 extern HINSTANCE hInst;
35
36 /* dialog wnd proc */
37 INT_PTR CALLBACK SystemPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
38 INT_PTR CALLBACK DisplayPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
39 INT_PTR CALLBACK SoundPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
40 INT_PTR CALLBACK MusicPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
41 INT_PTR CALLBACK InputPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
42 INT_PTR CALLBACK NetworkPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
43 INT_PTR CALLBACK HelpPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
44
45 /* DirectDraw tests */
46 VOID DDTests();
47
48 /* Direct3D tests */
49 VOID D3DTests();
50
51 /* DirectSound initialization */
52 void InitializeDirectSoundPage(PDXDIAG_CONTEXT pContext);
53
54 /* display adapter initialization */
55 void InitializeDisplayAdapters(PDXDIAG_CONTEXT pContext);
56
57 /* general functions */
58 BOOL GetFileVersion(LPCWSTR szAppName, WCHAR * szVer, DWORD szVerSize);
59 BOOL GetFileModifyTime(LPCWSTR pFullPath, WCHAR * szTime, int szTimeSize);
60 BOOL GetCatFileFromDriverPath(LPWSTR szFileName, LPWSTR szCatFileName);
61 BOOL GetRegValue(HKEY hBaseKey, LPWSTR SubKey, LPWSTR ValueName, DWORD Type, LPWSTR Result, DWORD Size);
62 VOID InsertTabCtrlItem(HWND hDlgCtrl, INT Position, LPWSTR uId);
63 VOID EnumerateDrivers(PVOID Context, HDEVINFO hList, PSP_DEVINFO_DATA pInfoData);
64 #endif