Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _INC_WSDBASE
      7 #define _INC_WSDBASE
      8 
      9 #ifndef _INC_WSDAPI
     10 #error Please include wsdapi.h instead of this header. This header cannot be used directly.
     11 #endif
     12 
     13 #if (_WIN32_WINNT >= 0x0600)
     14 
     15 #warning COM interfaces layout in this header has not been validated.
     16 #warning COM interfaces with incorrect layout may not work at all.
     17 
     18 typedef enum _WSDUdpMessageType {
     19   ONE_WAY   = 0,
     20   TWO_WAY   = 1
     21 } WSDUdpMessageType;
     22 
     23 typedef struct _WSDUpdRetransmitParams {
     24   ULONG ulSendDelay;
     25   ULONG ulRepeat;
     26   ULONG ulRepeatMinDelay;
     27   ULONG ulRepeatMaxDelay;
     28   ULONG ulRepeatUpperDelay;
     29 } WSDUdpRetransmitParams, *PWSDUdpRetransmitParams;
     30 
     31 #undef  INTERFACE
     32 #define INTERFACE IWSDTransportAddress
     33 #ifdef __GNUC__
     34 #warning COM interfaces layout in this header has not been verified.
     35 #warning COM interfaces with incorrect layout may not work at all.
     36 __MINGW_BROKEN_INTERFACE(INTERFACE)
     37 #endif
     38 DECLARE_INTERFACE_(IWSDTransportAddress,IUnknown)
     39 {
     40     BEGIN_INTERFACE
     41 
     42     /* IUnknown methods */
     43     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
     44     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
     45     STDMETHOD_(ULONG, Release)(THIS) PURE;
     46 
     47     /* IWSDTransportAddress methods */
     48     STDMETHOD_(HRESULT,GetPort)(THIS_ WORD *pwPort) PURE;
     49     STDMETHOD_(HRESULT,SetPort)(THIS_ WORD wPort) PURE;
     50     STDMETHOD_(HRESULT,GetTransportAddress)(THIS_ LPCWSTR *ppszAddress) PURE;
     51     STDMETHOD_(HRESULT,GetTransportAddressEx)(THIS_ WINBOOL fSafe,LPCWSTR *ppszAddress) PURE;
     52     STDMETHOD_(HRESULT,SetTransportAddress)(THIS_ LPCWSTR pszAddress) PURE;
     53 
     54     END_INTERFACE
     55 };
     56 #ifdef COBJMACROS
     57 #define IWSDTransportAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
     58 #define IWSDTransportAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
     59 #define IWSDTransportAddress_Release(This) (This)->lpVtbl->Release(This)
     60 #define IWSDTransportAddress_GetPort(This,pwPort) (This)->lpVtbl->GetPort(This,pwPort)
     61 #define IWSDTransportAddress_SetPort(This,wPort) (This)->lpVtbl->SetPort(This,wPort)
     62 #define IWSDTransportAddress_GetTransportAddress(This,ppszAddress) (This)->lpVtbl->GetTransportAddress(This,ppszAddress)
     63 #define IWSDTransportAddress_GetTransportAddressEx(This,fSafe,ppszAddress) (This)->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress)
     64 #define IWSDTransportAddress_SetTransportAddress(This,pszAddress) (This)->lpVtbl->SetTransportAddress(This,pszAddress)
     65 #endif /*COBJMACROS*/
     66 
     67 #undef  INTERFACE
     68 #define INTERFACE IWSDHttpAddress
     69 #ifdef __GNUC__
     70 #warning COM interfaces layout in this header has not been verified.
     71 #warning COM interfaces with incorrect layout may not work at all.
     72 __MINGW_BROKEN_INTERFACE(INTERFACE)
     73 #endif
     74 DECLARE_INTERFACE_(IWSDHttpAddress,IWSDTransportAddress)
     75 {
     76     BEGIN_INTERFACE
     77 
     78     /* IUnknown methods */
     79     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
     80     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
     81     STDMETHOD_(ULONG, Release)(THIS) PURE;
     82 
     83     /* IWSDTransportAddress methods */
     84     STDMETHOD_(HRESULT,GetPort)(THIS_ WORD *pwPort) PURE;
     85     STDMETHOD_(HRESULT,SetPort)(THIS_ WORD wPort) PURE;
     86     STDMETHOD_(HRESULT,GetTransportAddress)(THIS_ LPCWSTR *ppszAddress) PURE;
     87     STDMETHOD_(HRESULT,GetTransportAddressEx)(THIS_ WINBOOL fSafe,LPCWSTR *ppszAddress) PURE;
     88     STDMETHOD_(HRESULT,SetTransportAddress)(THIS_ LPCWSTR pszAddress) PURE;
     89 
     90     /* IWSDHttpAddress methods */
     91     STDMETHOD_(HRESULT,GetSecure)(THIS) PURE;
     92     STDMETHOD_(HRESULT,SetSecure)(THIS_ WINBOOL fSecure) PURE;
     93     STDMETHOD_(HRESULT,GetPath)(THIS_ LPCWSTR *ppszPath) PURE;
     94     STDMETHOD_(HRESULT,SetPath)(THIS_ LPCWSTR pszPath) PURE;
     95 
     96     END_INTERFACE
     97 };
     98 #ifdef COBJMACROS
     99 #define IWSDHttpAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    100 #define IWSDHttpAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
    101 #define IWSDHttpAddress_Release(This) (This)->lpVtbl->Release(This)
    102 #define IWSDHttpAddress_GetPort(This,pwPort) (This)->lpVtbl->GetPort(This,pwPort)
    103 #define IWSDHttpAddress_SetPort(This,wPort) (This)->lpVtbl->SetPort(This,wPort)
    104 #define IWSDHttpAddress_GetTransportAddress(This,ppszAddress) (This)->lpVtbl->GetTransportAddress(This,ppszAddress)
    105 #define IWSDHttpAddress_GetTransportAddressEx(This,fSafe,ppszAddress) (This)->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress)
    106 #define IWSDHttpAddress_SetTransportAddress(This,pszAddress) (This)->lpVtbl->SetTransportAddress(This,pszAddress)
    107 #define IWSDHttpAddress_GetSecure() (This)->lpVtbl->GetSecure(This)
    108 #define IWSDHttpAddress_SetSecure(This,fSecure) (This)->lpVtbl->SetSecure(This,fSecure)
    109 #define IWSDHttpAddress_GetPath(This,ppszPath) (This)->lpVtbl->GetPath(This,ppszPath)
    110 #define IWSDHttpAddress_SetPath(This,pszPath) (This)->lpVtbl->SetPath(This,pszPath)
    111 #endif /*COBJMACROS*/
    112 
    113 #undef  INTERFACE
    114 #define INTERFACE IWSDUdpAddress
    115 #ifdef __GNUC__
    116 #warning COM interfaces layout in this header has not been verified.
    117 #warning COM interfaces with incorrect layout may not work at all.
    118 __MINGW_BROKEN_INTERFACE(INTERFACE)
    119 #endif
    120 DECLARE_INTERFACE_(IWSDUdpAddress,IWSDTransportAddress)
    121 {
    122     BEGIN_INTERFACE
    123 
    124     /* IUnknown methods */
    125     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
    126     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    127     STDMETHOD_(ULONG, Release)(THIS) PURE;
    128 
    129     /* IWSDTransportAddress methods */
    130     STDMETHOD_(HRESULT,GetPort)(THIS_ WORD *pwPort) PURE;
    131     STDMETHOD_(HRESULT,SetPort)(THIS_ WORD wPort) PURE;
    132     STDMETHOD_(HRESULT,GetTransportAddress)(THIS_ LPCWSTR *ppszAddress) PURE;
    133     STDMETHOD_(HRESULT,GetTransportAddressEx)(THIS_ WINBOOL fSafe,LPCWSTR *ppszAddress) PURE;
    134     STDMETHOD_(HRESULT,SetTransportAddress)(THIS_ LPCWSTR pszAddress) PURE;
    135 
    136     /* IWSDUdpAddress methods */
    137     STDMETHOD_(HRESULT,SetSockaddr)(THIS_ const SOCKADDR_STORAGE *pSockAddr) PURE;
    138     STDMETHOD_(HRESULT *,GetSockaddr)(THIS_ SOCKADDR_STORAGE *pSockAddr) PURE;
    139     STDMETHOD_(HRESULT,SetExclusive)(THIS_ WINBOOL fExclusive) PURE;
    140     STDMETHOD_(HRESULT,GetExclusive)(THIS) PURE;
    141     STDMETHOD_(HRESULT,SetMessageType)(THIS_ WSDUdpMessageType messageType) PURE;
    142     STDMETHOD_(HRESULT,GetMessageType)(THIS_ WSDUdpMessageType *pMessageType) PURE;
    143     STDMETHOD_(HRESULT,SetTTL)(THIS_ DWORD dwTTL) PURE;
    144     STDMETHOD_(HRESULT,GetTTL)(THIS_ DWORD *pdwTTL) PURE;
    145     STDMETHOD_(HRESULT,SetAlias)(THIS_ const GUID *pAlias) PURE;
    146     STDMETHOD_(HRESULT,GetAlias)(THIS_ GUID *pAlias) PURE;
    147 
    148     END_INTERFACE
    149 };
    150 #ifdef COBJMACROS
    151 #define IWSDUdpAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    152 #define IWSDUdpAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
    153 #define IWSDUdpAddress_Release(This) (This)->lpVtbl->Release(This)
    154 #define IWSDUdpAddress_GetPort(This,pwPort) (This)->lpVtbl->GetPort(This,pwPort)
    155 #define IWSDUdpAddress_SetPort(This,wPort) (This)->lpVtbl->SetPort(This,wPort)
    156 #define IWSDUdpAddress_GetTransportAddress(This,ppszAddress) (This)->lpVtbl->GetTransportAddress(This,ppszAddress)
    157 #define IWSDUdpAddress_GetTransportAddressEx(This,fSafe,ppszAddress) (This)->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress)
    158 #define IWSDUdpAddress_SetTransportAddress(This,pszAddress) (This)->lpVtbl->SetTransportAddress(This,pszAddress)
    159 #define IWSDUdpAddress_SetSockaddr(This,pSockAddr) (This)->lpVtbl->SetSockaddr(This,pSockAddr)
    160 #define IWSDUdpAddress_GetSockaddr(This,pSockAddr) (This)->lpVtbl->GetSockaddr(This,pSockAddr)
    161 #define IWSDUdpAddress_SetExclusive(This,fExclusive) (This)->lpVtbl->SetExclusive(This,fExclusive)
    162 #define IWSDUdpAddress_GetExclusive() (This)->lpVtbl->GetExclusive(This)
    163 #define IWSDUdpAddress_SetMessageType(This,messageType) (This)->lpVtbl->SetMessageType(This,messageType)
    164 #define IWSDUdpAddress_GetMessageType(This,pMessageType) (This)->lpVtbl->GetMessageType(This,pMessageType)
    165 #define IWSDUdpAddress_SetTTL(This,dwTTL) (This)->lpVtbl->SetTTL(This,dwTTL)
    166 #define IWSDUdpAddress_GetTTL(This,pdwTTL) (This)->lpVtbl->GetTTL(This,pdwTTL)
    167 #define IWSDUdpAddress_SetAlias(This,pAlias) (This)->lpVtbl->SetAlias(This,pAlias)
    168 #define IWSDUdpAddress_GetAlias(This,pAlias) (This)->lpVtbl->GetAlias(This,pAlias)
    169 #endif /*COBJMACROS*/
    170 
    171 #undef  INTERFACE
    172 #define INTERFACE IWSDAddress
    173 #ifdef __GNUC__
    174 #warning COM interfaces layout in this header has not been verified.
    175 #warning COM interfaces with incorrect layout may not work at all.
    176 __MINGW_BROKEN_INTERFACE(INTERFACE)
    177 #endif
    178 DECLARE_INTERFACE_(IWSDAddress,IUnknown)
    179 {
    180     BEGIN_INTERFACE
    181 
    182     /* IUnknown methods */
    183     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
    184     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    185     STDMETHOD_(ULONG, Release)(THIS) PURE;
    186 
    187     /* IWSDAddress methods */
    188     STDMETHOD_(HRESULT,Serialize)(THIS_ LPWSTR pszBuffer,DWORD cchLength,WINBOOL fSafe) PURE;
    189     STDMETHOD_(HRESULT,Deserialize)(THIS_ LPCWSTR pszBuffer) PURE;
    190 
    191     END_INTERFACE
    192 };
    193 #ifdef COBJMACROS
    194 #define IWSDAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    195 #define IWSDAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
    196 #define IWSDAddress_Release(This) (This)->lpVtbl->Release(This)
    197 #define IWSDAddress_Serialize(This,pszBuffer,cchLength,fSafe) (This)->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe)
    198 #define IWSDAddress_Deserialize(This,pszBuffer) (This)->lpVtbl->Deserialize(This,pszBuffer)
    199 #endif /*COBJMACROS*/
    200 
    201 #undef  INTERFACE
    202 #define INTERFACE IWSDMessageParameters
    203 #ifdef __GNUC__
    204 #warning COM interfaces layout in this header has not been verified.
    205 #warning COM interfaces with incorrect layout may not work at all.
    206 __MINGW_BROKEN_INTERFACE(INTERFACE)
    207 #endif
    208 DECLARE_INTERFACE_(IWSDMessageParameters,IUnknown)
    209 {
    210     BEGIN_INTERFACE
    211 
    212     /* IUnknown methods */
    213     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
    214     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    215     STDMETHOD_(ULONG, Release)(THIS) PURE;
    216 
    217     /* IWSDServiceMessaging methods */
    218     STDMETHOD_(HRESULT,GetLocalAddress)(THIS_ IWSDAddress **ppAddress) PURE;
    219     STDMETHOD_(HRESULT,SetLocalAddress)(THIS_ IWSDAddress *pAddress) PURE;
    220     STDMETHOD_(HRESULT,GetRemoteAddress)(THIS_ IWSDAddress **ppAddress) PURE;
    221     STDMETHOD_(HRESULT,SetRemoteAddress)(THIS_ IWSDAddress *pAddress) PURE;
    222     STDMETHOD_(HRESULT,GetLowerParameters)(THIS_ IWSDMessageParameters **ppTxParams) PURE;
    223 
    224     END_INTERFACE
    225 };
    226 #ifdef COBJMACROS
    227 #define IWSDMessageParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    228 #define IWSDMessageParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
    229 #define IWSDMessageParameters_Release(This) (This)->lpVtbl->Release(This)
    230 #define IWSDMessageParameters_GetLocalAddress(This,ppAddress) (This)->lpVtbl->GetLocalAddress(This,ppAddress)
    231 #define IWSDMessageParameters_SetLocalAddress(This,pAddress) (This)->lpVtbl->SetLocalAddress(This,pAddress)
    232 #define IWSDMessageParameters_GetRemoteAddress(This,ppAddress) (This)->lpVtbl->GetRemoteAddress(This,ppAddress)
    233 #define IWSDMessageParameters_SetRemoteAddress(This,pAddress) (This)->lpVtbl->SetRemoteAddress(This,pAddress)
    234 #define IWSDMessageParameters_GetLowerParameters(This,ppTxParams) (This)->lpVtbl->GetLowerParameters(This,ppTxParams)
    235 #endif /*COBJMACROS*/
    236 
    237 #undef  INTERFACE
    238 #define INTERFACE IWSDHttpMessageParameters
    239 #ifdef __GNUC__
    240 #warning COM interfaces layout in this header has not been verified.
    241 #warning COM interfaces with incorrect layout may not work at all.
    242 __MINGW_BROKEN_INTERFACE(INTERFACE)
    243 #endif
    244 DECLARE_INTERFACE_(IWSDHttpMessageParameters,IWSDMessageParameters)
    245 {
    246     BEGIN_INTERFACE
    247 
    248     /* IUnknown methods */
    249     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
    250     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    251     STDMETHOD_(ULONG, Release)(THIS) PURE;
    252 
    253     /* IWSDServiceMessaging methods */
    254     STDMETHOD_(HRESULT,GetLocalAddress)(THIS_ IWSDAddress **ppAddress) PURE;
    255     STDMETHOD_(HRESULT,SetLocalAddress)(THIS_ IWSDAddress *pAddress) PURE;
    256     STDMETHOD_(HRESULT,GetRemoteAddress)(THIS_ IWSDAddress **ppAddress) PURE;
    257     STDMETHOD_(HRESULT,SetRemoteAddress)(THIS_ IWSDAddress *pAddress) PURE;
    258     STDMETHOD_(HRESULT,GetLowerParameters)(THIS_ IWSDMessageParameters **ppTxParams) PURE;
    259 
    260     /* IWSDHttpMessageParameters methods */
    261     STDMETHOD_(HRESULT,SetInboundHttpHeaders)(THIS_ LPCWSTR pszHeaders) PURE;
    262     STDMETHOD_(HRESULT,GetInboundHttpHeaders)(THIS_ LPCWSTR *ppszHeaders) PURE;
    263     STDMETHOD_(HRESULT,SetOutboundHttpHeaders)(THIS_ LPCWSTR pszHeaders) PURE;
    264     STDMETHOD_(HRESULT,GetOutboundHttpHeaders)(THIS_ LPCWSTR *ppszHeaders) PURE;
    265     STDMETHOD_(HRESULT,SetID)(THIS_ LPCWSTR pszId) PURE;
    266     STDMETHOD_(HRESULT,GetID)(THIS_ LPCWSTR *ppszId) PURE;
    267     STDMETHOD_(HRESULT,SetContext)(THIS_ IUnknown *pContext) PURE;
    268     STDMETHOD_(HRESULT,GetContext)(THIS_ IUnknown **ppContext) PURE;
    269     STDMETHOD_(HRESULT,Clear)(THIS) PURE;
    270 
    271     END_INTERFACE
    272 };
    273 #ifdef COBJMACROS
    274 #define IWSDHttpMessageParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    275 #define IWSDHttpMessageParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
    276 #define IWSDHttpMessageParameters_Release(This) (This)->lpVtbl->Release(This)
    277 #define IWSDHttpMessageParameters_GetLocalAddress(This,ppAddress) (This)->lpVtbl->GetLocalAddress(This,ppAddress)
    278 #define IWSDHttpMessageParameters_SetLocalAddress(This,pAddress) (This)->lpVtbl->SetLocalAddress(This,pAddress)
    279 #define IWSDHttpMessageParameters_GetRemoteAddress(This,ppAddress) (This)->lpVtbl->GetRemoteAddress(This,ppAddress)
    280 #define IWSDHttpMessageParameters_SetRemoteAddress(This,pAddress) (This)->lpVtbl->SetRemoteAddress(This,pAddress)
    281 #define IWSDHttpMessageParameters_GetLowerParameters(This,ppTxParams) (This)->lpVtbl->GetLowerParameters(This,ppTxParams)
    282 #define IWSDHttpMessageParameters_SetInboundHttpHeaders(This,pszHeaders) (This)->lpVtbl->SetInboundHttpHeaders(This,pszHeaders)
    283 #define IWSDHttpMessageParameters_GetInboundHttpHeaders(This,ppszHeaders) (This)->lpVtbl->GetInboundHttpHeaders(This,ppszHeaders)
    284 #define IWSDHttpMessageParameters_SetOutboundHttpHeaders(This,pszHeaders) (This)->lpVtbl->SetOutboundHttpHeaders(This,pszHeaders)
    285 #define IWSDHttpMessageParameters_GetOutboundHttpHeaders(This,ppszHeaders) (This)->lpVtbl->GetOutboundHttpHeaders(This,ppszHeaders)
    286 #define IWSDHttpMessageParameters_SetID(This,pszId) (This)->lpVtbl->SetID(This,pszId)
    287 #define IWSDHttpMessageParameters_GetID(This,ppszId) (This)->lpVtbl->GetID(This,ppszId)
    288 #define IWSDHttpMessageParameters_SetContext(This,pContext) (This)->lpVtbl->SetContext(This,pContext)
    289 #define IWSDHttpMessageParameters_GetContext(This,ppContext) (This)->lpVtbl->GetContext(This,ppContext)
    290 #define IWSDHttpMessageParameters_Clear() (This)->lpVtbl->Clear(This)
    291 #endif /*COBJMACROS*/
    292 
    293 #undef  INTERFACE
    294 #define INTERFACE IWSDUdpMessageParameters
    295 #ifdef __GNUC__
    296 #warning COM interfaces layout in this header has not been verified.
    297 #warning COM interfaces with incorrect layout may not work at all.
    298 __MINGW_BROKEN_INTERFACE(INTERFACE)
    299 #endif
    300 DECLARE_INTERFACE_(IWSDUdpMessageParameters,IWSDMessageParameters)
    301 {
    302     BEGIN_INTERFACE
    303 
    304     /* IUnknown methods */
    305     STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
    306     STDMETHOD_(ULONG, AddRef)(THIS) PURE;
    307     STDMETHOD_(ULONG, Release)(THIS) PURE;
    308 
    309     /* IWSDServiceMessaging methods */
    310     STDMETHOD_(HRESULT,GetLocalAddress)(THIS_ IWSDAddress **ppAddress) PURE;
    311     STDMETHOD_(HRESULT,SetLocalAddress)(THIS_ IWSDAddress *pAddress) PURE;
    312     STDMETHOD_(HRESULT,GetRemoteAddress)(THIS_ IWSDAddress **ppAddress) PURE;
    313     STDMETHOD_(HRESULT,SetRemoteAddress)(THIS_ IWSDAddress *pAddress) PURE;
    314     STDMETHOD_(HRESULT,GetLowerParameters)(THIS_ IWSDMessageParameters **ppTxParams) PURE;
    315 
    316     /* IWSDUdpMessageParameters methods */
    317     STDMETHOD_(HRESULT,SetRetransmitParams)(THIS_ const WSDUdpRetransmitParams *pParams) PURE;
    318     STDMETHOD_(HRESULT,GetRetransmitParams)(THIS_ WSDUdpRetransmitParams *pParams) PURE;
    319 
    320     END_INTERFACE
    321 };
    322 #ifdef COBJMACROS
    323 #define IWSDUdpMessageParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    324 #define IWSDUdpMessageParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
    325 #define IWSDUdpMessageParameters_Release(This) (This)->lpVtbl->Release(This)
    326 #define IWSDUdpMessageParameters_GetLocalAddress(This,ppAddress) (This)->lpVtbl->GetLocalAddress(This,ppAddress)
    327 #define IWSDUdpMessageParameters_SetLocalAddress(This,pAddress) (This)->lpVtbl->SetLocalAddress(This,pAddress)
    328 #define IWSDUdpMessageParameters_GetRemoteAddress(This,ppAddress) (This)->lpVtbl->GetRemoteAddress(This,ppAddress)
    329 #define IWSDUdpMessageParameters_SetRemoteAddress(This,pAddress) (This)->lpVtbl->SetRemoteAddress(This,pAddress)
    330 #define IWSDUdpMessageParameters_GetLowerParameters(This,ppTxParams) (This)->lpVtbl->GetLowerParameters(This,ppTxParams)
    331 #define IWSDUdpMessageParameters_SetRetransmitParams(This,pParams) (This)->lpVtbl->SetRetransmitParams(This,pParams)
    332 #define IWSDUdpMessageParameters_GetRetransmitParams(This,pParams) (This)->lpVtbl->GetRetransmitParams(This,pParams)
    333 #endif /*COBJMACROS*/
    334 
    335 #ifdef __cplusplus
    336 extern "C" {
    337 #endif
    338 
    339 HRESULT WINAPI WSDCreateHttpAddress(
    340   IWSDHttpAddress **ppAddress
    341 );
    342 
    343 HRESULT WINAPI WSDCreateHttpMessageParameters(
    344   IWSDHttpMessageParameters **ppTxParams
    345 );
    346 
    347 HRESULT WINAPI WSDCreateUdpAddress(
    348   IWSDUdpAddress **ppAddress
    349 );
    350 
    351 HRESULT WINAPI WSDCreateUdpMessageParameters(
    352   IWSDUdpMessageParameters **ppTxParams
    353 );
    354 
    355 #ifdef __cplusplus
    356 }
    357 #endif
    358 #endif /*(_WIN32_WINNT >= 0x0600)*/
    359 #endif /*_INC_WSDBASE*/
    360