master
   1/*** Autogenerated by WIDL 10.4 from include/xmllite.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 __xmllite_h__
  17#define __xmllite_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IXmlReader_FWD_DEFINED__
  22#define __IXmlReader_FWD_DEFINED__
  23typedef interface IXmlReader IXmlReader;
  24#ifdef __cplusplus
  25interface IXmlReader;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __IXmlResolver_FWD_DEFINED__
  30#define __IXmlResolver_FWD_DEFINED__
  31typedef interface IXmlResolver IXmlResolver;
  32#ifdef __cplusplus
  33interface IXmlResolver;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __IXmlWriter_FWD_DEFINED__
  38#define __IXmlWriter_FWD_DEFINED__
  39typedef interface IXmlWriter IXmlWriter;
  40#ifdef __cplusplus
  41interface IXmlWriter;
  42#endif /* __cplusplus */
  43#endif
  44
  45/* Headers for imported files */
  46
  47#include <unknwn.h>
  48#include <objidl.h>
  49#include <oaidl.h>
  50
  51#ifdef __cplusplus
  52extern "C" {
  53#endif
  54
  55typedef enum XmlNodeType {
  56    XmlNodeType_None = 0,
  57    XmlNodeType_Element = 1,
  58    XmlNodeType_Attribute = 2,
  59    XmlNodeType_Text = 3,
  60    XmlNodeType_CDATA = 4,
  61    XmlNodeType_ProcessingInstruction = 7,
  62    XmlNodeType_Comment = 8,
  63    XmlNodeType_DocumentType = 10,
  64    XmlNodeType_Whitespace = 13,
  65    XmlNodeType_EndElement = 15,
  66    XmlNodeType_XmlDeclaration = 17,
  67    _XmlNodeType_Last = 17
  68} XmlNodeType;
  69/*****************************************************************************
  70 * IXmlReader interface
  71 */
  72#ifndef __IXmlReader_INTERFACE_DEFINED__
  73#define __IXmlReader_INTERFACE_DEFINED__
  74
  75DEFINE_GUID(IID_IXmlReader, 0x7279fc81, 0x709d, 0x4095, 0xb6,0x3d, 0x69,0xfe,0x4b,0x0d,0x90,0x30);
  76#if defined(__cplusplus) && !defined(CINTERFACE)
  77MIDL_INTERFACE("7279fc81-709d-4095-b63d-69fe4b0d9030")
  78IXmlReader : public IUnknown
  79{
  80    virtual HRESULT STDMETHODCALLTYPE SetInput(
  81        IUnknown *input) = 0;
  82
  83    virtual HRESULT STDMETHODCALLTYPE GetProperty(
  84        UINT property,
  85        LONG_PTR *value) = 0;
  86
  87    virtual HRESULT STDMETHODCALLTYPE SetProperty(
  88        UINT property,
  89        LONG_PTR value) = 0;
  90
  91    virtual HRESULT STDMETHODCALLTYPE Read(
  92        XmlNodeType *node_type) = 0;
  93
  94    virtual HRESULT STDMETHODCALLTYPE GetNodeType(
  95        XmlNodeType *node_type) = 0;
  96
  97    virtual HRESULT STDMETHODCALLTYPE MoveToFirstAttribute(
  98        ) = 0;
  99
 100    virtual HRESULT STDMETHODCALLTYPE MoveToNextAttribute(
 101        ) = 0;
 102
 103    virtual HRESULT STDMETHODCALLTYPE MoveToAttributeByName(
 104        LPCWSTR local_name,
 105        LPCWSTR namespaceUri) = 0;
 106
 107    virtual HRESULT STDMETHODCALLTYPE MoveToElement(
 108        ) = 0;
 109
 110    virtual HRESULT STDMETHODCALLTYPE GetQualifiedName(
 111        LPCWSTR *qualifiedName,
 112        UINT *qualifiedName_length) = 0;
 113
 114    virtual HRESULT STDMETHODCALLTYPE GetNamespaceUri(
 115        LPCWSTR *namespaceUri,
 116        UINT *nnamespaceUri_length) = 0;
 117
 118    virtual HRESULT STDMETHODCALLTYPE GetLocalName(
 119        LPCWSTR *local_name,
 120        UINT *locale_name_length) = 0;
 121
 122    virtual HRESULT STDMETHODCALLTYPE GetPrefix(
 123        LPCWSTR *prefix,
 124        UINT *prefix_length) = 0;
 125
 126    virtual HRESULT STDMETHODCALLTYPE GetValue(
 127        LPCWSTR *value,
 128        UINT *value_length) = 0;
 129
 130    virtual HRESULT STDMETHODCALLTYPE ReadValueChunk(
 131        WCHAR *buffer,
 132        UINT chunk_size,
 133        UINT *read) = 0;
 134
 135    virtual HRESULT STDMETHODCALLTYPE GetBaseUri(
 136        LPCWSTR *baseUri,
 137        UINT *baseUri_length) = 0;
 138
 139    virtual WINBOOL STDMETHODCALLTYPE IsDefault(
 140        ) = 0;
 141
 142    virtual WINBOOL STDMETHODCALLTYPE IsEmptyElement(
 143        ) = 0;
 144
 145    virtual HRESULT STDMETHODCALLTYPE GetLineNumber(
 146        UINT *lineNumber) = 0;
 147
 148    virtual HRESULT STDMETHODCALLTYPE GetLinePosition(
 149        UINT *linePosition) = 0;
 150
 151    virtual HRESULT STDMETHODCALLTYPE GetAttributeCount(
 152        UINT *attributeCount) = 0;
 153
 154    virtual HRESULT STDMETHODCALLTYPE GetDepth(
 155        UINT *depth) = 0;
 156
 157    virtual WINBOOL STDMETHODCALLTYPE IsEOF(
 158        ) = 0;
 159
 160};
 161#ifdef __CRT_UUID_DECL
 162__CRT_UUID_DECL(IXmlReader, 0x7279fc81, 0x709d, 0x4095, 0xb6,0x3d, 0x69,0xfe,0x4b,0x0d,0x90,0x30)
 163#endif
 164#else
 165typedef struct IXmlReaderVtbl {
 166    BEGIN_INTERFACE
 167
 168    /*** IUnknown methods ***/
 169    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 170        IXmlReader *This,
 171        REFIID riid,
 172        void **ppvObject);
 173
 174    ULONG (STDMETHODCALLTYPE *AddRef)(
 175        IXmlReader *This);
 176
 177    ULONG (STDMETHODCALLTYPE *Release)(
 178        IXmlReader *This);
 179
 180    /*** IXmlReader methods ***/
 181    HRESULT (STDMETHODCALLTYPE *SetInput)(
 182        IXmlReader *This,
 183        IUnknown *input);
 184
 185    HRESULT (STDMETHODCALLTYPE *GetProperty)(
 186        IXmlReader *This,
 187        UINT property,
 188        LONG_PTR *value);
 189
 190    HRESULT (STDMETHODCALLTYPE *SetProperty)(
 191        IXmlReader *This,
 192        UINT property,
 193        LONG_PTR value);
 194
 195    HRESULT (STDMETHODCALLTYPE *Read)(
 196        IXmlReader *This,
 197        XmlNodeType *node_type);
 198
 199    HRESULT (STDMETHODCALLTYPE *GetNodeType)(
 200        IXmlReader *This,
 201        XmlNodeType *node_type);
 202
 203    HRESULT (STDMETHODCALLTYPE *MoveToFirstAttribute)(
 204        IXmlReader *This);
 205
 206    HRESULT (STDMETHODCALLTYPE *MoveToNextAttribute)(
 207        IXmlReader *This);
 208
 209    HRESULT (STDMETHODCALLTYPE *MoveToAttributeByName)(
 210        IXmlReader *This,
 211        LPCWSTR local_name,
 212        LPCWSTR namespaceUri);
 213
 214    HRESULT (STDMETHODCALLTYPE *MoveToElement)(
 215        IXmlReader *This);
 216
 217    HRESULT (STDMETHODCALLTYPE *GetQualifiedName)(
 218        IXmlReader *This,
 219        LPCWSTR *qualifiedName,
 220        UINT *qualifiedName_length);
 221
 222    HRESULT (STDMETHODCALLTYPE *GetNamespaceUri)(
 223        IXmlReader *This,
 224        LPCWSTR *namespaceUri,
 225        UINT *nnamespaceUri_length);
 226
 227    HRESULT (STDMETHODCALLTYPE *GetLocalName)(
 228        IXmlReader *This,
 229        LPCWSTR *local_name,
 230        UINT *locale_name_length);
 231
 232    HRESULT (STDMETHODCALLTYPE *GetPrefix)(
 233        IXmlReader *This,
 234        LPCWSTR *prefix,
 235        UINT *prefix_length);
 236
 237    HRESULT (STDMETHODCALLTYPE *GetValue)(
 238        IXmlReader *This,
 239        LPCWSTR *value,
 240        UINT *value_length);
 241
 242    HRESULT (STDMETHODCALLTYPE *ReadValueChunk)(
 243        IXmlReader *This,
 244        WCHAR *buffer,
 245        UINT chunk_size,
 246        UINT *read);
 247
 248    HRESULT (STDMETHODCALLTYPE *GetBaseUri)(
 249        IXmlReader *This,
 250        LPCWSTR *baseUri,
 251        UINT *baseUri_length);
 252
 253    WINBOOL (STDMETHODCALLTYPE *IsDefault)(
 254        IXmlReader *This);
 255
 256    WINBOOL (STDMETHODCALLTYPE *IsEmptyElement)(
 257        IXmlReader *This);
 258
 259    HRESULT (STDMETHODCALLTYPE *GetLineNumber)(
 260        IXmlReader *This,
 261        UINT *lineNumber);
 262
 263    HRESULT (STDMETHODCALLTYPE *GetLinePosition)(
 264        IXmlReader *This,
 265        UINT *linePosition);
 266
 267    HRESULT (STDMETHODCALLTYPE *GetAttributeCount)(
 268        IXmlReader *This,
 269        UINT *attributeCount);
 270
 271    HRESULT (STDMETHODCALLTYPE *GetDepth)(
 272        IXmlReader *This,
 273        UINT *depth);
 274
 275    WINBOOL (STDMETHODCALLTYPE *IsEOF)(
 276        IXmlReader *This);
 277
 278    END_INTERFACE
 279} IXmlReaderVtbl;
 280
 281interface IXmlReader {
 282    CONST_VTBL IXmlReaderVtbl* lpVtbl;
 283};
 284
 285#ifdef COBJMACROS
 286#ifndef WIDL_C_INLINE_WRAPPERS
 287/*** IUnknown methods ***/
 288#define IXmlReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 289#define IXmlReader_AddRef(This) (This)->lpVtbl->AddRef(This)
 290#define IXmlReader_Release(This) (This)->lpVtbl->Release(This)
 291/*** IXmlReader methods ***/
 292#define IXmlReader_SetInput(This,input) (This)->lpVtbl->SetInput(This,input)
 293#define IXmlReader_GetProperty(This,property,value) (This)->lpVtbl->GetProperty(This,property,value)
 294#define IXmlReader_SetProperty(This,property,value) (This)->lpVtbl->SetProperty(This,property,value)
 295#define IXmlReader_Read(This,node_type) (This)->lpVtbl->Read(This,node_type)
 296#define IXmlReader_GetNodeType(This,node_type) (This)->lpVtbl->GetNodeType(This,node_type)
 297#define IXmlReader_MoveToFirstAttribute(This) (This)->lpVtbl->MoveToFirstAttribute(This)
 298#define IXmlReader_MoveToNextAttribute(This) (This)->lpVtbl->MoveToNextAttribute(This)
 299#define IXmlReader_MoveToAttributeByName(This,local_name,namespaceUri) (This)->lpVtbl->MoveToAttributeByName(This,local_name,namespaceUri)
 300#define IXmlReader_MoveToElement(This) (This)->lpVtbl->MoveToElement(This)
 301#define IXmlReader_GetQualifiedName(This,qualifiedName,qualifiedName_length) (This)->lpVtbl->GetQualifiedName(This,qualifiedName,qualifiedName_length)
 302#define IXmlReader_GetNamespaceUri(This,namespaceUri,nnamespaceUri_length) (This)->lpVtbl->GetNamespaceUri(This,namespaceUri,nnamespaceUri_length)
 303#define IXmlReader_GetLocalName(This,local_name,locale_name_length) (This)->lpVtbl->GetLocalName(This,local_name,locale_name_length)
 304#define IXmlReader_GetPrefix(This,prefix,prefix_length) (This)->lpVtbl->GetPrefix(This,prefix,prefix_length)
 305#define IXmlReader_GetValue(This,value,value_length) (This)->lpVtbl->GetValue(This,value,value_length)
 306#define IXmlReader_ReadValueChunk(This,buffer,chunk_size,read) (This)->lpVtbl->ReadValueChunk(This,buffer,chunk_size,read)
 307#define IXmlReader_GetBaseUri(This,baseUri,baseUri_length) (This)->lpVtbl->GetBaseUri(This,baseUri,baseUri_length)
 308#define IXmlReader_IsDefault(This) (This)->lpVtbl->IsDefault(This)
 309#define IXmlReader_IsEmptyElement(This) (This)->lpVtbl->IsEmptyElement(This)
 310#define IXmlReader_GetLineNumber(This,lineNumber) (This)->lpVtbl->GetLineNumber(This,lineNumber)
 311#define IXmlReader_GetLinePosition(This,linePosition) (This)->lpVtbl->GetLinePosition(This,linePosition)
 312#define IXmlReader_GetAttributeCount(This,attributeCount) (This)->lpVtbl->GetAttributeCount(This,attributeCount)
 313#define IXmlReader_GetDepth(This,depth) (This)->lpVtbl->GetDepth(This,depth)
 314#define IXmlReader_IsEOF(This) (This)->lpVtbl->IsEOF(This)
 315#else
 316/*** IUnknown methods ***/
 317static inline HRESULT IXmlReader_QueryInterface(IXmlReader* This,REFIID riid,void **ppvObject) {
 318    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 319}
 320static inline ULONG IXmlReader_AddRef(IXmlReader* This) {
 321    return This->lpVtbl->AddRef(This);
 322}
 323static inline ULONG IXmlReader_Release(IXmlReader* This) {
 324    return This->lpVtbl->Release(This);
 325}
 326/*** IXmlReader methods ***/
 327static inline HRESULT IXmlReader_SetInput(IXmlReader* This,IUnknown *input) {
 328    return This->lpVtbl->SetInput(This,input);
 329}
 330static inline HRESULT IXmlReader_GetProperty(IXmlReader* This,UINT property,LONG_PTR *value) {
 331    return This->lpVtbl->GetProperty(This,property,value);
 332}
 333static inline HRESULT IXmlReader_SetProperty(IXmlReader* This,UINT property,LONG_PTR value) {
 334    return This->lpVtbl->SetProperty(This,property,value);
 335}
 336static inline HRESULT IXmlReader_Read(IXmlReader* This,XmlNodeType *node_type) {
 337    return This->lpVtbl->Read(This,node_type);
 338}
 339static inline HRESULT IXmlReader_GetNodeType(IXmlReader* This,XmlNodeType *node_type) {
 340    return This->lpVtbl->GetNodeType(This,node_type);
 341}
 342static inline HRESULT IXmlReader_MoveToFirstAttribute(IXmlReader* This) {
 343    return This->lpVtbl->MoveToFirstAttribute(This);
 344}
 345static inline HRESULT IXmlReader_MoveToNextAttribute(IXmlReader* This) {
 346    return This->lpVtbl->MoveToNextAttribute(This);
 347}
 348static inline HRESULT IXmlReader_MoveToAttributeByName(IXmlReader* This,LPCWSTR local_name,LPCWSTR namespaceUri) {
 349    return This->lpVtbl->MoveToAttributeByName(This,local_name,namespaceUri);
 350}
 351static inline HRESULT IXmlReader_MoveToElement(IXmlReader* This) {
 352    return This->lpVtbl->MoveToElement(This);
 353}
 354static inline HRESULT IXmlReader_GetQualifiedName(IXmlReader* This,LPCWSTR *qualifiedName,UINT *qualifiedName_length) {
 355    return This->lpVtbl->GetQualifiedName(This,qualifiedName,qualifiedName_length);
 356}
 357static inline HRESULT IXmlReader_GetNamespaceUri(IXmlReader* This,LPCWSTR *namespaceUri,UINT *nnamespaceUri_length) {
 358    return This->lpVtbl->GetNamespaceUri(This,namespaceUri,nnamespaceUri_length);
 359}
 360static inline HRESULT IXmlReader_GetLocalName(IXmlReader* This,LPCWSTR *local_name,UINT *locale_name_length) {
 361    return This->lpVtbl->GetLocalName(This,local_name,locale_name_length);
 362}
 363static inline HRESULT IXmlReader_GetPrefix(IXmlReader* This,LPCWSTR *prefix,UINT *prefix_length) {
 364    return This->lpVtbl->GetPrefix(This,prefix,prefix_length);
 365}
 366static inline HRESULT IXmlReader_GetValue(IXmlReader* This,LPCWSTR *value,UINT *value_length) {
 367    return This->lpVtbl->GetValue(This,value,value_length);
 368}
 369static inline HRESULT IXmlReader_ReadValueChunk(IXmlReader* This,WCHAR *buffer,UINT chunk_size,UINT *read) {
 370    return This->lpVtbl->ReadValueChunk(This,buffer,chunk_size,read);
 371}
 372static inline HRESULT IXmlReader_GetBaseUri(IXmlReader* This,LPCWSTR *baseUri,UINT *baseUri_length) {
 373    return This->lpVtbl->GetBaseUri(This,baseUri,baseUri_length);
 374}
 375static inline WINBOOL IXmlReader_IsDefault(IXmlReader* This) {
 376    return This->lpVtbl->IsDefault(This);
 377}
 378static inline WINBOOL IXmlReader_IsEmptyElement(IXmlReader* This) {
 379    return This->lpVtbl->IsEmptyElement(This);
 380}
 381static inline HRESULT IXmlReader_GetLineNumber(IXmlReader* This,UINT *lineNumber) {
 382    return This->lpVtbl->GetLineNumber(This,lineNumber);
 383}
 384static inline HRESULT IXmlReader_GetLinePosition(IXmlReader* This,UINT *linePosition) {
 385    return This->lpVtbl->GetLinePosition(This,linePosition);
 386}
 387static inline HRESULT IXmlReader_GetAttributeCount(IXmlReader* This,UINT *attributeCount) {
 388    return This->lpVtbl->GetAttributeCount(This,attributeCount);
 389}
 390static inline HRESULT IXmlReader_GetDepth(IXmlReader* This,UINT *depth) {
 391    return This->lpVtbl->GetDepth(This,depth);
 392}
 393static inline WINBOOL IXmlReader_IsEOF(IXmlReader* This) {
 394    return This->lpVtbl->IsEOF(This);
 395}
 396#endif
 397#endif
 398
 399#endif
 400
 401
 402#endif  /* __IXmlReader_INTERFACE_DEFINED__ */
 403
 404/*****************************************************************************
 405 * IXmlResolver interface
 406 */
 407#ifndef __IXmlResolver_INTERFACE_DEFINED__
 408#define __IXmlResolver_INTERFACE_DEFINED__
 409
 410DEFINE_GUID(IID_IXmlResolver, 0x7279fc82, 0x709d, 0x4095, 0xb6,0x3d, 0x69,0xfe,0x4b,0x0d,0x90,0x30);
 411#if defined(__cplusplus) && !defined(CINTERFACE)
 412MIDL_INTERFACE("7279fc82-709d-4095-b63d-69fe4b0d9030")
 413IXmlResolver : public IUnknown
 414{
 415    virtual HRESULT STDMETHODCALLTYPE ResolveUri(
 416        LPCWSTR base_uri,
 417        LPCWSTR public_id,
 418        LPCWSTR system_id,
 419        IUnknown **input) = 0;
 420
 421};
 422#ifdef __CRT_UUID_DECL
 423__CRT_UUID_DECL(IXmlResolver, 0x7279fc82, 0x709d, 0x4095, 0xb6,0x3d, 0x69,0xfe,0x4b,0x0d,0x90,0x30)
 424#endif
 425#else
 426typedef struct IXmlResolverVtbl {
 427    BEGIN_INTERFACE
 428
 429    /*** IUnknown methods ***/
 430    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 431        IXmlResolver *This,
 432        REFIID riid,
 433        void **ppvObject);
 434
 435    ULONG (STDMETHODCALLTYPE *AddRef)(
 436        IXmlResolver *This);
 437
 438    ULONG (STDMETHODCALLTYPE *Release)(
 439        IXmlResolver *This);
 440
 441    /*** IXmlResolver methods ***/
 442    HRESULT (STDMETHODCALLTYPE *ResolveUri)(
 443        IXmlResolver *This,
 444        LPCWSTR base_uri,
 445        LPCWSTR public_id,
 446        LPCWSTR system_id,
 447        IUnknown **input);
 448
 449    END_INTERFACE
 450} IXmlResolverVtbl;
 451
 452interface IXmlResolver {
 453    CONST_VTBL IXmlResolverVtbl* lpVtbl;
 454};
 455
 456#ifdef COBJMACROS
 457#ifndef WIDL_C_INLINE_WRAPPERS
 458/*** IUnknown methods ***/
 459#define IXmlResolver_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 460#define IXmlResolver_AddRef(This) (This)->lpVtbl->AddRef(This)
 461#define IXmlResolver_Release(This) (This)->lpVtbl->Release(This)
 462/*** IXmlResolver methods ***/
 463#define IXmlResolver_ResolveUri(This,base_uri,public_id,system_id,input) (This)->lpVtbl->ResolveUri(This,base_uri,public_id,system_id,input)
 464#else
 465/*** IUnknown methods ***/
 466static inline HRESULT IXmlResolver_QueryInterface(IXmlResolver* This,REFIID riid,void **ppvObject) {
 467    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 468}
 469static inline ULONG IXmlResolver_AddRef(IXmlResolver* This) {
 470    return This->lpVtbl->AddRef(This);
 471}
 472static inline ULONG IXmlResolver_Release(IXmlResolver* This) {
 473    return This->lpVtbl->Release(This);
 474}
 475/*** IXmlResolver methods ***/
 476static inline HRESULT IXmlResolver_ResolveUri(IXmlResolver* This,LPCWSTR base_uri,LPCWSTR public_id,LPCWSTR system_id,IUnknown **input) {
 477    return This->lpVtbl->ResolveUri(This,base_uri,public_id,system_id,input);
 478}
 479#endif
 480#endif
 481
 482#endif
 483
 484
 485#endif  /* __IXmlResolver_INTERFACE_DEFINED__ */
 486
 487typedef enum XmlReadState {
 488    XmlReadState_Initial = 0,
 489    XmlReadState_Interactive = 1,
 490    XmlReadState_Error = 2,
 491    XmlReadState_EndOfFile = 3,
 492    XmlReadState_Closed = 4
 493} XmlReadState;
 494typedef enum XmlConformanceLevel {
 495    XmlConformanceLevel_Auto = 0,
 496    XmlConformanceLevel_Fragment = 1,
 497    XmlConformanceLevel_Document = 2,
 498    _XmlConformanceLevel_Last = XmlConformanceLevel_Document
 499} XmlConformanceLevel;
 500typedef enum DtdProcessing {
 501    DtdProcessing_Prohibit = 0,
 502    DtdProcessing_Parse = 1,
 503    _DtdProcessing_Last = DtdProcessing_Parse
 504} DtdProcessing;
 505typedef enum XmlReaderProperty {
 506    XmlReaderProperty_MultiLanguage = 0,
 507    XmlReaderProperty_ConformanceLevel = 1,
 508    XmlReaderProperty_RandomAccess = 2,
 509    XmlReaderProperty_XmlResolver = 3,
 510    XmlReaderProperty_DtdProcessing = 4,
 511    XmlReaderProperty_ReadState = 5,
 512    XmlReaderProperty_MaxElementDepth = 6,
 513    XmlReaderProperty_MaxEntityExpansion = 7,
 514    _XmlReaderProperty_Last = XmlReaderProperty_MaxEntityExpansion
 515} XmlReaderProperty;
 516typedef enum XmlError {
 517    MX_E_MX = 0xc00cee00,
 518    MX_E_INPUTEND = 0xc00cee01,
 519    MX_E_ENCODING = 0xc00cee02,
 520    MX_E_ENCODINGSWITCH = 0xc00cee03,
 521    MX_E_ENCODINGSIGNATURE = 0xc00cee04,
 522    WC_E_WC = 0xc00cee20,
 523    WC_E_WHITESPACE = 0xc00cee21,
 524    WC_E_SEMICOLON = 0xc00cee22,
 525    WC_E_GREATERTHAN = 0xc00cee23,
 526    WC_E_QUOTE = 0xc00cee24,
 527    WC_E_EQUAL = 0xc00cee25,
 528    WC_E_LESSTHAN = 0xc00cee26,
 529    WC_E_HEXDIGIT = 0xc00cee27,
 530    WC_E_DIGIT = 0xc00cee28,
 531    WC_E_LEFTBRACKET = 0xc00cee29,
 532    WC_E_LEFTPAREN = 0xc00cee2a,
 533    WC_E_XMLCHARACTER = 0xc00cee2b,
 534    WC_E_NAMECHARACTER = 0xc00cee2c,
 535    WC_E_SYNTAX = 0xc00cee2d,
 536    WC_E_CDSECT = 0xc00cee2e,
 537    WC_E_COMMENT = 0xc00cee2f,
 538    WC_E_CONDSECT = 0xc00cee30,
 539    WC_E_DECLATTLIST = 0xc00cee31,
 540    WC_E_DECLDOCTYPE = 0xc00cee32,
 541    WC_E_DECLELEMENT = 0xc00cee33,
 542    WC_E_DECLENTITY = 0xc00cee34,
 543    WC_E_DECLNOTATION = 0xc00cee35,
 544    WC_E_NDATA = 0xc00cee36,
 545    WC_E_PUBLIC = 0xc00cee37,
 546    WC_E_SYSTEM = 0xc00cee38,
 547    WC_E_NAME = 0xc00cee39,
 548    WC_E_ROOTELEMENT = 0xc00cee3a,
 549    WC_E_ELEMENTMATCH = 0xc00cee3b,
 550    WC_E_UNIQUEATTRIBUTE = 0xc00cee3c,
 551    WC_E_TEXTXMLDECL = 0xc00cee3d,
 552    WC_E_LEADINGXML = 0xc00cee3e,
 553    WC_E_TEXTDECL = 0xc00cee3f,
 554    WC_E_XMLDECL = 0xc00cee40,
 555    WC_E_ENCNAME = 0xc00cee41,
 556    WC_E_PUBLICID = 0xc00cee42,
 557    WC_E_PESINTERNALSUBSET = 0xc00cee43,
 558    WC_E_PESBETWEENDECLS = 0xc00cee44,
 559    WC_E_NORECURSION = 0xc00cee45,
 560    WC_E_ENTITYCONTENT = 0xc00cee46,
 561    WC_E_UNDECLAREDENTITY = 0xc00cee47,
 562    WC_E_PARSEDENTITY = 0xc00cee48,
 563    WC_E_NOEXTERNALENTITYREF = 0xc00cee49,
 564    WC_E_PI = 0xc00cee4a,
 565    WC_E_SYSTEMID = 0xc00cee4b,
 566    WC_E_QUESTIONMARK = 0xc00cee4c,
 567    WC_E_CDSECTEND = 0xc00cee4d,
 568    WC_E_MOREDATA = 0xc00cee4e,
 569    WC_E_DTDPROHIBITED = 0xc00cee4f,
 570    WC_E_INVALIDXMLSPACE = 0xc00cee50,
 571    NC_E_NC = 0xc00cee60,
 572    NC_E_QNAMECHARACTER = 0xc00cee61,
 573    NC_E_QNAMECOLON = 0xc00cee62,
 574    NC_E_NAMECOLON = 0xc00cee63,
 575    NC_E_DECLAREDPREFIX = 0xc00cee64,
 576    NC_E_UNDECLAREDPREFIX = 0xc00cee65,
 577    NC_E_EMPTYURI = 0xc00cee66,
 578    NC_E_XMLPREFIXRESERVED = 0xc00cee67,
 579    NC_E_XMLNSPREFIXRESERVED = 0xc00cee68,
 580    NC_E_XMLURIRESERVED = 0xc00cee69,
 581    NC_E_XMLNSURIRESERVED = 0xc00cee6a,
 582    SC_E_SC = 0xc00cee80,
 583    SC_E_MAXELEMENTDEPTH = 0xc00cee81,
 584    SC_E_MAXENTITYEXPANSION = 0xc00cee82,
 585    WR_E_WR = 0xc00cef00,
 586    WR_E_NONWHITESPACE = 0xc00cef01,
 587    WR_E_NSPREFIXDECLARED = 0xc00cef02,
 588    WR_E_NSPREFIXWITHEMPTYNSURI = 0xc00cef03,
 589    WR_E_DUPLICATEATTRIBUTE = 0xc00cef04,
 590    WR_E_XMLNSPREFIXDECLARATION = 0xc00cef05,
 591    WR_E_XMLPREFIXDECLARATION = 0xc00cef06,
 592    WR_E_XMLURIDECLARATION = 0xc00cef07,
 593    WR_E_XMLNSURIDECLARATION = 0xc00cef08,
 594    WR_E_NAMESPACEUNDECLARED = 0xc00cef09,
 595    WR_E_INVALIDXMLSPACE = 0xc00cef0a,
 596    WR_E_INVALIDACTION = 0xc00cef0b,
 597    WR_E_INVALIDSURROGATEPAIR = 0xc00cef0c,
 598    XML_E_INVALID_DECIMAL = 0xc00ce01d,
 599    XML_E_INVALID_HEXIDECIMAL = 0xc00ce01e,
 600    XML_E_INVALID_UNICODE = 0xc00ce01f,
 601    XML_E_INVALIDENCODING = 0xc00ce06e
 602} XmlError;
 603STDAPI CreateXmlReader(REFIID riid, void **ppvObject, IMalloc *pMalloc);
 604typedef IUnknown IXmlReaderInput;
 605STDAPI CreateXmlReaderInputWithEncodingCodePage(IUnknown *stream, IMalloc *pMalloc,
 606        UINT encoding_codepage, WINBOOL hint, const WCHAR *base_uri, IXmlReaderInput **pInput);
 607STDAPI CreateXmlReaderInputWithEncodingName(IUnknown *stream, IMalloc *pMalloc,
 608                                            LPCWSTR encoding, WINBOOL hint,
 609                                            LPCWSTR base_uri, IXmlReaderInput **ppInput);
 610typedef enum XmlStandalone {
 611    XmlStandalone_Omit = 0,
 612    XmlStandalone_Yes = 1,
 613    XmlStandalone_No = 2,
 614    _XmlStandalone_Last = XmlStandalone_No
 615} XmlStandalone;
 616typedef enum XmlWriterProperty {
 617    XmlWriterProperty_MultiLanguage = 0,
 618    XmlWriterProperty_Indent = 1,
 619    XmlWriterProperty_ByteOrderMark = 2,
 620    XmlWriterProperty_OmitXmlDeclaration = 3,
 621    XmlWriterProperty_ConformanceLevel = 4,
 622    _XmlWriterProperty_Last = XmlWriterProperty_OmitXmlDeclaration
 623} XmlWriterProperty;
 624/*****************************************************************************
 625 * IXmlWriter interface
 626 */
 627#ifndef __IXmlWriter_INTERFACE_DEFINED__
 628#define __IXmlWriter_INTERFACE_DEFINED__
 629
 630DEFINE_GUID(IID_IXmlWriter, 0x7279fc88, 0x709d, 0x4095, 0xb6,0x3d, 0x69,0xfe,0x4b,0x0d,0x90,0x30);
 631#if defined(__cplusplus) && !defined(CINTERFACE)
 632MIDL_INTERFACE("7279fc88-709d-4095-b63d-69fe4b0d9030")
 633IXmlWriter : public IUnknown
 634{
 635    virtual HRESULT STDMETHODCALLTYPE SetOutput(
 636        IUnknown *pOutput) = 0;
 637
 638    virtual HRESULT STDMETHODCALLTYPE GetProperty(
 639        UINT nProperty,
 640        LONG_PTR *ppValue) = 0;
 641
 642    virtual HRESULT STDMETHODCALLTYPE SetProperty(
 643        UINT nProperty,
 644        LONG_PTR pValue) = 0;
 645
 646    virtual HRESULT STDMETHODCALLTYPE WriteAttributes(
 647        IXmlReader *pReader,
 648        WINBOOL fWriteDefaultAttributes) = 0;
 649
 650    virtual HRESULT STDMETHODCALLTYPE WriteAttributeString(
 651        LPCWSTR pwszPrefix,
 652        LPCWSTR pwszLocalName,
 653        LPCWSTR pwszNamespaceUri,
 654        LPCWSTR pwszValue) = 0;
 655
 656    virtual HRESULT STDMETHODCALLTYPE WriteCData(
 657        LPCWSTR pwszText) = 0;
 658
 659    virtual HRESULT STDMETHODCALLTYPE WriteCharEntity(
 660        WCHAR wch) = 0;
 661
 662    virtual HRESULT STDMETHODCALLTYPE WriteChars(
 663        const WCHAR *pwch,
 664        UINT cwch) = 0;
 665
 666    virtual HRESULT STDMETHODCALLTYPE WriteComment(
 667        LPCWSTR pwszComment) = 0;
 668
 669    virtual HRESULT STDMETHODCALLTYPE WriteDocType(
 670        LPCWSTR pwszName,
 671        LPCWSTR pwszPublicId,
 672        LPCWSTR pwszSystemId,
 673        LPCWSTR pwszSubset) = 0;
 674
 675    virtual HRESULT STDMETHODCALLTYPE WriteElementString(
 676        LPCWSTR pwszPrefix,
 677        LPCWSTR pwszLocalName,
 678        LPCWSTR pwszNamespaceUri,
 679        LPCWSTR pwszValue) = 0;
 680
 681    virtual HRESULT STDMETHODCALLTYPE WriteEndDocument(
 682        ) = 0;
 683
 684    virtual HRESULT STDMETHODCALLTYPE WriteEndElement(
 685        ) = 0;
 686
 687    virtual HRESULT STDMETHODCALLTYPE WriteEntityRef(
 688        LPCWSTR pwszName) = 0;
 689
 690    virtual HRESULT STDMETHODCALLTYPE WriteFullEndElement(
 691        ) = 0;
 692
 693    virtual HRESULT STDMETHODCALLTYPE WriteName(
 694        LPCWSTR pwszName) = 0;
 695
 696    virtual HRESULT STDMETHODCALLTYPE WriteNmToken(
 697        LPCWSTR pwszNmToken) = 0;
 698
 699    virtual HRESULT STDMETHODCALLTYPE WriteNode(
 700        IXmlReader *pReader,
 701        WINBOOL fWriteDefaultAttributes) = 0;
 702
 703    virtual HRESULT STDMETHODCALLTYPE WriteNodeShallow(
 704        IXmlReader *pReader,
 705        WINBOOL fWriteDefaultAttributes) = 0;
 706
 707    virtual HRESULT STDMETHODCALLTYPE WriteProcessingInstruction(
 708        LPCWSTR pwszName,
 709        LPCWSTR pwszText) = 0;
 710
 711    virtual HRESULT STDMETHODCALLTYPE WriteQualifiedName(
 712        LPCWSTR pwszLocalName,
 713        LPCWSTR pwszNamespaceUri) = 0;
 714
 715    virtual HRESULT STDMETHODCALLTYPE WriteRaw(
 716        LPCWSTR pwszData) = 0;
 717
 718    virtual HRESULT STDMETHODCALLTYPE WriteRawChars(
 719        const WCHAR *pwch,
 720        UINT cwch) = 0;
 721
 722    virtual HRESULT STDMETHODCALLTYPE WriteStartDocument(
 723        XmlStandalone standalone) = 0;
 724
 725    virtual HRESULT STDMETHODCALLTYPE WriteStartElement(
 726        LPCWSTR pwszPrefix,
 727        LPCWSTR pwszLocalName,
 728        LPCWSTR pwszNamespaceUri) = 0;
 729
 730    virtual HRESULT STDMETHODCALLTYPE WriteString(
 731        LPCWSTR pwszText) = 0;
 732
 733    virtual HRESULT STDMETHODCALLTYPE WriteSurrogateCharEntity(
 734        WCHAR wchLow,
 735        WCHAR wchHigh) = 0;
 736
 737    virtual HRESULT STDMETHODCALLTYPE WriteWhitespace(
 738        LPCWSTR pwszWhitespace) = 0;
 739
 740    virtual HRESULT STDMETHODCALLTYPE Flush(
 741        ) = 0;
 742
 743};
 744#ifdef __CRT_UUID_DECL
 745__CRT_UUID_DECL(IXmlWriter, 0x7279fc88, 0x709d, 0x4095, 0xb6,0x3d, 0x69,0xfe,0x4b,0x0d,0x90,0x30)
 746#endif
 747#else
 748typedef struct IXmlWriterVtbl {
 749    BEGIN_INTERFACE
 750
 751    /*** IUnknown methods ***/
 752    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 753        IXmlWriter *This,
 754        REFIID riid,
 755        void **ppvObject);
 756
 757    ULONG (STDMETHODCALLTYPE *AddRef)(
 758        IXmlWriter *This);
 759
 760    ULONG (STDMETHODCALLTYPE *Release)(
 761        IXmlWriter *This);
 762
 763    /*** IXmlWriter methods ***/
 764    HRESULT (STDMETHODCALLTYPE *SetOutput)(
 765        IXmlWriter *This,
 766        IUnknown *pOutput);
 767
 768    HRESULT (STDMETHODCALLTYPE *GetProperty)(
 769        IXmlWriter *This,
 770        UINT nProperty,
 771        LONG_PTR *ppValue);
 772
 773    HRESULT (STDMETHODCALLTYPE *SetProperty)(
 774        IXmlWriter *This,
 775        UINT nProperty,
 776        LONG_PTR pValue);
 777
 778    HRESULT (STDMETHODCALLTYPE *WriteAttributes)(
 779        IXmlWriter *This,
 780        IXmlReader *pReader,
 781        WINBOOL fWriteDefaultAttributes);
 782
 783    HRESULT (STDMETHODCALLTYPE *WriteAttributeString)(
 784        IXmlWriter *This,
 785        LPCWSTR pwszPrefix,
 786        LPCWSTR pwszLocalName,
 787        LPCWSTR pwszNamespaceUri,
 788        LPCWSTR pwszValue);
 789
 790    HRESULT (STDMETHODCALLTYPE *WriteCData)(
 791        IXmlWriter *This,
 792        LPCWSTR pwszText);
 793
 794    HRESULT (STDMETHODCALLTYPE *WriteCharEntity)(
 795        IXmlWriter *This,
 796        WCHAR wch);
 797
 798    HRESULT (STDMETHODCALLTYPE *WriteChars)(
 799        IXmlWriter *This,
 800        const WCHAR *pwch,
 801        UINT cwch);
 802
 803    HRESULT (STDMETHODCALLTYPE *WriteComment)(
 804        IXmlWriter *This,
 805        LPCWSTR pwszComment);
 806
 807    HRESULT (STDMETHODCALLTYPE *WriteDocType)(
 808        IXmlWriter *This,
 809        LPCWSTR pwszName,
 810        LPCWSTR pwszPublicId,
 811        LPCWSTR pwszSystemId,
 812        LPCWSTR pwszSubset);
 813
 814    HRESULT (STDMETHODCALLTYPE *WriteElementString)(
 815        IXmlWriter *This,
 816        LPCWSTR pwszPrefix,
 817        LPCWSTR pwszLocalName,
 818        LPCWSTR pwszNamespaceUri,
 819        LPCWSTR pwszValue);
 820
 821    HRESULT (STDMETHODCALLTYPE *WriteEndDocument)(
 822        IXmlWriter *This);
 823
 824    HRESULT (STDMETHODCALLTYPE *WriteEndElement)(
 825        IXmlWriter *This);
 826
 827    HRESULT (STDMETHODCALLTYPE *WriteEntityRef)(
 828        IXmlWriter *This,
 829        LPCWSTR pwszName);
 830
 831    HRESULT (STDMETHODCALLTYPE *WriteFullEndElement)(
 832        IXmlWriter *This);
 833
 834    HRESULT (STDMETHODCALLTYPE *WriteName)(
 835        IXmlWriter *This,
 836        LPCWSTR pwszName);
 837
 838    HRESULT (STDMETHODCALLTYPE *WriteNmToken)(
 839        IXmlWriter *This,
 840        LPCWSTR pwszNmToken);
 841
 842    HRESULT (STDMETHODCALLTYPE *WriteNode)(
 843        IXmlWriter *This,
 844        IXmlReader *pReader,
 845        WINBOOL fWriteDefaultAttributes);
 846
 847    HRESULT (STDMETHODCALLTYPE *WriteNodeShallow)(
 848        IXmlWriter *This,
 849        IXmlReader *pReader,
 850        WINBOOL fWriteDefaultAttributes);
 851
 852    HRESULT (STDMETHODCALLTYPE *WriteProcessingInstruction)(
 853        IXmlWriter *This,
 854        LPCWSTR pwszName,
 855        LPCWSTR pwszText);
 856
 857    HRESULT (STDMETHODCALLTYPE *WriteQualifiedName)(
 858        IXmlWriter *This,
 859        LPCWSTR pwszLocalName,
 860        LPCWSTR pwszNamespaceUri);
 861
 862    HRESULT (STDMETHODCALLTYPE *WriteRaw)(
 863        IXmlWriter *This,
 864        LPCWSTR pwszData);
 865
 866    HRESULT (STDMETHODCALLTYPE *WriteRawChars)(
 867        IXmlWriter *This,
 868        const WCHAR *pwch,
 869        UINT cwch);
 870
 871    HRESULT (STDMETHODCALLTYPE *WriteStartDocument)(
 872        IXmlWriter *This,
 873        XmlStandalone standalone);
 874
 875    HRESULT (STDMETHODCALLTYPE *WriteStartElement)(
 876        IXmlWriter *This,
 877        LPCWSTR pwszPrefix,
 878        LPCWSTR pwszLocalName,
 879        LPCWSTR pwszNamespaceUri);
 880
 881    HRESULT (STDMETHODCALLTYPE *WriteString)(
 882        IXmlWriter *This,
 883        LPCWSTR pwszText);
 884
 885    HRESULT (STDMETHODCALLTYPE *WriteSurrogateCharEntity)(
 886        IXmlWriter *This,
 887        WCHAR wchLow,
 888        WCHAR wchHigh);
 889
 890    HRESULT (STDMETHODCALLTYPE *WriteWhitespace)(
 891        IXmlWriter *This,
 892        LPCWSTR pwszWhitespace);
 893
 894    HRESULT (STDMETHODCALLTYPE *Flush)(
 895        IXmlWriter *This);
 896
 897    END_INTERFACE
 898} IXmlWriterVtbl;
 899
 900interface IXmlWriter {
 901    CONST_VTBL IXmlWriterVtbl* lpVtbl;
 902};
 903
 904#ifdef COBJMACROS
 905#ifndef WIDL_C_INLINE_WRAPPERS
 906/*** IUnknown methods ***/
 907#define IXmlWriter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 908#define IXmlWriter_AddRef(This) (This)->lpVtbl->AddRef(This)
 909#define IXmlWriter_Release(This) (This)->lpVtbl->Release(This)
 910/*** IXmlWriter methods ***/
 911#define IXmlWriter_SetOutput(This,pOutput) (This)->lpVtbl->SetOutput(This,pOutput)
 912#define IXmlWriter_GetProperty(This,nProperty,ppValue) (This)->lpVtbl->GetProperty(This,nProperty,ppValue)
 913#define IXmlWriter_SetProperty(This,nProperty,pValue) (This)->lpVtbl->SetProperty(This,nProperty,pValue)
 914#define IXmlWriter_WriteAttributes(This,pReader,fWriteDefaultAttributes) (This)->lpVtbl->WriteAttributes(This,pReader,fWriteDefaultAttributes)
 915#define IXmlWriter_WriteAttributeString(This,pwszPrefix,pwszLocalName,pwszNamespaceUri,pwszValue) (This)->lpVtbl->WriteAttributeString(This,pwszPrefix,pwszLocalName,pwszNamespaceUri,pwszValue)
 916#define IXmlWriter_WriteCData(This,pwszText) (This)->lpVtbl->WriteCData(This,pwszText)
 917#define IXmlWriter_WriteCharEntity(This,wch) (This)->lpVtbl->WriteCharEntity(This,wch)
 918#define IXmlWriter_WriteChars(This,pwch,cwch) (This)->lpVtbl->WriteChars(This,pwch,cwch)
 919#define IXmlWriter_WriteComment(This,pwszComment) (This)->lpVtbl->WriteComment(This,pwszComment)
 920#define IXmlWriter_WriteDocType(This,pwszName,pwszPublicId,pwszSystemId,pwszSubset) (This)->lpVtbl->WriteDocType(This,pwszName,pwszPublicId,pwszSystemId,pwszSubset)
 921#define IXmlWriter_WriteElementString(This,pwszPrefix,pwszLocalName,pwszNamespaceUri,pwszValue) (This)->lpVtbl->WriteElementString(This,pwszPrefix,pwszLocalName,pwszNamespaceUri,pwszValue)
 922#define IXmlWriter_WriteEndDocument(This) (This)->lpVtbl->WriteEndDocument(This)
 923#define IXmlWriter_WriteEndElement(This) (This)->lpVtbl->WriteEndElement(This)
 924#define IXmlWriter_WriteEntityRef(This,pwszName) (This)->lpVtbl->WriteEntityRef(This,pwszName)
 925#define IXmlWriter_WriteFullEndElement(This) (This)->lpVtbl->WriteFullEndElement(This)
 926#define IXmlWriter_WriteName(This,pwszName) (This)->lpVtbl->WriteName(This,pwszName)
 927#define IXmlWriter_WriteNmToken(This,pwszNmToken) (This)->lpVtbl->WriteNmToken(This,pwszNmToken)
 928#define IXmlWriter_WriteNode(This,pReader,fWriteDefaultAttributes) (This)->lpVtbl->WriteNode(This,pReader,fWriteDefaultAttributes)
 929#define IXmlWriter_WriteNodeShallow(This,pReader,fWriteDefaultAttributes) (This)->lpVtbl->WriteNodeShallow(This,pReader,fWriteDefaultAttributes)
 930#define IXmlWriter_WriteProcessingInstruction(This,pwszName,pwszText) (This)->lpVtbl->WriteProcessingInstruction(This,pwszName,pwszText)
 931#define IXmlWriter_WriteQualifiedName(This,pwszLocalName,pwszNamespaceUri) (This)->lpVtbl->WriteQualifiedName(This,pwszLocalName,pwszNamespaceUri)
 932#define IXmlWriter_WriteRaw(This,pwszData) (This)->lpVtbl->WriteRaw(This,pwszData)
 933#define IXmlWriter_WriteRawChars(This,pwch,cwch) (This)->lpVtbl->WriteRawChars(This,pwch,cwch)
 934#define IXmlWriter_WriteStartDocument(This,standalone) (This)->lpVtbl->WriteStartDocument(This,standalone)
 935#define IXmlWriter_WriteStartElement(This,pwszPrefix,pwszLocalName,pwszNamespaceUri) (This)->lpVtbl->WriteStartElement(This,pwszPrefix,pwszLocalName,pwszNamespaceUri)
 936#define IXmlWriter_WriteString(This,pwszText) (This)->lpVtbl->WriteString(This,pwszText)
 937#define IXmlWriter_WriteSurrogateCharEntity(This,wchLow,wchHigh) (This)->lpVtbl->WriteSurrogateCharEntity(This,wchLow,wchHigh)
 938#define IXmlWriter_WriteWhitespace(This,pwszWhitespace) (This)->lpVtbl->WriteWhitespace(This,pwszWhitespace)
 939#define IXmlWriter_Flush(This) (This)->lpVtbl->Flush(This)
 940#else
 941/*** IUnknown methods ***/
 942static inline HRESULT IXmlWriter_QueryInterface(IXmlWriter* This,REFIID riid,void **ppvObject) {
 943    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 944}
 945static inline ULONG IXmlWriter_AddRef(IXmlWriter* This) {
 946    return This->lpVtbl->AddRef(This);
 947}
 948static inline ULONG IXmlWriter_Release(IXmlWriter* This) {
 949    return This->lpVtbl->Release(This);
 950}
 951/*** IXmlWriter methods ***/
 952static inline HRESULT IXmlWriter_SetOutput(IXmlWriter* This,IUnknown *pOutput) {
 953    return This->lpVtbl->SetOutput(This,pOutput);
 954}
 955static inline HRESULT IXmlWriter_GetProperty(IXmlWriter* This,UINT nProperty,LONG_PTR *ppValue) {
 956    return This->lpVtbl->GetProperty(This,nProperty,ppValue);
 957}
 958static inline HRESULT IXmlWriter_SetProperty(IXmlWriter* This,UINT nProperty,LONG_PTR pValue) {
 959    return This->lpVtbl->SetProperty(This,nProperty,pValue);
 960}
 961static inline HRESULT IXmlWriter_WriteAttributes(IXmlWriter* This,IXmlReader *pReader,WINBOOL fWriteDefaultAttributes) {
 962    return This->lpVtbl->WriteAttributes(This,pReader,fWriteDefaultAttributes);
 963}
 964static inline HRESULT IXmlWriter_WriteAttributeString(IXmlWriter* This,LPCWSTR pwszPrefix,LPCWSTR pwszLocalName,LPCWSTR pwszNamespaceUri,LPCWSTR pwszValue) {
 965    return This->lpVtbl->WriteAttributeString(This,pwszPrefix,pwszLocalName,pwszNamespaceUri,pwszValue);
 966}
 967static inline HRESULT IXmlWriter_WriteCData(IXmlWriter* This,LPCWSTR pwszText) {
 968    return This->lpVtbl->WriteCData(This,pwszText);
 969}
 970static inline HRESULT IXmlWriter_WriteCharEntity(IXmlWriter* This,WCHAR wch) {
 971    return This->lpVtbl->WriteCharEntity(This,wch);
 972}
 973static inline HRESULT IXmlWriter_WriteChars(IXmlWriter* This,const WCHAR *pwch,UINT cwch) {
 974    return This->lpVtbl->WriteChars(This,pwch,cwch);
 975}
 976static inline HRESULT IXmlWriter_WriteComment(IXmlWriter* This,LPCWSTR pwszComment) {
 977    return This->lpVtbl->WriteComment(This,pwszComment);
 978}
 979static inline HRESULT IXmlWriter_WriteDocType(IXmlWriter* This,LPCWSTR pwszName,LPCWSTR pwszPublicId,LPCWSTR pwszSystemId,LPCWSTR pwszSubset) {
 980    return This->lpVtbl->WriteDocType(This,pwszName,pwszPublicId,pwszSystemId,pwszSubset);
 981}
 982static inline HRESULT IXmlWriter_WriteElementString(IXmlWriter* This,LPCWSTR pwszPrefix,LPCWSTR pwszLocalName,LPCWSTR pwszNamespaceUri,LPCWSTR pwszValue) {
 983    return This->lpVtbl->WriteElementString(This,pwszPrefix,pwszLocalName,pwszNamespaceUri,pwszValue);
 984}
 985static inline HRESULT IXmlWriter_WriteEndDocument(IXmlWriter* This) {
 986    return This->lpVtbl->WriteEndDocument(This);
 987}
 988static inline HRESULT IXmlWriter_WriteEndElement(IXmlWriter* This) {
 989    return This->lpVtbl->WriteEndElement(This);
 990}
 991static inline HRESULT IXmlWriter_WriteEntityRef(IXmlWriter* This,LPCWSTR pwszName) {
 992    return This->lpVtbl->WriteEntityRef(This,pwszName);
 993}
 994static inline HRESULT IXmlWriter_WriteFullEndElement(IXmlWriter* This) {
 995    return This->lpVtbl->WriteFullEndElement(This);
 996}
 997static inline HRESULT IXmlWriter_WriteName(IXmlWriter* This,LPCWSTR pwszName) {
 998    return This->lpVtbl->WriteName(This,pwszName);
 999}
