diff options
Diffstat (limited to 'src/libs/dutil/WixToolset.DUtil/inc/atomutil.h')
-rw-r--r-- | src/libs/dutil/WixToolset.DUtil/inc/atomutil.h | 146 |
1 files changed, 146 insertions, 0 deletions
diff --git a/src/libs/dutil/WixToolset.DUtil/inc/atomutil.h b/src/libs/dutil/WixToolset.DUtil/inc/atomutil.h new file mode 100644 index 00000000..9acfc1d5 --- /dev/null +++ b/src/libs/dutil/WixToolset.DUtil/inc/atomutil.h | |||
@@ -0,0 +1,146 @@ | |||
1 | #pragma once | ||
2 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
3 | |||
4 | |||
5 | #ifdef __cplusplus | ||
6 | extern "C" { | ||
7 | #endif | ||
8 | |||
9 | #define ReleaseAtomFeed(p) if (p) { AtomFreeFeed(p); } | ||
10 | #define ReleaseNullAtomFeed(p) if (p) { AtomFreeFeed(p); p = NULL; } | ||
11 | |||
12 | |||
13 | struct ATOM_UNKNOWN_ATTRIBUTE | ||
14 | { | ||
15 | LPWSTR wzNamespace; | ||
16 | LPWSTR wzAttribute; | ||
17 | LPWSTR wzValue; | ||
18 | |||
19 | ATOM_UNKNOWN_ATTRIBUTE* pNext; | ||
20 | }; | ||
21 | |||
22 | struct ATOM_UNKNOWN_ELEMENT | ||
23 | { | ||
24 | LPWSTR wzNamespace; | ||
25 | LPWSTR wzElement; | ||
26 | LPWSTR wzValue; | ||
27 | |||
28 | ATOM_UNKNOWN_ATTRIBUTE* pAttributes; | ||
29 | ATOM_UNKNOWN_ELEMENT* pNext; | ||
30 | }; | ||
31 | |||
32 | struct ATOM_LINK | ||
33 | { | ||
34 | LPWSTR wzRel; | ||
35 | LPWSTR wzTitle; | ||
36 | LPWSTR wzType; | ||
37 | LPWSTR wzUrl; | ||
38 | LPWSTR wzValue; | ||
39 | DWORD64 dw64Length; | ||
40 | |||
41 | ATOM_UNKNOWN_ATTRIBUTE* pUnknownAttributes; | ||
42 | ATOM_UNKNOWN_ELEMENT* pUnknownElements; | ||
43 | }; | ||
44 | |||
45 | struct ATOM_CONTENT | ||
46 | { | ||
47 | LPWSTR wzType; | ||
48 | LPWSTR wzUrl; | ||
49 | LPWSTR wzValue; | ||
50 | |||
51 | ATOM_UNKNOWN_ELEMENT* pUnknownElements; | ||
52 | }; | ||
53 | |||
54 | struct ATOM_AUTHOR | ||
55 | { | ||
56 | LPWSTR wzName; | ||
57 | LPWSTR wzEmail; | ||
58 | LPWSTR wzUrl; | ||
59 | }; | ||
60 | |||
61 | struct ATOM_CATEGORY | ||
62 | { | ||
63 | LPWSTR wzLabel; | ||
64 | LPWSTR wzScheme; | ||
65 | LPWSTR wzTerm; | ||
66 | |||
67 | ATOM_UNKNOWN_ELEMENT* pUnknownElements; | ||
68 | }; | ||
69 | |||
70 | struct ATOM_ENTRY | ||
71 | { | ||
72 | LPWSTR wzId; | ||
73 | LPWSTR wzSummary; | ||
74 | LPWSTR wzTitle; | ||
75 | FILETIME ftPublished; | ||
76 | FILETIME ftUpdated; | ||
77 | |||
78 | ATOM_CONTENT* pContent; | ||
79 | |||
80 | DWORD cAuthors; | ||
81 | ATOM_AUTHOR* rgAuthors; | ||
82 | |||
83 | DWORD cCategories; | ||
84 | ATOM_CATEGORY* rgCategories; | ||
85 | |||
86 | DWORD cLinks; | ||
87 | ATOM_LINK* rgLinks; | ||
88 | |||
89 | IXMLDOMNode* pixn; | ||
90 | ATOM_UNKNOWN_ELEMENT* pUnknownElements; | ||
91 | }; | ||
92 | |||
93 | struct ATOM_FEED | ||
94 | { | ||
95 | LPWSTR wzGenerator; | ||
96 | LPWSTR wzIcon; | ||
97 | LPWSTR wzId; | ||
98 | LPWSTR wzLogo; | ||
99 | LPWSTR wzSubtitle; | ||
100 | LPWSTR wzTitle; | ||
101 | FILETIME ftUpdated; | ||
102 | |||
103 | DWORD cAuthors; | ||
104 | ATOM_AUTHOR* rgAuthors; | ||
105 | |||
106 | DWORD cCategories; | ||
107 | ATOM_CATEGORY* rgCategories; | ||
108 | |||
109 | DWORD cEntries; | ||
110 | ATOM_ENTRY* rgEntries; | ||
111 | |||
112 | DWORD cLinks; | ||
113 | ATOM_LINK* rgLinks; | ||
114 | |||
115 | IXMLDOMNode* pixn; | ||
116 | ATOM_UNKNOWN_ELEMENT* pUnknownElements; | ||
117 | }; | ||
118 | |||
119 | HRESULT DAPI AtomInitialize( | ||
120 | ); | ||
121 | |||
122 | void DAPI AtomUninitialize( | ||
123 | ); | ||
124 | |||
125 | HRESULT DAPI AtomParseFromString( | ||
126 | __in_z LPCWSTR wzAtomString, | ||
127 | __out ATOM_FEED **ppFeed | ||
128 | ); | ||
129 | |||
130 | HRESULT DAPI AtomParseFromFile( | ||
131 | __in_z LPCWSTR wzAtomFile, | ||
132 | __out ATOM_FEED **ppFeed | ||
133 | ); | ||
134 | |||
135 | HRESULT DAPI AtomParseFromDocument( | ||
136 | __in IXMLDOMDocument* pixdDocument, | ||
137 | __out ATOM_FEED **ppFeed | ||
138 | ); | ||
139 | |||
140 | void DAPI AtomFreeFeed( | ||
141 | __in_xcount(pFeed->cItems) ATOM_FEED* pFeed | ||
142 | ); | ||
143 | |||
144 | #ifdef __cplusplus | ||
145 | } | ||
146 | #endif | ||