1 /*** Autogenerated by WIDL 6.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__ 23 typedef interface IWSDXMLContext IWSDXMLContext; 24 #ifdef __cplusplus 25 interface 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 35 extern "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__ 44 typedef interface IWSDXMLContext IWSDXMLContext; 45 #ifdef __cplusplus 46 interface IWSDXMLContext; 47 #endif /* __cplusplus */ 48 #endif 49 50 enum { 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 }; 99 typedef struct _WSDXML_NAMESPACE WSDXML_NAMESPACE; 100 typedef const WSDXML_NAMESPACE *PCWSDXML_NAMESPACE; 101 typedef struct _WSDXML_NAME WSDXML_NAME; 102 typedef struct _WSDXML_TYPE WSDXML_TYPE; 103 typedef const WSDXML_TYPE *PCWSDXML_TYPE; 104 typedef struct _WSDXML_PREFIX_MAPPING WSDXML_PREFIX_MAPPING; 105 typedef struct _WSDXML_ATTRIBUTE WSDXML_ATTRIBUTE; 106 typedef struct _WSDXML_NODE WSDXML_NODE; 107 typedef struct _WSDXML_ELEMENT WSDXML_ELEMENT; 108 typedef struct _WSDXML_TEXT WSDXML_TEXT; 109 typedef struct _WSDXML_ELEMENT_LIST WSDXML_ELEMENT_LIST; 110 typedef 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; 124 typedef 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 182 DEFINE_GUID(IID_IWSDXMLContext, 0x75d8f3ee, 0x3e5a, 0x43b4, 0xa1,0x5a, 0xbc,0xf6,0x88,0x74,0x60,0xc0); 183 #if defined(__cplusplus) && !defined(CINTERFACE) 184 MIDL_INTERFACE("75d8f3ee-3e5a-43b4-a15a-bcf6887460c0") 185 IWSDXMLContext : 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 212 typedef 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 255 interface 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 ***/ 272 static FORCEINLINE HRESULT IWSDXMLContext_QueryInterface(IWSDXMLContext* This,REFIID riid,void **ppvObject) { 273 return This->lpVtbl->QueryInterface(This,riid,ppvObject); 274 } 275 static FORCEINLINE ULONG IWSDXMLContext_AddRef(IWSDXMLContext* This) { 276 return This->lpVtbl->AddRef(This); 277 } 278 static FORCEINLINE ULONG IWSDXMLContext_Release(IWSDXMLContext* This) { 279 return This->lpVtbl->Release(This); 280 } 281 /*** IWSDXMLContext methods ***/ 282 static FORCEINLINE HRESULT IWSDXMLContext_AddNamespace(IWSDXMLContext* This,LPCWSTR pszUri,LPCWSTR pszSuggestedPrefix,WSDXML_NAMESPACE **ppNamespace) { 283 return This->lpVtbl->AddNamespace(This,pszUri,pszSuggestedPrefix,ppNamespace); 284 } 285 static FORCEINLINE HRESULT IWSDXMLContext_AddNameToNamespace(IWSDXMLContext* This,LPCWSTR pszUri,LPCWSTR pszName,WSDXML_NAME **ppName) { 286 return This->lpVtbl->AddNameToNamespace(This,pszUri,pszName,ppName); 287 } 288 static FORCEINLINE HRESULT IWSDXMLContext_SetNamespaces(IWSDXMLContext* This,const PCWSDXML_NAMESPACE *pNamespaces,WORD wNamespacesCount,BYTE bLayerNumber) { 289 return This->lpVtbl->SetNamespaces(This,pNamespaces,wNamespacesCount,bLayerNumber); 290 } 291 static FORCEINLINE 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 302 HRESULT WINAPI WSDXMLGetNameFromBuiltinNamespace(LPCWSTR pszNamespace, LPCWSTR pszName, WSDXML_NAME **ppName); 303 HRESULT 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__ */ 315