1000static inline HRESULT IXmlWriter_WriteNmToken(IXmlWriter* This,LPCWSTR pwszNmToken) {
1001    return This->lpVtbl->WriteNmToken(This,pwszNmToken);
1002}
1003static inline HRESULT IXmlWriter_WriteNode(IXmlWriter* This,IXmlReader *pReader,WINBOOL fWriteDefaultAttributes) {
1004    return This->lpVtbl->WriteNode(This,pReader,fWriteDefaultAttributes);
1005}
1006static inline HRESULT IXmlWriter_WriteNodeShallow(IXmlWriter* This,IXmlReader *pReader,WINBOOL fWriteDefaultAttributes) {
1007    return This->lpVtbl->WriteNodeShallow(This,pReader,fWriteDefaultAttributes);
1008}
1009static inline HRESULT IXmlWriter_WriteProcessingInstruction(IXmlWriter* This,LPCWSTR pwszName,LPCWSTR pwszText) {
1010    return This->lpVtbl->WriteProcessingInstruction(This,pwszName,pwszText);
1011}
1012static inline HRESULT IXmlWriter_WriteQualifiedName(IXmlWriter* This,LPCWSTR pwszLocalName,LPCWSTR pwszNamespaceUri) {
1013    return This->lpVtbl->WriteQualifiedName(This,pwszLocalName,pwszNamespaceUri);
1014}
1015static inline HRESULT IXmlWriter_WriteRaw(IXmlWriter* This,LPCWSTR pwszData) {
1016    return This->lpVtbl->WriteRaw(This,pwszData);
1017}
1018static inline HRESULT IXmlWriter_WriteRawChars(IXmlWriter* This,const WCHAR *pwch,UINT cwch) {
1019    return This->lpVtbl->WriteRawChars(This,pwch,cwch);
1020}
1021static inline HRESULT IXmlWriter_WriteStartDocument(IXmlWriter* This,XmlStandalone standalone) {
1022    return This->lpVtbl->WriteStartDocument(This,standalone);
1023}
1024static inline HRESULT IXmlWriter_WriteStartElement(IXmlWriter* This,LPCWSTR pwszPrefix,LPCWSTR pwszLocalName,LPCWSTR pwszNamespaceUri) {
1025    return This->lpVtbl->WriteStartElement(This,pwszPrefix,pwszLocalName,pwszNamespaceUri);
1026}
1027static inline HRESULT IXmlWriter_WriteString(IXmlWriter* This,LPCWSTR pwszText) {
1028    return This->lpVtbl->WriteString(This,pwszText);
1029}
1030static inline HRESULT IXmlWriter_WriteSurrogateCharEntity(IXmlWriter* This,WCHAR wchLow,WCHAR wchHigh) {
1031    return This->lpVtbl->WriteSurrogateCharEntity(This,wchLow,wchHigh);
1032}
1033static inline HRESULT IXmlWriter_WriteWhitespace(IXmlWriter* This,LPCWSTR pwszWhitespace) {
1034    return This->lpVtbl->WriteWhitespace(This,pwszWhitespace);
1035}
1036static inline HRESULT IXmlWriter_Flush(IXmlWriter* This) {
1037    return This->lpVtbl->Flush(This);
1038}
1039#endif
1040#endif
1041
1042#endif
1043
1044
1045#endif  /* __IXmlWriter_INTERFACE_DEFINED__ */
1046
1047STDAPI CreateXmlWriter(REFIID riid, void **ppvObject, IMalloc *pMalloc);
1048typedef IUnknown IXmlWriterOutput;
1049STDAPI CreateXmlWriterOutputWithEncodingName(IUnknown *stream, IMalloc *pMalloc,
1050                                             LPCWSTR encoding, IXmlWriterOutput **output);
1051STDAPI CreateXmlWriterOutputWithEncodingCodePage(IUnknown *stream, IMalloc *pMalloc,
1052    UINT codepage, IXmlWriterOutput **output);
1053/* Begin additional prototypes for all interfaces */
1054
1055
1056/* End additional prototypes */
1057
1058#ifdef __cplusplus
1059}
1060#endif
1061
1062#endif /* __xmllite_h__ */