master
  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 __REQUIRED_RPCNDR_H_VERSION__
  7#define __REQUIRED_RPCNDR_H_VERSION__ 475
  8#endif
  9
 10#include "rpc.h"
 11#include "rpcndr.h"
 12
 13#ifndef __RPCNDR_H_VERSION__
 14#error This stub requires an updated version of <rpcndr.h>
 15#endif
 16
 17#ifndef COM_NO_WINDOWS_H
 18#include "windows.h"
 19#include "ole2.h"
 20#endif
 21
 22#ifndef __mdhcp_h__
 23#define __mdhcp_h__
 24
 25#ifndef __IMcastScope_FWD_DEFINED__
 26#define __IMcastScope_FWD_DEFINED__
 27typedef struct IMcastScope IMcastScope;
 28#endif
 29
 30#ifndef __IMcastLeaseInfo_FWD_DEFINED__
 31#define __IMcastLeaseInfo_FWD_DEFINED__
 32typedef struct IMcastLeaseInfo IMcastLeaseInfo;
 33#endif
 34
 35#ifndef __IEnumMcastScope_FWD_DEFINED__
 36#define __IEnumMcastScope_FWD_DEFINED__
 37typedef struct IEnumMcastScope IEnumMcastScope;
 38#endif
 39
 40#ifndef __IMcastAddressAllocation_FWD_DEFINED__
 41#define __IMcastAddressAllocation_FWD_DEFINED__
 42typedef struct IMcastAddressAllocation IMcastAddressAllocation;
 43#endif
 44
 45#ifndef __IMcastScope_FWD_DEFINED__
 46#define __IMcastScope_FWD_DEFINED__
 47typedef struct IMcastScope IMcastScope;
 48#endif
 49
 50#ifndef __IMcastLeaseInfo_FWD_DEFINED__
 51#define __IMcastLeaseInfo_FWD_DEFINED__
 52typedef struct IMcastLeaseInfo IMcastLeaseInfo;
 53#endif
 54
 55#ifndef __IEnumMcastScope_FWD_DEFINED__
 56#define __IEnumMcastScope_FWD_DEFINED__
 57typedef struct IEnumMcastScope IEnumMcastScope;
 58#endif
 59
 60#ifndef __IMcastAddressAllocation_FWD_DEFINED__
 61#define __IMcastAddressAllocation_FWD_DEFINED__
 62typedef struct IMcastAddressAllocation IMcastAddressAllocation;
 63#endif
 64
 65#ifndef __McastAddressAllocation_FWD_DEFINED__
 66#define __McastAddressAllocation_FWD_DEFINED__
 67#ifdef __cplusplus
 68typedef class McastAddressAllocation McastAddressAllocation;
 69#else
 70typedef struct McastAddressAllocation McastAddressAllocation;
 71#endif
 72#endif
 73
 74#include "oaidl.h"
 75#include "ocidl.h"
 76#include "tapi3if.h"
 77
 78#ifdef __cplusplus
 79extern "C"{
 80#endif
 81
 82#ifndef __MIDL_user_allocate_free_DEFINED__
 83#define __MIDL_user_allocate_free_DEFINED__
 84  void *__RPC_API MIDL_user_allocate(size_t);
 85  void __RPC_API MIDL_user_free(void *);
 86#endif
 87
 88  extern RPC_IF_HANDLE __MIDL_itf_mdhcp_0000_v0_0_c_ifspec;
 89  extern RPC_IF_HANDLE __MIDL_itf_mdhcp_0000_v0_0_s_ifspec;
 90
 91#ifndef __IMcastScope_INTERFACE_DEFINED__
 92#define __IMcastScope_INTERFACE_DEFINED__
 93  EXTERN_C const IID IID_IMcastScope;
 94#if defined(__cplusplus) && !defined(CINTERFACE)
 95  struct IMcastScope : public IDispatch {
 96  public:
 97    virtual HRESULT WINAPI get_ScopeID(__LONG32 *pID) = 0;
 98    virtual HRESULT WINAPI get_ServerID(__LONG32 *pID) = 0;
 99    virtual HRESULT WINAPI get_InterfaceID(__LONG32 *pID) = 0;
100    virtual HRESULT WINAPI get_ScopeDescription(BSTR *ppDescription) = 0;
101    virtual HRESULT WINAPI get_TTL(__LONG32 *pTTL) = 0;
102  };
103#else
104  typedef struct IMcastScopeVtbl {
105    BEGIN_INTERFACE
106      HRESULT (WINAPI *QueryInterface)(IMcastScope *This,REFIID riid,void **ppvObject);
107      ULONG (WINAPI *AddRef)(IMcastScope *This);
108      ULONG (WINAPI *Release)(IMcastScope *This);
109      HRESULT (WINAPI *GetTypeInfoCount)(IMcastScope *This,UINT *pctinfo);
110      HRESULT (WINAPI *GetTypeInfo)(IMcastScope *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
111      HRESULT (WINAPI *GetIDsOfNames)(IMcastScope *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
112      HRESULT (WINAPI *Invoke)(IMcastScope *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
113      HRESULT (WINAPI *get_ScopeID)(IMcastScope *This,__LONG32 *pID);
114      HRESULT (WINAPI *get_ServerID)(IMcastScope *This,__LONG32 *pID);
115      HRESULT (WINAPI *get_InterfaceID)(IMcastScope *This,__LONG32 *pID);
116      HRESULT (WINAPI *get_ScopeDescription)(IMcastScope *This,BSTR *ppDescription);
117      HRESULT (WINAPI *get_TTL)(IMcastScope *This,__LONG32 *pTTL);
118    END_INTERFACE
119  } IMcastScopeVtbl;
120  struct IMcastScope {
121    CONST_VTBL struct IMcastScopeVtbl *lpVtbl;
122  };
123#ifdef COBJMACROS
124#define IMcastScope_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
125#define IMcastScope_AddRef(This) (This)->lpVtbl->AddRef(This)
126#define IMcastScope_Release(This) (This)->lpVtbl->Release(This)
127#define IMcastScope_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
128#define IMcastScope_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
129#define IMcastScope_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
130#define IMcastScope_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
131#define IMcastScope_get_ScopeID(This,pID) (This)->lpVtbl->get_ScopeID(This,pID)
132#define IMcastScope_get_ServerID(This,pID) (This)->lpVtbl->get_ServerID(This,pID)
133#define IMcastScope_get_InterfaceID(This,pID) (This)->lpVtbl->get_InterfaceID(This,pID)
134#define IMcastScope_get_ScopeDescription(This,ppDescription) (This)->lpVtbl->get_ScopeDescription(This,ppDescription)
135#define IMcastScope_get_TTL(This,pTTL) (This)->lpVtbl->get_TTL(This,pTTL)
136#endif
137#endif
138  HRESULT WINAPI IMcastScope_get_ScopeID_Proxy(IMcastScope *This,__LONG32 *pID);
139  void __RPC_STUB IMcastScope_get_ScopeID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
140  HRESULT WINAPI IMcastScope_get_ServerID_Proxy(IMcastScope *This,__LONG32 *pID);
141  void __RPC_STUB IMcastScope_get_ServerID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
142  HRESULT WINAPI IMcastScope_get_InterfaceID_Proxy(IMcastScope *This,__LONG32 *pID);
143  void __RPC_STUB IMcastScope_get_InterfaceID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
144  HRESULT WINAPI IMcastScope_get_ScopeDescription_Proxy(IMcastScope *This,BSTR *ppDescription);
145  void __RPC_STUB IMcastScope_get_ScopeDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
146  HRESULT WINAPI IMcastScope_get_TTL_Proxy(IMcastScope *This,__LONG32 *pTTL);
147  void __RPC_STUB IMcastScope_get_TTL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
148#endif
149
150#ifndef __IMcastLeaseInfo_INTERFACE_DEFINED__
151#define __IMcastLeaseInfo_INTERFACE_DEFINED__
152  EXTERN_C const IID IID_IMcastLeaseInfo;
153#if defined(__cplusplus) && !defined(CINTERFACE)
154  struct IMcastLeaseInfo : public IDispatch {
155  public:
156    virtual HRESULT WINAPI get_RequestID(BSTR *ppRequestID) = 0;
157    virtual HRESULT WINAPI get_LeaseStartTime(DATE *pTime) = 0;
158    virtual HRESULT WINAPI put_LeaseStartTime(DATE time) = 0;
159    virtual HRESULT WINAPI get_LeaseStopTime(DATE *pTime) = 0;
160    virtual HRESULT WINAPI put_LeaseStopTime(DATE time) = 0;
161    virtual HRESULT WINAPI get_AddressCount(__LONG32 *pCount) = 0;
162    virtual HRESULT WINAPI get_ServerAddress(BSTR *ppAddress) = 0;
163    virtual HRESULT WINAPI get_TTL(__LONG32 *pTTL) = 0;
164    virtual HRESULT WINAPI get_Addresses(VARIANT *pVariant) = 0;
165    virtual HRESULT WINAPI EnumerateAddresses(IEnumBstr **ppEnumAddresses) = 0;
166  };
167#else
168  typedef struct IMcastLeaseInfoVtbl {
169    BEGIN_INTERFACE
170      HRESULT (WINAPI *QueryInterface)(IMcastLeaseInfo *This,REFIID riid,void **ppvObject);
171      ULONG (WINAPI *AddRef)(IMcastLeaseInfo *This);
172      ULONG (WINAPI *Release)(IMcastLeaseInfo *This);
173      HRESULT (WINAPI *GetTypeInfoCount)(IMcastLeaseInfo *This,UINT *pctinfo);
174      HRESULT (WINAPI *GetTypeInfo)(IMcastLeaseInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
175      HRESULT (WINAPI *GetIDsOfNames)(IMcastLeaseInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
176      HRESULT (WINAPI *Invoke)(IMcastLeaseInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
177      HRESULT (WINAPI *get_RequestID)(IMcastLeaseInfo *This,BSTR *ppRequestID);
178      HRESULT (WINAPI *get_LeaseStartTime)(IMcastLeaseInfo *This,DATE *pTime);
179      HRESULT (WINAPI *put_LeaseStartTime)(IMcastLeaseInfo *This,DATE time);
180      HRESULT (WINAPI *get_LeaseStopTime)(IMcastLeaseInfo *This,DATE *pTime);
181      HRESULT (WINAPI *put_LeaseStopTime)(IMcastLeaseInfo *This,DATE time);
182      HRESULT (WINAPI *get_AddressCount)(IMcastLeaseInfo *This,__LONG32 *pCount);
183      HRESULT (WINAPI *get_ServerAddress)(IMcastLeaseInfo *This,BSTR *ppAddress);
184      HRESULT (WINAPI *get_TTL)(IMcastLeaseInfo *This,__LONG32 *pTTL);
185      HRESULT (WINAPI *get_Addresses)(IMcastLeaseInfo *This,VARIANT *pVariant);
186      HRESULT (WINAPI *EnumerateAddresses)(IMcastLeaseInfo *This,IEnumBstr **ppEnumAddresses);
187    END_INTERFACE
188  } IMcastLeaseInfoVtbl;
189  struct IMcastLeaseInfo {
190    CONST_VTBL struct IMcastLeaseInfoVtbl *lpVtbl;
191  };
192#ifdef COBJMACROS
193#define IMcastLeaseInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
194#define IMcastLeaseInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
195#define IMcastLeaseInfo_Release(This) (This)->lpVtbl->Release(This)
196#define IMcastLeaseInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
197#define IMcastLeaseInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
198#define IMcastLeaseInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
199#define IMcastLeaseInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
200#define IMcastLeaseInfo_get_RequestID(This,ppRequestID) (This)->lpVtbl->get_RequestID(This,ppRequestID)
201#define IMcastLeaseInfo_get_LeaseStartTime(This,pTime) (This)->lpVtbl->get_LeaseStartTime(This,pTime)
202#define IMcastLeaseInfo_put_LeaseStartTime(This,time) (This)->lpVtbl->put_LeaseStartTime(This,time)
203#define IMcastLeaseInfo_get_LeaseStopTime(This,pTime) (This)->lpVtbl->get_LeaseStopTime(This,pTime)
204#define IMcastLeaseInfo_put_LeaseStopTime(This,time) (This)->lpVtbl->put_LeaseStopTime(This,time)
205#define IMcastLeaseInfo_get_AddressCount(This,pCount) (This)->lpVtbl->get_AddressCount(This,pCount)
206#define IMcastLeaseInfo_get_ServerAddress(This,ppAddress) (This)->lpVtbl->get_ServerAddress(This,ppAddress)
207#define IMcastLeaseInfo_get_TTL(This,pTTL) (This)->lpVtbl->get_TTL(This,pTTL)
208#define IMcastLeaseInfo_get_Addresses(This,pVariant) (This)->lpVtbl->get_Addresses(This,pVariant)
209#define IMcastLeaseInfo_EnumerateAddresses(This,ppEnumAddresses) (This)->lpVtbl->EnumerateAddresses(This,ppEnumAddresses)
210#endif
211#endif
212  HRESULT WINAPI IMcastLeaseInfo_get_RequestID_Proxy(IMcastLeaseInfo *This,BSTR *ppRequestID);
213  void __RPC_STUB IMcastLeaseInfo_get_RequestID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
214  HRESULT WINAPI IMcastLeaseInfo_get_LeaseStartTime_Proxy(IMcastLeaseInfo *This,DATE *pTime);
215  void __RPC_STUB IMcastLeaseInfo_get_LeaseStartTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
216  HRESULT WINAPI IMcastLeaseInfo_put_LeaseStartTime_Proxy(IMcastLeaseInfo *This,DATE time);
217  void __RPC_STUB IMcastLeaseInfo_put_LeaseStartTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
218  HRESULT WINAPI IMcastLeaseInfo_get_LeaseStopTime_Proxy(IMcastLeaseInfo *This,DATE *pTime);
219  void __RPC_STUB IMcastLeaseInfo_get_LeaseStopTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
220  HRESULT WINAPI IMcastLeaseInfo_put_LeaseStopTime_Proxy(IMcastLeaseInfo *This,DATE time);
221  void __RPC_STUB IMcastLeaseInfo_put_LeaseStopTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
222  HRESULT WINAPI IMcastLeaseInfo_get_AddressCount_Proxy(IMcastLeaseInfo *This,__LONG32 *pCount);
223  void __RPC_STUB IMcastLeaseInfo_get_AddressCount_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
224  HRESULT WINAPI IMcastLeaseInfo_get_ServerAddress_Proxy(IMcastLeaseInfo *This,BSTR *ppAddress);
225  void __RPC_STUB IMcastLeaseInfo_get_ServerAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
226  HRESULT WINAPI IMcastLeaseInfo_get_TTL_Proxy(IMcastLeaseInfo *This,__LONG32 *pTTL);
227  void __RPC_STUB IMcastLeaseInfo_get_TTL_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
228  HRESULT WINAPI IMcastLeaseInfo_get_Addresses_Proxy(IMcastLeaseInfo *This,VARIANT *pVariant);
229  void __RPC_STUB IMcastLeaseInfo_get_Addresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
230  HRESULT WINAPI IMcastLeaseInfo_EnumerateAddresses_Proxy(IMcastLeaseInfo *This,IEnumBstr **ppEnumAddresses);
231  void __RPC_STUB IMcastLeaseInfo_EnumerateAddresses_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
232#endif
233
234#ifndef __IEnumMcastScope_INTERFACE_DEFINED__
235#define __IEnumMcastScope_INTERFACE_DEFINED__
236  EXTERN_C const IID IID_IEnumMcastScope;
237#if defined(__cplusplus) && !defined(CINTERFACE)
238  struct IEnumMcastScope : public IUnknown {
239  public:
240    virtual HRESULT WINAPI Next(ULONG celt,IMcastScope **ppScopes,ULONG *pceltFetched) = 0;
241    virtual HRESULT WINAPI Reset(void) = 0;
242    virtual HRESULT WINAPI Skip(ULONG celt) = 0;
243    virtual HRESULT WINAPI Clone(IEnumMcastScope **ppEnum) = 0;
244  };
245#else
246  typedef struct IEnumMcastScopeVtbl {
247    BEGIN_INTERFACE
248      HRESULT (WINAPI *QueryInterface)(IEnumMcastScope *This,REFIID riid,void **ppvObject);
249      ULONG (WINAPI *AddRef)(IEnumMcastScope *This);
250      ULONG (WINAPI *Release)(IEnumMcastScope *This);
251      HRESULT (WINAPI *Next)(IEnumMcastScope *This,ULONG celt,IMcastScope **ppScopes,ULONG *pceltFetched);
252      HRESULT (WINAPI *Reset)(IEnumMcastScope *This);
253      HRESULT (WINAPI *Skip)(IEnumMcastScope *This,ULONG celt);
254      HRESULT (WINAPI *Clone)(IEnumMcastScope *This,IEnumMcastScope **ppEnum);
255    END_INTERFACE
256  } IEnumMcastScopeVtbl;
257  struct IEnumMcastScope {
258    CONST_VTBL struct IEnumMcastScopeVtbl *lpVtbl;
259  };
260#ifdef COBJMACROS
261#define IEnumMcastScope_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
262#define IEnumMcastScope_AddRef(This) (This)->lpVtbl->AddRef(This)
263#define IEnumMcastScope_Release(This) (This)->lpVtbl->Release(This)
264#define IEnumMcastScope_Next(This,celt,ppScopes,pceltFetched) (This)->lpVtbl->Next(This,celt,ppScopes,pceltFetched)
265#define IEnumMcastScope_Reset(This) (This)->lpVtbl->Reset(This)
266#define IEnumMcastScope_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
267#define IEnumMcastScope_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
268#endif
269#endif
270  HRESULT WINAPI IEnumMcastScope_Next_Proxy(IEnumMcastScope *This,ULONG celt,IMcastScope **ppScopes,ULONG *pceltFetched);
271  void __RPC_STUB IEnumMcastScope_Next_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
272  HRESULT WINAPI IEnumMcastScope_Reset_Proxy(IEnumMcastScope *This);
273  void __RPC_STUB IEnumMcastScope_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
274  HRESULT WINAPI IEnumMcastScope_Skip_Proxy(IEnumMcastScope *This,ULONG celt);
275  void __RPC_STUB IEnumMcastScope_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
276  HRESULT WINAPI IEnumMcastScope_Clone_Proxy(IEnumMcastScope *This,IEnumMcastScope **ppEnum);
277  void __RPC_STUB IEnumMcastScope_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
278#endif
279
280#ifndef __IMcastAddressAllocation_INTERFACE_DEFINED__
281#define __IMcastAddressAllocation_INTERFACE_DEFINED__
282  EXTERN_C const IID IID_IMcastAddressAllocation;
283#if defined(__cplusplus) && !defined(CINTERFACE)
284  struct IMcastAddressAllocation : public IDispatch {
285  public:
286    virtual HRESULT WINAPI get_Scopes(VARIANT *pVariant) = 0;
287    virtual HRESULT WINAPI EnumerateScopes(IEnumMcastScope **ppEnumMcastScope) = 0;
288    virtual HRESULT WINAPI RequestAddress(IMcastScope *pScope,DATE LeaseStartTime,DATE LeaseStopTime,__LONG32 NumAddresses,IMcastLeaseInfo **ppLeaseResponse) = 0;
289    virtual HRESULT WINAPI RenewAddress(__LONG32 lReserved,IMcastLeaseInfo *pRenewRequest,IMcastLeaseInfo **ppRenewResponse) = 0;
290    virtual HRESULT WINAPI ReleaseAddress(IMcastLeaseInfo *pReleaseRequest) = 0;
291    virtual HRESULT WINAPI CreateLeaseInfo(DATE LeaseStartTime,DATE LeaseStopTime,DWORD dwNumAddresses,LPWSTR *ppAddresses,LPWSTR pRequestID,LPWSTR pServerAddress,IMcastLeaseInfo **ppReleaseRequest) = 0;
292    virtual HRESULT WINAPI CreateLeaseInfoFromVariant(DATE LeaseStartTime,DATE LeaseStopTime,VARIANT vAddresses,BSTR pRequestID,BSTR pServerAddress,IMcastLeaseInfo **ppReleaseRequest) = 0;
293  };
294#else
295  typedef struct IMcastAddressAllocationVtbl {
296    BEGIN_INTERFACE
297      HRESULT (WINAPI *QueryInterface)(IMcastAddressAllocation *This,REFIID riid,void **ppvObject);
298      ULONG (WINAPI *AddRef)(IMcastAddressAllocation *This);
299      ULONG (WINAPI *Release)(IMcastAddressAllocation *This);
300      HRESULT (WINAPI *GetTypeInfoCount)(IMcastAddressAllocation *This,UINT *pctinfo);
301      HRESULT (WINAPI *GetTypeInfo)(IMcastAddressAllocation *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
302      HRESULT (WINAPI *GetIDsOfNames)(IMcastAddressAllocation *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
303      HRESULT (WINAPI *Invoke)(IMcastAddressAllocation *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
304      HRESULT (WINAPI *get_Scopes)(IMcastAddressAllocation *This,VARIANT *pVariant);
305      HRESULT (WINAPI *EnumerateScopes)(IMcastAddressAllocation *This,IEnumMcastScope **ppEnumMcastScope);
306      HRESULT (WINAPI *RequestAddress)(IMcastAddressAllocation *This,IMcastScope *pScope,DATE LeaseStartTime,DATE LeaseStopTime,__LONG32 NumAddresses,IMcastLeaseInfo **ppLeaseResponse);
307      HRESULT (WINAPI *RenewAddress)(IMcastAddressAllocation *This,__LONG32 lReserved,IMcastLeaseInfo *pRenewRequest,IMcastLeaseInfo **ppRenewResponse);
308      HRESULT (WINAPI *ReleaseAddress)(IMcastAddressAllocation *This,IMcastLeaseInfo *pReleaseRequest);
309      HRESULT (WINAPI *CreateLeaseInfo)(IMcastAddressAllocation *This,DATE LeaseStartTime,DATE LeaseStopTime,DWORD dwNumAddresses,LPWSTR *ppAddresses,LPWSTR pRequestID,LPWSTR pServerAddress,IMcastLeaseInfo **ppReleaseRequest);
310      HRESULT (WINAPI *CreateLeaseInfoFromVariant)(IMcastAddressAllocation *This,DATE LeaseStartTime,DATE LeaseStopTime,VARIANT vAddresses,BSTR pRequestID,BSTR pServerAddress,IMcastLeaseInfo **ppReleaseRequest);
311    END_INTERFACE
312  } IMcastAddressAllocationVtbl;
313  struct IMcastAddressAllocation {
314    CONST_VTBL struct IMcastAddressAllocationVtbl *lpVtbl;
315  };
316#ifdef COBJMACROS
317#define IMcastAddressAllocation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
318#define IMcastAddressAllocation_AddRef(This) (This)->lpVtbl->AddRef(This)
319#define IMcastAddressAllocation_Release(This) (This)->lpVtbl->Release(This)
320#define IMcastAddressAllocation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
321#define IMcastAddressAllocation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
322#define IMcastAddressAllocation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
323#define IMcastAddressAllocation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
324#define IMcastAddressAllocation_get_Scopes(This,pVariant) (This)->lpVtbl->get_Scopes(This,pVariant)
325#define IMcastAddressAllocation_EnumerateScopes(This,ppEnumMcastScope) (This)->lpVtbl->EnumerateScopes(This,ppEnumMcastScope)
326#define IMcastAddressAllocation_RequestAddress(This,pScope,LeaseStartTime,LeaseStopTime,NumAddresses,ppLeaseResponse) (This)->lpVtbl->RequestAddress(This,pScope,LeaseStartTime,LeaseStopTime,NumAddresses,ppLeaseResponse)
327#define IMcastAddressAllocation_RenewAddress(This,lReserved,pRenewRequest,ppRenewResponse) (This)->lpVtbl->RenewAddress(This,lReserved,pRenewRequest,ppRenewResponse)
328#define IMcastAddressAllocation_ReleaseAddress(This,pReleaseRequest) (This)->lpVtbl->ReleaseAddress(This,pReleaseRequest)
329#define IMcastAddressAllocation_CreateLeaseInfo(This,LeaseStartTime,LeaseStopTime,dwNumAddresses,ppAddresses,pRequestID,pServerAddress,ppReleaseRequest) (This)->lpVtbl->CreateLeaseInfo(This,LeaseStartTime,LeaseStopTime,dwNumAddresses,ppAddresses,pRequestID,pServerAddress,ppReleaseRequest)
330#define IMcastAddressAllocation_CreateLeaseInfoFromVariant(This,LeaseStartTime,LeaseStopTime,vAddresses,pRequestID,pServerAddress,ppReleaseRequest) (This)->lpVtbl->CreateLeaseInfoFromVariant(This,LeaseStartTime,LeaseStopTime,vAddresses,pRequestID,pServerAddress,ppReleaseRequest)
331#endif
332#endif
333  HRESULT WINAPI IMcastAddressAllocation_get_Scopes_Proxy(IMcastAddressAllocation *This,VARIANT *pVariant);
334  void __RPC_STUB IMcastAddressAllocation_get_Scopes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
335  HRESULT WINAPI IMcastAddressAllocation_EnumerateScopes_Proxy(IMcastAddressAllocation *This,IEnumMcastScope **ppEnumMcastScope);
336  void __RPC_STUB IMcastAddressAllocation_EnumerateScopes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
337  HRESULT WINAPI IMcastAddressAllocation_RequestAddress_Proxy(IMcastAddressAllocation *This,IMcastScope *pScope,DATE LeaseStartTime,DATE LeaseStopTime,__LONG32 NumAddresses,IMcastLeaseInfo **ppLeaseResponse);
338  void __RPC_STUB IMcastAddressAllocation_RequestAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
339  HRESULT WINAPI IMcastAddressAllocation_RenewAddress_Proxy(IMcastAddressAllocation *This,__LONG32 lReserved,IMcastLeaseInfo *pRenewRequest,IMcastLeaseInfo **ppRenewResponse);
340  void __RPC_STUB IMcastAddressAllocation_RenewAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
341  HRESULT WINAPI IMcastAddressAllocation_ReleaseAddress_Proxy(IMcastAddressAllocation *This,IMcastLeaseInfo *pReleaseRequest);
342  void __RPC_STUB IMcastAddressAllocation_ReleaseAddress_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
343  HRESULT WINAPI IMcastAddressAllocation_CreateLeaseInfo_Proxy(IMcastAddressAllocation *This,DATE LeaseStartTime,DATE LeaseStopTime,DWORD dwNumAddresses,LPWSTR *ppAddresses,LPWSTR pRequestID,LPWSTR pServerAddress,IMcastLeaseInfo **ppReleaseRequest);
344  void __RPC_STUB IMcastAddressAllocation_CreateLeaseInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
345  HRESULT WINAPI IMcastAddressAllocation_CreateLeaseInfoFromVariant_Proxy(IMcastAddressAllocation *This,DATE LeaseStartTime,DATE LeaseStopTime,VARIANT vAddresses,BSTR pRequestID,BSTR pServerAddress,IMcastLeaseInfo **ppReleaseRequest);
346  void __RPC_STUB IMcastAddressAllocation_CreateLeaseInfoFromVariant_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
347#endif
348
349#ifndef __McastLib_LIBRARY_DEFINED__
350#define __McastLib_LIBRARY_DEFINED__
351  EXTERN_C const IID LIBID_McastLib;
352  EXTERN_C const CLSID CLSID_McastAddressAllocation;
353#ifdef __cplusplus
354  class McastAddressAllocation;
355#endif
356#endif
357
358  ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
359  unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
360  unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
361  void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
362  ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
363  unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
364  unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
365  void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
366
367#ifdef __cplusplus
368}
369#endif
370#endif