master
  1/*** Autogenerated by WIDL 10.4 from include/wsdxml.idl - Do not edit ***/
  2
  3#ifdef _WIN32
  4#ifndef __REQUIRED_RPCNDR_H_VERSION__
  5#define __REQUIRED_RPCNDR_H_VERSION__ 475
  6#endif
  7#include <rpc.h>
  8#include <rpcndr.h>
  9#endif
 10
 11#ifndef COM_NO_WINDOWS_H
 12#include <windows.h>
 13#include <ole2.h>
 14#endif
 15
 16#ifndef __wsdxml_h__
 17#define __wsdxml_h__
 18
 19/* Forward declarations */
 20
 21#ifndef __IWSDXMLContext_FWD_DEFINED__
 22#define __IWSDXMLContext_FWD_DEFINED__
 23typedef interface IWSDXMLContext IWSDXMLContext;
 24#ifdef __cplusplus
 25interface IWSDXMLContext;
 26#endif /* __cplusplus */
 27#endif
 28
 29/* Headers for imported files */
 30
 31#include <oaidl.h>
 32#include <ocidl.h>
 33
 34#ifdef __cplusplus
 35extern "C" {
 36#endif
 37
 38#include <winapifamily.h>
 39
 40#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 41
 42#ifndef __IWSDXMLContext_FWD_DEFINED__
 43#define __IWSDXMLContext_FWD_DEFINED__
 44typedef interface IWSDXMLContext IWSDXMLContext;
 45#ifdef __cplusplus
 46interface IWSDXMLContext;
 47#endif /* __cplusplus */
 48#endif
 49
 50enum {
 51    OpNone = 0,
 52    OpEndOfTable = 1,
 53    OpBeginElement_ = 2,
 54    OpBeginAnyElement = 3,
 55    OpEndElement = 4,
 56    OpElement_ = 5,
 57    OpAnyElement = 6,
 58    OpAnyElements = 7,
 59    OpAnyText = 8,
 60    OpAttribute_ = 9,
 61    OpBeginChoice = 10,
 62    OpEndChoice = 11,
 63    OpBeginSequence = 12,
 64    OpEndSequence = 13,
 65    OpBeginAll = 14,
 66    OpEndAll = 15,
 67    OpAnything = 16,
 68    OpAnyNumber = 17,
 69    OpOneOrMore = 18,
 70    OpOptional = 19,
 71    OpFormatBool_ = 20,
 72    OpFormatInt8_ = 21,
 73    OpFormatInt16_ = 22,
 74    OpFormatInt32_ = 23,
 75    OpFormatInt64_ = 24,
 76    OpFormatUInt8_ = 25,
 77    OpFormatUInt16_ = 26,
 78    OpFormatUInt32_ = 27,
 79    OpFormatUInt64_ = 28,
 80    OpFormatUnicodeString_ = 29,
 81    OpFormatDom_ = 30,
 82    OpFormatStruct_ = 31,
 83    OpFormatUri_ = 32,
 84    OpFormatUuidUri_ = 33,
 85    OpFormatName_ = 34,
 86    OpFormatListInsertTail_ = 35,
 87    OpFormatType_ = 36,
 88    OpFormatDynamicType_ = 37,
 89    OpFormatLookupType_ = 38,
 90    OpFormatDuration_ = 39,
 91    OpFormatDateTime_ = 40,
 92    OpFormatFloat_ = 41,
 93    OpFormatDouble_ = 42,
 94    OpProcess_ = 43,
 95    OpQualifiedAttribute_ = 44,
 96    OpFormatXMLDeclaration_ = 45,
 97    OpFormatMax = 46
 98};
 99typedef struct _WSDXML_NAMESPACE WSDXML_NAMESPACE;
100typedef const WSDXML_NAMESPACE *PCWSDXML_NAMESPACE;
101typedef struct _WSDXML_NAME WSDXML_NAME;
102typedef struct _WSDXML_TYPE WSDXML_TYPE;
103typedef const WSDXML_TYPE *PCWSDXML_TYPE;
104typedef struct _WSDXML_PREFIX_MAPPING WSDXML_PREFIX_MAPPING;
105typedef struct _WSDXML_ATTRIBUTE WSDXML_ATTRIBUTE;
106typedef struct _WSDXML_NODE WSDXML_NODE;
107typedef struct _WSDXML_ELEMENT WSDXML_ELEMENT;
108typedef struct _WSDXML_TEXT WSDXML_TEXT;
109typedef struct _WSDXML_ELEMENT_LIST WSDXML_ELEMENT_LIST;
110typedef struct _WSD_DATETIME {
111    WINBOOL isPositive;
112    ULONG year;
113    UCHAR month;
114    UCHAR day;
115    UCHAR hour;
116    UCHAR minute;
117    UCHAR second;
118    UINT millisecond;
119    WINBOOL TZIsLocal;
120    WINBOOL TZIsPositive;
121    UCHAR TZHour;
122    UCHAR TZMinute;
123} WSD_DATETIME;
124typedef struct _WSD_DURATION {
125    WINBOOL isPositive;
126    ULONG year;
127    ULONG month;
128    ULONG day;
129    ULONG hour;
130    ULONG minute;
131    ULONG second;
132    ULONG millisecond;
133} WSD_DURATION;
134
135#define WSDXML_TYPE_ENCODING(tidx,lno) ((((DWORD) lno) << 28) | tidx)
136#define WSDXML_NAMESPACE_ENCODING(nsidx, lno) ((((WORD) lno) << 12) | nsidx)
137#define WSDXML_NAME_ENCODING(nidx, nsenc) ((((DWORD) nsenc) << 16) | nidx)
138
139#define OFFSET(type,field) ((DWORD_PTR) (&((type *)0)->field))
140#define BYTE0(n) (BYTE) (((DWORD) n) & 0xff)
141#define BYTE1(n) (BYTE) ((((DWORD) n) >> 8) & 0xff)
142#define BYTE2(n) (BYTE) ((((DWORD) n) >> 16) & 0xff)
143#define BYTE3(n) (BYTE)((((DWORD) n) >> 24) & 0xff)
144#define BYTES(n) BYTE0(n), BYTE1(n), BYTE2(n), BYTE3(n)
145
146#define OpAttribute(name) OpAttribute_, BYTES(name)
147#define OpBeginElement(name) OpBeginElement_, BYTES(name)
148#define OpElement(name) OpElement_, BYTES(name)
149#define OpFormatBool(type,field,isptr) OpFormatBool_, BYTES(isptr), BYTES(OFFSET(type,field))
150#define OpFormatDateTime(type,field) OpFormatDateTime_, BYTES(OFFSET(type,field))
151#define OpFormatDom(type,field) OpFormatDom_, BYTES(OFFSET(type,field))
152#define OpFormatDouble(type,field,isptr) OpFormatDouble_, BYTES(isptr),BYTES(OFFSET(type,field))
153#define OpFormatDuration(type,field) OpFormatDuration_, BYTES(OFFSET(type,field))
154#define OpFormatDynamicType(name,type,field) OpFormatDynamicType_, BYTES(name),BYTES(OFFSET(type,field))
155#define OpFormatFloat(type,field,isptr) OpFormatFloat_, BYTES(isptr),BYTES(OFFSET(type,field))
156#define OpFormatInt8(type,field,isptr) OpFormatInt8_, BYTES(isptr), BYTES(OFFSET(type,field))
157#define OpFormatInt16(type,field,isptr) OpFormatInt16_, BYTES(isptr), BYTES(OFFSET(type,field))
158#define OpFormatInt32(type,field,isptr) OpFormatInt32_, BYTES(isptr), BYTES(OFFSET(type,field))
159#define OpFormatInt64(type,field,isptr) OpFormatInt64_, BYTES(isptr), BYTES(OFFSET(type,field))
160#define OpFormatListInsertTail(s,type,field) OpFormatListInsertTail_,BYTES(sizeof(s)),BYTES(OFFSET(type,field))
161#define OpFormatLookupType(uriField,type,field) OpFormatLookupType_, BYTES(OFFSET(type,uriField)),BYTES(OFFSET(type,field))
162#define OpFormatName(type,field) OpFormatName_, BYTES(OFFSET(type,field))
163#define OpFormatPointerToStruct(sType) OpFormatStruct_, BYTES(sizeof(sType)),BYTES(0)
164#define OpFormatStruct(sType,type,field) OpFormatStruct_, BYTES(sizeof(sType)),BYTES(OFFSET(type,field))
165#define OpFormatType(table,type,field) OpFormatType_, BYTES(table),BYTES(OFFSET(type,field))
166#define OpFormatUInt8(type,field,isptr) OpFormatUInt8_, BYTES(isptr), BYTES(OFFSET(type,field))
167#define OpFormatUInt16(type,field,isptr) OpFormatUInt16_, BYTES(isptr), BYTES(OFFSET(type,field))
168#define OpFormatUInt32(type,field,isptr) OpFormatUInt32_, BYTES(isptr), BYTES(OFFSET(type,field))
169#define OpFormatUInt64(type,field,isptr) OpFormatUInt64_, BYTES(isptr), BYTES(OFFSET(type,field))
170#define OpFormatUnicodeString(type,field) OpFormatUnicodeString_, BYTES(OFFSET(type,field))
171#define OpFormatUri(type,field) OpFormatUri_, BYTES(OFFSET(type,field))
172#define OpFormatUuidUri(type,field,isptr) OpFormatUuidUri_, BYTES(isptr),BYTES(OFFSET(type,field))
173#define OpFormatXMLDeclaration(type,field) OpFormatXMLDeclaration_, BYTES(OFFSET(type,field))
174#define OpProcess(type,field) OpProcess_, BYTES(OFFSET(type,field))
175#define OpQualifiedAttribute(name) OpQualifiedAttribute_, BYTES(name)
176/*****************************************************************************
177 * IWSDXMLContext interface
178 */
179#ifndef __IWSDXMLContext_INTERFACE_DEFINED__
180#define __IWSDXMLContext_INTERFACE_DEFINED__
181
182DEFINE_GUID(IID_IWSDXMLContext, 0x75d8f3ee, 0x3e5a, 0x43b4, 0xa1,0x5a, 0xbc,0xf6,0x88,0x74,0x60,0xc0);
183#if defined(__cplusplus) && !defined(CINTERFACE)
184MIDL_INTERFACE("75d8f3ee-3e5a-43b4-a15a-bcf6887460c0")
185IWSDXMLContext : public IUnknown
186{
187    virtual HRESULT STDMETHODCALLTYPE AddNamespace(
188        LPCWSTR pszUri,
189        LPCWSTR pszSuggestedPrefix,
190        WSDXML_NAMESPACE **ppNamespace) = 0;
191
192    virtual HRESULT STDMETHODCALLTYPE AddNameToNamespace(
193        LPCWSTR pszUri,
194        LPCWSTR pszName,
195        WSDXML_NAME **ppName) = 0;
196
197    virtual HRESULT STDMETHODCALLTYPE SetNamespaces(
198        const PCWSDXML_NAMESPACE *pNamespaces,
199        WORD wNamespacesCount,
200        BYTE bLayerNumber) = 0;
201
202    virtual HRESULT STDMETHODCALLTYPE SetTypes(
203        const PCWSDXML_TYPE *pTypes,
204        DWORD dwTypesCount,
205        BYTE bLayerNumber) = 0;
206
207};
208#ifdef __CRT_UUID_DECL
209__CRT_UUID_DECL(IWSDXMLContext, 0x75d8f3ee, 0x3e5a, 0x43b4, 0xa1,0x5a, 0xbc,0xf6,0x88,0x74,0x60,0xc0)
210#endif
211#else
212typedef struct IWSDXMLContextVtbl {
213    BEGIN_INTERFACE
214
215    /*** IUnknown methods ***/
216    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
217        IWSDXMLContext *This,
218        REFIID riid,
219        void **ppvObject);
220
221    ULONG (STDMETHODCALLTYPE *AddRef)(
222        IWSDXMLContext *This);
223
224    ULONG (STDMETHODCALLTYPE *Release)(
225        IWSDXMLContext *This);
226
227    /*** IWSDXMLContext methods ***/
228    HRESULT (STDMETHODCALLTYPE *AddNamespace)(
229        IWSDXMLContext *This,
230        LPCWSTR pszUri,
231        LPCWSTR pszSuggestedPrefix,
232        WSDXML_NAMESPACE **ppNamespace);
233
234    HRESULT (STDMETHODCALLTYPE *AddNameToNamespace)(
235        IWSDXMLContext *This,
236        LPCWSTR pszUri,
237        LPCWSTR pszName,
238        WSDXML_NAME **ppName);
239
240    HRESULT (STDMETHODCALLTYPE *SetNamespaces)(
241        IWSDXMLContext *This,
242        const PCWSDXML_NAMESPACE *pNamespaces,
243        WORD wNamespacesCount,
244        BYTE bLayerNumber);
245
246    HRESULT (STDMETHODCALLTYPE *SetTypes)(
247        IWSDXMLContext *This,
248        const PCWSDXML_TYPE *pTypes,
249        DWORD dwTypesCount,
250        BYTE bLayerNumber);
251
252    END_INTERFACE
253} IWSDXMLContextVtbl;
254
255interface IWSDXMLContext {
256    CONST_VTBL IWSDXMLContextVtbl* lpVtbl;
257};
258
259#ifdef COBJMACROS
260#ifndef WIDL_C_INLINE_WRAPPERS
261/*** IUnknown methods ***/
262#define IWSDXMLContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
263#define IWSDXMLContext_AddRef(This) (This)->lpVtbl->AddRef(This)
264#define IWSDXMLContext_Release(This) (This)->lpVtbl->Release(This)
265/*** IWSDXMLContext methods ***/
266#define IWSDXMLContext_AddNamespace(This,pszUri,pszSuggestedPrefix,ppNamespace) (This)->lpVtbl->AddNamespace(This,pszUri,pszSuggestedPrefix,ppNamespace)
267#define IWSDXMLContext_AddNameToNamespace(This,pszUri,pszName,ppName) (This)->lpVtbl->AddNameToNamespace(This,pszUri,pszName,ppName)
268#define IWSDXMLContext_SetNamespaces(This,pNamespaces,wNamespacesCount,bLayerNumber) (This)->lpVtbl->SetNamespaces(This,pNamespaces,wNamespacesCount,bLayerNumber)
269#define IWSDXMLContext_SetTypes(This,pTypes,dwTypesCount,bLayerNumber) (This)->lpVtbl->SetTypes(This,pTypes,dwTypesCount,bLayerNumber)
270#else
271/*** IUnknown methods ***/
272static inline HRESULT IWSDXMLContext_QueryInterface(IWSDXMLContext* This,REFIID riid,void **ppvObject) {
273    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
274}
275static inline ULONG IWSDXMLContext_AddRef(IWSDXMLContext* This) {
276    return This->lpVtbl->AddRef(This);
277}
278static inline ULONG IWSDXMLContext_Release(IWSDXMLContext* This) {
279    return This->lpVtbl->Release(This);
280}
281/*** IWSDXMLContext methods ***/
282static inline HRESULT IWSDXMLContext_AddNamespace(IWSDXMLContext* This,LPCWSTR pszUri,LPCWSTR pszSuggestedPrefix,WSDXML_NAMESPACE **ppNamespace) {
283    return This->lpVtbl->AddNamespace(This,pszUri,pszSuggestedPrefix,ppNamespace);
284}
285static inline HRESULT IWSDXMLContext_AddNameToNamespace(IWSDXMLContext* This,LPCWSTR pszUri,LPCWSTR pszName,WSDXML_NAME **ppName) {
286    return This->lpVtbl->AddNameToNamespace(This,pszUri,pszName,ppName);
287}
288static inline HRESULT IWSDXMLContext_SetNamespaces(IWSDXMLContext* This,const PCWSDXML_NAMESPACE *pNamespaces,WORD wNamespacesCount,BYTE bLayerNumber) {
289    return This->lpVtbl->SetNamespaces(This,pNamespaces,wNamespacesCount,bLayerNumber);
290}
291static inline HRESULT IWSDXMLContext_SetTypes(IWSDXMLContext* This,const PCWSDXML_TYPE *pTypes,DWORD dwTypesCount,BYTE bLayerNumber) {
292    return This->lpVtbl->SetTypes(This,pTypes,dwTypesCount,bLayerNumber);
293}
294#endif
295#endif
296
297#endif
298
299
300#endif  /* __IWSDXMLContext_INTERFACE_DEFINED__ */
301
302HRESULT WINAPI WSDXMLGetNameFromBuiltinNamespace(LPCWSTR pszNamespace, LPCWSTR pszName, WSDXML_NAME **ppName);
303HRESULT WINAPI WSDXMLCreateContext(IWSDXMLContext **ppContext);
304#endif
305/* Begin additional prototypes for all interfaces */
306
307
308/* End additional prototypes */
309
310#ifdef __cplusplus
311}
312#endif
313
314#endif /* __wsdxml_h__ */