Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
wine-mirror
GitHub Repository: wine-mirror/wine
Path: blob/master/programs/dxdiag/dxdiag_private.h
4389 views
1
/*
2
* Private definitions for the DirectX Diagnostic Tool
3
*
4
* Copyright 2011 Andrew Nguyen
5
*
6
* This library is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public
8
* License as published by the Free Software Foundation; either
9
* version 2.1 of the License, or (at your option) any later version.
10
*
11
* This library is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with this library; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19
*/
20
21
#include <windef.h>
22
#include <winuser.h>
23
24
/* Resource definitions. */
25
#define MAX_STRING_LEN 1024
26
27
#define STRING_DXDIAG_TOOL 101
28
#define STRING_USAGE 102
29
30
/* Information collection definitions. */
31
struct system_information
32
{
33
WCHAR *szTimeEnglish;
34
WCHAR *szTimeLocalized;
35
WCHAR *szMachineNameEnglish;
36
WCHAR *szOSExLongEnglish;
37
WCHAR *szOSExLocalized;
38
WCHAR *szLanguagesEnglish;
39
WCHAR *szLanguagesLocalized;
40
WCHAR *szSystemManufacturerEnglish;
41
WCHAR *szSystemModelEnglish;
42
WCHAR *szBIOSEnglish;
43
WCHAR *szProcessorEnglish;
44
WCHAR *szPhysicalMemoryEnglish;
45
WCHAR *szPageFileEnglish;
46
WCHAR *szPageFileLocalized;
47
WCHAR *szWindowsDir;
48
WCHAR *szDirectXVersionLongEnglish;
49
WCHAR *szSetupParamEnglish;
50
WCHAR *szDxDiagVersion;
51
BOOL win64;
52
};
53
54
struct dxdiag_information
55
{
56
struct system_information system_info;
57
};
58
59
struct dxdiag_information *collect_dxdiag_information(BOOL whql_check);
60
void free_dxdiag_information(struct dxdiag_information *dxdiag_info);
61
62
/* Output backend definitions. */
63
enum output_type
64
{
65
OUTPUT_NONE,
66
OUTPUT_TEXT,
67
OUTPUT_XML,
68
};
69
70
static inline const char *debugstr_output_type(enum output_type type)
71
{
72
switch (type)
73
{
74
case OUTPUT_NONE:
75
return "(none)";
76
case OUTPUT_TEXT:
77
return "Plain-text output";
78
case OUTPUT_XML:
79
return "XML output";
80
default:
81
return "(unknown)";
82
}
83
}
84
85
const WCHAR *get_output_extension(enum output_type type);
86
BOOL output_dxdiag_information(struct dxdiag_information *dxdiag_info, const WCHAR *filename, enum output_type type);
87
88