1/*** Autogenerated by WIDL 1.6 from include/bdaiface.idl - Do not edit ***/
2
3#ifndef __REQUIRED_RPCNDR_H_VERSION__
4#define __REQUIRED_RPCNDR_H_VERSION__ 475
5#endif
6
7#include <rpc.h>
8#include <rpcndr.h>
9
10#ifndef COM_NO_WINDOWS_H
11#include <windows.h>
12#include <ole2.h>
13#endif
14
15#ifndef __bdaiface_h__
16#define __bdaiface_h__
17
18/* Forward declarations */
19
20#ifndef __IBDA_NetworkProvider_FWD_DEFINED__
21#define __IBDA_NetworkProvider_FWD_DEFINED__
22typedef interface IBDA_NetworkProvider IBDA_NetworkProvider;
23#endif
24
25#ifndef __IBDA_EthernetFilter_FWD_DEFINED__
26#define __IBDA_EthernetFilter_FWD_DEFINED__
27typedef interface IBDA_EthernetFilter IBDA_EthernetFilter;
28#endif
29
30#ifndef __IBDA_IPV4Filter_FWD_DEFINED__
31#define __IBDA_IPV4Filter_FWD_DEFINED__
32typedef interface IBDA_IPV4Filter IBDA_IPV4Filter;
33#endif
34
35#ifndef __IBDA_IPV6Filter_FWD_DEFINED__
36#define __IBDA_IPV6Filter_FWD_DEFINED__
37typedef interface IBDA_IPV6Filter IBDA_IPV6Filter;
38#endif
39
40#ifndef __IBDA_DeviceControl_FWD_DEFINED__
41#define __IBDA_DeviceControl_FWD_DEFINED__
42typedef interface IBDA_DeviceControl IBDA_DeviceControl;
43#endif
44
45#ifndef __IBDA_PinControl_FWD_DEFINED__
46#define __IBDA_PinControl_FWD_DEFINED__
47typedef interface IBDA_PinControl IBDA_PinControl;
48#endif
49
50#ifndef __IBDA_SignalProperties_FWD_DEFINED__
51#define __IBDA_SignalProperties_FWD_DEFINED__
52typedef interface IBDA_SignalProperties IBDA_SignalProperties;
53#endif
54
55#ifndef __IBDA_SignalStatistics_FWD_DEFINED__
56#define __IBDA_SignalStatistics_FWD_DEFINED__
57typedef interface IBDA_SignalStatistics IBDA_SignalStatistics;
58#endif
59
60#ifndef __IBDA_Topology_FWD_DEFINED__
61#define __IBDA_Topology_FWD_DEFINED__
62typedef interface IBDA_Topology IBDA_Topology;
63#endif
64
65#ifndef __IBDA_VoidTransform_FWD_DEFINED__
66#define __IBDA_VoidTransform_FWD_DEFINED__
67typedef interface IBDA_VoidTransform IBDA_VoidTransform;
68#endif
69
70#ifndef __IBDA_NullTransform_FWD_DEFINED__
71#define __IBDA_NullTransform_FWD_DEFINED__
72typedef interface IBDA_NullTransform IBDA_NullTransform;
73#endif
74
75#ifndef __IBDA_FrequencyFilter_FWD_DEFINED__
76#define __IBDA_FrequencyFilter_FWD_DEFINED__
77typedef interface IBDA_FrequencyFilter IBDA_FrequencyFilter;
78#endif
79
80#ifndef __IBDA_LNBInfo_FWD_DEFINED__
81#define __IBDA_LNBInfo_FWD_DEFINED__
82typedef interface IBDA_LNBInfo IBDA_LNBInfo;
83#endif
84
85#ifndef __IBDA_DiseqCommand_FWD_DEFINED__
86#define __IBDA_DiseqCommand_FWD_DEFINED__
87typedef interface IBDA_DiseqCommand IBDA_DiseqCommand;
88#endif
89
90#ifndef __IBDA_AutoDemodulate_FWD_DEFINED__
91#define __IBDA_AutoDemodulate_FWD_DEFINED__
92typedef interface IBDA_AutoDemodulate IBDA_AutoDemodulate;
93#endif
94
95#ifndef __IBDA_AutoDemodulateEx_FWD_DEFINED__
96#define __IBDA_AutoDemodulateEx_FWD_DEFINED__
97typedef interface IBDA_AutoDemodulateEx IBDA_AutoDemodulateEx;
98#endif
99
100#ifndef __IBDA_DigitalDemodulator_FWD_DEFINED__
101#define __IBDA_DigitalDemodulator_FWD_DEFINED__
102typedef interface IBDA_DigitalDemodulator IBDA_DigitalDemodulator;
103#endif
104
105#ifndef __IBDA_DigitalDemodulator2_FWD_DEFINED__
106#define __IBDA_DigitalDemodulator2_FWD_DEFINED__
107typedef interface IBDA_DigitalDemodulator2 IBDA_DigitalDemodulator2;
108#endif
109
110#ifndef __IBDA_DigitalDemodulator3_FWD_DEFINED__
111#define __IBDA_DigitalDemodulator3_FWD_DEFINED__
112typedef interface IBDA_DigitalDemodulator3 IBDA_DigitalDemodulator3;
113#endif
114
115#ifndef __ICCSubStreamFiltering_FWD_DEFINED__
116#define __ICCSubStreamFiltering_FWD_DEFINED__
117typedef interface ICCSubStreamFiltering ICCSubStreamFiltering;
118#endif
119
120#ifndef __IBDA_IPSinkControl_FWD_DEFINED__
121#define __IBDA_IPSinkControl_FWD_DEFINED__
122typedef interface IBDA_IPSinkControl IBDA_IPSinkControl;
123#endif
124
125#ifndef __IBDA_IPSinkInfo_FWD_DEFINED__
126#define __IBDA_IPSinkInfo_FWD_DEFINED__
127typedef interface IBDA_IPSinkInfo IBDA_IPSinkInfo;
128#endif
129
130#ifndef __IEnumPIDMap_FWD_DEFINED__
131#define __IEnumPIDMap_FWD_DEFINED__
132typedef interface IEnumPIDMap IEnumPIDMap;
133#endif
134
135#ifndef __IMPEG2PIDMap_FWD_DEFINED__
136#define __IMPEG2PIDMap_FWD_DEFINED__
137typedef interface IMPEG2PIDMap IMPEG2PIDMap;
138#endif
139
140#ifndef __IFrequencyMap_FWD_DEFINED__
141#define __IFrequencyMap_FWD_DEFINED__
142typedef interface IFrequencyMap IFrequencyMap;
143#endif
144
145#ifndef __IBDA_EasMessage_FWD_DEFINED__
146#define __IBDA_EasMessage_FWD_DEFINED__
147typedef interface IBDA_EasMessage IBDA_EasMessage;
148#endif
149
150#ifndef __IBDA_TransportStreamInfo_FWD_DEFINED__
151#define __IBDA_TransportStreamInfo_FWD_DEFINED__
152typedef interface IBDA_TransportStreamInfo IBDA_TransportStreamInfo;
153#endif
154
155#ifndef __IBDA_ConditionalAccess_FWD_DEFINED__
156#define __IBDA_ConditionalAccess_FWD_DEFINED__
157typedef interface IBDA_ConditionalAccess IBDA_ConditionalAccess;
158#endif
159
160#ifndef __IBDA_DiagnosticProperties_FWD_DEFINED__
161#define __IBDA_DiagnosticProperties_FWD_DEFINED__
162typedef interface IBDA_DiagnosticProperties IBDA_DiagnosticProperties;
163#endif
164
165#ifndef __IBDA_DRM_FWD_DEFINED__
166#define __IBDA_DRM_FWD_DEFINED__
167typedef interface IBDA_DRM IBDA_DRM;
168#endif
169
170#ifndef __IBDA_NameValueService_FWD_DEFINED__
171#define __IBDA_NameValueService_FWD_DEFINED__
172typedef interface IBDA_NameValueService IBDA_NameValueService;
173#endif
174
175#ifndef __IBDA_ConditionalAccessEx_FWD_DEFINED__
176#define __IBDA_ConditionalAccessEx_FWD_DEFINED__
177typedef interface IBDA_ConditionalAccessEx IBDA_ConditionalAccessEx;
178#endif
179
180#ifndef __IBDA_ISDBConditionalAccess_FWD_DEFINED__
181#define __IBDA_ISDBConditionalAccess_FWD_DEFINED__
182typedef interface IBDA_ISDBConditionalAccess IBDA_ISDBConditionalAccess;
183#endif
184
185#ifndef __IBDA_EventingService_FWD_DEFINED__
186#define __IBDA_EventingService_FWD_DEFINED__
187typedef interface IBDA_EventingService IBDA_EventingService;
188#endif
189
190#ifndef __IBDA_AUX_FWD_DEFINED__
191#define __IBDA_AUX_FWD_DEFINED__
192typedef interface IBDA_AUX IBDA_AUX;
193#endif
194
195#ifndef __IBDA_Encoder_FWD_DEFINED__
196#define __IBDA_Encoder_FWD_DEFINED__
197typedef interface IBDA_Encoder IBDA_Encoder;
198#endif
199
200#ifndef __IBDA_FDC_FWD_DEFINED__
201#define __IBDA_FDC_FWD_DEFINED__
202typedef interface IBDA_FDC IBDA_FDC;
203#endif
204
205#ifndef __IBDA_GuideDataDeliveryService_FWD_DEFINED__
206#define __IBDA_GuideDataDeliveryService_FWD_DEFINED__
207typedef interface IBDA_GuideDataDeliveryService IBDA_GuideDataDeliveryService;
208#endif
209
210#ifndef __IBDA_DRMService_FWD_DEFINED__
211#define __IBDA_DRMService_FWD_DEFINED__
212typedef interface IBDA_DRMService IBDA_DRMService;
213#endif
214
215#ifndef __IBDA_WMDRMSession_FWD_DEFINED__
216#define __IBDA_WMDRMSession_FWD_DEFINED__
217typedef interface IBDA_WMDRMSession IBDA_WMDRMSession;
218#endif
219
220#ifndef __IBDA_WMDRMTuner_FWD_DEFINED__
221#define __IBDA_WMDRMTuner_FWD_DEFINED__
222typedef interface IBDA_WMDRMTuner IBDA_WMDRMTuner;
223#endif
224
225#ifndef __IBDA_DRIDRMService_FWD_DEFINED__
226#define __IBDA_DRIDRMService_FWD_DEFINED__
227typedef interface IBDA_DRIDRMService IBDA_DRIDRMService;
228#endif
229
230#ifndef __IBDA_DRIWMDRMSession_FWD_DEFINED__
231#define __IBDA_DRIWMDRMSession_FWD_DEFINED__
232typedef interface IBDA_DRIWMDRMSession IBDA_DRIWMDRMSession;
233#endif
234
235#ifndef __IBDA_MUX_FWD_DEFINED__
236#define __IBDA_MUX_FWD_DEFINED__
237typedef interface IBDA_MUX IBDA_MUX;
238#endif
239
240#ifndef __IBDA_TransportStreamSelector_FWD_DEFINED__
241#define __IBDA_TransportStreamSelector_FWD_DEFINED__
242typedef interface IBDA_TransportStreamSelector IBDA_TransportStreamSelector;
243#endif
244
245#ifndef __IBDA_UserActivityService_FWD_DEFINED__
246#define __IBDA_UserActivityService_FWD_DEFINED__
247typedef interface IBDA_UserActivityService IBDA_UserActivityService;
248#endif
249
250/* Headers for imported files */
251
252#include <unknwn.h>
253#include <strmif.h>
254#include <bdatypes.h>
255
256#ifdef __cplusplus
257extern "C" {
258#endif
259
260#include <winapifamily.h>
261
262#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
263typedef enum SmartCardStatusType {
264    CardInserted = 0,
265    CardRemoved = 1,
266    CardError = 2,
267    CardDataChanged = 3,
268    CardFirmwareUpgrade = 4
269} SmartCardStatusType;
270typedef enum SmartCardAssociationType {
271    NotAssociated = 0,
272    Associated = 1,
273    AssociationUnknown = 2
274} SmartCardAssociationType;
275typedef enum LocationCodeSchemeType {
276    SCTE_18 = 0
277} LocationCodeSchemeType;
278typedef enum EntitlementType {
279    Entitled = 0,
280    NotEntitled = 1,
281    TechnicalFailure = 2
282} EntitlementType;
283typedef enum UICloseReasonType {
284    NotReady = 0,
285    UserClosed = 1,
286    SystemClosed = 2,
287    DeviceClosed = 3,
288    ErrorClosed = 4
289} UICloseReasonType;
290typedef enum BDA_DrmPairingError {
291    BDA_DrmPairing_Succeeded = 0,
292    BDA_DrmPairing_HardwareFailure = 1,
293    BDA_DrmPairing_NeedRevocationData = 2,
294    BDA_DrmPairing_NeedIndiv = 3,
295    BDA_DrmPairing_Other = 4,
296    BDA_DrmPairing_DrmInitFailed = 5,
297    BDA_DrmPairing_DrmNotPaired = 6,
298    BDA_DrmPairing_DrmRePairSoon = 7,
299    BDA_DrmPairing_Aborted = 8,
300    BDA_DrmPairing_NeedSDKUpdate = 9
301} BDA_DrmPairingError;
302typedef struct EALocationCodeType {
303    LocationCodeSchemeType LocationCodeScheme;
304    BYTE state_code;
305    BYTE county_subdivision;
306    WORD county_code;
307} EALocationCodeType;
308typedef struct SmartCardApplication {
309    ApplicationTypeType ApplicationType;
310    USHORT ApplicationVersion;
311    BSTR pbstrApplicationName;
312    BSTR pbstrApplicationURL;
313} SmartCardApplication;
314
315#define PBDA_Encoder_Audio_AlgorithmType_MPEG1LayerII 0x0
316#define PBDA_Encoder_Audio_AlgorithmType_AC3 0x1
317
318#define PBDA_Encoder_Video_MPEG2PartII 0x0
319#define PBDA_Encoder_Video_MPEG4Part10 0x1
320
321#define PBDA_Encoder_Video_AVC 0x1
322#define PBDA_Encoder_Video_H264 0x1
323
324#define PBDA_Encoder_BitrateMode_Constant 1
325#define PBDA_Encoder_BitrateMode_Variable 2
326#define PBDA_Encoder_BitrateMode_Average 3
327typedef enum __WIDL_bdaiface_generated_name_0000000F {
328    KSPROPERTY_IPSINK_MULTICASTLIST = 0,
329    KSPROPERTY_IPSINK_ADAPTER_DESCRIPTION = 1,
330    KSPROPERTY_IPSINK_ADAPTER_ADDRESS = 2
331} KSPROPERTY_IPSINK;
332/*****************************************************************************
333 * IBDA_NetworkProvider interface
334 */
335#ifndef __IBDA_NetworkProvider_INTERFACE_DEFINED__
336#define __IBDA_NetworkProvider_INTERFACE_DEFINED__
337
338DEFINE_GUID(IID_IBDA_NetworkProvider, 0xfd501041, 0x8ebe, 0x11ce, 0x81,0x83, 0x00,0xaa,0x00,0x57,0x7d,0xa2);
339#if defined(__cplusplus) && !defined(CINTERFACE)
340MIDL_INTERFACE("fd501041-8ebe-11ce-8183-00aa00577da2")
341IBDA_NetworkProvider : public IUnknown
342{
343    virtual HRESULT STDMETHODCALLTYPE PutSignalSource(
344        ULONG ulSignalSource) = 0;
345
346    virtual HRESULT STDMETHODCALLTYPE GetSignalSource(
347        ULONG *pulSignalSource) = 0;
348
349    virtual HRESULT STDMETHODCALLTYPE GetNetworkType(
350        GUID *pguidNetworkType) = 0;
351
352    virtual HRESULT STDMETHODCALLTYPE PutTuningSpace(
353        REFGUID guidTuningSpace) = 0;
354
355    virtual HRESULT STDMETHODCALLTYPE GetTuningSpace(
356        GUID *pguidTuingSpace) = 0;
357
358    virtual HRESULT STDMETHODCALLTYPE RegisterDeviceFilter(
359        IUnknown *pUnkFilterControl,
360        ULONG *ppvRegisitrationContext) = 0;
361
362    virtual HRESULT STDMETHODCALLTYPE UnRegisterDeviceFilter(
363        ULONG pvRegistrationContext) = 0;
364
365};
366#ifdef __CRT_UUID_DECL
367__CRT_UUID_DECL(IBDA_NetworkProvider, 0xfd501041, 0x8ebe, 0x11ce, 0x81,0x83, 0x00,0xaa,0x00,0x57,0x7d,0xa2)
368#endif
369#else
370typedef struct IBDA_NetworkProviderVtbl {
371    BEGIN_INTERFACE
372
373    /*** IUnknown methods ***/
374    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
375        IBDA_NetworkProvider* This,
376        REFIID riid,
377        void **ppvObject);
378
379    ULONG (STDMETHODCALLTYPE *AddRef)(
380        IBDA_NetworkProvider* This);
381
382    ULONG (STDMETHODCALLTYPE *Release)(
383        IBDA_NetworkProvider* This);
384
385    /*** IBDA_NetworkProvider methods ***/
386    HRESULT (STDMETHODCALLTYPE *PutSignalSource)(
387        IBDA_NetworkProvider* This,
388        ULONG ulSignalSource);
389
390    HRESULT (STDMETHODCALLTYPE *GetSignalSource)(
391        IBDA_NetworkProvider* This,
392        ULONG *pulSignalSource);
393
394    HRESULT (STDMETHODCALLTYPE *GetNetworkType)(
395        IBDA_NetworkProvider* This,
396        GUID *pguidNetworkType);
397
398    HRESULT (STDMETHODCALLTYPE *PutTuningSpace)(
399        IBDA_NetworkProvider* This,
400        REFGUID guidTuningSpace);
401
402    HRESULT (STDMETHODCALLTYPE *GetTuningSpace)(
403        IBDA_NetworkProvider* This,
404        GUID *pguidTuingSpace);
405
406    HRESULT (STDMETHODCALLTYPE *RegisterDeviceFilter)(
407        IBDA_NetworkProvider* This,
408        IUnknown *pUnkFilterControl,
409        ULONG *ppvRegisitrationContext);
410
411    HRESULT (STDMETHODCALLTYPE *UnRegisterDeviceFilter)(
412        IBDA_NetworkProvider* This,
413        ULONG pvRegistrationContext);
414
415    END_INTERFACE
416} IBDA_NetworkProviderVtbl;
417interface IBDA_NetworkProvider {
418    CONST_VTBL IBDA_NetworkProviderVtbl* lpVtbl;
419};
420
421#ifdef COBJMACROS
422#ifndef WIDL_C_INLINE_WRAPPERS
423/*** IUnknown methods ***/
424#define IBDA_NetworkProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
425#define IBDA_NetworkProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
426#define IBDA_NetworkProvider_Release(This) (This)->lpVtbl->Release(This)
427/*** IBDA_NetworkProvider methods ***/
428#define IBDA_NetworkProvider_PutSignalSource(This,ulSignalSource) (This)->lpVtbl->PutSignalSource(This,ulSignalSource)
429#define IBDA_NetworkProvider_GetSignalSource(This,pulSignalSource) (This)->lpVtbl->GetSignalSource(This,pulSignalSource)
430#define IBDA_NetworkProvider_GetNetworkType(This,pguidNetworkType) (This)->lpVtbl->GetNetworkType(This,pguidNetworkType)
431#define IBDA_NetworkProvider_PutTuningSpace(This,guidTuningSpace) (This)->lpVtbl->PutTuningSpace(This,guidTuningSpace)
432#define IBDA_NetworkProvider_GetTuningSpace(This,pguidTuingSpace) (This)->lpVtbl->GetTuningSpace(This,pguidTuingSpace)
433#define IBDA_NetworkProvider_RegisterDeviceFilter(This,pUnkFilterControl,ppvRegisitrationContext) (This)->lpVtbl->RegisterDeviceFilter(This,pUnkFilterControl,ppvRegisitrationContext)
434#define IBDA_NetworkProvider_UnRegisterDeviceFilter(This,pvRegistrationContext) (This)->lpVtbl->UnRegisterDeviceFilter(This,pvRegistrationContext)
435#else
436/*** IUnknown methods ***/
437static FORCEINLINE HRESULT IBDA_NetworkProvider_QueryInterface(IBDA_NetworkProvider* This,REFIID riid,void **ppvObject) {
438    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
439}
440static FORCEINLINE ULONG IBDA_NetworkProvider_AddRef(IBDA_NetworkProvider* This) {
441    return This->lpVtbl->AddRef(This);
442}
443static FORCEINLINE ULONG IBDA_NetworkProvider_Release(IBDA_NetworkProvider* This) {
444    return This->lpVtbl->Release(This);
445}
446/*** IBDA_NetworkProvider methods ***/
447static FORCEINLINE HRESULT IBDA_NetworkProvider_PutSignalSource(IBDA_NetworkProvider* This,ULONG ulSignalSource) {
448    return This->lpVtbl->PutSignalSource(This,ulSignalSource);
449}
450static FORCEINLINE HRESULT IBDA_NetworkProvider_GetSignalSource(IBDA_NetworkProvider* This,ULONG *pulSignalSource) {
451    return This->lpVtbl->GetSignalSource(This,pulSignalSource);
452}
453static FORCEINLINE HRESULT IBDA_NetworkProvider_GetNetworkType(IBDA_NetworkProvider* This,GUID *pguidNetworkType) {
454    return This->lpVtbl->GetNetworkType(This,pguidNetworkType);
455}
456static FORCEINLINE HRESULT IBDA_NetworkProvider_PutTuningSpace(IBDA_NetworkProvider* This,REFGUID guidTuningSpace) {
457    return This->lpVtbl->PutTuningSpace(This,guidTuningSpace);
458}
459static FORCEINLINE HRESULT IBDA_NetworkProvider_GetTuningSpace(IBDA_NetworkProvider* This,GUID *pguidTuingSpace) {
460    return This->lpVtbl->GetTuningSpace(This,pguidTuingSpace);
461}
462static FORCEINLINE HRESULT IBDA_NetworkProvider_RegisterDeviceFilter(IBDA_NetworkProvider* This,IUnknown *pUnkFilterControl,ULONG *ppvRegisitrationContext) {
463    return This->lpVtbl->RegisterDeviceFilter(This,pUnkFilterControl,ppvRegisitrationContext);
464}
465static FORCEINLINE HRESULT IBDA_NetworkProvider_UnRegisterDeviceFilter(IBDA_NetworkProvider* This,ULONG pvRegistrationContext) {
466    return This->lpVtbl->UnRegisterDeviceFilter(This,pvRegistrationContext);
467}
468#endif
469#endif
470
471#endif
472
473HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_PutSignalSource_Proxy(
474    IBDA_NetworkProvider* This,
475    ULONG ulSignalSource);
476void __RPC_STUB IBDA_NetworkProvider_PutSignalSource_Stub(
477    IRpcStubBuffer* This,
478    IRpcChannelBuffer* pRpcChannelBuffer,
479    PRPC_MESSAGE pRpcMessage,
480    DWORD* pdwStubPhase);
481HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_GetSignalSource_Proxy(
482    IBDA_NetworkProvider* This,
483    ULONG *pulSignalSource);
484void __RPC_STUB IBDA_NetworkProvider_GetSignalSource_Stub(
485    IRpcStubBuffer* This,
486    IRpcChannelBuffer* pRpcChannelBuffer,
487    PRPC_MESSAGE pRpcMessage,
488    DWORD* pdwStubPhase);
489HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_GetNetworkType_Proxy(
490    IBDA_NetworkProvider* This,
491    GUID *pguidNetworkType);
492void __RPC_STUB IBDA_NetworkProvider_GetNetworkType_Stub(
493    IRpcStubBuffer* This,
494    IRpcChannelBuffer* pRpcChannelBuffer,
495    PRPC_MESSAGE pRpcMessage,
496    DWORD* pdwStubPhase);
497HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_PutTuningSpace_Proxy(
498    IBDA_NetworkProvider* This,
499    REFGUID guidTuningSpace);
500void __RPC_STUB IBDA_NetworkProvider_PutTuningSpace_Stub(
501    IRpcStubBuffer* This,
502    IRpcChannelBuffer* pRpcChannelBuffer,
503    PRPC_MESSAGE pRpcMessage,
504    DWORD* pdwStubPhase);
505HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_GetTuningSpace_Proxy(
506    IBDA_NetworkProvider* This,
507    GUID *pguidTuingSpace);
508void __RPC_STUB IBDA_NetworkProvider_GetTuningSpace_Stub(
509    IRpcStubBuffer* This,
510    IRpcChannelBuffer* pRpcChannelBuffer,
511    PRPC_MESSAGE pRpcMessage,
512    DWORD* pdwStubPhase);
513HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_RegisterDeviceFilter_Proxy(
514    IBDA_NetworkProvider* This,
515    IUnknown *pUnkFilterControl,
516    ULONG *ppvRegisitrationContext);
517void __RPC_STUB IBDA_NetworkProvider_RegisterDeviceFilter_Stub(
518    IRpcStubBuffer* This,
519    IRpcChannelBuffer* pRpcChannelBuffer,
520    PRPC_MESSAGE pRpcMessage,
521    DWORD* pdwStubPhase);
522HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_UnRegisterDeviceFilter_Proxy(
523    IBDA_NetworkProvider* This,
524    ULONG pvRegistrationContext);
525void __RPC_STUB IBDA_NetworkProvider_UnRegisterDeviceFilter_Stub(
526    IRpcStubBuffer* This,
527    IRpcChannelBuffer* pRpcChannelBuffer,
528    PRPC_MESSAGE pRpcMessage,
529    DWORD* pdwStubPhase);
530
531#endif  /* __IBDA_NetworkProvider_INTERFACE_DEFINED__ */
532
533/*****************************************************************************
534 * IBDA_EthernetFilter interface
535 */
536#ifndef __IBDA_EthernetFilter_INTERFACE_DEFINED__
537#define __IBDA_EthernetFilter_INTERFACE_DEFINED__
538
539DEFINE_GUID(IID_IBDA_EthernetFilter, 0x71985f43, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
540#if defined(__cplusplus) && !defined(CINTERFACE)
541MIDL_INTERFACE("71985f43-1ca1-11d3-9cc8-00c04f7971e0")
542IBDA_EthernetFilter : public IUnknown
543{
544    virtual HRESULT STDMETHODCALLTYPE GetMulticastListSize(
545        ULONG *pulcbAddresses) = 0;
546
547    virtual HRESULT STDMETHODCALLTYPE PutMulticastList(
548        ULONG ulcbAddresses,
549        BYTE pAddressList[]) = 0;
550
551    virtual HRESULT STDMETHODCALLTYPE GetMulticastList(
552        ULONG *pulcbAddresses,
553        BYTE pAddressList[]) = 0;
554
555    virtual HRESULT STDMETHODCALLTYPE PutMulticastMode(
556        ULONG ulModeMask) = 0;
557
558    virtual HRESULT STDMETHODCALLTYPE GetMulticastMode(
559        ULONG *pulModeMask) = 0;
560
561};
562#ifdef __CRT_UUID_DECL
563__CRT_UUID_DECL(IBDA_EthernetFilter, 0x71985f43, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
564#endif
565#else
566typedef struct IBDA_EthernetFilterVtbl {
567    BEGIN_INTERFACE
568
569    /*** IUnknown methods ***/
570    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
571        IBDA_EthernetFilter* This,
572        REFIID riid,
573        void **ppvObject);
574
575    ULONG (STDMETHODCALLTYPE *AddRef)(
576        IBDA_EthernetFilter* This);
577
578    ULONG (STDMETHODCALLTYPE *Release)(
579        IBDA_EthernetFilter* This);
580
581    /*** IBDA_EthernetFilter methods ***/
582    HRESULT (STDMETHODCALLTYPE *GetMulticastListSize)(
583        IBDA_EthernetFilter* This,
584        ULONG *pulcbAddresses);
585
586    HRESULT (STDMETHODCALLTYPE *PutMulticastList)(
587        IBDA_EthernetFilter* This,
588        ULONG ulcbAddresses,
589        BYTE pAddressList[]);
590
591    HRESULT (STDMETHODCALLTYPE *GetMulticastList)(
592        IBDA_EthernetFilter* This,
593        ULONG *pulcbAddresses,
594        BYTE pAddressList[]);
595
596    HRESULT (STDMETHODCALLTYPE *PutMulticastMode)(
597        IBDA_EthernetFilter* This,
598        ULONG ulModeMask);
599
600    HRESULT (STDMETHODCALLTYPE *GetMulticastMode)(
601        IBDA_EthernetFilter* This,
602        ULONG *pulModeMask);
603
604    END_INTERFACE
605} IBDA_EthernetFilterVtbl;
606interface IBDA_EthernetFilter {
607    CONST_VTBL IBDA_EthernetFilterVtbl* lpVtbl;
608};
609
610#ifdef COBJMACROS
611#ifndef WIDL_C_INLINE_WRAPPERS
612/*** IUnknown methods ***/
613#define IBDA_EthernetFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
614#define IBDA_EthernetFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
615#define IBDA_EthernetFilter_Release(This) (This)->lpVtbl->Release(This)
616/*** IBDA_EthernetFilter methods ***/
617#define IBDA_EthernetFilter_GetMulticastListSize(This,pulcbAddresses) (This)->lpVtbl->GetMulticastListSize(This,pulcbAddresses)
618#define IBDA_EthernetFilter_PutMulticastList(This,ulcbAddresses,pAddressList) (This)->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList)
619#define IBDA_EthernetFilter_GetMulticastList(This,pulcbAddresses,pAddressList) (This)->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList)
620#define IBDA_EthernetFilter_PutMulticastMode(This,ulModeMask) (This)->lpVtbl->PutMulticastMode(This,ulModeMask)
621#define IBDA_EthernetFilter_GetMulticastMode(This,pulModeMask) (This)->lpVtbl->GetMulticastMode(This,pulModeMask)
622#else
623/*** IUnknown methods ***/
624static FORCEINLINE HRESULT IBDA_EthernetFilter_QueryInterface(IBDA_EthernetFilter* This,REFIID riid,void **ppvObject) {
625    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
626}
627static FORCEINLINE ULONG IBDA_EthernetFilter_AddRef(IBDA_EthernetFilter* This) {
628    return This->lpVtbl->AddRef(This);
629}
630static FORCEINLINE ULONG IBDA_EthernetFilter_Release(IBDA_EthernetFilter* This) {
631    return This->lpVtbl->Release(This);
632}
633/*** IBDA_EthernetFilter methods ***/
634static FORCEINLINE HRESULT IBDA_EthernetFilter_GetMulticastListSize(IBDA_EthernetFilter* This,ULONG *pulcbAddresses) {
635    return This->lpVtbl->GetMulticastListSize(This,pulcbAddresses);
636}
637static FORCEINLINE HRESULT IBDA_EthernetFilter_PutMulticastList(IBDA_EthernetFilter* This,ULONG ulcbAddresses,BYTE pAddressList[]) {
638    return This->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList);
639}
640static FORCEINLINE HRESULT IBDA_EthernetFilter_GetMulticastList(IBDA_EthernetFilter* This,ULONG *pulcbAddresses,BYTE pAddressList[]) {
641    return This->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList);
642}
643static FORCEINLINE HRESULT IBDA_EthernetFilter_PutMulticastMode(IBDA_EthernetFilter* This,ULONG ulModeMask) {
644    return This->lpVtbl->PutMulticastMode(This,ulModeMask);
645}
646static FORCEINLINE HRESULT IBDA_EthernetFilter_GetMulticastMode(IBDA_EthernetFilter* This,ULONG *pulModeMask) {
647    return This->lpVtbl->GetMulticastMode(This,pulModeMask);
648}
649#endif
650#endif
651
652#endif
653
654HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_GetMulticastListSize_Proxy(
655    IBDA_EthernetFilter* This,
656    ULONG *pulcbAddresses);
657void __RPC_STUB IBDA_EthernetFilter_GetMulticastListSize_Stub(
658    IRpcStubBuffer* This,
659    IRpcChannelBuffer* pRpcChannelBuffer,
660    PRPC_MESSAGE pRpcMessage,
661    DWORD* pdwStubPhase);
662HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_PutMulticastList_Proxy(
663    IBDA_EthernetFilter* This,
664    ULONG ulcbAddresses,
665    BYTE pAddressList[]);
666void __RPC_STUB IBDA_EthernetFilter_PutMulticastList_Stub(
667    IRpcStubBuffer* This,
668    IRpcChannelBuffer* pRpcChannelBuffer,
669    PRPC_MESSAGE pRpcMessage,
670    DWORD* pdwStubPhase);
671HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_GetMulticastList_Proxy(
672    IBDA_EthernetFilter* This,
673    ULONG *pulcbAddresses,
674    BYTE pAddressList[]);
675void __RPC_STUB IBDA_EthernetFilter_GetMulticastList_Stub(
676    IRpcStubBuffer* This,
677    IRpcChannelBuffer* pRpcChannelBuffer,
678    PRPC_MESSAGE pRpcMessage,
679    DWORD* pdwStubPhase);
680HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_PutMulticastMode_Proxy(
681    IBDA_EthernetFilter* This,
682    ULONG ulModeMask);
683void __RPC_STUB IBDA_EthernetFilter_PutMulticastMode_Stub(
684    IRpcStubBuffer* This,
685    IRpcChannelBuffer* pRpcChannelBuffer,
686    PRPC_MESSAGE pRpcMessage,
687    DWORD* pdwStubPhase);
688HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_GetMulticastMode_Proxy(
689    IBDA_EthernetFilter* This,
690    ULONG *pulModeMask);
691void __RPC_STUB IBDA_EthernetFilter_GetMulticastMode_Stub(
692    IRpcStubBuffer* This,
693    IRpcChannelBuffer* pRpcChannelBuffer,
694    PRPC_MESSAGE pRpcMessage,
695    DWORD* pdwStubPhase);
696
697#endif  /* __IBDA_EthernetFilter_INTERFACE_DEFINED__ */
698
699/*****************************************************************************
700 * IBDA_IPV4Filter interface
701 */
702#ifndef __IBDA_IPV4Filter_INTERFACE_DEFINED__
703#define __IBDA_IPV4Filter_INTERFACE_DEFINED__
704
705DEFINE_GUID(IID_IBDA_IPV4Filter, 0x71985f44, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
706#if defined(__cplusplus) && !defined(CINTERFACE)
707MIDL_INTERFACE("71985f44-1ca1-11d3-9cc8-00c04f7971e0")
708IBDA_IPV4Filter : public IUnknown
709{
710    virtual HRESULT STDMETHODCALLTYPE GetMulticastListSize(
711        ULONG *pulcbAddresses) = 0;
712
713    virtual HRESULT STDMETHODCALLTYPE PutMulticastList(
714        ULONG ulcbAddresses,
715        BYTE pAddressList[]) = 0;
716
717    virtual HRESULT STDMETHODCALLTYPE GetMulticastList(
718        ULONG *pulcbAddresses,
719        BYTE pAddressList[]) = 0;
720
721    virtual HRESULT STDMETHODCALLTYPE PutMulticastMode(
722        ULONG ulModeMask) = 0;
723
724    virtual HRESULT STDMETHODCALLTYPE GetMulticastMode(
725        ULONG *pulModeMask) = 0;
726
727};
728#ifdef __CRT_UUID_DECL
729__CRT_UUID_DECL(IBDA_IPV4Filter, 0x71985f44, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
730#endif
731#else
732typedef struct IBDA_IPV4FilterVtbl {
733    BEGIN_INTERFACE
734
735    /*** IUnknown methods ***/
736    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
737        IBDA_IPV4Filter* This,
738        REFIID riid,
739        void **ppvObject);
740
741    ULONG (STDMETHODCALLTYPE *AddRef)(
742        IBDA_IPV4Filter* This);
743
744    ULONG (STDMETHODCALLTYPE *Release)(
745        IBDA_IPV4Filter* This);
746
747    /*** IBDA_IPV4Filter methods ***/
748    HRESULT (STDMETHODCALLTYPE *GetMulticastListSize)(
749        IBDA_IPV4Filter* This,
750        ULONG *pulcbAddresses);
751
752    HRESULT (STDMETHODCALLTYPE *PutMulticastList)(
753        IBDA_IPV4Filter* This,
754        ULONG ulcbAddresses,
755        BYTE pAddressList[]);
756
757    HRESULT (STDMETHODCALLTYPE *GetMulticastList)(
758        IBDA_IPV4Filter* This,
759        ULONG *pulcbAddresses,
760        BYTE pAddressList[]);
761
762    HRESULT (STDMETHODCALLTYPE *PutMulticastMode)(
763        IBDA_IPV4Filter* This,
764        ULONG ulModeMask);
765
766    HRESULT (STDMETHODCALLTYPE *GetMulticastMode)(
767        IBDA_IPV4Filter* This,
768        ULONG *pulModeMask);
769
770    END_INTERFACE
771} IBDA_IPV4FilterVtbl;
772interface IBDA_IPV4Filter {
773    CONST_VTBL IBDA_IPV4FilterVtbl* lpVtbl;
774};
775
776#ifdef COBJMACROS
777#ifndef WIDL_C_INLINE_WRAPPERS
778/*** IUnknown methods ***/
779#define IBDA_IPV4Filter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
780#define IBDA_IPV4Filter_AddRef(This) (This)->lpVtbl->AddRef(This)
781#define IBDA_IPV4Filter_Release(This) (This)->lpVtbl->Release(This)
782/*** IBDA_IPV4Filter methods ***/
783#define IBDA_IPV4Filter_GetMulticastListSize(This,pulcbAddresses) (This)->lpVtbl->GetMulticastListSize(This,pulcbAddresses)
784#define IBDA_IPV4Filter_PutMulticastList(This,ulcbAddresses,pAddressList) (This)->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList)
785#define IBDA_IPV4Filter_GetMulticastList(This,pulcbAddresses,pAddressList) (This)->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList)
786#define IBDA_IPV4Filter_PutMulticastMode(This,ulModeMask) (This)->lpVtbl->PutMulticastMode(This,ulModeMask)
787#define IBDA_IPV4Filter_GetMulticastMode(This,pulModeMask) (This)->lpVtbl->GetMulticastMode(This,pulModeMask)
788#else
789/*** IUnknown methods ***/
790static FORCEINLINE HRESULT IBDA_IPV4Filter_QueryInterface(IBDA_IPV4Filter* This,REFIID riid,void **ppvObject) {
791    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
792}
793static FORCEINLINE ULONG IBDA_IPV4Filter_AddRef(IBDA_IPV4Filter* This) {
794    return This->lpVtbl->AddRef(This);
795}
796static FORCEINLINE ULONG IBDA_IPV4Filter_Release(IBDA_IPV4Filter* This) {
797    return This->lpVtbl->Release(This);
798}
799/*** IBDA_IPV4Filter methods ***/
800static FORCEINLINE HRESULT IBDA_IPV4Filter_GetMulticastListSize(IBDA_IPV4Filter* This,ULONG *pulcbAddresses) {
801    return This->lpVtbl->GetMulticastListSize(This,pulcbAddresses);
802}
803static FORCEINLINE HRESULT IBDA_IPV4Filter_PutMulticastList(IBDA_IPV4Filter* This,ULONG ulcbAddresses,BYTE pAddressList[]) {
804    return This->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList);
805}
806static FORCEINLINE HRESULT IBDA_IPV4Filter_GetMulticastList(IBDA_IPV4Filter* This,ULONG *pulcbAddresses,BYTE pAddressList[]) {
807    return This->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList);
808}
809static FORCEINLINE HRESULT IBDA_IPV4Filter_PutMulticastMode(IBDA_IPV4Filter* This,ULONG ulModeMask) {
810    return This->lpVtbl->PutMulticastMode(This,ulModeMask);
811}
812static FORCEINLINE HRESULT IBDA_IPV4Filter_GetMulticastMode(IBDA_IPV4Filter* This,ULONG *pulModeMask) {
813    return This->lpVtbl->GetMulticastMode(This,pulModeMask);
814}
815#endif
816#endif
817
818#endif
819
820HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_GetMulticastListSize_Proxy(
821    IBDA_IPV4Filter* This,
822    ULONG *pulcbAddresses);
823void __RPC_STUB IBDA_IPV4Filter_GetMulticastListSize_Stub(
824    IRpcStubBuffer* This,
825    IRpcChannelBuffer* pRpcChannelBuffer,
826    PRPC_MESSAGE pRpcMessage,
827    DWORD* pdwStubPhase);
828HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_PutMulticastList_Proxy(
829    IBDA_IPV4Filter* This,
830    ULONG ulcbAddresses,
831    BYTE pAddressList[]);
832void __RPC_STUB IBDA_IPV4Filter_PutMulticastList_Stub(
833    IRpcStubBuffer* This,
834    IRpcChannelBuffer* pRpcChannelBuffer,
835    PRPC_MESSAGE pRpcMessage,
836    DWORD* pdwStubPhase);
837HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_GetMulticastList_Proxy(
838    IBDA_IPV4Filter* This,
839    ULONG *pulcbAddresses,
840    BYTE pAddressList[]);
841void __RPC_STUB IBDA_IPV4Filter_GetMulticastList_Stub(
842    IRpcStubBuffer* This,
843    IRpcChannelBuffer* pRpcChannelBuffer,
844    PRPC_MESSAGE pRpcMessage,
845    DWORD* pdwStubPhase);
846HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_PutMulticastMode_Proxy(
847    IBDA_IPV4Filter* This,
848    ULONG ulModeMask);
849void __RPC_STUB IBDA_IPV4Filter_PutMulticastMode_Stub(
850    IRpcStubBuffer* This,
851    IRpcChannelBuffer* pRpcChannelBuffer,
852    PRPC_MESSAGE pRpcMessage,
853    DWORD* pdwStubPhase);
854HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_GetMulticastMode_Proxy(
855    IBDA_IPV4Filter* This,
856    ULONG *pulModeMask);
857void __RPC_STUB IBDA_IPV4Filter_GetMulticastMode_Stub(
858    IRpcStubBuffer* This,
859    IRpcChannelBuffer* pRpcChannelBuffer,
860    PRPC_MESSAGE pRpcMessage,
861    DWORD* pdwStubPhase);
862
863#endif  /* __IBDA_IPV4Filter_INTERFACE_DEFINED__ */
864
865/*****************************************************************************
866 * IBDA_IPV6Filter interface
867 */
868#ifndef __IBDA_IPV6Filter_INTERFACE_DEFINED__
869#define __IBDA_IPV6Filter_INTERFACE_DEFINED__
870
871DEFINE_GUID(IID_IBDA_IPV6Filter, 0xe1785a74, 0x2a23, 0x4fb3, 0x92,0x45, 0xa8,0xf8,0x80,0x17,0xef,0x33);
872#if defined(__cplusplus) && !defined(CINTERFACE)
873MIDL_INTERFACE("e1785a74-2a23-4fb3-9245-a8f88017ef33")
874IBDA_IPV6Filter : public IUnknown
875{
876    virtual HRESULT STDMETHODCALLTYPE GetMulticastListSize(
877        ULONG *pulcbAddresses) = 0;
878
879    virtual HRESULT STDMETHODCALLTYPE PutMulticastList(
880        ULONG ulcbAddresses,
881        BYTE pAddressList[]) = 0;
882
883    virtual HRESULT STDMETHODCALLTYPE GetMulticastList(
884        ULONG *pulcbAddresses,
885        BYTE pAddressList[]) = 0;
886
887    virtual HRESULT STDMETHODCALLTYPE PutMulticastMode(
888        ULONG ulModeMask) = 0;
889
890    virtual HRESULT STDMETHODCALLTYPE GetMulticastMode(
891        ULONG *pulModeMask) = 0;
892
893};
894#ifdef __CRT_UUID_DECL
895__CRT_UUID_DECL(IBDA_IPV6Filter, 0xe1785a74, 0x2a23, 0x4fb3, 0x92,0x45, 0xa8,0xf8,0x80,0x17,0xef,0x33)
896#endif
897#else
898typedef struct IBDA_IPV6FilterVtbl {
899    BEGIN_INTERFACE
900
901    /*** IUnknown methods ***/
902    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
903        IBDA_IPV6Filter* This,
904        REFIID riid,
905        void **ppvObject);
906
907    ULONG (STDMETHODCALLTYPE *AddRef)(
908        IBDA_IPV6Filter* This);
909
910    ULONG (STDMETHODCALLTYPE *Release)(
911        IBDA_IPV6Filter* This);
912
913    /*** IBDA_IPV6Filter methods ***/
914    HRESULT (STDMETHODCALLTYPE *GetMulticastListSize)(
915        IBDA_IPV6Filter* This,
916        ULONG *pulcbAddresses);
917
918    HRESULT (STDMETHODCALLTYPE *PutMulticastList)(
919        IBDA_IPV6Filter* This,
920        ULONG ulcbAddresses,
921        BYTE pAddressList[]);
922
923    HRESULT (STDMETHODCALLTYPE *GetMulticastList)(
924        IBDA_IPV6Filter* This,
925        ULONG *pulcbAddresses,
926        BYTE pAddressList[]);
927
928    HRESULT (STDMETHODCALLTYPE *PutMulticastMode)(
929        IBDA_IPV6Filter* This,
930        ULONG ulModeMask);
931
932    HRESULT (STDMETHODCALLTYPE *GetMulticastMode)(
933        IBDA_IPV6Filter* This,
934        ULONG *pulModeMask);
935
936    END_INTERFACE
937} IBDA_IPV6FilterVtbl;
938interface IBDA_IPV6Filter {
939    CONST_VTBL IBDA_IPV6FilterVtbl* lpVtbl;
940};
941
942#ifdef COBJMACROS
943#ifndef WIDL_C_INLINE_WRAPPERS
944/*** IUnknown methods ***/
945#define IBDA_IPV6Filter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
946#define IBDA_IPV6Filter_AddRef(This) (This)->lpVtbl->AddRef(This)
947#define IBDA_IPV6Filter_Release(This) (This)->lpVtbl->Release(This)
948/*** IBDA_IPV6Filter methods ***/
949#define IBDA_IPV6Filter_GetMulticastListSize(This,pulcbAddresses) (This)->lpVtbl->GetMulticastListSize(This,pulcbAddresses)
950#define IBDA_IPV6Filter_PutMulticastList(This,ulcbAddresses,pAddressList) (This)->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList)
951#define IBDA_IPV6Filter_GetMulticastList(This,pulcbAddresses,pAddressList) (This)->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList)
952#define IBDA_IPV6Filter_PutMulticastMode(This,ulModeMask) (This)->lpVtbl->PutMulticastMode(This,ulModeMask)
953#define IBDA_IPV6Filter_GetMulticastMode(This,pulModeMask) (This)->lpVtbl->GetMulticastMode(This,pulModeMask)
954#else
955/*** IUnknown methods ***/
956static FORCEINLINE HRESULT IBDA_IPV6Filter_QueryInterface(IBDA_IPV6Filter* This,REFIID riid,void **ppvObject) {
957    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
958}
959static FORCEINLINE ULONG IBDA_IPV6Filter_AddRef(IBDA_IPV6Filter* This) {
960    return This->lpVtbl->AddRef(This);
961}
962static FORCEINLINE ULONG IBDA_IPV6Filter_Release(IBDA_IPV6Filter* This) {
963    return This->lpVtbl->Release(This);
964}
965/*** IBDA_IPV6Filter methods ***/
966static FORCEINLINE HRESULT IBDA_IPV6Filter_GetMulticastListSize(IBDA_IPV6Filter* This,ULONG *pulcbAddresses) {
967    return This->lpVtbl->GetMulticastListSize(This,pulcbAddresses);
968}
969static FORCEINLINE HRESULT IBDA_IPV6Filter_PutMulticastList(IBDA_IPV6Filter* This,ULONG ulcbAddresses,BYTE pAddressList[]) {
970    return This->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList);
971}
972static FORCEINLINE HRESULT IBDA_IPV6Filter_GetMulticastList(IBDA_IPV6Filter* This,ULONG *pulcbAddresses,BYTE pAddressList[]) {
973    return This->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList);
974}
975static FORCEINLINE HRESULT IBDA_IPV6Filter_PutMulticastMode(IBDA_IPV6Filter* This,ULONG ulModeMask) {
976    return This->lpVtbl->PutMulticastMode(This,ulModeMask);
977}
978static FORCEINLINE HRESULT IBDA_IPV6Filter_GetMulticastMode(IBDA_IPV6Filter* This,ULONG *pulModeMask) {
979    return This->lpVtbl->GetMulticastMode(This,pulModeMask);
980}
981#endif
982#endif
983
984#endif
985
986HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_GetMulticastListSize_Proxy(
987    IBDA_IPV6Filter* This,
988    ULONG *pulcbAddresses);
989void __RPC_STUB IBDA_IPV6Filter_GetMulticastListSize_Stub(
990    IRpcStubBuffer* This,
991    IRpcChannelBuffer* pRpcChannelBuffer,
992    PRPC_MESSAGE pRpcMessage,
993    DWORD* pdwStubPhase);
994HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_PutMulticastList_Proxy(
995    IBDA_IPV6Filter* This,
996    ULONG ulcbAddresses,
997    BYTE pAddressList[]);
998void __RPC_STUB IBDA_IPV6Filter_PutMulticastList_Stub(
999    IRpcStubBuffer* This,
1000    IRpcChannelBuffer* pRpcChannelBuffer,
1001    PRPC_MESSAGE pRpcMessage,
1002    DWORD* pdwStubPhase);
1003HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_GetMulticastList_Proxy(
1004    IBDA_IPV6Filter* This,
1005    ULONG *pulcbAddresses,
1006    BYTE pAddressList[]);
1007void __RPC_STUB IBDA_IPV6Filter_GetMulticastList_Stub(
1008    IRpcStubBuffer* This,
1009    IRpcChannelBuffer* pRpcChannelBuffer,
1010    PRPC_MESSAGE pRpcMessage,
1011    DWORD* pdwStubPhase);
1012HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_PutMulticastMode_Proxy(
1013    IBDA_IPV6Filter* This,
1014    ULONG ulModeMask);
1015void __RPC_STUB IBDA_IPV6Filter_PutMulticastMode_Stub(
1016    IRpcStubBuffer* This,
1017    IRpcChannelBuffer* pRpcChannelBuffer,
1018    PRPC_MESSAGE pRpcMessage,
1019    DWORD* pdwStubPhase);
1020HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_GetMulticastMode_Proxy(
1021    IBDA_IPV6Filter* This,
1022    ULONG *pulModeMask);
1023void __RPC_STUB IBDA_IPV6Filter_GetMulticastMode_Stub(
1024    IRpcStubBuffer* This,
1025    IRpcChannelBuffer* pRpcChannelBuffer,
1026    PRPC_MESSAGE pRpcMessage,
1027    DWORD* pdwStubPhase);
1028
1029#endif  /* __IBDA_IPV6Filter_INTERFACE_DEFINED__ */
1030
1031/*****************************************************************************
1032 * IBDA_DeviceControl interface
1033 */
1034#ifndef __IBDA_DeviceControl_INTERFACE_DEFINED__
1035#define __IBDA_DeviceControl_INTERFACE_DEFINED__
1036
1037DEFINE_GUID(IID_IBDA_DeviceControl, 0xfd0a5af3, 0xb41d, 0x11d2, 0x9c,0x95, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
1038#if defined(__cplusplus) && !defined(CINTERFACE)
1039MIDL_INTERFACE("fd0a5af3-b41d-11d2-9c95-00c04f7971e0")
1040IBDA_DeviceControl : public IUnknown
1041{
1042    virtual HRESULT STDMETHODCALLTYPE StartChanges(
1043        ) = 0;
1044
1045    virtual HRESULT STDMETHODCALLTYPE CheckChanges(
1046        ) = 0;
1047
1048    virtual HRESULT STDMETHODCALLTYPE CommitChanges(
1049        ) = 0;
1050
1051    virtual HRESULT STDMETHODCALLTYPE GetChangeState(
1052        ULONG *pState) = 0;
1053
1054};
1055#ifdef __CRT_UUID_DECL
1056__CRT_UUID_DECL(IBDA_DeviceControl, 0xfd0a5af3, 0xb41d, 0x11d2, 0x9c,0x95, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
1057#endif
1058#else
1059typedef struct IBDA_DeviceControlVtbl {
1060    BEGIN_INTERFACE
1061
1062    /*** IUnknown methods ***/
1063    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1064        IBDA_DeviceControl* This,
1065        REFIID riid,
1066        void **ppvObject);
1067
1068    ULONG (STDMETHODCALLTYPE *AddRef)(
1069        IBDA_DeviceControl* This);
1070
1071    ULONG (STDMETHODCALLTYPE *Release)(
1072        IBDA_DeviceControl* This);
1073
1074    /*** IBDA_DeviceControl methods ***/
1075    HRESULT (STDMETHODCALLTYPE *StartChanges)(
1076        IBDA_DeviceControl* This);
1077
1078    HRESULT (STDMETHODCALLTYPE *CheckChanges)(
1079        IBDA_DeviceControl* This);
1080
1081    HRESULT (STDMETHODCALLTYPE *CommitChanges)(
1082        IBDA_DeviceControl* This);
1083
1084    HRESULT (STDMETHODCALLTYPE *GetChangeState)(
1085        IBDA_DeviceControl* This,
1086        ULONG *pState);
1087
1088    END_INTERFACE
1089} IBDA_DeviceControlVtbl;
1090interface IBDA_DeviceControl {
1091    CONST_VTBL IBDA_DeviceControlVtbl* lpVtbl;
1092};
1093
1094#ifdef COBJMACROS
1095#ifndef WIDL_C_INLINE_WRAPPERS
1096/*** IUnknown methods ***/
1097#define IBDA_DeviceControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1098#define IBDA_DeviceControl_AddRef(This) (This)->lpVtbl->AddRef(This)
1099#define IBDA_DeviceControl_Release(This) (This)->lpVtbl->Release(This)
1100/*** IBDA_DeviceControl methods ***/
1101#define IBDA_DeviceControl_StartChanges(This) (This)->lpVtbl->StartChanges(This)
1102#define IBDA_DeviceControl_CheckChanges(This) (This)->lpVtbl->CheckChanges(This)
1103#define IBDA_DeviceControl_CommitChanges(This) (This)->lpVtbl->CommitChanges(This)
1104#define IBDA_DeviceControl_GetChangeState(This,pState) (This)->lpVtbl->GetChangeState(This,pState)
1105#else
1106/*** IUnknown methods ***/
1107static FORCEINLINE HRESULT IBDA_DeviceControl_QueryInterface(IBDA_DeviceControl* This,REFIID riid,void **ppvObject) {
1108    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1109}
1110static FORCEINLINE ULONG IBDA_DeviceControl_AddRef(IBDA_DeviceControl* This) {
1111    return This->lpVtbl->AddRef(This);
1112}
1113static FORCEINLINE ULONG IBDA_DeviceControl_Release(IBDA_DeviceControl* This) {
1114    return This->lpVtbl->Release(This);
1115}
1116/*** IBDA_DeviceControl methods ***/
1117static FORCEINLINE HRESULT IBDA_DeviceControl_StartChanges(IBDA_DeviceControl* This) {
1118    return This->lpVtbl->StartChanges(This);
1119}
1120static FORCEINLINE HRESULT IBDA_DeviceControl_CheckChanges(IBDA_DeviceControl* This) {
1121    return This->lpVtbl->CheckChanges(This);
1122}
1123static FORCEINLINE HRESULT IBDA_DeviceControl_CommitChanges(IBDA_DeviceControl* This) {
1124    return This->lpVtbl->CommitChanges(This);
1125}
1126static FORCEINLINE HRESULT IBDA_DeviceControl_GetChangeState(IBDA_DeviceControl* This,ULONG *pState) {
1127    return This->lpVtbl->GetChangeState(This,pState);
1128}
1129#endif
1130#endif
1131
1132#endif
1133
1134HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_StartChanges_Proxy(
1135    IBDA_DeviceControl* This);
1136void __RPC_STUB IBDA_DeviceControl_StartChanges_Stub(
1137    IRpcStubBuffer* This,
1138    IRpcChannelBuffer* pRpcChannelBuffer,
1139    PRPC_MESSAGE pRpcMessage,
1140    DWORD* pdwStubPhase);
1141HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_CheckChanges_Proxy(
1142    IBDA_DeviceControl* This);
1143void __RPC_STUB IBDA_DeviceControl_CheckChanges_Stub(
1144    IRpcStubBuffer* This,
1145    IRpcChannelBuffer* pRpcChannelBuffer,
1146    PRPC_MESSAGE pRpcMessage,
1147    DWORD* pdwStubPhase);
1148HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_CommitChanges_Proxy(
1149    IBDA_DeviceControl* This);
1150void __RPC_STUB IBDA_DeviceControl_CommitChanges_Stub(
1151    IRpcStubBuffer* This,
1152    IRpcChannelBuffer* pRpcChannelBuffer,
1153    PRPC_MESSAGE pRpcMessage,
1154    DWORD* pdwStubPhase);
1155HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_GetChangeState_Proxy(
1156    IBDA_DeviceControl* This,
1157    ULONG *pState);
1158void __RPC_STUB IBDA_DeviceControl_GetChangeState_Stub(
1159    IRpcStubBuffer* This,
1160    IRpcChannelBuffer* pRpcChannelBuffer,
1161    PRPC_MESSAGE pRpcMessage,
1162    DWORD* pdwStubPhase);
1163
1164#endif  /* __IBDA_DeviceControl_INTERFACE_DEFINED__ */
1165
1166/*****************************************************************************
1167 * IBDA_PinControl interface
1168 */
1169#ifndef __IBDA_PinControl_INTERFACE_DEFINED__
1170#define __IBDA_PinControl_INTERFACE_DEFINED__
1171
1172DEFINE_GUID(IID_IBDA_PinControl, 0x0ded49d5, 0xa8b7, 0x4d5d, 0x97,0xa1, 0x12,0xb0,0xc1,0x95,0x87,0x4d);
1173#if defined(__cplusplus) && !defined(CINTERFACE)
1174MIDL_INTERFACE("0ded49d5-a8b7-4d5d-97a1-12b0c195874d")
1175IBDA_PinControl : public IUnknown
1176{
1177    virtual HRESULT STDMETHODCALLTYPE GetPinID(
1178        ULONG *pulPinID) = 0;
1179
1180    virtual HRESULT STDMETHODCALLTYPE GetPinType(
1181        ULONG *pulPinType) = 0;
1182
1183    virtual HRESULT STDMETHODCALLTYPE RegistrationContext(
1184        ULONG *pulRegistrationCtx) = 0;
1185
1186};
1187#ifdef __CRT_UUID_DECL
1188__CRT_UUID_DECL(IBDA_PinControl, 0x0ded49d5, 0xa8b7, 0x4d5d, 0x97,0xa1, 0x12,0xb0,0xc1,0x95,0x87,0x4d)
1189#endif
1190#else
1191typedef struct IBDA_PinControlVtbl {
1192    BEGIN_INTERFACE
1193
1194    /*** IUnknown methods ***/
1195    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1196        IBDA_PinControl* This,
1197        REFIID riid,
1198        void **ppvObject);
1199
1200    ULONG (STDMETHODCALLTYPE *AddRef)(
1201        IBDA_PinControl* This);
1202
1203    ULONG (STDMETHODCALLTYPE *Release)(
1204        IBDA_PinControl* This);
1205
1206    /*** IBDA_PinControl methods ***/
1207    HRESULT (STDMETHODCALLTYPE *GetPinID)(
1208        IBDA_PinControl* This,
1209        ULONG *pulPinID);
1210
1211    HRESULT (STDMETHODCALLTYPE *GetPinType)(
1212        IBDA_PinControl* This,
1213        ULONG *pulPinType);
1214
1215    HRESULT (STDMETHODCALLTYPE *RegistrationContext)(
1216        IBDA_PinControl* This,
1217        ULONG *pulRegistrationCtx);
1218
1219    END_INTERFACE
1220} IBDA_PinControlVtbl;
1221interface IBDA_PinControl {
1222    CONST_VTBL IBDA_PinControlVtbl* lpVtbl;
1223};
1224
1225#ifdef COBJMACROS
1226#ifndef WIDL_C_INLINE_WRAPPERS
1227/*** IUnknown methods ***/
1228#define IBDA_PinControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1229#define IBDA_PinControl_AddRef(This) (This)->lpVtbl->AddRef(This)
1230#define IBDA_PinControl_Release(This) (This)->lpVtbl->Release(This)
1231/*** IBDA_PinControl methods ***/
1232#define IBDA_PinControl_GetPinID(This,pulPinID) (This)->lpVtbl->GetPinID(This,pulPinID)
1233#define IBDA_PinControl_GetPinType(This,pulPinType) (This)->lpVtbl->GetPinType(This,pulPinType)
1234#define IBDA_PinControl_RegistrationContext(This,pulRegistrationCtx) (This)->lpVtbl->RegistrationContext(This,pulRegistrationCtx)
1235#else
1236/*** IUnknown methods ***/
1237static FORCEINLINE HRESULT IBDA_PinControl_QueryInterface(IBDA_PinControl* This,REFIID riid,void **ppvObject) {
1238    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1239}
1240static FORCEINLINE ULONG IBDA_PinControl_AddRef(IBDA_PinControl* This) {
1241    return This->lpVtbl->AddRef(This);
1242}
1243static FORCEINLINE ULONG IBDA_PinControl_Release(IBDA_PinControl* This) {
1244    return This->lpVtbl->Release(This);
1245}
1246/*** IBDA_PinControl methods ***/
1247static FORCEINLINE HRESULT IBDA_PinControl_GetPinID(IBDA_PinControl* This,ULONG *pulPinID) {
1248    return This->lpVtbl->GetPinID(This,pulPinID);
1249}
1250static FORCEINLINE HRESULT IBDA_PinControl_GetPinType(IBDA_PinControl* This,ULONG *pulPinType) {
1251    return This->lpVtbl->GetPinType(This,pulPinType);
1252}
1253static FORCEINLINE HRESULT IBDA_PinControl_RegistrationContext(IBDA_PinControl* This,ULONG *pulRegistrationCtx) {
1254    return This->lpVtbl->RegistrationContext(This,pulRegistrationCtx);
1255}
1256#endif
1257#endif
1258
1259#endif
1260
1261HRESULT STDMETHODCALLTYPE IBDA_PinControl_GetPinID_Proxy(
1262    IBDA_PinControl* This,
1263    ULONG *pulPinID);
1264void __RPC_STUB IBDA_PinControl_GetPinID_Stub(
1265    IRpcStubBuffer* This,
1266    IRpcChannelBuffer* pRpcChannelBuffer,
1267    PRPC_MESSAGE pRpcMessage,
1268    DWORD* pdwStubPhase);
1269HRESULT STDMETHODCALLTYPE IBDA_PinControl_GetPinType_Proxy(
1270    IBDA_PinControl* This,
1271    ULONG *pulPinType);
1272void __RPC_STUB IBDA_PinControl_GetPinType_Stub(
1273    IRpcStubBuffer* This,
1274    IRpcChannelBuffer* pRpcChannelBuffer,
1275    PRPC_MESSAGE pRpcMessage,
1276    DWORD* pdwStubPhase);
1277HRESULT STDMETHODCALLTYPE IBDA_PinControl_RegistrationContext_Proxy(
1278    IBDA_PinControl* This,
1279    ULONG *pulRegistrationCtx);
1280void __RPC_STUB IBDA_PinControl_RegistrationContext_Stub(
1281    IRpcStubBuffer* This,
1282    IRpcChannelBuffer* pRpcChannelBuffer,
1283    PRPC_MESSAGE pRpcMessage,
1284    DWORD* pdwStubPhase);
1285
1286#endif  /* __IBDA_PinControl_INTERFACE_DEFINED__ */
1287
1288/*****************************************************************************
1289 * IBDA_SignalProperties interface
1290 */
1291#ifndef __IBDA_SignalProperties_INTERFACE_DEFINED__
1292#define __IBDA_SignalProperties_INTERFACE_DEFINED__
1293
1294DEFINE_GUID(IID_IBDA_SignalProperties, 0xd2f1644b, 0xb409, 0x11d2, 0xbc,0x69, 0x00,0xa0,0xc9,0xee,0x9e,0x16);
1295#if defined(__cplusplus) && !defined(CINTERFACE)
1296MIDL_INTERFACE("d2f1644b-b409-11d2-bc69-00a0c9ee9e16")
1297IBDA_SignalProperties : public IUnknown
1298{
1299    virtual HRESULT STDMETHODCALLTYPE PutNetworkType(
1300        REFGUID guidNetworkType) = 0;
1301
1302    virtual HRESULT STDMETHODCALLTYPE GetNetworkType(
1303        GUID *pguidNetworkType) = 0;
1304
1305    virtual HRESULT STDMETHODCALLTYPE PutSignalSource(
1306        ULONG ulSignalSource) = 0;
1307
1308    virtual HRESULT STDMETHODCALLTYPE GetSignalSource(
1309        ULONG *pulSignalSource) = 0;
1310
1311    virtual HRESULT STDMETHODCALLTYPE PutTuningSpace(
1312        REFGUID guidTuningSpace) = 0;
1313
1314    virtual HRESULT STDMETHODCALLTYPE GetTuningSpace(
1315        GUID *pguidTuingSpace) = 0;
1316
1317};
1318#ifdef __CRT_UUID_DECL
1319__CRT_UUID_DECL(IBDA_SignalProperties, 0xd2f1644b, 0xb409, 0x11d2, 0xbc,0x69, 0x00,0xa0,0xc9,0xee,0x9e,0x16)
1320#endif
1321#else
1322typedef struct IBDA_SignalPropertiesVtbl {
1323    BEGIN_INTERFACE
1324
1325    /*** IUnknown methods ***/
1326    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1327        IBDA_SignalProperties* This,
1328        REFIID riid,
1329        void **ppvObject);
1330
1331    ULONG (STDMETHODCALLTYPE *AddRef)(
1332        IBDA_SignalProperties* This);
1333
1334    ULONG (STDMETHODCALLTYPE *Release)(
1335        IBDA_SignalProperties* This);
1336
1337    /*** IBDA_SignalProperties methods ***/
1338    HRESULT (STDMETHODCALLTYPE *PutNetworkType)(
1339        IBDA_SignalProperties* This,
1340        REFGUID guidNetworkType);
1341
1342    HRESULT (STDMETHODCALLTYPE *GetNetworkType)(
1343        IBDA_SignalProperties* This,
1344        GUID *pguidNetworkType);
1345
1346    HRESULT (STDMETHODCALLTYPE *PutSignalSource)(
1347        IBDA_SignalProperties* This,
1348        ULONG ulSignalSource);
1349
1350    HRESULT (STDMETHODCALLTYPE *GetSignalSource)(
1351        IBDA_SignalProperties* This,
1352        ULONG *pulSignalSource);
1353
1354    HRESULT (STDMETHODCALLTYPE *PutTuningSpace)(
1355        IBDA_SignalProperties* This,
1356        REFGUID guidTuningSpace);
1357
1358    HRESULT (STDMETHODCALLTYPE *GetTuningSpace)(
1359        IBDA_SignalProperties* This,
1360        GUID *pguidTuingSpace);
1361
1362    END_INTERFACE
1363} IBDA_SignalPropertiesVtbl;
1364interface IBDA_SignalProperties {
1365    CONST_VTBL IBDA_SignalPropertiesVtbl* lpVtbl;
1366};
1367
1368#ifdef COBJMACROS
1369#ifndef WIDL_C_INLINE_WRAPPERS
1370/*** IUnknown methods ***/
1371#define IBDA_SignalProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1372#define IBDA_SignalProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
1373#define IBDA_SignalProperties_Release(This) (This)->lpVtbl->Release(This)
1374/*** IBDA_SignalProperties methods ***/
1375#define IBDA_SignalProperties_PutNetworkType(This,guidNetworkType) (This)->lpVtbl->PutNetworkType(This,guidNetworkType)
1376#define IBDA_SignalProperties_GetNetworkType(This,pguidNetworkType) (This)->lpVtbl->GetNetworkType(This,pguidNetworkType)
1377#define IBDA_SignalProperties_PutSignalSource(This,ulSignalSource) (This)->lpVtbl->PutSignalSource(This,ulSignalSource)
1378#define IBDA_SignalProperties_GetSignalSource(This,pulSignalSource) (This)->lpVtbl->GetSignalSource(This,pulSignalSource)
1379#define IBDA_SignalProperties_PutTuningSpace(This,guidTuningSpace) (This)->lpVtbl->PutTuningSpace(This,guidTuningSpace)
1380#define IBDA_SignalProperties_GetTuningSpace(This,pguidTuingSpace) (This)->lpVtbl->GetTuningSpace(This,pguidTuingSpace)
1381#else
1382/*** IUnknown methods ***/
1383static FORCEINLINE HRESULT IBDA_SignalProperties_QueryInterface(IBDA_SignalProperties* This,REFIID riid,void **ppvObject) {
1384    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1385}
1386static FORCEINLINE ULONG IBDA_SignalProperties_AddRef(IBDA_SignalProperties* This) {
1387    return This->lpVtbl->AddRef(This);
1388}
1389static FORCEINLINE ULONG IBDA_SignalProperties_Release(IBDA_SignalProperties* This) {
1390    return This->lpVtbl->Release(This);
1391}
1392/*** IBDA_SignalProperties methods ***/
1393static FORCEINLINE HRESULT IBDA_SignalProperties_PutNetworkType(IBDA_SignalProperties* This,REFGUID guidNetworkType) {
1394    return This->lpVtbl->PutNetworkType(This,guidNetworkType);
1395}
1396static FORCEINLINE HRESULT IBDA_SignalProperties_GetNetworkType(IBDA_SignalProperties* This,GUID *pguidNetworkType) {
1397    return This->lpVtbl->GetNetworkType(This,pguidNetworkType);
1398}
1399static FORCEINLINE HRESULT IBDA_SignalProperties_PutSignalSource(IBDA_SignalProperties* This,ULONG ulSignalSource) {
1400    return This->lpVtbl->PutSignalSource(This,ulSignalSource);
1401}
1402static FORCEINLINE HRESULT IBDA_SignalProperties_GetSignalSource(IBDA_SignalProperties* This,ULONG *pulSignalSource) {
1403    return This->lpVtbl->GetSignalSource(This,pulSignalSource);
1404}
1405static FORCEINLINE HRESULT IBDA_SignalProperties_PutTuningSpace(IBDA_SignalProperties* This,REFGUID guidTuningSpace) {
1406    return This->lpVtbl->PutTuningSpace(This,guidTuningSpace);
1407}
1408static FORCEINLINE HRESULT IBDA_SignalProperties_GetTuningSpace(IBDA_SignalProperties* This,GUID *pguidTuingSpace) {
1409    return This->lpVtbl->GetTuningSpace(This,pguidTuingSpace);
1410}
1411#endif
1412#endif
1413
1414#endif
1415
1416HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_PutNetworkType_Proxy(
1417    IBDA_SignalProperties* This,
1418    REFGUID guidNetworkType);
1419void __RPC_STUB IBDA_SignalProperties_PutNetworkType_Stub(
1420    IRpcStubBuffer* This,
1421    IRpcChannelBuffer* pRpcChannelBuffer,
1422    PRPC_MESSAGE pRpcMessage,
1423    DWORD* pdwStubPhase);
1424HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_GetNetworkType_Proxy(
1425    IBDA_SignalProperties* This,
1426    GUID *pguidNetworkType);
1427void __RPC_STUB IBDA_SignalProperties_GetNetworkType_Stub(
1428    IRpcStubBuffer* This,
1429    IRpcChannelBuffer* pRpcChannelBuffer,
1430    PRPC_MESSAGE pRpcMessage,
1431    DWORD* pdwStubPhase);
1432HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_PutSignalSource_Proxy(
1433    IBDA_SignalProperties* This,
1434    ULONG ulSignalSource);
1435void __RPC_STUB IBDA_SignalProperties_PutSignalSource_Stub(
1436    IRpcStubBuffer* This,
1437    IRpcChannelBuffer* pRpcChannelBuffer,
1438    PRPC_MESSAGE pRpcMessage,
1439    DWORD* pdwStubPhase);
1440HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_GetSignalSource_Proxy(
1441    IBDA_SignalProperties* This,
1442    ULONG *pulSignalSource);
1443void __RPC_STUB IBDA_SignalProperties_GetSignalSource_Stub(
1444    IRpcStubBuffer* This,
1445    IRpcChannelBuffer* pRpcChannelBuffer,
1446    PRPC_MESSAGE pRpcMessage,
1447    DWORD* pdwStubPhase);
1448HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_PutTuningSpace_Proxy(
1449    IBDA_SignalProperties* This,
1450    REFGUID guidTuningSpace);
1451void __RPC_STUB IBDA_SignalProperties_PutTuningSpace_Stub(
1452    IRpcStubBuffer* This,
1453    IRpcChannelBuffer* pRpcChannelBuffer,
1454    PRPC_MESSAGE pRpcMessage,
1455    DWORD* pdwStubPhase);
1456HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_GetTuningSpace_Proxy(
1457    IBDA_SignalProperties* This,
1458    GUID *pguidTuingSpace);
1459void __RPC_STUB IBDA_SignalProperties_GetTuningSpace_Stub(
1460    IRpcStubBuffer* This,
1461    IRpcChannelBuffer* pRpcChannelBuffer,
1462    PRPC_MESSAGE pRpcMessage,
1463    DWORD* pdwStubPhase);
1464
1465#endif  /* __IBDA_SignalProperties_INTERFACE_DEFINED__ */
1466
1467/*****************************************************************************
1468 * IBDA_SignalStatistics interface
1469 */
1470#ifndef __IBDA_SignalStatistics_INTERFACE_DEFINED__
1471#define __IBDA_SignalStatistics_INTERFACE_DEFINED__
1472
1473DEFINE_GUID(IID_IBDA_SignalStatistics, 0x1347d106, 0xcf3a, 0x428a, 0xa5,0xcb, 0xac,0x0d,0x9a,0x2a,0x43,0x38);
1474#if defined(__cplusplus) && !defined(CINTERFACE)
1475MIDL_INTERFACE("1347d106-cf3a-428a-a5cb-ac0d9a2a4338")
1476IBDA_SignalStatistics : public IUnknown
1477{
1478    virtual HRESULT STDMETHODCALLTYPE put_SignalStrength(
1479        LONG lDbStrength) = 0;
1480
1481    virtual HRESULT STDMETHODCALLTYPE get_SignalStrength(
1482        LONG *plDbStrength) = 0;
1483
1484    virtual HRESULT STDMETHODCALLTYPE put_SignalQuality(
1485        LONG lPercentQuality) = 0;
1486
1487    virtual HRESULT STDMETHODCALLTYPE get_SignalQuality(
1488        LONG *plPercentQuality) = 0;
1489
1490    virtual HRESULT STDMETHODCALLTYPE put_SignalPresent(
1491        BOOLEAN fPresent) = 0;
1492
1493    virtual HRESULT STDMETHODCALLTYPE get_SignalPresent(
1494        BOOLEAN *pfPresent) = 0;
1495
1496    virtual HRESULT STDMETHODCALLTYPE put_SignalLocked(
1497        BOOLEAN fLocked) = 0;
1498
1499    virtual HRESULT STDMETHODCALLTYPE get_SignalLocked(
1500        BOOLEAN *pfLocked) = 0;
1501
1502    virtual HRESULT STDMETHODCALLTYPE put_SampleTime(
1503        LONG lmsSampleTime) = 0;
1504
1505    virtual HRESULT STDMETHODCALLTYPE get_SampleTime(
1506        LONG *plmsSampleTime) = 0;
1507
1508};
1509#ifdef __CRT_UUID_DECL
1510__CRT_UUID_DECL(IBDA_SignalStatistics, 0x1347d106, 0xcf3a, 0x428a, 0xa5,0xcb, 0xac,0x0d,0x9a,0x2a,0x43,0x38)
1511#endif
1512#else
1513typedef struct IBDA_SignalStatisticsVtbl {
1514    BEGIN_INTERFACE
1515
1516    /*** IUnknown methods ***/
1517    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1518        IBDA_SignalStatistics* This,
1519        REFIID riid,
1520        void **ppvObject);
1521
1522    ULONG (STDMETHODCALLTYPE *AddRef)(
1523        IBDA_SignalStatistics* This);
1524
1525    ULONG (STDMETHODCALLTYPE *Release)(
1526        IBDA_SignalStatistics* This);
1527
1528    /*** IBDA_SignalStatistics methods ***/
1529    HRESULT (STDMETHODCALLTYPE *put_SignalStrength)(
1530        IBDA_SignalStatistics* This,
1531        LONG lDbStrength);
1532
1533    HRESULT (STDMETHODCALLTYPE *get_SignalStrength)(
1534        IBDA_SignalStatistics* This,
1535        LONG *plDbStrength);
1536
1537    HRESULT (STDMETHODCALLTYPE *put_SignalQuality)(
1538        IBDA_SignalStatistics* This,
1539        LONG lPercentQuality);
1540
1541    HRESULT (STDMETHODCALLTYPE *get_SignalQuality)(
1542        IBDA_SignalStatistics* This,
1543        LONG *plPercentQuality);
1544
1545    HRESULT (STDMETHODCALLTYPE *put_SignalPresent)(
1546        IBDA_SignalStatistics* This,
1547        BOOLEAN fPresent);
1548
1549    HRESULT (STDMETHODCALLTYPE *get_SignalPresent)(
1550        IBDA_SignalStatistics* This,
1551        BOOLEAN *pfPresent);
1552
1553    HRESULT (STDMETHODCALLTYPE *put_SignalLocked)(
1554        IBDA_SignalStatistics* This,
1555        BOOLEAN fLocked);
1556
1557    HRESULT (STDMETHODCALLTYPE *get_SignalLocked)(
1558        IBDA_SignalStatistics* This,
1559        BOOLEAN *pfLocked);
1560
1561    HRESULT (STDMETHODCALLTYPE *put_SampleTime)(
1562        IBDA_SignalStatistics* This,
1563        LONG lmsSampleTime);
1564
1565    HRESULT (STDMETHODCALLTYPE *get_SampleTime)(
1566        IBDA_SignalStatistics* This,
1567        LONG *plmsSampleTime);
1568
1569    END_INTERFACE
1570} IBDA_SignalStatisticsVtbl;
1571interface IBDA_SignalStatistics {
1572    CONST_VTBL IBDA_SignalStatisticsVtbl* lpVtbl;
1573};
1574
1575#ifdef COBJMACROS
1576#ifndef WIDL_C_INLINE_WRAPPERS
1577/*** IUnknown methods ***/
1578#define IBDA_SignalStatistics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1579#define IBDA_SignalStatistics_AddRef(This) (This)->lpVtbl->AddRef(This)
1580#define IBDA_SignalStatistics_Release(This) (This)->lpVtbl->Release(This)
1581/*** IBDA_SignalStatistics methods ***/
1582#define IBDA_SignalStatistics_put_SignalStrength(This,lDbStrength) (This)->lpVtbl->put_SignalStrength(This,lDbStrength)
1583#define IBDA_SignalStatistics_get_SignalStrength(This,plDbStrength) (This)->lpVtbl->get_SignalStrength(This,plDbStrength)
1584#define IBDA_SignalStatistics_put_SignalQuality(This,lPercentQuality) (This)->lpVtbl->put_SignalQuality(This,lPercentQuality)
1585#define IBDA_SignalStatistics_get_SignalQuality(This,plPercentQuality) (This)->lpVtbl->get_SignalQuality(This,plPercentQuality)
1586#define IBDA_SignalStatistics_put_SignalPresent(This,fPresent) (This)->lpVtbl->put_SignalPresent(This,fPresent)
1587#define IBDA_SignalStatistics_get_SignalPresent(This,pfPresent) (This)->lpVtbl->get_SignalPresent(This,pfPresent)
1588#define IBDA_SignalStatistics_put_SignalLocked(This,fLocked) (This)->lpVtbl->put_SignalLocked(This,fLocked)
1589#define IBDA_SignalStatistics_get_SignalLocked(This,pfLocked) (This)->lpVtbl->get_SignalLocked(This,pfLocked)
1590#define IBDA_SignalStatistics_put_SampleTime(This,lmsSampleTime) (This)->lpVtbl->put_SampleTime(This,lmsSampleTime)
1591#define IBDA_SignalStatistics_get_SampleTime(This,plmsSampleTime) (This)->lpVtbl->get_SampleTime(This,plmsSampleTime)
1592#else
1593/*** IUnknown methods ***/
1594static FORCEINLINE HRESULT IBDA_SignalStatistics_QueryInterface(IBDA_SignalStatistics* This,REFIID riid,void **ppvObject) {
1595    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1596}
1597static FORCEINLINE ULONG IBDA_SignalStatistics_AddRef(IBDA_SignalStatistics* This) {
1598    return This->lpVtbl->AddRef(This);
1599}
1600static FORCEINLINE ULONG IBDA_SignalStatistics_Release(IBDA_SignalStatistics* This) {
1601    return This->lpVtbl->Release(This);
1602}
1603/*** IBDA_SignalStatistics methods ***/
1604static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalStrength(IBDA_SignalStatistics* This,LONG lDbStrength) {
1605    return This->lpVtbl->put_SignalStrength(This,lDbStrength);
1606}
1607static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalStrength(IBDA_SignalStatistics* This,LONG *plDbStrength) {
1608    return This->lpVtbl->get_SignalStrength(This,plDbStrength);
1609}
1610static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalQuality(IBDA_SignalStatistics* This,LONG lPercentQuality) {
1611    return This->lpVtbl->put_SignalQuality(This,lPercentQuality);
1612}
1613static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalQuality(IBDA_SignalStatistics* This,LONG *plPercentQuality) {
1614    return This->lpVtbl->get_SignalQuality(This,plPercentQuality);
1615}
1616static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalPresent(IBDA_SignalStatistics* This,BOOLEAN fPresent) {
1617    return This->lpVtbl->put_SignalPresent(This,fPresent);
1618}
1619static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalPresent(IBDA_SignalStatistics* This,BOOLEAN *pfPresent) {
1620    return This->lpVtbl->get_SignalPresent(This,pfPresent);
1621}
1622static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalLocked(IBDA_SignalStatistics* This,BOOLEAN fLocked) {
1623    return This->lpVtbl->put_SignalLocked(This,fLocked);
1624}
1625static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalLocked(IBDA_SignalStatistics* This,BOOLEAN *pfLocked) {
1626    return This->lpVtbl->get_SignalLocked(This,pfLocked);
1627}
1628static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SampleTime(IBDA_SignalStatistics* This,LONG lmsSampleTime) {
1629    return This->lpVtbl->put_SampleTime(This,lmsSampleTime);
1630}
1631static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SampleTime(IBDA_SignalStatistics* This,LONG *plmsSampleTime) {
1632    return This->lpVtbl->get_SampleTime(This,plmsSampleTime);
1633}
1634#endif
1635#endif
1636
1637#endif
1638
1639HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalStrength_Proxy(
1640    IBDA_SignalStatistics* This,
1641    LONG lDbStrength);
1642void __RPC_STUB IBDA_SignalStatistics_put_SignalStrength_Stub(
1643    IRpcStubBuffer* This,
1644    IRpcChannelBuffer* pRpcChannelBuffer,
1645    PRPC_MESSAGE pRpcMessage,
1646    DWORD* pdwStubPhase);
1647HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalStrength_Proxy(
1648    IBDA_SignalStatistics* This,
1649    LONG *plDbStrength);
1650void __RPC_STUB IBDA_SignalStatistics_get_SignalStrength_Stub(
1651    IRpcStubBuffer* This,
1652    IRpcChannelBuffer* pRpcChannelBuffer,
1653    PRPC_MESSAGE pRpcMessage,
1654    DWORD* pdwStubPhase);
1655HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalQuality_Proxy(
1656    IBDA_SignalStatistics* This,
1657    LONG lPercentQuality);
1658void __RPC_STUB IBDA_SignalStatistics_put_SignalQuality_Stub(
1659    IRpcStubBuffer* This,
1660    IRpcChannelBuffer* pRpcChannelBuffer,
1661    PRPC_MESSAGE pRpcMessage,
1662    DWORD* pdwStubPhase);
1663HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalQuality_Proxy(
1664    IBDA_SignalStatistics* This,
1665    LONG *plPercentQuality);
1666void __RPC_STUB IBDA_SignalStatistics_get_SignalQuality_Stub(
1667    IRpcStubBuffer* This,
1668    IRpcChannelBuffer* pRpcChannelBuffer,
1669    PRPC_MESSAGE pRpcMessage,
1670    DWORD* pdwStubPhase);
1671HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalPresent_Proxy(
1672    IBDA_SignalStatistics* This,
1673    BOOLEAN fPresent);
1674void __RPC_STUB IBDA_SignalStatistics_put_SignalPresent_Stub(
1675    IRpcStubBuffer* This,
1676    IRpcChannelBuffer* pRpcChannelBuffer,
1677    PRPC_MESSAGE pRpcMessage,
1678    DWORD* pdwStubPhase);
1679HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalPresent_Proxy(
1680    IBDA_SignalStatistics* This,
1681    BOOLEAN *pfPresent);
1682void __RPC_STUB IBDA_SignalStatistics_get_SignalPresent_Stub(
1683    IRpcStubBuffer* This,
1684    IRpcChannelBuffer* pRpcChannelBuffer,
1685    PRPC_MESSAGE pRpcMessage,
1686    DWORD* pdwStubPhase);
1687HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalLocked_Proxy(
1688    IBDA_SignalStatistics* This,
1689    BOOLEAN fLocked);
1690void __RPC_STUB IBDA_SignalStatistics_put_SignalLocked_Stub(
1691    IRpcStubBuffer* This,
1692    IRpcChannelBuffer* pRpcChannelBuffer,
1693    PRPC_MESSAGE pRpcMessage,
1694    DWORD* pdwStubPhase);
1695HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalLocked_Proxy(
1696    IBDA_SignalStatistics* This,
1697    BOOLEAN *pfLocked);
1698void __RPC_STUB IBDA_SignalStatistics_get_SignalLocked_Stub(
1699    IRpcStubBuffer* This,
1700    IRpcChannelBuffer* pRpcChannelBuffer,
1701    PRPC_MESSAGE pRpcMessage,
1702    DWORD* pdwStubPhase);
1703HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SampleTime_Proxy(
1704    IBDA_SignalStatistics* This,
1705    LONG lmsSampleTime);
1706void __RPC_STUB IBDA_SignalStatistics_put_SampleTime_Stub(
1707    IRpcStubBuffer* This,
1708    IRpcChannelBuffer* pRpcChannelBuffer,
1709    PRPC_MESSAGE pRpcMessage,
1710    DWORD* pdwStubPhase);
1711HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SampleTime_Proxy(
1712    IBDA_SignalStatistics* This,
1713    LONG *plmsSampleTime);
1714void __RPC_STUB IBDA_SignalStatistics_get_SampleTime_Stub(
1715    IRpcStubBuffer* This,
1716    IRpcChannelBuffer* pRpcChannelBuffer,
1717    PRPC_MESSAGE pRpcMessage,
1718    DWORD* pdwStubPhase);
1719
1720#endif  /* __IBDA_SignalStatistics_INTERFACE_DEFINED__ */
1721
1722/*****************************************************************************
1723 * IBDA_Topology interface
1724 */
1725#ifndef __IBDA_Topology_INTERFACE_DEFINED__
1726#define __IBDA_Topology_INTERFACE_DEFINED__
1727
1728DEFINE_GUID(IID_IBDA_Topology, 0x79b56888, 0x7fea, 0x4690, 0xb4,0x5d, 0x38,0xfd,0x3c,0x78,0x49,0xbe);
1729#if defined(__cplusplus) && !defined(CINTERFACE)
1730MIDL_INTERFACE("79b56888-7fea-4690-b45d-38fd3c7849be")
1731IBDA_Topology : public IUnknown
1732{
1733    virtual HRESULT STDMETHODCALLTYPE GetNodeTypes(
1734        ULONG *pulcNodeTypes,
1735        ULONG ulcNodeTypesMax,
1736        ULONG rgulNodeTypes[]) = 0;
1737
1738    virtual HRESULT STDMETHODCALLTYPE GetNodeDescriptors(
1739        ULONG *ulcNodeDescriptors,
1740        ULONG ulcNodeDescriptorsMax,
1741        BDANODE_DESCRIPTOR rgNodeDescriptors[]) = 0;
1742
1743    virtual HRESULT STDMETHODCALLTYPE GetNodeInterfaces(
1744        ULONG ulNodeType,
1745        ULONG *pulcInterfaces,
1746        ULONG ulcInterfacesMax,
1747        GUID rgguidInterfaces[]) = 0;
1748
1749    virtual HRESULT STDMETHODCALLTYPE GetPinTypes(
1750        ULONG *pulcPinTypes,
1751        ULONG ulcPinTypesMax,
1752        ULONG rgulPinTypes[]) = 0;
1753
1754    virtual HRESULT STDMETHODCALLTYPE GetTemplateConnections(
1755        ULONG *pulcConnections,
1756        ULONG ulcConnectionsMax,
1757        BDA_TEMPLATE_CONNECTION rgConnections[]) = 0;
1758
1759    virtual HRESULT STDMETHODCALLTYPE CreatePin(
1760        ULONG ulPinType,
1761        ULONG *pulPinId) = 0;
1762
1763    virtual HRESULT STDMETHODCALLTYPE DeletePin(
1764        ULONG ulPinId) = 0;
1765
1766    virtual HRESULT STDMETHODCALLTYPE SetMediaType(
1767        ULONG ulPinId,
1768        AM_MEDIA_TYPE *pMediaType) = 0;
1769
1770    virtual HRESULT STDMETHODCALLTYPE SetMedium(
1771        ULONG ulPinId,
1772        REGPINMEDIUM *pMedium) = 0;
1773
1774    virtual HRESULT STDMETHODCALLTYPE CreateTopology(
1775        ULONG ulInputPinId,
1776        ULONG ulOutputPinId) = 0;
1777
1778    virtual HRESULT STDMETHODCALLTYPE GetControlNode(
1779        ULONG ulInputPinId,
1780        ULONG ulOutputPinId,
1781        ULONG ulNodeType,
1782        IUnknown **ppControlNode) = 0;
1783
1784};
1785#ifdef __CRT_UUID_DECL
1786__CRT_UUID_DECL(IBDA_Topology, 0x79b56888, 0x7fea, 0x4690, 0xb4,0x5d, 0x38,0xfd,0x3c,0x78,0x49,0xbe)
1787#endif
1788#else
1789typedef struct IBDA_TopologyVtbl {
1790    BEGIN_INTERFACE
1791
1792    /*** IUnknown methods ***/
1793    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1794        IBDA_Topology* This,
1795        REFIID riid,
1796        void **ppvObject);
1797
1798    ULONG (STDMETHODCALLTYPE *AddRef)(
1799        IBDA_Topology* This);
1800
1801    ULONG (STDMETHODCALLTYPE *Release)(
1802        IBDA_Topology* This);
1803
1804    /*** IBDA_Topology methods ***/
1805    HRESULT (STDMETHODCALLTYPE *GetNodeTypes)(
1806        IBDA_Topology* This,
1807        ULONG *pulcNodeTypes,
1808        ULONG ulcNodeTypesMax,
1809        ULONG rgulNodeTypes[]);
1810
1811    HRESULT (STDMETHODCALLTYPE *GetNodeDescriptors)(
1812        IBDA_Topology* This,
1813        ULONG *ulcNodeDescriptors,
1814        ULONG ulcNodeDescriptorsMax,
1815        BDANODE_DESCRIPTOR rgNodeDescriptors[]);
1816
1817    HRESULT (STDMETHODCALLTYPE *GetNodeInterfaces)(
1818        IBDA_Topology* This,
1819        ULONG ulNodeType,
1820        ULONG *pulcInterfaces,
1821        ULONG ulcInterfacesMax,
1822        GUID rgguidInterfaces[]);
1823
1824    HRESULT (STDMETHODCALLTYPE *GetPinTypes)(
1825        IBDA_Topology* This,
1826        ULONG *pulcPinTypes,
1827        ULONG ulcPinTypesMax,
1828        ULONG rgulPinTypes[]);
1829
1830    HRESULT (STDMETHODCALLTYPE *GetTemplateConnections)(
1831        IBDA_Topology* This,
1832        ULONG *pulcConnections,
1833        ULONG ulcConnectionsMax,
1834        BDA_TEMPLATE_CONNECTION rgConnections[]);
1835
1836    HRESULT (STDMETHODCALLTYPE *CreatePin)(
1837        IBDA_Topology* This,
1838        ULONG ulPinType,
1839        ULONG *pulPinId);
1840
1841    HRESULT (STDMETHODCALLTYPE *DeletePin)(
1842        IBDA_Topology* This,
1843        ULONG ulPinId);
1844
1845    HRESULT (STDMETHODCALLTYPE *SetMediaType)(
1846        IBDA_Topology* This,
1847        ULONG ulPinId,
1848        AM_MEDIA_TYPE *pMediaType);
1849
1850    HRESULT (STDMETHODCALLTYPE *SetMedium)(
1851        IBDA_Topology* This,
1852        ULONG ulPinId,
1853        REGPINMEDIUM *pMedium);
1854
1855    HRESULT (STDMETHODCALLTYPE *CreateTopology)(
1856        IBDA_Topology* This,
1857        ULONG ulInputPinId,
1858        ULONG ulOutputPinId);
1859
1860    HRESULT (STDMETHODCALLTYPE *GetControlNode)(
1861        IBDA_Topology* This,
1862        ULONG ulInputPinId,
1863        ULONG ulOutputPinId,
1864        ULONG ulNodeType,
1865        IUnknown **ppControlNode);
1866
1867    END_INTERFACE
1868} IBDA_TopologyVtbl;
1869interface IBDA_Topology {
1870    CONST_VTBL IBDA_TopologyVtbl* lpVtbl;
1871};
1872
1873#ifdef COBJMACROS
1874#ifndef WIDL_C_INLINE_WRAPPERS
1875/*** IUnknown methods ***/
1876#define IBDA_Topology_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1877#define IBDA_Topology_AddRef(This) (This)->lpVtbl->AddRef(This)
1878#define IBDA_Topology_Release(This) (This)->lpVtbl->Release(This)
1879/*** IBDA_Topology methods ***/
1880#define IBDA_Topology_GetNodeTypes(This,pulcNodeTypes,ulcNodeTypesMax,rgulNodeTypes) (This)->lpVtbl->GetNodeTypes(This,pulcNodeTypes,ulcNodeTypesMax,rgulNodeTypes)
1881#define IBDA_Topology_GetNodeDescriptors(This,ulcNodeDescriptors,ulcNodeDescriptorsMax,rgNodeDescriptors) (This)->lpVtbl->GetNodeDescriptors(This,ulcNodeDescriptors,ulcNodeDescriptorsMax,rgNodeDescriptors)
1882#define IBDA_Topology_GetNodeInterfaces(This,ulNodeType,pulcInterfaces,ulcInterfacesMax,rgguidInterfaces) (This)->lpVtbl->GetNodeInterfaces(This,ulNodeType,pulcInterfaces,ulcInterfacesMax,rgguidInterfaces)
1883#define IBDA_Topology_GetPinTypes(This,pulcPinTypes,ulcPinTypesMax,rgulPinTypes) (This)->lpVtbl->GetPinTypes(This,pulcPinTypes,ulcPinTypesMax,rgulPinTypes)
1884#define IBDA_Topology_GetTemplateConnections(This,pulcConnections,ulcConnectionsMax,rgConnections) (This)->lpVtbl->GetTemplateConnections(This,pulcConnections,ulcConnectionsMax,rgConnections)
1885#define IBDA_Topology_CreatePin(This,ulPinType,pulPinId) (This)->lpVtbl->CreatePin(This,ulPinType,pulPinId)
1886#define IBDA_Topology_DeletePin(This,ulPinId) (This)->lpVtbl->DeletePin(This,ulPinId)
1887#define IBDA_Topology_SetMediaType(This,ulPinId,pMediaType) (This)->lpVtbl->SetMediaType(This,ulPinId,pMediaType)
1888#define IBDA_Topology_SetMedium(This,ulPinId,pMedium) (This)->lpVtbl->SetMedium(This,ulPinId,pMedium)
1889#define IBDA_Topology_CreateTopology(This,ulInputPinId,ulOutputPinId) (This)->lpVtbl->CreateTopology(This,ulInputPinId,ulOutputPinId)
1890#define IBDA_Topology_GetControlNode(This,ulInputPinId,ulOutputPinId,ulNodeType,ppControlNode) (This)->lpVtbl->GetControlNode(This,ulInputPinId,ulOutputPinId,ulNodeType,ppControlNode)
1891#else
1892/*** IUnknown methods ***/
1893static FORCEINLINE HRESULT IBDA_Topology_QueryInterface(IBDA_Topology* This,REFIID riid,void **ppvObject) {
1894    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1895}
1896static FORCEINLINE ULONG IBDA_Topology_AddRef(IBDA_Topology* This) {
1897    return This->lpVtbl->AddRef(This);
1898}
1899static FORCEINLINE ULONG IBDA_Topology_Release(IBDA_Topology* This) {
1900    return This->lpVtbl->Release(This);
1901}
1902/*** IBDA_Topology methods ***/
1903static FORCEINLINE HRESULT IBDA_Topology_GetNodeTypes(IBDA_Topology* This,ULONG *pulcNodeTypes,ULONG ulcNodeTypesMax,ULONG rgulNodeTypes[]) {
1904    return This->lpVtbl->GetNodeTypes(This,pulcNodeTypes,ulcNodeTypesMax,rgulNodeTypes);
1905}
1906static FORCEINLINE HRESULT IBDA_Topology_GetNodeDescriptors(IBDA_Topology* This,ULONG *ulcNodeDescriptors,ULONG ulcNodeDescriptorsMax,BDANODE_DESCRIPTOR rgNodeDescriptors[]) {
1907    return This->lpVtbl->GetNodeDescriptors(This,ulcNodeDescriptors,ulcNodeDescriptorsMax,rgNodeDescriptors);
1908}
1909static FORCEINLINE HRESULT IBDA_Topology_GetNodeInterfaces(IBDA_Topology* This,ULONG ulNodeType,ULONG *pulcInterfaces,ULONG ulcInterfacesMax,GUID rgguidInterfaces[]) {
1910    return This->lpVtbl->GetNodeInterfaces(This,ulNodeType,pulcInterfaces,ulcInterfacesMax,rgguidInterfaces);
1911}
1912static FORCEINLINE HRESULT IBDA_Topology_GetPinTypes(IBDA_Topology* This,ULONG *pulcPinTypes,ULONG ulcPinTypesMax,ULONG rgulPinTypes[]) {
1913    return This->lpVtbl->GetPinTypes(This,pulcPinTypes,ulcPinTypesMax,rgulPinTypes);
1914}
1915static FORCEINLINE HRESULT IBDA_Topology_GetTemplateConnections(IBDA_Topology* This,ULONG *pulcConnections,ULONG ulcConnectionsMax,BDA_TEMPLATE_CONNECTION rgConnections[]) {
1916    return This->lpVtbl->GetTemplateConnections(This,pulcConnections,ulcConnectionsMax,rgConnections);
1917}
1918static FORCEINLINE HRESULT IBDA_Topology_CreatePin(IBDA_Topology* This,ULONG ulPinType,ULONG *pulPinId) {
1919    return This->lpVtbl->CreatePin(This,ulPinType,pulPinId);
1920}
1921static FORCEINLINE HRESULT IBDA_Topology_DeletePin(IBDA_Topology* This,ULONG ulPinId) {
1922    return This->lpVtbl->DeletePin(This,ulPinId);
1923}
1924static FORCEINLINE HRESULT IBDA_Topology_SetMediaType(IBDA_Topology* This,ULONG ulPinId,AM_MEDIA_TYPE *pMediaType) {
1925    return This->lpVtbl->SetMediaType(This,ulPinId,pMediaType);
1926}
1927static FORCEINLINE HRESULT IBDA_Topology_SetMedium(IBDA_Topology* This,ULONG ulPinId,REGPINMEDIUM *pMedium) {
1928    return This->lpVtbl->SetMedium(This,ulPinId,pMedium);
1929}
1930static FORCEINLINE HRESULT IBDA_Topology_CreateTopology(IBDA_Topology* This,ULONG ulInputPinId,ULONG ulOutputPinId) {
1931    return This->lpVtbl->CreateTopology(This,ulInputPinId,ulOutputPinId);
1932}
1933static FORCEINLINE HRESULT IBDA_Topology_GetControlNode(IBDA_Topology* This,ULONG ulInputPinId,ULONG ulOutputPinId,ULONG ulNodeType,IUnknown **ppControlNode) {
1934    return This->lpVtbl->GetControlNode(This,ulInputPinId,ulOutputPinId,ulNodeType,ppControlNode);
1935}
1936#endif
1937#endif
1938
1939#endif
1940
1941HRESULT STDMETHODCALLTYPE IBDA_Topology_GetNodeTypes_Proxy(
1942    IBDA_Topology* This,
1943    ULONG *pulcNodeTypes,
1944    ULONG ulcNodeTypesMax,
1945    ULONG rgulNodeTypes[]);
1946void __RPC_STUB IBDA_Topology_GetNodeTypes_Stub(
1947    IRpcStubBuffer* This,
1948    IRpcChannelBuffer* pRpcChannelBuffer,
1949    PRPC_MESSAGE pRpcMessage,
1950    DWORD* pdwStubPhase);
1951HRESULT STDMETHODCALLTYPE IBDA_Topology_GetNodeDescriptors_Proxy(
1952    IBDA_Topology* This,
1953    ULONG *ulcNodeDescriptors,
1954    ULONG ulcNodeDescriptorsMax,
1955    BDANODE_DESCRIPTOR rgNodeDescriptors[]);
1956void __RPC_STUB IBDA_Topology_GetNodeDescriptors_Stub(
1957    IRpcStubBuffer* This,
1958    IRpcChannelBuffer* pRpcChannelBuffer,
1959    PRPC_MESSAGE pRpcMessage,
1960    DWORD* pdwStubPhase);
1961HRESULT STDMETHODCALLTYPE IBDA_Topology_GetNodeInterfaces_Proxy(
1962    IBDA_Topology* This,
1963    ULONG ulNodeType,
1964    ULONG *pulcInterfaces,
1965    ULONG ulcInterfacesMax,
1966    GUID rgguidInterfaces[]);
1967void __RPC_STUB IBDA_Topology_GetNodeInterfaces_Stub(
1968    IRpcStubBuffer* This,
1969    IRpcChannelBuffer* pRpcChannelBuffer,
1970    PRPC_MESSAGE pRpcMessage,
1971    DWORD* pdwStubPhase);
1972HRESULT STDMETHODCALLTYPE IBDA_Topology_GetPinTypes_Proxy(
1973    IBDA_Topology* This,
1974    ULONG *pulcPinTypes,
1975    ULONG ulcPinTypesMax,
1976    ULONG rgulPinTypes[]);
1977void __RPC_STUB IBDA_Topology_GetPinTypes_Stub(
1978    IRpcStubBuffer* This,
1979    IRpcChannelBuffer* pRpcChannelBuffer,
1980    PRPC_MESSAGE pRpcMessage,
1981    DWORD* pdwStubPhase);
1982HRESULT STDMETHODCALLTYPE IBDA_Topology_GetTemplateConnections_Proxy(
1983    IBDA_Topology* This,
1984    ULONG *pulcConnections,
1985    ULONG ulcConnectionsMax,
1986    BDA_TEMPLATE_CONNECTION rgConnections[]);
1987void __RPC_STUB IBDA_Topology_GetTemplateConnections_Stub(
1988    IRpcStubBuffer* This,
1989    IRpcChannelBuffer* pRpcChannelBuffer,
1990    PRPC_MESSAGE pRpcMessage,
1991    DWORD* pdwStubPhase);
1992HRESULT STDMETHODCALLTYPE IBDA_Topology_CreatePin_Proxy(
1993    IBDA_Topology* This,
1994    ULONG ulPinType,
1995    ULONG *pulPinId);
1996void __RPC_STUB IBDA_Topology_CreatePin_Stub(
1997    IRpcStubBuffer* This,
1998    IRpcChannelBuffer* pRpcChannelBuffer,
1999    PRPC_MESSAGE pRpcMessage,
2000    DWORD* pdwStubPhase);
2001HRESULT STDMETHODCALLTYPE IBDA_Topology_DeletePin_Proxy(
2002    IBDA_Topology* This,
2003    ULONG ulPinId);
2004void __RPC_STUB IBDA_Topology_DeletePin_Stub(
2005    IRpcStubBuffer* This,
2006    IRpcChannelBuffer* pRpcChannelBuffer,
2007    PRPC_MESSAGE pRpcMessage,
2008    DWORD* pdwStubPhase);
2009HRESULT STDMETHODCALLTYPE IBDA_Topology_SetMediaType_Proxy(
2010    IBDA_Topology* This,
2011    ULONG ulPinId,
2012    AM_MEDIA_TYPE *pMediaType);
2013void __RPC_STUB IBDA_Topology_SetMediaType_Stub(
2014    IRpcStubBuffer* This,
2015    IRpcChannelBuffer* pRpcChannelBuffer,
2016    PRPC_MESSAGE pRpcMessage,
2017    DWORD* pdwStubPhase);
2018HRESULT STDMETHODCALLTYPE IBDA_Topology_SetMedium_Proxy(
2019    IBDA_Topology* This,
2020    ULONG ulPinId,
2021    REGPINMEDIUM *pMedium);
2022void __RPC_STUB IBDA_Topology_SetMedium_Stub(
2023    IRpcStubBuffer* This,
2024    IRpcChannelBuffer* pRpcChannelBuffer,
2025    PRPC_MESSAGE pRpcMessage,
2026    DWORD* pdwStubPhase);
2027HRESULT STDMETHODCALLTYPE IBDA_Topology_CreateTopology_Proxy(
2028    IBDA_Topology* This,
2029    ULONG ulInputPinId,
2030    ULONG ulOutputPinId);
2031void __RPC_STUB IBDA_Topology_CreateTopology_Stub(
2032    IRpcStubBuffer* This,
2033    IRpcChannelBuffer* pRpcChannelBuffer,
2034    PRPC_MESSAGE pRpcMessage,
2035    DWORD* pdwStubPhase);
2036HRESULT STDMETHODCALLTYPE IBDA_Topology_GetControlNode_Proxy(
2037    IBDA_Topology* This,
2038    ULONG ulInputPinId,
2039    ULONG ulOutputPinId,
2040    ULONG ulNodeType,
2041    IUnknown **ppControlNode);
2042void __RPC_STUB IBDA_Topology_GetControlNode_Stub(
2043    IRpcStubBuffer* This,
2044    IRpcChannelBuffer* pRpcChannelBuffer,
2045    PRPC_MESSAGE pRpcMessage,
2046    DWORD* pdwStubPhase);
2047
2048#endif  /* __IBDA_Topology_INTERFACE_DEFINED__ */
2049
2050/*****************************************************************************
2051 * IBDA_VoidTransform interface
2052 */
2053#ifndef __IBDA_VoidTransform_INTERFACE_DEFINED__
2054#define __IBDA_VoidTransform_INTERFACE_DEFINED__
2055
2056DEFINE_GUID(IID_IBDA_VoidTransform, 0x71985f46, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
2057#if defined(__cplusplus) && !defined(CINTERFACE)
2058MIDL_INTERFACE("71985f46-1ca1-11d3-9cc8-00c04f7971e0")
2059IBDA_VoidTransform : public IUnknown
2060{
2061    virtual HRESULT STDMETHODCALLTYPE Start(
2062        ) = 0;
2063
2064    virtual HRESULT STDMETHODCALLTYPE Stop(
2065        ) = 0;
2066
2067};
2068#ifdef __CRT_UUID_DECL
2069__CRT_UUID_DECL(IBDA_VoidTransform, 0x71985f46, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
2070#endif
2071#else
2072typedef struct IBDA_VoidTransformVtbl {
2073    BEGIN_INTERFACE
2074
2075    /*** IUnknown methods ***/
2076    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2077        IBDA_VoidTransform* This,
2078        REFIID riid,
2079        void **ppvObject);
2080
2081    ULONG (STDMETHODCALLTYPE *AddRef)(
2082        IBDA_VoidTransform* This);
2083
2084    ULONG (STDMETHODCALLTYPE *Release)(
2085        IBDA_VoidTransform* This);
2086
2087    /*** IBDA_VoidTransform methods ***/
2088    HRESULT (STDMETHODCALLTYPE *Start)(
2089        IBDA_VoidTransform* This);
2090
2091    HRESULT (STDMETHODCALLTYPE *Stop)(
2092        IBDA_VoidTransform* This);
2093
2094    END_INTERFACE
2095} IBDA_VoidTransformVtbl;
2096interface IBDA_VoidTransform {
2097    CONST_VTBL IBDA_VoidTransformVtbl* lpVtbl;
2098};
2099
2100#ifdef COBJMACROS
2101#ifndef WIDL_C_INLINE_WRAPPERS
2102/*** IUnknown methods ***/
2103#define IBDA_VoidTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2104#define IBDA_VoidTransform_AddRef(This) (This)->lpVtbl->AddRef(This)
2105#define IBDA_VoidTransform_Release(This) (This)->lpVtbl->Release(This)
2106/*** IBDA_VoidTransform methods ***/
2107#define IBDA_VoidTransform_Start(This) (This)->lpVtbl->Start(This)
2108#define IBDA_VoidTransform_Stop(This) (This)->lpVtbl->Stop(This)
2109#else
2110/*** IUnknown methods ***/
2111static FORCEINLINE HRESULT IBDA_VoidTransform_QueryInterface(IBDA_VoidTransform* This,REFIID riid,void **ppvObject) {
2112    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2113}
2114static FORCEINLINE ULONG IBDA_VoidTransform_AddRef(IBDA_VoidTransform* This) {
2115    return This->lpVtbl->AddRef(This);
2116}
2117static FORCEINLINE ULONG IBDA_VoidTransform_Release(IBDA_VoidTransform* This) {
2118    return This->lpVtbl->Release(This);
2119}
2120/*** IBDA_VoidTransform methods ***/
2121static FORCEINLINE HRESULT IBDA_VoidTransform_Start(IBDA_VoidTransform* This) {
2122    return This->lpVtbl->Start(This);
2123}
2124static FORCEINLINE HRESULT IBDA_VoidTransform_Stop(IBDA_VoidTransform* This) {
2125    return This->lpVtbl->Stop(This);
2126}
2127#endif
2128#endif
2129
2130#endif
2131
2132HRESULT STDMETHODCALLTYPE IBDA_VoidTransform_Start_Proxy(
2133    IBDA_VoidTransform* This);
2134void __RPC_STUB IBDA_VoidTransform_Start_Stub(
2135    IRpcStubBuffer* This,
2136    IRpcChannelBuffer* pRpcChannelBuffer,
2137    PRPC_MESSAGE pRpcMessage,
2138    DWORD* pdwStubPhase);
2139HRESULT STDMETHODCALLTYPE IBDA_VoidTransform_Stop_Proxy(
2140    IBDA_VoidTransform* This);
2141void __RPC_STUB IBDA_VoidTransform_Stop_Stub(
2142    IRpcStubBuffer* This,
2143    IRpcChannelBuffer* pRpcChannelBuffer,
2144    PRPC_MESSAGE pRpcMessage,
2145    DWORD* pdwStubPhase);
2146
2147#endif  /* __IBDA_VoidTransform_INTERFACE_DEFINED__ */
2148
2149/*****************************************************************************
2150 * IBDA_NullTransform interface
2151 */
2152#ifndef __IBDA_NullTransform_INTERFACE_DEFINED__
2153#define __IBDA_NullTransform_INTERFACE_DEFINED__
2154
2155DEFINE_GUID(IID_IBDA_NullTransform, 0xddf15b0d, 0xbd25, 0x11d2, 0x9c,0xa0, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
2156#if defined(__cplusplus) && !defined(CINTERFACE)
2157MIDL_INTERFACE("ddf15b0d-bd25-11d2-9ca0-00c04f7971e0")
2158IBDA_NullTransform : public IUnknown
2159{
2160    virtual HRESULT STDMETHODCALLTYPE Start(
2161        ) = 0;
2162
2163    virtual HRESULT STDMETHODCALLTYPE Stop(
2164        ) = 0;
2165
2166};
2167#ifdef __CRT_UUID_DECL
2168__CRT_UUID_DECL(IBDA_NullTransform, 0xddf15b0d, 0xbd25, 0x11d2, 0x9c,0xa0, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
2169#endif
2170#else
2171typedef struct IBDA_NullTransformVtbl {
2172    BEGIN_INTERFACE
2173
2174    /*** IUnknown methods ***/
2175    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2176        IBDA_NullTransform* This,
2177        REFIID riid,
2178        void **ppvObject);
2179
2180    ULONG (STDMETHODCALLTYPE *AddRef)(
2181        IBDA_NullTransform* This);
2182
2183    ULONG (STDMETHODCALLTYPE *Release)(
2184        IBDA_NullTransform* This);
2185
2186    /*** IBDA_NullTransform methods ***/
2187    HRESULT (STDMETHODCALLTYPE *Start)(
2188        IBDA_NullTransform* This);
2189
2190    HRESULT (STDMETHODCALLTYPE *Stop)(
2191        IBDA_NullTransform* This);
2192
2193    END_INTERFACE
2194} IBDA_NullTransformVtbl;
2195interface IBDA_NullTransform {
2196    CONST_VTBL IBDA_NullTransformVtbl* lpVtbl;
2197};
2198
2199#ifdef COBJMACROS
2200#ifndef WIDL_C_INLINE_WRAPPERS
2201/*** IUnknown methods ***/
2202#define IBDA_NullTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2203#define IBDA_NullTransform_AddRef(This) (This)->lpVtbl->AddRef(This)
2204#define IBDA_NullTransform_Release(This) (This)->lpVtbl->Release(This)
2205/*** IBDA_NullTransform methods ***/
2206#define IBDA_NullTransform_Start(This) (This)->lpVtbl->Start(This)
2207#define IBDA_NullTransform_Stop(This) (This)->lpVtbl->Stop(This)
2208#else
2209/*** IUnknown methods ***/
2210static FORCEINLINE HRESULT IBDA_NullTransform_QueryInterface(IBDA_NullTransform* This,REFIID riid,void **ppvObject) {
2211    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2212}
2213static FORCEINLINE ULONG IBDA_NullTransform_AddRef(IBDA_NullTransform* This) {
2214    return This->lpVtbl->AddRef(This);
2215}
2216static FORCEINLINE ULONG IBDA_NullTransform_Release(IBDA_NullTransform* This) {
2217    return This->lpVtbl->Release(This);
2218}
2219/*** IBDA_NullTransform methods ***/
2220static FORCEINLINE HRESULT IBDA_NullTransform_Start(IBDA_NullTransform* This) {
2221    return This->lpVtbl->Start(This);
2222}
2223static FORCEINLINE HRESULT IBDA_NullTransform_Stop(IBDA_NullTransform* This) {
2224    return This->lpVtbl->Stop(This);
2225}
2226#endif
2227#endif
2228
2229#endif
2230
2231HRESULT STDMETHODCALLTYPE IBDA_NullTransform_Start_Proxy(
2232    IBDA_NullTransform* This);
2233void __RPC_STUB IBDA_NullTransform_Start_Stub(
2234    IRpcStubBuffer* This,
2235    IRpcChannelBuffer* pRpcChannelBuffer,
2236    PRPC_MESSAGE pRpcMessage,
2237    DWORD* pdwStubPhase);
2238HRESULT STDMETHODCALLTYPE IBDA_NullTransform_Stop_Proxy(
2239    IBDA_NullTransform* This);
2240void __RPC_STUB IBDA_NullTransform_Stop_Stub(
2241    IRpcStubBuffer* This,
2242    IRpcChannelBuffer* pRpcChannelBuffer,
2243    PRPC_MESSAGE pRpcMessage,
2244    DWORD* pdwStubPhase);
2245
2246#endif  /* __IBDA_NullTransform_INTERFACE_DEFINED__ */
2247
2248/*****************************************************************************
2249 * IBDA_FrequencyFilter interface
2250 */
2251#ifndef __IBDA_FrequencyFilter_INTERFACE_DEFINED__
2252#define __IBDA_FrequencyFilter_INTERFACE_DEFINED__
2253
2254DEFINE_GUID(IID_IBDA_FrequencyFilter, 0x71985f47, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
2255#if defined(__cplusplus) && !defined(CINTERFACE)
2256MIDL_INTERFACE("71985f47-1ca1-11d3-9cc8-00c04f7971e0")
2257IBDA_FrequencyFilter : public IUnknown
2258{
2259    virtual HRESULT STDMETHODCALLTYPE put_Autotune(
2260        ULONG ulTransponder) = 0;
2261
2262    virtual HRESULT STDMETHODCALLTYPE get_Autotune(
2263        ULONG *pulTransponder) = 0;
2264
2265    virtual HRESULT STDMETHODCALLTYPE put_Frequency(
2266        ULONG ulFrequency) = 0;
2267
2268    virtual HRESULT STDMETHODCALLTYPE get_Frequency(
2269        ULONG *pulFrequency) = 0;
2270
2271    virtual HRESULT STDMETHODCALLTYPE put_Polarity(
2272        Polarisation Polarity) = 0;
2273
2274    virtual HRESULT STDMETHODCALLTYPE get_Polarity(
2275        Polarisation *pPolarity) = 0;
2276
2277    virtual HRESULT STDMETHODCALLTYPE put_Range(
2278        ULONG ulRange) = 0;
2279
2280    virtual HRESULT STDMETHODCALLTYPE get_Range(
2281        ULONG *pulRange) = 0;
2282
2283    virtual HRESULT STDMETHODCALLTYPE put_Bandwidth(
2284        ULONG ulBandwidth) = 0;
2285
2286    virtual HRESULT STDMETHODCALLTYPE get_Bandwidth(
2287        ULONG *pulBandwidth) = 0;
2288
2289    virtual HRESULT STDMETHODCALLTYPE put_FrequencyMultiplier(
2290        ULONG ulMultiplier) = 0;
2291
2292    virtual HRESULT STDMETHODCALLTYPE get_FrequencyMultiplier(
2293        ULONG *pulMultiplier) = 0;
2294
2295};
2296#ifdef __CRT_UUID_DECL
2297__CRT_UUID_DECL(IBDA_FrequencyFilter, 0x71985f47, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
2298#endif
2299#else
2300typedef struct IBDA_FrequencyFilterVtbl {
2301    BEGIN_INTERFACE
2302
2303    /*** IUnknown methods ***/
2304    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2305        IBDA_FrequencyFilter* This,
2306        REFIID riid,
2307        void **ppvObject);
2308
2309    ULONG (STDMETHODCALLTYPE *AddRef)(
2310        IBDA_FrequencyFilter* This);
2311
2312    ULONG (STDMETHODCALLTYPE *Release)(
2313        IBDA_FrequencyFilter* This);
2314
2315    /*** IBDA_FrequencyFilter methods ***/
2316    HRESULT (STDMETHODCALLTYPE *put_Autotune)(
2317        IBDA_FrequencyFilter* This,
2318        ULONG ulTransponder);
2319
2320    HRESULT (STDMETHODCALLTYPE *get_Autotune)(
2321        IBDA_FrequencyFilter* This,
2322        ULONG *pulTransponder);
2323
2324    HRESULT (STDMETHODCALLTYPE *put_Frequency)(
2325        IBDA_FrequencyFilter* This,
2326        ULONG ulFrequency);
2327
2328    HRESULT (STDMETHODCALLTYPE *get_Frequency)(
2329        IBDA_FrequencyFilter* This,
2330        ULONG *pulFrequency);
2331
2332    HRESULT (STDMETHODCALLTYPE *put_Polarity)(
2333        IBDA_FrequencyFilter* This,
2334        Polarisation Polarity);
2335
2336    HRESULT (STDMETHODCALLTYPE *get_Polarity)(
2337        IBDA_FrequencyFilter* This,
2338        Polarisation *pPolarity);
2339
2340    HRESULT (STDMETHODCALLTYPE *put_Range)(
2341        IBDA_FrequencyFilter* This,
2342        ULONG ulRange);
2343
2344    HRESULT (STDMETHODCALLTYPE *get_Range)(
2345        IBDA_FrequencyFilter* This,
2346        ULONG *pulRange);
2347
2348    HRESULT (STDMETHODCALLTYPE *put_Bandwidth)(
2349        IBDA_FrequencyFilter* This,
2350        ULONG ulBandwidth);
2351
2352    HRESULT (STDMETHODCALLTYPE *get_Bandwidth)(
2353        IBDA_FrequencyFilter* This,
2354        ULONG *pulBandwidth);
2355
2356    HRESULT (STDMETHODCALLTYPE *put_FrequencyMultiplier)(
2357        IBDA_FrequencyFilter* This,
2358        ULONG ulMultiplier);
2359
2360    HRESULT (STDMETHODCALLTYPE *get_FrequencyMultiplier)(
2361        IBDA_FrequencyFilter* This,
2362        ULONG *pulMultiplier);
2363
2364    END_INTERFACE
2365} IBDA_FrequencyFilterVtbl;
2366interface IBDA_FrequencyFilter {
2367    CONST_VTBL IBDA_FrequencyFilterVtbl* lpVtbl;
2368};
2369
2370#ifdef COBJMACROS
2371#ifndef WIDL_C_INLINE_WRAPPERS
2372/*** IUnknown methods ***/
2373#define IBDA_FrequencyFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2374#define IBDA_FrequencyFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
2375#define IBDA_FrequencyFilter_Release(This) (This)->lpVtbl->Release(This)
2376/*** IBDA_FrequencyFilter methods ***/
2377#define IBDA_FrequencyFilter_put_Autotune(This,ulTransponder) (This)->lpVtbl->put_Autotune(This,ulTransponder)
2378#define IBDA_FrequencyFilter_get_Autotune(This,pulTransponder) (This)->lpVtbl->get_Autotune(This,pulTransponder)
2379#define IBDA_FrequencyFilter_put_Frequency(This,ulFrequency) (This)->lpVtbl->put_Frequency(This,ulFrequency)
2380#define IBDA_FrequencyFilter_get_Frequency(This,pulFrequency) (This)->lpVtbl->get_Frequency(This,pulFrequency)
2381#define IBDA_FrequencyFilter_put_Polarity(This,Polarity) (This)->lpVtbl->put_Polarity(This,Polarity)
2382#define IBDA_FrequencyFilter_get_Polarity(This,pPolarity) (This)->lpVtbl->get_Polarity(This,pPolarity)
2383#define IBDA_FrequencyFilter_put_Range(This,ulRange) (This)->lpVtbl->put_Range(This,ulRange)
2384#define IBDA_FrequencyFilter_get_Range(This,pulRange) (This)->lpVtbl->get_Range(This,pulRange)
2385#define IBDA_FrequencyFilter_put_Bandwidth(This,ulBandwidth) (This)->lpVtbl->put_Bandwidth(This,ulBandwidth)
2386#define IBDA_FrequencyFilter_get_Bandwidth(This,pulBandwidth) (This)->lpVtbl->get_Bandwidth(This,pulBandwidth)
2387#define IBDA_FrequencyFilter_put_FrequencyMultiplier(This,ulMultiplier) (This)->lpVtbl->put_FrequencyMultiplier(This,ulMultiplier)
2388#define IBDA_FrequencyFilter_get_FrequencyMultiplier(This,pulMultiplier) (This)->lpVtbl->get_FrequencyMultiplier(This,pulMultiplier)
2389#else
2390/*** IUnknown methods ***/
2391static FORCEINLINE HRESULT IBDA_FrequencyFilter_QueryInterface(IBDA_FrequencyFilter* This,REFIID riid,void **ppvObject) {
2392    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2393}
2394static FORCEINLINE ULONG IBDA_FrequencyFilter_AddRef(IBDA_FrequencyFilter* This) {
2395    return This->lpVtbl->AddRef(This);
2396}
2397static FORCEINLINE ULONG IBDA_FrequencyFilter_Release(IBDA_FrequencyFilter* This) {
2398    return This->lpVtbl->Release(This);
2399}
2400/*** IBDA_FrequencyFilter methods ***/
2401static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Autotune(IBDA_FrequencyFilter* This,ULONG ulTransponder) {
2402    return This->lpVtbl->put_Autotune(This,ulTransponder);
2403}
2404static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Autotune(IBDA_FrequencyFilter* This,ULONG *pulTransponder) {
2405    return This->lpVtbl->get_Autotune(This,pulTransponder);
2406}
2407static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Frequency(IBDA_FrequencyFilter* This,ULONG ulFrequency) {
2408    return This->lpVtbl->put_Frequency(This,ulFrequency);
2409}
2410static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Frequency(IBDA_FrequencyFilter* This,ULONG *pulFrequency) {
2411    return This->lpVtbl->get_Frequency(This,pulFrequency);
2412}
2413static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Polarity(IBDA_FrequencyFilter* This,Polarisation Polarity) {
2414    return This->lpVtbl->put_Polarity(This,Polarity);
2415}
2416static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Polarity(IBDA_FrequencyFilter* This,Polarisation *pPolarity) {
2417    return This->lpVtbl->get_Polarity(This,pPolarity);
2418}
2419static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Range(IBDA_FrequencyFilter* This,ULONG ulRange) {
2420    return This->lpVtbl->put_Range(This,ulRange);
2421}
2422static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Range(IBDA_FrequencyFilter* This,ULONG *pulRange) {
2423    return This->lpVtbl->get_Range(This,pulRange);
2424}
2425static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Bandwidth(IBDA_FrequencyFilter* This,ULONG ulBandwidth) {
2426    return This->lpVtbl->put_Bandwidth(This,ulBandwidth);
2427}
2428static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Bandwidth(IBDA_FrequencyFilter* This,ULONG *pulBandwidth) {
2429    return This->lpVtbl->get_Bandwidth(This,pulBandwidth);
2430}
2431static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_FrequencyMultiplier(IBDA_FrequencyFilter* This,ULONG ulMultiplier) {
2432    return This->lpVtbl->put_FrequencyMultiplier(This,ulMultiplier);
2433}
2434static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_FrequencyMultiplier(IBDA_FrequencyFilter* This,ULONG *pulMultiplier) {
2435    return This->lpVtbl->get_FrequencyMultiplier(This,pulMultiplier);
2436}
2437#endif
2438#endif
2439
2440#endif
2441
2442HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Autotune_Proxy(
2443    IBDA_FrequencyFilter* This,
2444    ULONG ulTransponder);
2445void __RPC_STUB IBDA_FrequencyFilter_put_Autotune_Stub(
2446    IRpcStubBuffer* This,
2447    IRpcChannelBuffer* pRpcChannelBuffer,
2448    PRPC_MESSAGE pRpcMessage,
2449    DWORD* pdwStubPhase);
2450HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Autotune_Proxy(
2451    IBDA_FrequencyFilter* This,
2452    ULONG *pulTransponder);
2453void __RPC_STUB IBDA_FrequencyFilter_get_Autotune_Stub(
2454    IRpcStubBuffer* This,
2455    IRpcChannelBuffer* pRpcChannelBuffer,
2456    PRPC_MESSAGE pRpcMessage,
2457    DWORD* pdwStubPhase);
2458HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Frequency_Proxy(
2459    IBDA_FrequencyFilter* This,
2460    ULONG ulFrequency);
2461void __RPC_STUB IBDA_FrequencyFilter_put_Frequency_Stub(
2462    IRpcStubBuffer* This,
2463    IRpcChannelBuffer* pRpcChannelBuffer,
2464    PRPC_MESSAGE pRpcMessage,
2465    DWORD* pdwStubPhase);
2466HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Frequency_Proxy(
2467    IBDA_FrequencyFilter* This,
2468    ULONG *pulFrequency);
2469void __RPC_STUB IBDA_FrequencyFilter_get_Frequency_Stub(
2470    IRpcStubBuffer* This,
2471    IRpcChannelBuffer* pRpcChannelBuffer,
2472    PRPC_MESSAGE pRpcMessage,
2473    DWORD* pdwStubPhase);
2474HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Polarity_Proxy(
2475    IBDA_FrequencyFilter* This,
2476    Polarisation Polarity);
2477void __RPC_STUB IBDA_FrequencyFilter_put_Polarity_Stub(
2478    IRpcStubBuffer* This,
2479    IRpcChannelBuffer* pRpcChannelBuffer,
2480    PRPC_MESSAGE pRpcMessage,
2481    DWORD* pdwStubPhase);
2482HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Polarity_Proxy(
2483    IBDA_FrequencyFilter* This,
2484    Polarisation *pPolarity);
2485void __RPC_STUB IBDA_FrequencyFilter_get_Polarity_Stub(
2486    IRpcStubBuffer* This,
2487    IRpcChannelBuffer* pRpcChannelBuffer,
2488    PRPC_MESSAGE pRpcMessage,
2489    DWORD* pdwStubPhase);
2490HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Range_Proxy(
2491    IBDA_FrequencyFilter* This,
2492    ULONG ulRange);
2493void __RPC_STUB IBDA_FrequencyFilter_put_Range_Stub(
2494    IRpcStubBuffer* This,
2495    IRpcChannelBuffer* pRpcChannelBuffer,
2496    PRPC_MESSAGE pRpcMessage,
2497    DWORD* pdwStubPhase);
2498HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Range_Proxy(
2499    IBDA_FrequencyFilter* This,
2500    ULONG *pulRange);
2501void __RPC_STUB IBDA_FrequencyFilter_get_Range_Stub(
2502    IRpcStubBuffer* This,
2503    IRpcChannelBuffer* pRpcChannelBuffer,
2504    PRPC_MESSAGE pRpcMessage,
2505    DWORD* pdwStubPhase);
2506HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Bandwidth_Proxy(
2507    IBDA_FrequencyFilter* This,
2508    ULONG ulBandwidth);
2509void __RPC_STUB IBDA_FrequencyFilter_put_Bandwidth_Stub(
2510    IRpcStubBuffer* This,
2511    IRpcChannelBuffer* pRpcChannelBuffer,
2512    PRPC_MESSAGE pRpcMessage,
2513    DWORD* pdwStubPhase);
2514HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Bandwidth_Proxy(
2515    IBDA_FrequencyFilter* This,
2516    ULONG *pulBandwidth);
2517void __RPC_STUB IBDA_FrequencyFilter_get_Bandwidth_Stub(
2518    IRpcStubBuffer* This,
2519    IRpcChannelBuffer* pRpcChannelBuffer,
2520    PRPC_MESSAGE pRpcMessage,
2521    DWORD* pdwStubPhase);
2522HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_FrequencyMultiplier_Proxy(
2523    IBDA_FrequencyFilter* This,
2524    ULONG ulMultiplier);
2525void __RPC_STUB IBDA_FrequencyFilter_put_FrequencyMultiplier_Stub(
2526    IRpcStubBuffer* This,
2527    IRpcChannelBuffer* pRpcChannelBuffer,
2528    PRPC_MESSAGE pRpcMessage,
2529    DWORD* pdwStubPhase);
2530HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_FrequencyMultiplier_Proxy(
2531    IBDA_FrequencyFilter* This,
2532    ULONG *pulMultiplier);
2533void __RPC_STUB IBDA_FrequencyFilter_get_FrequencyMultiplier_Stub(
2534    IRpcStubBuffer* This,
2535    IRpcChannelBuffer* pRpcChannelBuffer,
2536    PRPC_MESSAGE pRpcMessage,
2537    DWORD* pdwStubPhase);
2538
2539#endif  /* __IBDA_FrequencyFilter_INTERFACE_DEFINED__ */
2540
2541/*****************************************************************************
2542 * IBDA_LNBInfo interface
2543 */
2544#ifndef __IBDA_LNBInfo_INTERFACE_DEFINED__
2545#define __IBDA_LNBInfo_INTERFACE_DEFINED__
2546
2547DEFINE_GUID(IID_IBDA_LNBInfo, 0x992cf102, 0x49f9, 0x4719, 0xa6,0x64, 0xc4,0xf2,0x3e,0x24,0x08,0xf4);
2548#if defined(__cplusplus) && !defined(CINTERFACE)
2549MIDL_INTERFACE("992cf102-49f9-4719-a664-c4f23e2408f4")
2550IBDA_LNBInfo : public IUnknown
2551{
2552    virtual HRESULT STDMETHODCALLTYPE put_LocalOscilatorFrequencyLowBand(
2553        ULONG ulLOFLow) = 0;
2554
2555    virtual HRESULT STDMETHODCALLTYPE get_LocalOscilatorFrequencyLowBand(
2556        ULONG *pulLOFLow) = 0;
2557
2558    virtual HRESULT STDMETHODCALLTYPE put_LocalOscilatorFrequencyHighBand(
2559        ULONG ulLOFHigh) = 0;
2560
2561    virtual HRESULT STDMETHODCALLTYPE get_LocalOscilatorFrequencyHighBand(
2562        ULONG *pulLOFHigh) = 0;
2563
2564    virtual HRESULT STDMETHODCALLTYPE put_HighLowSwitchFrequency(
2565        ULONG ulSwitchFrequency) = 0;
2566
2567    virtual HRESULT STDMETHODCALLTYPE get_HighLowSwitchFrequency(
2568        ULONG *pulSwitchFrequency) = 0;
2569
2570};
2571#ifdef __CRT_UUID_DECL
2572__CRT_UUID_DECL(IBDA_LNBInfo, 0x992cf102, 0x49f9, 0x4719, 0xa6,0x64, 0xc4,0xf2,0x3e,0x24,0x08,0xf4)
2573#endif
2574#else
2575typedef struct IBDA_LNBInfoVtbl {
2576    BEGIN_INTERFACE
2577
2578    /*** IUnknown methods ***/
2579    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2580        IBDA_LNBInfo* This,
2581        REFIID riid,
2582        void **ppvObject);
2583
2584    ULONG (STDMETHODCALLTYPE *AddRef)(
2585        IBDA_LNBInfo* This);
2586
2587    ULONG (STDMETHODCALLTYPE *Release)(
2588        IBDA_LNBInfo* This);
2589
2590    /*** IBDA_LNBInfo methods ***/
2591    HRESULT (STDMETHODCALLTYPE *put_LocalOscilatorFrequencyLowBand)(
2592        IBDA_LNBInfo* This,
2593        ULONG ulLOFLow);
2594
2595    HRESULT (STDMETHODCALLTYPE *get_LocalOscilatorFrequencyLowBand)(
2596        IBDA_LNBInfo* This,
2597        ULONG *pulLOFLow);
2598
2599    HRESULT (STDMETHODCALLTYPE *put_LocalOscilatorFrequencyHighBand)(
2600        IBDA_LNBInfo* This,
2601        ULONG ulLOFHigh);
2602
2603    HRESULT (STDMETHODCALLTYPE *get_LocalOscilatorFrequencyHighBand)(
2604        IBDA_LNBInfo* This,
2605        ULONG *pulLOFHigh);
2606
2607    HRESULT (STDMETHODCALLTYPE *put_HighLowSwitchFrequency)(
2608        IBDA_LNBInfo* This,
2609        ULONG ulSwitchFrequency);
2610
2611    HRESULT (STDMETHODCALLTYPE *get_HighLowSwitchFrequency)(
2612        IBDA_LNBInfo* This,
2613        ULONG *pulSwitchFrequency);
2614
2615    END_INTERFACE
2616} IBDA_LNBInfoVtbl;
2617interface IBDA_LNBInfo {
2618    CONST_VTBL IBDA_LNBInfoVtbl* lpVtbl;
2619};
2620
2621#ifdef COBJMACROS
2622#ifndef WIDL_C_INLINE_WRAPPERS
2623/*** IUnknown methods ***/
2624#define IBDA_LNBInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2625#define IBDA_LNBInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
2626#define IBDA_LNBInfo_Release(This) (This)->lpVtbl->Release(This)
2627/*** IBDA_LNBInfo methods ***/
2628#define IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand(This,ulLOFLow) (This)->lpVtbl->put_LocalOscilatorFrequencyLowBand(This,ulLOFLow)
2629#define IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand(This,pulLOFLow) (This)->lpVtbl->get_LocalOscilatorFrequencyLowBand(This,pulLOFLow)
2630#define IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand(This,ulLOFHigh) (This)->lpVtbl->put_LocalOscilatorFrequencyHighBand(This,ulLOFHigh)
2631#define IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand(This,pulLOFHigh) (This)->lpVtbl->get_LocalOscilatorFrequencyHighBand(This,pulLOFHigh)
2632#define IBDA_LNBInfo_put_HighLowSwitchFrequency(This,ulSwitchFrequency) (This)->lpVtbl->put_HighLowSwitchFrequency(This,ulSwitchFrequency)
2633#define IBDA_LNBInfo_get_HighLowSwitchFrequency(This,pulSwitchFrequency) (This)->lpVtbl->get_HighLowSwitchFrequency(This,pulSwitchFrequency)
2634#else
2635/*** IUnknown methods ***/
2636static FORCEINLINE HRESULT IBDA_LNBInfo_QueryInterface(IBDA_LNBInfo* This,REFIID riid,void **ppvObject) {
2637    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2638}
2639static FORCEINLINE ULONG IBDA_LNBInfo_AddRef(IBDA_LNBInfo* This) {
2640    return This->lpVtbl->AddRef(This);
2641}
2642static FORCEINLINE ULONG IBDA_LNBInfo_Release(IBDA_LNBInfo* This) {
2643    return This->lpVtbl->Release(This);
2644}
2645/*** IBDA_LNBInfo methods ***/
2646static FORCEINLINE HRESULT IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand(IBDA_LNBInfo* This,ULONG ulLOFLow) {
2647    return This->lpVtbl->put_LocalOscilatorFrequencyLowBand(This,ulLOFLow);
2648}
2649static FORCEINLINE HRESULT IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand(IBDA_LNBInfo* This,ULONG *pulLOFLow) {
2650    return This->lpVtbl->get_LocalOscilatorFrequencyLowBand(This,pulLOFLow);
2651}
2652static FORCEINLINE HRESULT IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand(IBDA_LNBInfo* This,ULONG ulLOFHigh) {
2653    return This->lpVtbl->put_LocalOscilatorFrequencyHighBand(This,ulLOFHigh);
2654}
2655static FORCEINLINE HRESULT IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand(IBDA_LNBInfo* This,ULONG *pulLOFHigh) {
2656    return This->lpVtbl->get_LocalOscilatorFrequencyHighBand(This,pulLOFHigh);
2657}
2658static FORCEINLINE HRESULT IBDA_LNBInfo_put_HighLowSwitchFrequency(IBDA_LNBInfo* This,ULONG ulSwitchFrequency) {
2659    return This->lpVtbl->put_HighLowSwitchFrequency(This,ulSwitchFrequency);
2660}
2661static FORCEINLINE HRESULT IBDA_LNBInfo_get_HighLowSwitchFrequency(IBDA_LNBInfo* This,ULONG *pulSwitchFrequency) {
2662    return This->lpVtbl->get_HighLowSwitchFrequency(This,pulSwitchFrequency);
2663}
2664#endif
2665#endif
2666
2667#endif
2668
2669HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand_Proxy(
2670    IBDA_LNBInfo* This,
2671    ULONG ulLOFLow);
2672void __RPC_STUB IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand_Stub(
2673    IRpcStubBuffer* This,
2674    IRpcChannelBuffer* pRpcChannelBuffer,
2675    PRPC_MESSAGE pRpcMessage,
2676    DWORD* pdwStubPhase);
2677HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand_Proxy(
2678    IBDA_LNBInfo* This,
2679    ULONG *pulLOFLow);
2680void __RPC_STUB IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand_Stub(
2681    IRpcStubBuffer* This,
2682    IRpcChannelBuffer* pRpcChannelBuffer,
2683    PRPC_MESSAGE pRpcMessage,
2684    DWORD* pdwStubPhase);
2685HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand_Proxy(
2686    IBDA_LNBInfo* This,
2687    ULONG ulLOFHigh);
2688void __RPC_STUB IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand_Stub(
2689    IRpcStubBuffer* This,
2690    IRpcChannelBuffer* pRpcChannelBuffer,
2691    PRPC_MESSAGE pRpcMessage,
2692    DWORD* pdwStubPhase);
2693HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand_Proxy(
2694    IBDA_LNBInfo* This,
2695    ULONG *pulLOFHigh);
2696void __RPC_STUB IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand_Stub(
2697    IRpcStubBuffer* This,
2698    IRpcChannelBuffer* pRpcChannelBuffer,
2699    PRPC_MESSAGE pRpcMessage,
2700    DWORD* pdwStubPhase);
2701HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_put_HighLowSwitchFrequency_Proxy(
2702    IBDA_LNBInfo* This,
2703    ULONG ulSwitchFrequency);
2704void __RPC_STUB IBDA_LNBInfo_put_HighLowSwitchFrequency_Stub(
2705    IRpcStubBuffer* This,
2706    IRpcChannelBuffer* pRpcChannelBuffer,
2707    PRPC_MESSAGE pRpcMessage,
2708    DWORD* pdwStubPhase);
2709HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_get_HighLowSwitchFrequency_Proxy(
2710    IBDA_LNBInfo* This,
2711    ULONG *pulSwitchFrequency);
2712void __RPC_STUB IBDA_LNBInfo_get_HighLowSwitchFrequency_Stub(
2713    IRpcStubBuffer* This,
2714    IRpcChannelBuffer* pRpcChannelBuffer,
2715    PRPC_MESSAGE pRpcMessage,
2716    DWORD* pdwStubPhase);
2717
2718#endif  /* __IBDA_LNBInfo_INTERFACE_DEFINED__ */
2719
2720/*****************************************************************************
2721 * IBDA_DiseqCommand interface
2722 */
2723#ifndef __IBDA_DiseqCommand_INTERFACE_DEFINED__
2724#define __IBDA_DiseqCommand_INTERFACE_DEFINED__
2725
2726DEFINE_GUID(IID_IBDA_DiseqCommand, 0xf84e2ab0, 0x3c6b, 0x45e3, 0xa0,0xfc, 0x86,0x69,0xd4,0xb8,0x1f,0x11);
2727#if defined(__cplusplus) && !defined(CINTERFACE)
2728MIDL_INTERFACE("f84e2ab0-3c6b-45e3-a0fc-8669d4b81f11")
2729IBDA_DiseqCommand : public IUnknown
2730{
2731    virtual HRESULT STDMETHODCALLTYPE put_EnableDiseqCommands(
2732        BOOLEAN bEnable) = 0;
2733
2734    virtual HRESULT STDMETHODCALLTYPE put_DiseqLNBSource(
2735        ULONG ulLNBSource) = 0;
2736
2737    virtual HRESULT STDMETHODCALLTYPE put_DiseqUseToneBurst(
2738        BOOLEAN bUseToneBurst) = 0;
2739
2740    virtual HRESULT STDMETHODCALLTYPE put_DiseqRepeats(
2741        ULONG ulRepeats) = 0;
2742
2743    virtual HRESULT STDMETHODCALLTYPE put_DiseqSendCommand(
2744        ULONG ulRequestId,
2745        ULONG ulcbCommandLen,
2746        BYTE *pbCommand) = 0;
2747
2748    virtual HRESULT STDMETHODCALLTYPE get_DiseqResponse(
2749        ULONG ulRequestId,
2750        ULONG *pulcbResponseLen,
2751        BYTE pbResponse[]) = 0;
2752
2753};
2754#ifdef __CRT_UUID_DECL
2755__CRT_UUID_DECL(IBDA_DiseqCommand, 0xf84e2ab0, 0x3c6b, 0x45e3, 0xa0,0xfc, 0x86,0x69,0xd4,0xb8,0x1f,0x11)
2756#endif
2757#else
2758typedef struct IBDA_DiseqCommandVtbl {
2759    BEGIN_INTERFACE
2760
2761    /*** IUnknown methods ***/
2762    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2763        IBDA_DiseqCommand* This,
2764        REFIID riid,
2765        void **ppvObject);
2766
2767    ULONG (STDMETHODCALLTYPE *AddRef)(
2768        IBDA_DiseqCommand* This);
2769
2770    ULONG (STDMETHODCALLTYPE *Release)(
2771        IBDA_DiseqCommand* This);
2772
2773    /*** IBDA_DiseqCommand methods ***/
2774    HRESULT (STDMETHODCALLTYPE *put_EnableDiseqCommands)(
2775        IBDA_DiseqCommand* This,
2776        BOOLEAN bEnable);
2777
2778    HRESULT (STDMETHODCALLTYPE *put_DiseqLNBSource)(
2779        IBDA_DiseqCommand* This,
2780        ULONG ulLNBSource);
2781
2782    HRESULT (STDMETHODCALLTYPE *put_DiseqUseToneBurst)(
2783        IBDA_DiseqCommand* This,
2784        BOOLEAN bUseToneBurst);
2785
2786    HRESULT (STDMETHODCALLTYPE *put_DiseqRepeats)(
2787        IBDA_DiseqCommand* This,
2788        ULONG ulRepeats);
2789
2790    HRESULT (STDMETHODCALLTYPE *put_DiseqSendCommand)(
2791        IBDA_DiseqCommand* This,
2792        ULONG ulRequestId,
2793        ULONG ulcbCommandLen,
2794        BYTE *pbCommand);
2795
2796    HRESULT (STDMETHODCALLTYPE *get_DiseqResponse)(
2797        IBDA_DiseqCommand* This,
2798        ULONG ulRequestId,
2799        ULONG *pulcbResponseLen,
2800        BYTE pbResponse[]);
2801
2802    END_INTERFACE
2803} IBDA_DiseqCommandVtbl;
2804interface IBDA_DiseqCommand {
2805    CONST_VTBL IBDA_DiseqCommandVtbl* lpVtbl;
2806};
2807
2808#ifdef COBJMACROS
2809#ifndef WIDL_C_INLINE_WRAPPERS
2810/*** IUnknown methods ***/
2811#define IBDA_DiseqCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2812#define IBDA_DiseqCommand_AddRef(This) (This)->lpVtbl->AddRef(This)
2813#define IBDA_DiseqCommand_Release(This) (This)->lpVtbl->Release(This)
2814/*** IBDA_DiseqCommand methods ***/
2815#define IBDA_DiseqCommand_put_EnableDiseqCommands(This,bEnable) (This)->lpVtbl->put_EnableDiseqCommands(This,bEnable)
2816#define IBDA_DiseqCommand_put_DiseqLNBSource(This,ulLNBSource) (This)->lpVtbl->put_DiseqLNBSource(This,ulLNBSource)
2817#define IBDA_DiseqCommand_put_DiseqUseToneBurst(This,bUseToneBurst) (This)->lpVtbl->put_DiseqUseToneBurst(This,bUseToneBurst)
2818#define IBDA_DiseqCommand_put_DiseqRepeats(This,ulRepeats) (This)->lpVtbl->put_DiseqRepeats(This,ulRepeats)
2819#define IBDA_DiseqCommand_put_DiseqSendCommand(This,ulRequestId,ulcbCommandLen,pbCommand) (This)->lpVtbl->put_DiseqSendCommand(This,ulRequestId,ulcbCommandLen,pbCommand)
2820#define IBDA_DiseqCommand_get_DiseqResponse(This,ulRequestId,pulcbResponseLen,pbResponse) (This)->lpVtbl->get_DiseqResponse(This,ulRequestId,pulcbResponseLen,pbResponse)
2821#else
2822/*** IUnknown methods ***/
2823static FORCEINLINE HRESULT IBDA_DiseqCommand_QueryInterface(IBDA_DiseqCommand* This,REFIID riid,void **ppvObject) {
2824    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2825}
2826static FORCEINLINE ULONG IBDA_DiseqCommand_AddRef(IBDA_DiseqCommand* This) {
2827    return This->lpVtbl->AddRef(This);
2828}
2829static FORCEINLINE ULONG IBDA_DiseqCommand_Release(IBDA_DiseqCommand* This) {
2830    return This->lpVtbl->Release(This);
2831}
2832/*** IBDA_DiseqCommand methods ***/
2833static FORCEINLINE HRESULT IBDA_DiseqCommand_put_EnableDiseqCommands(IBDA_DiseqCommand* This,BOOLEAN bEnable) {
2834    return This->lpVtbl->put_EnableDiseqCommands(This,bEnable);
2835}
2836static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqLNBSource(IBDA_DiseqCommand* This,ULONG ulLNBSource) {
2837    return This->lpVtbl->put_DiseqLNBSource(This,ulLNBSource);
2838}
2839static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqUseToneBurst(IBDA_DiseqCommand* This,BOOLEAN bUseToneBurst) {
2840    return This->lpVtbl->put_DiseqUseToneBurst(This,bUseToneBurst);
2841}
2842static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqRepeats(IBDA_DiseqCommand* This,ULONG ulRepeats) {
2843    return This->lpVtbl->put_DiseqRepeats(This,ulRepeats);
2844}
2845static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqSendCommand(IBDA_DiseqCommand* This,ULONG ulRequestId,ULONG ulcbCommandLen,BYTE *pbCommand) {
2846    return This->lpVtbl->put_DiseqSendCommand(This,ulRequestId,ulcbCommandLen,pbCommand);
2847}
2848static FORCEINLINE HRESULT IBDA_DiseqCommand_get_DiseqResponse(IBDA_DiseqCommand* This,ULONG ulRequestId,ULONG *pulcbResponseLen,BYTE pbResponse[]) {
2849    return This->lpVtbl->get_DiseqResponse(This,ulRequestId,pulcbResponseLen,pbResponse);
2850}
2851#endif
2852#endif
2853
2854#endif
2855
2856HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_EnableDiseqCommands_Proxy(
2857    IBDA_DiseqCommand* This,
2858    BOOLEAN bEnable);
2859void __RPC_STUB IBDA_DiseqCommand_put_EnableDiseqCommands_Stub(
2860    IRpcStubBuffer* This,
2861    IRpcChannelBuffer* pRpcChannelBuffer,
2862    PRPC_MESSAGE pRpcMessage,
2863    DWORD* pdwStubPhase);
2864HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqLNBSource_Proxy(
2865    IBDA_DiseqCommand* This,
2866    ULONG ulLNBSource);
2867void __RPC_STUB IBDA_DiseqCommand_put_DiseqLNBSource_Stub(
2868    IRpcStubBuffer* This,
2869    IRpcChannelBuffer* pRpcChannelBuffer,
2870    PRPC_MESSAGE pRpcMessage,
2871    DWORD* pdwStubPhase);
2872HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqUseToneBurst_Proxy(
2873    IBDA_DiseqCommand* This,
2874    BOOLEAN bUseToneBurst);
2875void __RPC_STUB IBDA_DiseqCommand_put_DiseqUseToneBurst_Stub(
2876    IRpcStubBuffer* This,
2877    IRpcChannelBuffer* pRpcChannelBuffer,
2878    PRPC_MESSAGE pRpcMessage,
2879    DWORD* pdwStubPhase);
2880HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqRepeats_Proxy(
2881    IBDA_DiseqCommand* This,
2882    ULONG ulRepeats);
2883void __RPC_STUB IBDA_DiseqCommand_put_DiseqRepeats_Stub(
2884    IRpcStubBuffer* This,
2885    IRpcChannelBuffer* pRpcChannelBuffer,
2886    PRPC_MESSAGE pRpcMessage,
2887    DWORD* pdwStubPhase);
2888HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqSendCommand_Proxy(
2889    IBDA_DiseqCommand* This,
2890    ULONG ulRequestId,
2891    ULONG ulcbCommandLen,
2892    BYTE *pbCommand);
2893void __RPC_STUB IBDA_DiseqCommand_put_DiseqSendCommand_Stub(
2894    IRpcStubBuffer* This,
2895    IRpcChannelBuffer* pRpcChannelBuffer,
2896    PRPC_MESSAGE pRpcMessage,
2897    DWORD* pdwStubPhase);
2898HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_get_DiseqResponse_Proxy(
2899    IBDA_DiseqCommand* This,
2900    ULONG ulRequestId,
2901    ULONG *pulcbResponseLen,
2902    BYTE pbResponse[]);
2903void __RPC_STUB IBDA_DiseqCommand_get_DiseqResponse_Stub(
2904    IRpcStubBuffer* This,
2905    IRpcChannelBuffer* pRpcChannelBuffer,
2906    PRPC_MESSAGE pRpcMessage,
2907    DWORD* pdwStubPhase);
2908
2909#endif  /* __IBDA_DiseqCommand_INTERFACE_DEFINED__ */
2910
2911/*****************************************************************************
2912 * IBDA_AutoDemodulate interface
2913 */
2914#ifndef __IBDA_AutoDemodulate_INTERFACE_DEFINED__
2915#define __IBDA_AutoDemodulate_INTERFACE_DEFINED__
2916
2917DEFINE_GUID(IID_IBDA_AutoDemodulate, 0xddf15b12, 0xbd25, 0x11d2, 0x9c,0xa0, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
2918#if defined(__cplusplus) && !defined(CINTERFACE)
2919MIDL_INTERFACE("ddf15b12-bd25-11d2-9ca0-00c04f7971e0")
2920IBDA_AutoDemodulate : public IUnknown
2921{
2922    virtual HRESULT STDMETHODCALLTYPE put_AutoDemodulate(
2923        ) = 0;
2924
2925};
2926#ifdef __CRT_UUID_DECL
2927__CRT_UUID_DECL(IBDA_AutoDemodulate, 0xddf15b12, 0xbd25, 0x11d2, 0x9c,0xa0, 0x00,0xc0,0x4f,0x79,0x71,0xe0)
2928#endif
2929#else
2930typedef struct IBDA_AutoDemodulateVtbl {
2931    BEGIN_INTERFACE
2932
2933    /*** IUnknown methods ***/
2934    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2935        IBDA_AutoDemodulate* This,
2936        REFIID riid,
2937        void **ppvObject);
2938
2939    ULONG (STDMETHODCALLTYPE *AddRef)(
2940        IBDA_AutoDemodulate* This);
2941
2942    ULONG (STDMETHODCALLTYPE *Release)(
2943        IBDA_AutoDemodulate* This);
2944
2945    /*** IBDA_AutoDemodulate methods ***/
2946    HRESULT (STDMETHODCALLTYPE *put_AutoDemodulate)(
2947        IBDA_AutoDemodulate* This);
2948
2949    END_INTERFACE
2950} IBDA_AutoDemodulateVtbl;
2951interface IBDA_AutoDemodulate {
2952    CONST_VTBL IBDA_AutoDemodulateVtbl* lpVtbl;
2953};
2954
2955#ifdef COBJMACROS
2956#ifndef WIDL_C_INLINE_WRAPPERS
2957/*** IUnknown methods ***/
2958#define IBDA_AutoDemodulate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2959#define IBDA_AutoDemodulate_AddRef(This) (This)->lpVtbl->AddRef(This)
2960#define IBDA_AutoDemodulate_Release(This) (This)->lpVtbl->Release(This)
2961/*** IBDA_AutoDemodulate methods ***/
2962#define IBDA_AutoDemodulate_put_AutoDemodulate(This) (This)->lpVtbl->put_AutoDemodulate(This)
2963#else
2964/*** IUnknown methods ***/
2965static FORCEINLINE HRESULT IBDA_AutoDemodulate_QueryInterface(IBDA_AutoDemodulate* This,REFIID riid,void **ppvObject) {
2966    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2967}
2968static FORCEINLINE ULONG IBDA_AutoDemodulate_AddRef(IBDA_AutoDemodulate* This) {
2969    return This->lpVtbl->AddRef(This);
2970}
2971static FORCEINLINE ULONG IBDA_AutoDemodulate_Release(IBDA_AutoDemodulate* This) {
2972    return This->lpVtbl->Release(This);
2973}
2974/*** IBDA_AutoDemodulate methods ***/
2975static FORCEINLINE HRESULT IBDA_AutoDemodulate_put_AutoDemodulate(IBDA_AutoDemodulate* This) {
2976    return This->lpVtbl->put_AutoDemodulate(This);
2977}
2978#endif
2979#endif
2980
2981#endif
2982
2983HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulate_put_AutoDemodulate_Proxy(
2984    IBDA_AutoDemodulate* This);
2985void __RPC_STUB IBDA_AutoDemodulate_put_AutoDemodulate_Stub(
2986    IRpcStubBuffer* This,
2987    IRpcChannelBuffer* pRpcChannelBuffer,
2988    PRPC_MESSAGE pRpcMessage,
2989    DWORD* pdwStubPhase);
2990
2991#endif  /* __IBDA_AutoDemodulate_INTERFACE_DEFINED__ */
2992
2993/*****************************************************************************
2994 * IBDA_AutoDemodulateEx interface
2995 */
2996#ifndef __IBDA_AutoDemodulateEx_INTERFACE_DEFINED__
2997#define __IBDA_AutoDemodulateEx_INTERFACE_DEFINED__
2998
2999DEFINE_GUID(IID_IBDA_AutoDemodulateEx, 0x34518d13, 0x1182, 0x48e6, 0xb2,0x8f, 0xb2,0x49,0x87,0x78,0x73,0x26);
3000#if defined(__cplusplus) && !defined(CINTERFACE)
3001MIDL_INTERFACE("34518d13-1182-48e6-b28f-b24987787326")
3002IBDA_AutoDemodulateEx : public IBDA_AutoDemodulate
3003{
3004    virtual HRESULT STDMETHODCALLTYPE get_SupportedDeviceNodeTypes(
3005        ULONG ulcDeviceNodeTypesMax,
3006        ULONG *pulcDeviceNodeTypes,
3007        GUID *pguidDeviceNodeTypes) = 0;
3008
3009    virtual HRESULT STDMETHODCALLTYPE get_SupportedVideoFormats(
3010        ULONG *pulAMTunerModeType,
3011        ULONG *pulAnalogVideoStandard) = 0;
3012
3013    virtual HRESULT STDMETHODCALLTYPE get_AuxInputCount(
3014        ULONG *pulCompositeCount,
3015        ULONG *pulSvideoCount) = 0;
3016
3017};
3018#ifdef __CRT_UUID_DECL
3019__CRT_UUID_DECL(IBDA_AutoDemodulateEx, 0x34518d13, 0x1182, 0x48e6, 0xb2,0x8f, 0xb2,0x49,0x87,0x78,0x73,0x26)
3020#endif
3021#else
3022typedef struct IBDA_AutoDemodulateExVtbl {
3023    BEGIN_INTERFACE
3024
3025    /*** IUnknown methods ***/
3026    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3027        IBDA_AutoDemodulateEx* This,
3028        REFIID riid,
3029        void **ppvObject);
3030
3031    ULONG (STDMETHODCALLTYPE *AddRef)(
3032        IBDA_AutoDemodulateEx* This);
3033
3034    ULONG (STDMETHODCALLTYPE *Release)(
3035        IBDA_AutoDemodulateEx* This);
3036
3037    /*** IBDA_AutoDemodulate methods ***/
3038    HRESULT (STDMETHODCALLTYPE *put_AutoDemodulate)(
3039        IBDA_AutoDemodulateEx* This);
3040
3041    /*** IBDA_AutoDemodulateEx methods ***/
3042    HRESULT (STDMETHODCALLTYPE *get_SupportedDeviceNodeTypes)(
3043        IBDA_AutoDemodulateEx* This,
3044        ULONG ulcDeviceNodeTypesMax,
3045        ULONG *pulcDeviceNodeTypes,
3046        GUID *pguidDeviceNodeTypes);
3047
3048    HRESULT (STDMETHODCALLTYPE *get_SupportedVideoFormats)(
3049        IBDA_AutoDemodulateEx* This,
3050        ULONG *pulAMTunerModeType,
3051        ULONG *pulAnalogVideoStandard);
3052
3053    HRESULT (STDMETHODCALLTYPE *get_AuxInputCount)(
3054        IBDA_AutoDemodulateEx* This,
3055        ULONG *pulCompositeCount,
3056        ULONG *pulSvideoCount);
3057
3058    END_INTERFACE
3059} IBDA_AutoDemodulateExVtbl;
3060interface IBDA_AutoDemodulateEx {
3061    CONST_VTBL IBDA_AutoDemodulateExVtbl* lpVtbl;
3062};
3063
3064#ifdef COBJMACROS
3065#ifndef WIDL_C_INLINE_WRAPPERS
3066/*** IUnknown methods ***/
3067#define IBDA_AutoDemodulateEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3068#define IBDA_AutoDemodulateEx_AddRef(This) (This)->lpVtbl->AddRef(This)
3069#define IBDA_AutoDemodulateEx_Release(This) (This)->lpVtbl->Release(This)
3070/*** IBDA_AutoDemodulate methods ***/
3071#define IBDA_AutoDemodulateEx_put_AutoDemodulate(This) (This)->lpVtbl->put_AutoDemodulate(This)
3072/*** IBDA_AutoDemodulateEx methods ***/
3073#define IBDA_AutoDemodulateEx_get_SupportedDeviceNodeTypes(This,ulcDeviceNodeTypesMax,pulcDeviceNodeTypes,pguidDeviceNodeTypes) (This)->lpVtbl->get_SupportedDeviceNodeTypes(This,ulcDeviceNodeTypesMax,pulcDeviceNodeTypes,pguidDeviceNodeTypes)
3074#define IBDA_AutoDemodulateEx_get_SupportedVideoFormats(This,pulAMTunerModeType,pulAnalogVideoStandard) (This)->lpVtbl->get_SupportedVideoFormats(This,pulAMTunerModeType,pulAnalogVideoStandard)
3075#define IBDA_AutoDemodulateEx_get_AuxInputCount(This,pulCompositeCount,pulSvideoCount) (This)->lpVtbl->get_AuxInputCount(This,pulCompositeCount,pulSvideoCount)
3076#else
3077/*** IUnknown methods ***/
3078static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_QueryInterface(IBDA_AutoDemodulateEx* This,REFIID riid,void **ppvObject) {
3079    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3080}
3081static FORCEINLINE ULONG IBDA_AutoDemodulateEx_AddRef(IBDA_AutoDemodulateEx* This) {
3082    return This->lpVtbl->AddRef(This);
3083}
3084static FORCEINLINE ULONG IBDA_AutoDemodulateEx_Release(IBDA_AutoDemodulateEx* This) {
3085    return This->lpVtbl->Release(This);
3086}
3087/*** IBDA_AutoDemodulate methods ***/
3088static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_put_AutoDemodulate(IBDA_AutoDemodulateEx* This) {
3089    return This->lpVtbl->put_AutoDemodulate(This);
3090}
3091/*** IBDA_AutoDemodulateEx methods ***/
3092static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_get_SupportedDeviceNodeTypes(IBDA_AutoDemodulateEx* This,ULONG ulcDeviceNodeTypesMax,ULONG *pulcDeviceNodeTypes,GUID *pguidDeviceNodeTypes) {
3093    return This->lpVtbl->get_SupportedDeviceNodeTypes(This,ulcDeviceNodeTypesMax,pulcDeviceNodeTypes,pguidDeviceNodeTypes);
3094}
3095static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_get_SupportedVideoFormats(IBDA_AutoDemodulateEx* This,ULONG *pulAMTunerModeType,ULONG *pulAnalogVideoStandard) {
3096    return This->lpVtbl->get_SupportedVideoFormats(This,pulAMTunerModeType,pulAnalogVideoStandard);
3097}
3098static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_get_AuxInputCount(IBDA_AutoDemodulateEx* This,ULONG *pulCompositeCount,ULONG *pulSvideoCount) {
3099    return This->lpVtbl->get_AuxInputCount(This,pulCompositeCount,pulSvideoCount);
3100}
3101#endif
3102#endif
3103
3104#endif
3105
3106HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulateEx_get_SupportedDeviceNodeTypes_Proxy(
3107    IBDA_AutoDemodulateEx* This,
3108    ULONG ulcDeviceNodeTypesMax,
3109    ULONG *pulcDeviceNodeTypes,
3110    GUID *pguidDeviceNodeTypes);
3111void __RPC_STUB IBDA_AutoDemodulateEx_get_SupportedDeviceNodeTypes_Stub(
3112    IRpcStubBuffer* This,
3113    IRpcChannelBuffer* pRpcChannelBuffer,
3114    PRPC_MESSAGE pRpcMessage,
3115    DWORD* pdwStubPhase);
3116HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulateEx_get_SupportedVideoFormats_Proxy(
3117    IBDA_AutoDemodulateEx* This,
3118    ULONG *pulAMTunerModeType,
3119    ULONG *pulAnalogVideoStandard);
3120void __RPC_STUB IBDA_AutoDemodulateEx_get_SupportedVideoFormats_Stub(
3121    IRpcStubBuffer* This,
3122    IRpcChannelBuffer* pRpcChannelBuffer,
3123    PRPC_MESSAGE pRpcMessage,
3124    DWORD* pdwStubPhase);
3125HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulateEx_get_AuxInputCount_Proxy(
3126    IBDA_AutoDemodulateEx* This,
3127    ULONG *pulCompositeCount,
3128    ULONG *pulSvideoCount);
3129void __RPC_STUB IBDA_AutoDemodulateEx_get_AuxInputCount_Stub(
3130    IRpcStubBuffer* This,
3131    IRpcChannelBuffer* pRpcChannelBuffer,
3132    PRPC_MESSAGE pRpcMessage,
3133    DWORD* pdwStubPhase);
3134
3135#endif  /* __IBDA_AutoDemodulateEx_INTERFACE_DEFINED__ */
3136
3137/*****************************************************************************
3138 * IBDA_DigitalDemodulator interface
3139 */
3140#ifndef __IBDA_DigitalDemodulator_INTERFACE_DEFINED__
3141#define __IBDA_DigitalDemodulator_INTERFACE_DEFINED__
3142
3143DEFINE_GUID(IID_IBDA_DigitalDemodulator, 0xef30f379, 0x985b, 0x4d10, 0xb6,0x40, 0xa7,0x9d,0x5e,0x04,0xe1,0xe0);
3144#if defined(__cplusplus) && !defined(CINTERFACE)
3145MIDL_INTERFACE("ef30f379-985b-4d10-b640-a79d5e04e1e0")
3146IBDA_DigitalDemodulator : public IUnknown
3147{
3148    virtual HRESULT STDMETHODCALLTYPE put_ModulationType(
3149        ModulationType *pModulationType) = 0;
3150
3151    virtual HRESULT STDMETHODCALLTYPE get_ModulationType(
3152        ModulationType *pModulationType) = 0;
3153
3154    virtual HRESULT STDMETHODCALLTYPE put_InnerFECMethod(
3155        FECMethod *pFECMethod) = 0;
3156
3157    virtual HRESULT STDMETHODCALLTYPE get_InnerFECMethod(
3158        FECMethod *pFECMethod) = 0;
3159
3160    virtual HRESULT STDMETHODCALLTYPE put_InnerFECRate(
3161        BinaryConvolutionCodeRate *pFECRate) = 0;
3162
3163    virtual HRESULT STDMETHODCALLTYPE get_InnerFECRate(
3164        BinaryConvolutionCodeRate *pFECRate) = 0;
3165
3166    virtual HRESULT STDMETHODCALLTYPE put_OuterFECMethod(
3167        FECMethod *pFECMethod) = 0;
3168
3169    virtual HRESULT STDMETHODCALLTYPE get_OuterFECMethod(
3170        FECMethod *pFECMethod) = 0;
3171
3172    virtual HRESULT STDMETHODCALLTYPE put_OuterFECRate(
3173        BinaryConvolutionCodeRate *pFECRate) = 0;
3174
3175    virtual HRESULT STDMETHODCALLTYPE get_OuterFECRate(
3176        BinaryConvolutionCodeRate *pFECRate) = 0;
3177
3178    virtual HRESULT STDMETHODCALLTYPE put_SymbolRate(
3179        ULONG *pSymbolRate) = 0;
3180
3181    virtual HRESULT STDMETHODCALLTYPE get_SymbolRate(
3182        ULONG *pSymbolRate) = 0;
3183
3184    virtual HRESULT STDMETHODCALLTYPE put_SpectralInversion(
3185        SpectralInversion *pSpectralInversion) = 0;
3186
3187    virtual HRESULT STDMETHODCALLTYPE get_SpectralInversion(
3188        SpectralInversion *pSpectralInversion) = 0;
3189
3190};
3191#ifdef __CRT_UUID_DECL
3192__CRT_UUID_DECL(IBDA_DigitalDemodulator, 0xef30f379, 0x985b, 0x4d10, 0xb6,0x40, 0xa7,0x9d,0x5e,0x04,0xe1,0xe0)
3193#endif
3194#else
3195typedef struct IBDA_DigitalDemodulatorVtbl {
3196    BEGIN_INTERFACE
3197
3198    /*** IUnknown methods ***/
3199    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3200        IBDA_DigitalDemodulator* This,
3201        REFIID riid,
3202        void **ppvObject);
3203
3204    ULONG (STDMETHODCALLTYPE *AddRef)(
3205        IBDA_DigitalDemodulator* This);
3206
3207    ULONG (STDMETHODCALLTYPE *Release)(
3208        IBDA_DigitalDemodulator* This);
3209
3210    /*** IBDA_DigitalDemodulator methods ***/
3211    HRESULT (STDMETHODCALLTYPE *put_ModulationType)(
3212        IBDA_DigitalDemodulator* This,
3213        ModulationType *pModulationType);
3214
3215    HRESULT (STDMETHODCALLTYPE *get_ModulationType)(
3216        IBDA_DigitalDemodulator* This,
3217        ModulationType *pModulationType);
3218
3219    HRESULT (STDMETHODCALLTYPE *put_InnerFECMethod)(
3220        IBDA_DigitalDemodulator* This,
3221        FECMethod *pFECMethod);
3222
3223    HRESULT (STDMETHODCALLTYPE *get_InnerFECMethod)(
3224        IBDA_DigitalDemodulator* This,
3225        FECMethod *pFECMethod);
3226
3227    HRESULT (STDMETHODCALLTYPE *put_InnerFECRate)(
3228        IBDA_DigitalDemodulator* This,
3229        BinaryConvolutionCodeRate *pFECRate);
3230
3231    HRESULT (STDMETHODCALLTYPE *get_InnerFECRate)(
3232        IBDA_DigitalDemodulator* This,
3233        BinaryConvolutionCodeRate *pFECRate);
3234
3235    HRESULT (STDMETHODCALLTYPE *put_OuterFECMethod)(
3236        IBDA_DigitalDemodulator* This,
3237        FECMethod *pFECMethod);
3238
3239    HRESULT (STDMETHODCALLTYPE *get_OuterFECMethod)(
3240        IBDA_DigitalDemodulator* This,
3241        FECMethod *pFECMethod);
3242
3243    HRESULT (STDMETHODCALLTYPE *put_OuterFECRate)(
3244        IBDA_DigitalDemodulator* This,
3245        BinaryConvolutionCodeRate *pFECRate);
3246
3247    HRESULT (STDMETHODCALLTYPE *get_OuterFECRate)(
3248        IBDA_DigitalDemodulator* This,
3249        BinaryConvolutionCodeRate *pFECRate);
3250
3251    HRESULT (STDMETHODCALLTYPE *put_SymbolRate)(
3252        IBDA_DigitalDemodulator* This,
3253        ULONG *pSymbolRate);
3254
3255    HRESULT (STDMETHODCALLTYPE *get_SymbolRate)(
3256        IBDA_DigitalDemodulator* This,
3257        ULONG *pSymbolRate);
3258
3259    HRESULT (STDMETHODCALLTYPE *put_SpectralInversion)(
3260        IBDA_DigitalDemodulator* This,
3261        SpectralInversion *pSpectralInversion);
3262
3263    HRESULT (STDMETHODCALLTYPE *get_SpectralInversion)(
3264        IBDA_DigitalDemodulator* This,
3265        SpectralInversion *pSpectralInversion);
3266
3267    END_INTERFACE
3268} IBDA_DigitalDemodulatorVtbl;
3269interface IBDA_DigitalDemodulator {
3270    CONST_VTBL IBDA_DigitalDemodulatorVtbl* lpVtbl;
3271};
3272
3273#ifdef COBJMACROS
3274#ifndef WIDL_C_INLINE_WRAPPERS
3275/*** IUnknown methods ***/
3276#define IBDA_DigitalDemodulator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3277#define IBDA_DigitalDemodulator_AddRef(This) (This)->lpVtbl->AddRef(This)
3278#define IBDA_DigitalDemodulator_Release(This) (This)->lpVtbl->Release(This)
3279/*** IBDA_DigitalDemodulator methods ***/
3280#define IBDA_DigitalDemodulator_put_ModulationType(This,pModulationType) (This)->lpVtbl->put_ModulationType(This,pModulationType)
3281#define IBDA_DigitalDemodulator_get_ModulationType(This,pModulationType) (This)->lpVtbl->get_ModulationType(This,pModulationType)
3282#define IBDA_DigitalDemodulator_put_InnerFECMethod(This,pFECMethod) (This)->lpVtbl->put_InnerFECMethod(This,pFECMethod)
3283#define IBDA_DigitalDemodulator_get_InnerFECMethod(This,pFECMethod) (This)->lpVtbl->get_InnerFECMethod(This,pFECMethod)
3284#define IBDA_DigitalDemodulator_put_InnerFECRate(This,pFECRate) (This)->lpVtbl->put_InnerFECRate(This,pFECRate)
3285#define IBDA_DigitalDemodulator_get_InnerFECRate(This,pFECRate) (This)->lpVtbl->get_InnerFECRate(This,pFECRate)
3286#define IBDA_DigitalDemodulator_put_OuterFECMethod(This,pFECMethod) (This)->lpVtbl->put_OuterFECMethod(This,pFECMethod)
3287#define IBDA_DigitalDemodulator_get_OuterFECMethod(This,pFECMethod) (This)->lpVtbl->get_OuterFECMethod(This,pFECMethod)
3288#define IBDA_DigitalDemodulator_put_OuterFECRate(This,pFECRate) (This)->lpVtbl->put_OuterFECRate(This,pFECRate)
3289#define IBDA_DigitalDemodulator_get_OuterFECRate(This,pFECRate) (This)->lpVtbl->get_OuterFECRate(This,pFECRate)
3290#define IBDA_DigitalDemodulator_put_SymbolRate(This,pSymbolRate) (This)->lpVtbl->put_SymbolRate(This,pSymbolRate)
3291#define IBDA_DigitalDemodulator_get_SymbolRate(This,pSymbolRate) (This)->lpVtbl->get_SymbolRate(This,pSymbolRate)
3292#define IBDA_DigitalDemodulator_put_SpectralInversion(This,pSpectralInversion) (This)->lpVtbl->put_SpectralInversion(This,pSpectralInversion)
3293#define IBDA_DigitalDemodulator_get_SpectralInversion(This,pSpectralInversion) (This)->lpVtbl->get_SpectralInversion(This,pSpectralInversion)
3294#else
3295/*** IUnknown methods ***/
3296static FORCEINLINE HRESULT IBDA_DigitalDemodulator_QueryInterface(IBDA_DigitalDemodulator* This,REFIID riid,void **ppvObject) {
3297    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3298}
3299static FORCEINLINE ULONG IBDA_DigitalDemodulator_AddRef(IBDA_DigitalDemodulator* This) {
3300    return This->lpVtbl->AddRef(This);
3301}
3302static FORCEINLINE ULONG IBDA_DigitalDemodulator_Release(IBDA_DigitalDemodulator* This) {
3303    return This->lpVtbl->Release(This);
3304}
3305/*** IBDA_DigitalDemodulator methods ***/
3306static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_ModulationType(IBDA_DigitalDemodulator* This,ModulationType *pModulationType) {
3307    return This->lpVtbl->put_ModulationType(This,pModulationType);
3308}
3309static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_ModulationType(IBDA_DigitalDemodulator* This,ModulationType *pModulationType) {
3310    return This->lpVtbl->get_ModulationType(This,pModulationType);
3311}
3312static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_InnerFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
3313    return This->lpVtbl->put_InnerFECMethod(This,pFECMethod);
3314}
3315static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_InnerFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
3316    return This->lpVtbl->get_InnerFECMethod(This,pFECMethod);
3317}
3318static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_InnerFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
3319    return This->lpVtbl->put_InnerFECRate(This,pFECRate);
3320}
3321static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_InnerFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
3322    return This->lpVtbl->get_InnerFECRate(This,pFECRate);
3323}
3324static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_OuterFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
3325    return This->lpVtbl->put_OuterFECMethod(This,pFECMethod);
3326}
3327static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_OuterFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
3328    return This->lpVtbl->get_OuterFECMethod(This,pFECMethod);
3329}
3330static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_OuterFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
3331    return This->lpVtbl->put_OuterFECRate(This,pFECRate);
3332}
3333static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_OuterFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
3334    return This->lpVtbl->get_OuterFECRate(This,pFECRate);
3335}
3336static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_SymbolRate(IBDA_DigitalDemodulator* This,ULONG *pSymbolRate) {
3337    return This->lpVtbl->put_SymbolRate(This,pSymbolRate);
3338}
3339static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_SymbolRate(IBDA_DigitalDemodulator* This,ULONG *pSymbolRate) {
3340    return This->lpVtbl->get_SymbolRate(This,pSymbolRate);
3341}
3342static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_SpectralInversion(IBDA_DigitalDemodulator* This,SpectralInversion *pSpectralInversion) {
3343    return This->lpVtbl->put_SpectralInversion(This,pSpectralInversion);
3344}
3345static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_SpectralInversion(IBDA_DigitalDemodulator* This,SpectralInversion *pSpectralInversion) {
3346    return This->lpVtbl->get_SpectralInversion(This,pSpectralInversion);
3347}
3348#endif
3349#endif
3350
3351#endif
3352
3353HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_ModulationType_Proxy(
3354    IBDA_DigitalDemodulator* This,
3355    ModulationType *pModulationType);
3356void __RPC_STUB IBDA_DigitalDemodulator_put_ModulationType_Stub(
3357    IRpcStubBuffer* This,
3358    IRpcChannelBuffer* pRpcChannelBuffer,
3359    PRPC_MESSAGE pRpcMessage,
3360    DWORD* pdwStubPhase);
3361HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_ModulationType_Proxy(
3362    IBDA_DigitalDemodulator* This,
3363    ModulationType *pModulationType);
3364void __RPC_STUB IBDA_DigitalDemodulator_get_ModulationType_Stub(
3365    IRpcStubBuffer* This,
3366    IRpcChannelBuffer* pRpcChannelBuffer,
3367    PRPC_MESSAGE pRpcMessage,
3368    DWORD* pdwStubPhase);
3369HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_InnerFECMethod_Proxy(
3370    IBDA_DigitalDemodulator* This,
3371    FECMethod *pFECMethod);
3372void __RPC_STUB IBDA_DigitalDemodulator_put_InnerFECMethod_Stub(
3373    IRpcStubBuffer* This,
3374    IRpcChannelBuffer* pRpcChannelBuffer,
3375    PRPC_MESSAGE pRpcMessage,
3376    DWORD* pdwStubPhase);
3377HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_InnerFECMethod_Proxy(
3378    IBDA_DigitalDemodulator* This,
3379    FECMethod *pFECMethod);
3380void __RPC_STUB IBDA_DigitalDemodulator_get_InnerFECMethod_Stub(
3381    IRpcStubBuffer* This,
3382    IRpcChannelBuffer* pRpcChannelBuffer,
3383    PRPC_MESSAGE pRpcMessage,
3384    DWORD* pdwStubPhase);
3385HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_InnerFECRate_Proxy(
3386    IBDA_DigitalDemodulator* This,
3387    BinaryConvolutionCodeRate *pFECRate);
3388void __RPC_STUB IBDA_DigitalDemodulator_put_InnerFECRate_Stub(
3389    IRpcStubBuffer* This,
3390    IRpcChannelBuffer* pRpcChannelBuffer,
3391    PRPC_MESSAGE pRpcMessage,
3392    DWORD* pdwStubPhase);
3393HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_InnerFECRate_Proxy(
3394    IBDA_DigitalDemodulator* This,
3395    BinaryConvolutionCodeRate *pFECRate);
3396void __RPC_STUB IBDA_DigitalDemodulator_get_InnerFECRate_Stub(
3397    IRpcStubBuffer* This,
3398    IRpcChannelBuffer* pRpcChannelBuffer,
3399    PRPC_MESSAGE pRpcMessage,
3400    DWORD* pdwStubPhase);
3401HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_OuterFECMethod_Proxy(
3402    IBDA_DigitalDemodulator* This,
3403    FECMethod *pFECMethod);
3404void __RPC_STUB IBDA_DigitalDemodulator_put_OuterFECMethod_Stub(
3405    IRpcStubBuffer* This,
3406    IRpcChannelBuffer* pRpcChannelBuffer,
3407    PRPC_MESSAGE pRpcMessage,
3408    DWORD* pdwStubPhase);
3409HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_OuterFECMethod_Proxy(
3410    IBDA_DigitalDemodulator* This,
3411    FECMethod *pFECMethod);
3412void __RPC_STUB IBDA_DigitalDemodulator_get_OuterFECMethod_Stub(
3413    IRpcStubBuffer* This,
3414    IRpcChannelBuffer* pRpcChannelBuffer,
3415    PRPC_MESSAGE pRpcMessage,
3416    DWORD* pdwStubPhase);
3417HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_OuterFECRate_Proxy(
3418    IBDA_DigitalDemodulator* This,
3419    BinaryConvolutionCodeRate *pFECRate);
3420void __RPC_STUB IBDA_DigitalDemodulator_put_OuterFECRate_Stub(
3421    IRpcStubBuffer* This,
3422    IRpcChannelBuffer* pRpcChannelBuffer,
3423    PRPC_MESSAGE pRpcMessage,
3424    DWORD* pdwStubPhase);
3425HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_OuterFECRate_Proxy(
3426    IBDA_DigitalDemodulator* This,
3427    BinaryConvolutionCodeRate *pFECRate);
3428void __RPC_STUB IBDA_DigitalDemodulator_get_OuterFECRate_Stub(
3429    IRpcStubBuffer* This,
3430    IRpcChannelBuffer* pRpcChannelBuffer,
3431    PRPC_MESSAGE pRpcMessage,
3432    DWORD* pdwStubPhase);
3433HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_SymbolRate_Proxy(
3434    IBDA_DigitalDemodulator* This,
3435    ULONG *pSymbolRate);
3436void __RPC_STUB IBDA_DigitalDemodulator_put_SymbolRate_Stub(
3437    IRpcStubBuffer* This,
3438    IRpcChannelBuffer* pRpcChannelBuffer,
3439    PRPC_MESSAGE pRpcMessage,
3440    DWORD* pdwStubPhase);
3441HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_SymbolRate_Proxy(
3442    IBDA_DigitalDemodulator* This,
3443    ULONG *pSymbolRate);
3444void __RPC_STUB IBDA_DigitalDemodulator_get_SymbolRate_Stub(
3445    IRpcStubBuffer* This,
3446    IRpcChannelBuffer* pRpcChannelBuffer,
3447    PRPC_MESSAGE pRpcMessage,
3448    DWORD* pdwStubPhase);
3449HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_SpectralInversion_Proxy(
3450    IBDA_DigitalDemodulator* This,
3451    SpectralInversion *pSpectralInversion);
3452void __RPC_STUB IBDA_DigitalDemodulator_put_SpectralInversion_Stub(
3453    IRpcStubBuffer* This,
3454    IRpcChannelBuffer* pRpcChannelBuffer,
3455    PRPC_MESSAGE pRpcMessage,
3456    DWORD* pdwStubPhase);
3457HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_SpectralInversion_Proxy(
3458    IBDA_DigitalDemodulator* This,
3459    SpectralInversion *pSpectralInversion);
3460void __RPC_STUB IBDA_DigitalDemodulator_get_SpectralInversion_Stub(
3461    IRpcStubBuffer* This,
3462    IRpcChannelBuffer* pRpcChannelBuffer,
3463    PRPC_MESSAGE pRpcMessage,
3464    DWORD* pdwStubPhase);
3465
3466#endif  /* __IBDA_DigitalDemodulator_INTERFACE_DEFINED__ */
3467
3468/*****************************************************************************
3469 * IBDA_DigitalDemodulator2 interface
3470 */
3471#ifndef __IBDA_DigitalDemodulator2_INTERFACE_DEFINED__
3472#define __IBDA_DigitalDemodulator2_INTERFACE_DEFINED__
3473
3474DEFINE_GUID(IID_IBDA_DigitalDemodulator2, 0x525ed3ee, 0x5cf3, 0x4e1e, 0x9a,0x06, 0x53,0x68,0xa8,0x4f,0x9a,0x6e);
3475#if defined(__cplusplus) && !defined(CINTERFACE)
3476MIDL_INTERFACE("525ed3ee-5cf3-4e1e-9a06-5368a84f9a6e")
3477IBDA_DigitalDemodulator2 : public IBDA_DigitalDemodulator
3478{
3479    virtual HRESULT STDMETHODCALLTYPE put_GuardInterval(
3480        GuardInterval *pGuardInterval) = 0;
3481
3482    virtual HRESULT STDMETHODCALLTYPE get_GuardInterval(
3483        GuardInterval *pGuardInterval) = 0;
3484
3485    virtual HRESULT STDMETHODCALLTYPE put_TransmissionMode(
3486        TransmissionMode *pTransmissionMode) = 0;
3487
3488    virtual HRESULT STDMETHODCALLTYPE get_TransmissionMode(
3489        TransmissionMode *pTransmissionMode) = 0;
3490
3491    virtual HRESULT STDMETHODCALLTYPE put_RollOff(
3492        RollOff *pRollOff) = 0;
3493
3494    virtual HRESULT STDMETHODCALLTYPE get_RollOff(
3495        RollOff *pRollOff) = 0;
3496
3497    virtual HRESULT STDMETHODCALLTYPE put_Pilot(
3498        Pilot *pPilot) = 0;
3499
3500    virtual HRESULT STDMETHODCALLTYPE get_Pilot(
3501        Pilot *pPilot) = 0;
3502
3503};
3504#ifdef __CRT_UUID_DECL
3505__CRT_UUID_DECL(IBDA_DigitalDemodulator2, 0x525ed3ee, 0x5cf3, 0x4e1e, 0x9a,0x06, 0x53,0x68,0xa8,0x4f,0x9a,0x6e)
3506#endif
3507#else
3508typedef struct IBDA_DigitalDemodulator2Vtbl {
3509    BEGIN_INTERFACE
3510
3511    /*** IUnknown methods ***/
3512    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3513        IBDA_DigitalDemodulator2* This,
3514        REFIID riid,
3515        void **ppvObject);
3516
3517    ULONG (STDMETHODCALLTYPE *AddRef)(
3518        IBDA_DigitalDemodulator2* This);
3519
3520    ULONG (STDMETHODCALLTYPE *Release)(
3521        IBDA_DigitalDemodulator2* This);
3522
3523    /*** IBDA_DigitalDemodulator methods ***/
3524    HRESULT (STDMETHODCALLTYPE *put_ModulationType)(
3525        IBDA_DigitalDemodulator2* This,
3526        ModulationType *pModulationType);
3527
3528    HRESULT (STDMETHODCALLTYPE *get_ModulationType)(
3529        IBDA_DigitalDemodulator2* This,
3530        ModulationType *pModulationType);
3531
3532    HRESULT (STDMETHODCALLTYPE *put_InnerFECMethod)(
3533        IBDA_DigitalDemodulator2* This,
3534        FECMethod *pFECMethod);
3535
3536    HRESULT (STDMETHODCALLTYPE *get_InnerFECMethod)(
3537        IBDA_DigitalDemodulator2* This,
3538        FECMethod *pFECMethod);
3539
3540    HRESULT (STDMETHODCALLTYPE *put_InnerFECRate)(
3541        IBDA_DigitalDemodulator2* This,
3542        BinaryConvolutionCodeRate *pFECRate);
3543
3544    HRESULT (STDMETHODCALLTYPE *get_InnerFECRate)(
3545        IBDA_DigitalDemodulator2* This,
3546        BinaryConvolutionCodeRate *pFECRate);
3547
3548    HRESULT (STDMETHODCALLTYPE *put_OuterFECMethod)(
3549        IBDA_DigitalDemodulator2* This,
3550        FECMethod *pFECMethod);
3551
3552    HRESULT (STDMETHODCALLTYPE *get_OuterFECMethod)(
3553        IBDA_DigitalDemodulator2* This,
3554        FECMethod *pFECMethod);
3555
3556    HRESULT (STDMETHODCALLTYPE *put_OuterFECRate)(
3557        IBDA_DigitalDemodulator2* This,
3558        BinaryConvolutionCodeRate *pFECRate);
3559
3560    HRESULT (STDMETHODCALLTYPE *get_OuterFECRate)(
3561        IBDA_DigitalDemodulator2* This,
3562        BinaryConvolutionCodeRate *pFECRate);
3563
3564    HRESULT (STDMETHODCALLTYPE *put_SymbolRate)(
3565        IBDA_DigitalDemodulator2* This,
3566        ULONG *pSymbolRate);
3567
3568    HRESULT (STDMETHODCALLTYPE *get_SymbolRate)(
3569        IBDA_DigitalDemodulator2* This,
3570        ULONG *pSymbolRate);
3571
3572    HRESULT (STDMETHODCALLTYPE *put_SpectralInversion)(
3573        IBDA_DigitalDemodulator2* This,
3574        SpectralInversion *pSpectralInversion);
3575
3576    HRESULT (STDMETHODCALLTYPE *get_SpectralInversion)(
3577        IBDA_DigitalDemodulator2* This,
3578        SpectralInversion *pSpectralInversion);
3579
3580    /*** IBDA_DigitalDemodulator2 methods ***/
3581    HRESULT (STDMETHODCALLTYPE *put_GuardInterval)(
3582        IBDA_DigitalDemodulator2* This,
3583        GuardInterval *pGuardInterval);
3584
3585    HRESULT (STDMETHODCALLTYPE *get_GuardInterval)(
3586        IBDA_DigitalDemodulator2* This,
3587        GuardInterval *pGuardInterval);
3588
3589    HRESULT (STDMETHODCALLTYPE *put_TransmissionMode)(
3590        IBDA_DigitalDemodulator2* This,
3591        TransmissionMode *pTransmissionMode);
3592
3593    HRESULT (STDMETHODCALLTYPE *get_TransmissionMode)(
3594        IBDA_DigitalDemodulator2* This,
3595        TransmissionMode *pTransmissionMode);
3596
3597    HRESULT (STDMETHODCALLTYPE *put_RollOff)(
3598        IBDA_DigitalDemodulator2* This,
3599        RollOff *pRollOff);
3600
3601    HRESULT (STDMETHODCALLTYPE *get_RollOff)(
3602        IBDA_DigitalDemodulator2* This,
3603        RollOff *pRollOff);
3604
3605    HRESULT (STDMETHODCALLTYPE *put_Pilot)(
3606        IBDA_DigitalDemodulator2* This,
3607        Pilot *pPilot);
3608
3609    HRESULT (STDMETHODCALLTYPE *get_Pilot)(
3610        IBDA_DigitalDemodulator2* This,
3611        Pilot *pPilot);
3612
3613    END_INTERFACE
3614} IBDA_DigitalDemodulator2Vtbl;
3615interface IBDA_DigitalDemodulator2 {
3616    CONST_VTBL IBDA_DigitalDemodulator2Vtbl* lpVtbl;
3617};
3618
3619#ifdef COBJMACROS
3620#ifndef WIDL_C_INLINE_WRAPPERS
3621/*** IUnknown methods ***/
3622#define IBDA_DigitalDemodulator2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3623#define IBDA_DigitalDemodulator2_AddRef(This) (This)->lpVtbl->AddRef(This)
3624#define IBDA_DigitalDemodulator2_Release(This) (This)->lpVtbl->Release(This)
3625/*** IBDA_DigitalDemodulator methods ***/
3626#define IBDA_DigitalDemodulator2_put_ModulationType(This,pModulationType) (This)->lpVtbl->put_ModulationType(This,pModulationType)
3627#define IBDA_DigitalDemodulator2_get_ModulationType(This,pModulationType) (This)->lpVtbl->get_ModulationType(This,pModulationType)
3628#define IBDA_DigitalDemodulator2_put_InnerFECMethod(This,pFECMethod) (This)->lpVtbl->put_InnerFECMethod(This,pFECMethod)
3629#define IBDA_DigitalDemodulator2_get_InnerFECMethod(This,pFECMethod) (This)->lpVtbl->get_InnerFECMethod(This,pFECMethod)
3630#define IBDA_DigitalDemodulator2_put_InnerFECRate(This,pFECRate) (This)->lpVtbl->put_InnerFECRate(This,pFECRate)
3631#define IBDA_DigitalDemodulator2_get_InnerFECRate(This,pFECRate) (This)->lpVtbl->get_InnerFECRate(This,pFECRate)
3632#define IBDA_DigitalDemodulator2_put_OuterFECMethod(This,pFECMethod) (This)->lpVtbl->put_OuterFECMethod(This,pFECMethod)
3633#define IBDA_DigitalDemodulator2_get_OuterFECMethod(This,pFECMethod) (This)->lpVtbl->get_OuterFECMethod(This,pFECMethod)
3634#define IBDA_DigitalDemodulator2_put_OuterFECRate(This,pFECRate) (This)->lpVtbl->put_OuterFECRate(This,pFECRate)
3635#define IBDA_DigitalDemodulator2_get_OuterFECRate(This,pFECRate) (This)->lpVtbl->get_OuterFECRate(This,pFECRate)
3636#define IBDA_DigitalDemodulator2_put_SymbolRate(This,pSymbolRate) (This)->lpVtbl->put_SymbolRate(This,pSymbolRate)
3637#define IBDA_DigitalDemodulator2_get_SymbolRate(This,pSymbolRate) (This)->lpVtbl->get_SymbolRate(This,pSymbolRate)
3638#define IBDA_DigitalDemodulator2_put_SpectralInversion(This,pSpectralInversion) (This)->lpVtbl->put_SpectralInversion(This,pSpectralInversion)
3639#define IBDA_DigitalDemodulator2_get_SpectralInversion(This,pSpectralInversion) (This)->lpVtbl->get_SpectralInversion(This,pSpectralInversion)
3640/*** IBDA_DigitalDemodulator2 methods ***/
3641#define IBDA_DigitalDemodulator2_put_GuardInterval(This,pGuardInterval) (This)->lpVtbl->put_GuardInterval(This,pGuardInterval)
3642#define IBDA_DigitalDemodulator2_get_GuardInterval(This,pGuardInterval) (This)->lpVtbl->get_GuardInterval(This,pGuardInterval)
3643#define IBDA_DigitalDemodulator2_put_TransmissionMode(This,pTransmissionMode) (This)->lpVtbl->put_TransmissionMode(This,pTransmissionMode)
3644#define IBDA_DigitalDemodulator2_get_TransmissionMode(This,pTransmissionMode) (This)->lpVtbl->get_TransmissionMode(This,pTransmissionMode)
3645#define IBDA_DigitalDemodulator2_put_RollOff(This,pRollOff) (This)->lpVtbl->put_RollOff(This,pRollOff)
3646#define IBDA_DigitalDemodulator2_get_RollOff(This,pRollOff) (This)->lpVtbl->get_RollOff(This,pRollOff)
3647#define IBDA_DigitalDemodulator2_put_Pilot(This,pPilot) (This)->lpVtbl->put_Pilot(This,pPilot)
3648#define IBDA_DigitalDemodulator2_get_Pilot(This,pPilot) (This)->lpVtbl->get_Pilot(This,pPilot)
3649#else
3650/*** IUnknown methods ***/
3651static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_QueryInterface(IBDA_DigitalDemodulator2* This,REFIID riid,void **ppvObject) {
3652    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3653}
3654static FORCEINLINE ULONG IBDA_DigitalDemodulator2_AddRef(IBDA_DigitalDemodulator2* This) {
3655    return This->lpVtbl->AddRef(This);
3656}
3657static FORCEINLINE ULONG IBDA_DigitalDemodulator2_Release(IBDA_DigitalDemodulator2* This) {
3658    return This->lpVtbl->Release(This);
3659}
3660/*** IBDA_DigitalDemodulator methods ***/
3661static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_ModulationType(IBDA_DigitalDemodulator2* This,ModulationType *pModulationType) {
3662    return This->lpVtbl->put_ModulationType(This,pModulationType);
3663}
3664static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_ModulationType(IBDA_DigitalDemodulator2* This,ModulationType *pModulationType) {
3665    return This->lpVtbl->get_ModulationType(This,pModulationType);
3666}
3667static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_InnerFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
3668    return This->lpVtbl->put_InnerFECMethod(This,pFECMethod);
3669}
3670static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_InnerFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
3671    return This->lpVtbl->get_InnerFECMethod(This,pFECMethod);
3672}
3673static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_InnerFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
3674    return This->lpVtbl->put_InnerFECRate(This,pFECRate);
3675}
3676static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_InnerFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
3677    return This->lpVtbl->get_InnerFECRate(This,pFECRate);
3678}
3679static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_OuterFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
3680    return This->lpVtbl->put_OuterFECMethod(This,pFECMethod);
3681}
3682static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_OuterFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
3683    return This->lpVtbl->get_OuterFECMethod(This,pFECMethod);
3684}
3685static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_OuterFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
3686    return This->lpVtbl->put_OuterFECRate(This,pFECRate);
3687}
3688static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_OuterFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
3689    return This->lpVtbl->get_OuterFECRate(This,pFECRate);
3690}
3691static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_SymbolRate(IBDA_DigitalDemodulator2* This,ULONG *pSymbolRate) {
3692    return This->lpVtbl->put_SymbolRate(This,pSymbolRate);
3693}
3694static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_SymbolRate(IBDA_DigitalDemodulator2* This,ULONG *pSymbolRate) {
3695    return This->lpVtbl->get_SymbolRate(This,pSymbolRate);
3696}
3697static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_SpectralInversion(IBDA_DigitalDemodulator2* This,SpectralInversion *pSpectralInversion) {
3698    return This->lpVtbl->put_SpectralInversion(This,pSpectralInversion);
3699}
3700static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_SpectralInversion(IBDA_DigitalDemodulator2* This,SpectralInversion *pSpectralInversion) {
3701    return This->lpVtbl->get_SpectralInversion(This,pSpectralInversion);
3702}
3703/*** IBDA_DigitalDemodulator2 methods ***/
3704static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_GuardInterval(IBDA_DigitalDemodulator2* This,GuardInterval *pGuardInterval) {
3705    return This->lpVtbl->put_GuardInterval(This,pGuardInterval);
3706}
3707static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_GuardInterval(IBDA_DigitalDemodulator2* This,GuardInterval *pGuardInterval) {
3708    return This->lpVtbl->get_GuardInterval(This,pGuardInterval);
3709}
3710static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_TransmissionMode(IBDA_DigitalDemodulator2* This,TransmissionMode *pTransmissionMode) {
3711    return This->lpVtbl->put_TransmissionMode(This,pTransmissionMode);
3712}
3713static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_TransmissionMode(IBDA_DigitalDemodulator2* This,TransmissionMode *pTransmissionMode) {
3714    return This->lpVtbl->get_TransmissionMode(This,pTransmissionMode);
3715}
3716static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_RollOff(IBDA_DigitalDemodulator2* This,RollOff *pRollOff) {
3717    return This->lpVtbl->put_RollOff(This,pRollOff);
3718}
3719static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_RollOff(IBDA_DigitalDemodulator2* This,RollOff *pRollOff) {
3720    return This->lpVtbl->get_RollOff(This,pRollOff);
3721}
3722static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_Pilot(IBDA_DigitalDemodulator2* This,Pilot *pPilot) {
3723    return This->lpVtbl->put_Pilot(This,pPilot);
3724}
3725static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_Pilot(IBDA_DigitalDemodulator2* This,Pilot *pPilot) {
3726    return This->lpVtbl->get_Pilot(This,pPilot);
3727}
3728#endif
3729#endif
3730
3731#endif
3732
3733HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_GuardInterval_Proxy(
3734    IBDA_DigitalDemodulator2* This,
3735    GuardInterval *pGuardInterval);
3736void __RPC_STUB IBDA_DigitalDemodulator2_put_GuardInterval_Stub(
3737    IRpcStubBuffer* This,
3738    IRpcChannelBuffer* pRpcChannelBuffer,
3739    PRPC_MESSAGE pRpcMessage,
3740    DWORD* pdwStubPhase);
3741HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_GuardInterval_Proxy(
3742    IBDA_DigitalDemodulator2* This,
3743    GuardInterval *pGuardInterval);
3744void __RPC_STUB IBDA_DigitalDemodulator2_get_GuardInterval_Stub(
3745    IRpcStubBuffer* This,
3746    IRpcChannelBuffer* pRpcChannelBuffer,
3747    PRPC_MESSAGE pRpcMessage,
3748    DWORD* pdwStubPhase);
3749HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_TransmissionMode_Proxy(
3750    IBDA_DigitalDemodulator2* This,
3751    TransmissionMode *pTransmissionMode);
3752void __RPC_STUB IBDA_DigitalDemodulator2_put_TransmissionMode_Stub(
3753    IRpcStubBuffer* This,
3754    IRpcChannelBuffer* pRpcChannelBuffer,
3755    PRPC_MESSAGE pRpcMessage,
3756    DWORD* pdwStubPhase);
3757HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_TransmissionMode_Proxy(
3758    IBDA_DigitalDemodulator2* This,
3759    TransmissionMode *pTransmissionMode);
3760void __RPC_STUB IBDA_DigitalDemodulator2_get_TransmissionMode_Stub(
3761    IRpcStubBuffer* This,
3762    IRpcChannelBuffer* pRpcChannelBuffer,
3763    PRPC_MESSAGE pRpcMessage,
3764    DWORD* pdwStubPhase);
3765HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_RollOff_Proxy(
3766    IBDA_DigitalDemodulator2* This,
3767    RollOff *pRollOff);
3768void __RPC_STUB IBDA_DigitalDemodulator2_put_RollOff_Stub(
3769    IRpcStubBuffer* This,
3770    IRpcChannelBuffer* pRpcChannelBuffer,
3771    PRPC_MESSAGE pRpcMessage,
3772    DWORD* pdwStubPhase);
3773HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_RollOff_Proxy(
3774    IBDA_DigitalDemodulator2* This,
3775    RollOff *pRollOff);
3776void __RPC_STUB IBDA_DigitalDemodulator2_get_RollOff_Stub(
3777    IRpcStubBuffer* This,
3778    IRpcChannelBuffer* pRpcChannelBuffer,
3779    PRPC_MESSAGE pRpcMessage,
3780    DWORD* pdwStubPhase);
3781HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_Pilot_Proxy(
3782    IBDA_DigitalDemodulator2* This,
3783    Pilot *pPilot);
3784void __RPC_STUB IBDA_DigitalDemodulator2_put_Pilot_Stub(
3785    IRpcStubBuffer* This,
3786    IRpcChannelBuffer* pRpcChannelBuffer,
3787    PRPC_MESSAGE pRpcMessage,
3788    DWORD* pdwStubPhase);
3789HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_Pilot_Proxy(
3790    IBDA_DigitalDemodulator2* This,
3791    Pilot *pPilot);
3792void __RPC_STUB IBDA_DigitalDemodulator2_get_Pilot_Stub(
3793    IRpcStubBuffer* This,
3794    IRpcChannelBuffer* pRpcChannelBuffer,
3795    PRPC_MESSAGE pRpcMessage,
3796    DWORD* pdwStubPhase);
3797
3798#endif  /* __IBDA_DigitalDemodulator2_INTERFACE_DEFINED__ */
3799
3800/*****************************************************************************
3801 * IBDA_DigitalDemodulator3 interface
3802 */
3803#ifndef __IBDA_DigitalDemodulator3_INTERFACE_DEFINED__
3804#define __IBDA_DigitalDemodulator3_INTERFACE_DEFINED__
3805
3806DEFINE_GUID(IID_IBDA_DigitalDemodulator3, 0x13f19604, 0x7d32, 0x4359, 0x93,0xa2, 0xa0,0x52,0x05,0xd9,0x0a,0xc9);
3807#if defined(__cplusplus) && !defined(CINTERFACE)
3808MIDL_INTERFACE("13f19604-7d32-4359-93a2-a05205d90ac9")
3809IBDA_DigitalDemodulator3 : public IBDA_DigitalDemodulator2
3810{
3811    virtual HRESULT STDMETHODCALLTYPE put_SignalTimeouts(
3812        BDA_SIGNAL_TIMEOUTS *pSignalTimeouts) = 0;
3813
3814    virtual HRESULT STDMETHODCALLTYPE get_SignalTimeouts(
3815        BDA_SIGNAL_TIMEOUTS *pSignalTimeouts) = 0;
3816
3817    virtual HRESULT STDMETHODCALLTYPE put_PLPNumber(
3818        ULONG *pPLPNumber) = 0;
3819
3820    virtual HRESULT STDMETHODCALLTYPE get_PLPNumber(
3821        ULONG *pPLPNumber) = 0;
3822
3823};
3824#ifdef __CRT_UUID_DECL
3825__CRT_UUID_DECL(IBDA_DigitalDemodulator3, 0x13f19604, 0x7d32, 0x4359, 0x93,0xa2, 0xa0,0x52,0x05,0xd9,0x0a,0xc9)
3826#endif
3827#else
3828typedef struct IBDA_DigitalDemodulator3Vtbl {
3829    BEGIN_INTERFACE
3830
3831    /*** IUnknown methods ***/
3832    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3833        IBDA_DigitalDemodulator3* This,
3834        REFIID riid,
3835        void **ppvObject);
3836
3837    ULONG (STDMETHODCALLTYPE *AddRef)(
3838        IBDA_DigitalDemodulator3* This);
3839
3840    ULONG (STDMETHODCALLTYPE *Release)(
3841        IBDA_DigitalDemodulator3* This);
3842
3843    /*** IBDA_DigitalDemodulator methods ***/
3844    HRESULT (STDMETHODCALLTYPE *put_ModulationType)(
3845        IBDA_DigitalDemodulator3* This,
3846        ModulationType *pModulationType);
3847
3848    HRESULT (STDMETHODCALLTYPE *get_ModulationType)(
3849        IBDA_DigitalDemodulator3* This,
3850        ModulationType *pModulationType);
3851
3852    HRESULT (STDMETHODCALLTYPE *put_InnerFECMethod)(
3853        IBDA_DigitalDemodulator3* This,
3854        FECMethod *pFECMethod);
3855
3856    HRESULT (STDMETHODCALLTYPE *get_InnerFECMethod)(
3857        IBDA_DigitalDemodulator3* This,
3858        FECMethod *pFECMethod);
3859
3860    HRESULT (STDMETHODCALLTYPE *put_InnerFECRate)(
3861        IBDA_DigitalDemodulator3* This,
3862        BinaryConvolutionCodeRate *pFECRate);
3863
3864    HRESULT (STDMETHODCALLTYPE *get_InnerFECRate)(
3865        IBDA_DigitalDemodulator3* This,
3866        BinaryConvolutionCodeRate *pFECRate);
3867
3868    HRESULT (STDMETHODCALLTYPE *put_OuterFECMethod)(
3869        IBDA_DigitalDemodulator3* This,
3870        FECMethod *pFECMethod);
3871
3872    HRESULT (STDMETHODCALLTYPE *get_OuterFECMethod)(
3873        IBDA_DigitalDemodulator3* This,
3874        FECMethod *pFECMethod);
3875
3876    HRESULT (STDMETHODCALLTYPE *put_OuterFECRate)(
3877        IBDA_DigitalDemodulator3* This,
3878        BinaryConvolutionCodeRate *pFECRate);
3879
3880    HRESULT (STDMETHODCALLTYPE *get_OuterFECRate)(
3881        IBDA_DigitalDemodulator3* This,
3882        BinaryConvolutionCodeRate *pFECRate);
3883
3884    HRESULT (STDMETHODCALLTYPE *put_SymbolRate)(
3885        IBDA_DigitalDemodulator3* This,
3886        ULONG *pSymbolRate);
3887
3888    HRESULT (STDMETHODCALLTYPE *get_SymbolRate)(
3889        IBDA_DigitalDemodulator3* This,
3890        ULONG *pSymbolRate);
3891
3892    HRESULT (STDMETHODCALLTYPE *put_SpectralInversion)(
3893        IBDA_DigitalDemodulator3* This,
3894        SpectralInversion *pSpectralInversion);
3895
3896    HRESULT (STDMETHODCALLTYPE *get_SpectralInversion)(
3897        IBDA_DigitalDemodulator3* This,
3898        SpectralInversion *pSpectralInversion);
3899
3900    /*** IBDA_DigitalDemodulator2 methods ***/
3901    HRESULT (STDMETHODCALLTYPE *put_GuardInterval)(
3902        IBDA_DigitalDemodulator3* This,
3903        GuardInterval *pGuardInterval);
3904
3905    HRESULT (STDMETHODCALLTYPE *get_GuardInterval)(
3906        IBDA_DigitalDemodulator3* This,
3907        GuardInterval *pGuardInterval);
3908
3909    HRESULT (STDMETHODCALLTYPE *put_TransmissionMode)(
3910        IBDA_DigitalDemodulator3* This,
3911        TransmissionMode *pTransmissionMode);
3912
3913    HRESULT (STDMETHODCALLTYPE *get_TransmissionMode)(
3914        IBDA_DigitalDemodulator3* This,
3915        TransmissionMode *pTransmissionMode);
3916
3917    HRESULT (STDMETHODCALLTYPE *put_RollOff)(
3918        IBDA_DigitalDemodulator3* This,
3919        RollOff *pRollOff);
3920
3921    HRESULT (STDMETHODCALLTYPE *get_RollOff)(
3922        IBDA_DigitalDemodulator3* This,
3923        RollOff *pRollOff);
3924
3925    HRESULT (STDMETHODCALLTYPE *put_Pilot)(
3926        IBDA_DigitalDemodulator3* This,
3927        Pilot *pPilot);
3928
3929    HRESULT (STDMETHODCALLTYPE *get_Pilot)(
3930        IBDA_DigitalDemodulator3* This,
3931        Pilot *pPilot);
3932
3933    /*** IBDA_DigitalDemodulator3 methods ***/
3934    HRESULT (STDMETHODCALLTYPE *put_SignalTimeouts)(
3935        IBDA_DigitalDemodulator3* This,
3936        BDA_SIGNAL_TIMEOUTS *pSignalTimeouts);
3937
3938    HRESULT (STDMETHODCALLTYPE *get_SignalTimeouts)(
3939        IBDA_DigitalDemodulator3* This,
3940        BDA_SIGNAL_TIMEOUTS *pSignalTimeouts);
3941
3942    HRESULT (STDMETHODCALLTYPE *put_PLPNumber)(
3943        IBDA_DigitalDemodulator3* This,
3944        ULONG *pPLPNumber);
3945
3946    HRESULT (STDMETHODCALLTYPE *get_PLPNumber)(
3947        IBDA_DigitalDemodulator3* This,
3948        ULONG *pPLPNumber);
3949
3950    END_INTERFACE
3951} IBDA_DigitalDemodulator3Vtbl;
3952interface IBDA_DigitalDemodulator3 {
3953    CONST_VTBL IBDA_DigitalDemodulator3Vtbl* lpVtbl;
3954};
3955
3956#ifdef COBJMACROS
3957#ifndef WIDL_C_INLINE_WRAPPERS
3958/*** IUnknown methods ***/
3959#define IBDA_DigitalDemodulator3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3960#define IBDA_DigitalDemodulator3_AddRef(This) (This)->lpVtbl->AddRef(This)
3961#define IBDA_DigitalDemodulator3_Release(This) (This)->lpVtbl->Release(This)
3962/*** IBDA_DigitalDemodulator methods ***/
3963#define IBDA_DigitalDemodulator3_put_ModulationType(This,pModulationType) (This)->lpVtbl->put_ModulationType(This,pModulationType)
3964#define IBDA_DigitalDemodulator3_get_ModulationType(This,pModulationType) (This)->lpVtbl->get_ModulationType(This,pModulationType)
3965#define IBDA_DigitalDemodulator3_put_InnerFECMethod(This,pFECMethod) (This)->lpVtbl->put_InnerFECMethod(This,pFECMethod)
3966#define IBDA_DigitalDemodulator3_get_InnerFECMethod(This,pFECMethod) (This)->lpVtbl->get_InnerFECMethod(This,pFECMethod)
3967#define IBDA_DigitalDemodulator3_put_InnerFECRate(This,pFECRate) (This)->lpVtbl->put_InnerFECRate(This,pFECRate)
3968#define IBDA_DigitalDemodulator3_get_InnerFECRate(This,pFECRate) (This)->lpVtbl->get_InnerFECRate(This,pFECRate)
3969#define IBDA_DigitalDemodulator3_put_OuterFECMethod(This,pFECMethod) (This)->lpVtbl->put_OuterFECMethod(This,pFECMethod)
3970#define IBDA_DigitalDemodulator3_get_OuterFECMethod(This,pFECMethod) (This)->lpVtbl->get_OuterFECMethod(This,pFECMethod)
3971#define IBDA_DigitalDemodulator3_put_OuterFECRate(This,pFECRate) (This)->lpVtbl->put_OuterFECRate(This,pFECRate)
3972#define IBDA_DigitalDemodulator3_get_OuterFECRate(This,pFECRate) (This)->lpVtbl->get_OuterFECRate(This,pFECRate)
3973#define IBDA_DigitalDemodulator3_put_SymbolRate(This,pSymbolRate) (This)->lpVtbl->put_SymbolRate(This,pSymbolRate)
3974#define IBDA_DigitalDemodulator3_get_SymbolRate(This,pSymbolRate) (This)->lpVtbl->get_SymbolRate(This,pSymbolRate)
3975#define IBDA_DigitalDemodulator3_put_SpectralInversion(This,pSpectralInversion) (This)->lpVtbl->put_SpectralInversion(This,pSpectralInversion)
3976#define IBDA_DigitalDemodulator3_get_SpectralInversion(This,pSpectralInversion) (This)->lpVtbl->get_SpectralInversion(This,pSpectralInversion)
3977/*** IBDA_DigitalDemodulator2 methods ***/
3978#define IBDA_DigitalDemodulator3_put_GuardInterval(This,pGuardInterval) (This)->lpVtbl->put_GuardInterval(This,pGuardInterval)
3979#define IBDA_DigitalDemodulator3_get_GuardInterval(This,pGuardInterval) (This)->lpVtbl->get_GuardInterval(This,pGuardInterval)
3980#define IBDA_DigitalDemodulator3_put_TransmissionMode(This,pTransmissionMode) (This)->lpVtbl->put_TransmissionMode(This,pTransmissionMode)
3981#define IBDA_DigitalDemodulator3_get_TransmissionMode(This,pTransmissionMode) (This)->lpVtbl->get_TransmissionMode(This,pTransmissionMode)
3982#define IBDA_DigitalDemodulator3_put_RollOff(This,pRollOff) (This)->lpVtbl->put_RollOff(This,pRollOff)
3983#define IBDA_DigitalDemodulator3_get_RollOff(This,pRollOff) (This)->lpVtbl->get_RollOff(This,pRollOff)
3984#define IBDA_DigitalDemodulator3_put_Pilot(This,pPilot) (This)->lpVtbl->put_Pilot(This,pPilot)
3985#define IBDA_DigitalDemodulator3_get_Pilot(This,pPilot) (This)->lpVtbl->get_Pilot(This,pPilot)
3986/*** IBDA_DigitalDemodulator3 methods ***/
3987#define IBDA_DigitalDemodulator3_put_SignalTimeouts(This,pSignalTimeouts) (This)->lpVtbl->put_SignalTimeouts(This,pSignalTimeouts)
3988#define IBDA_DigitalDemodulator3_get_SignalTimeouts(This,pSignalTimeouts) (This)->lpVtbl->get_SignalTimeouts(This,pSignalTimeouts)
3989#define IBDA_DigitalDemodulator3_put_PLPNumber(This,pPLPNumber) (This)->lpVtbl->put_PLPNumber(This,pPLPNumber)
3990#define IBDA_DigitalDemodulator3_get_PLPNumber(This,pPLPNumber) (This)->lpVtbl->get_PLPNumber(This,pPLPNumber)
3991#else
3992/*** IUnknown methods ***/
3993static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_QueryInterface(IBDA_DigitalDemodulator3* This,REFIID riid,void **ppvObject) {
3994    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3995}
3996static FORCEINLINE ULONG IBDA_DigitalDemodulator3_AddRef(IBDA_DigitalDemodulator3* This) {
3997    return This->lpVtbl->AddRef(This);
3998}
3999static FORCEINLINE ULONG IBDA_DigitalDemodulator3_Release(IBDA_DigitalDemodulator3* This) {
4000    return This->lpVtbl->Release(This);
4001}
4002/*** IBDA_DigitalDemodulator methods ***/
4003static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_ModulationType(IBDA_DigitalDemodulator3* This,ModulationType *pModulationType) {
4004    return This->lpVtbl->put_ModulationType(This,pModulationType);
4005}
4006static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_ModulationType(IBDA_DigitalDemodulator3* This,ModulationType *pModulationType) {
4007    return This->lpVtbl->get_ModulationType(This,pModulationType);
4008}
4009static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_InnerFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
4010    return This->lpVtbl->put_InnerFECMethod(This,pFECMethod);
4011}
4012static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_InnerFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
4013    return This->lpVtbl->get_InnerFECMethod(This,pFECMethod);
4014}
4015static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_InnerFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
4016    return This->lpVtbl->put_InnerFECRate(This,pFECRate);
4017}
4018static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_InnerFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
4019    return This->lpVtbl->get_InnerFECRate(This,pFECRate);
4020}
4021static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_OuterFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
4022    return This->lpVtbl->put_OuterFECMethod(This,pFECMethod);
4023}
4024static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_OuterFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
4025    return This->lpVtbl->get_OuterFECMethod(This,pFECMethod);
4026}
4027static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_OuterFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
4028    return This->lpVtbl->put_OuterFECRate(This,pFECRate);
4029}
4030static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_OuterFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
4031    return This->lpVtbl->get_OuterFECRate(This,pFECRate);
4032}
4033static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_SymbolRate(IBDA_DigitalDemodulator3* This,ULONG *pSymbolRate) {
4034    return This->lpVtbl->put_SymbolRate(This,pSymbolRate);
4035}
4036static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_SymbolRate(IBDA_DigitalDemodulator3* This,ULONG *pSymbolRate) {
4037    return This->lpVtbl->get_SymbolRate(This,pSymbolRate);
4038}
4039static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_SpectralInversion(IBDA_DigitalDemodulator3* This,SpectralInversion *pSpectralInversion) {
4040    return This->lpVtbl->put_SpectralInversion(This,pSpectralInversion);
4041}
4042static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_SpectralInversion(IBDA_DigitalDemodulator3* This,SpectralInversion *pSpectralInversion) {
4043    return This->lpVtbl->get_SpectralInversion(This,pSpectralInversion);
4044}
4045/*** IBDA_DigitalDemodulator2 methods ***/
4046static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_GuardInterval(IBDA_DigitalDemodulator3* This,GuardInterval *pGuardInterval) {
4047    return This->lpVtbl->put_GuardInterval(This,pGuardInterval);
4048}
4049static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_GuardInterval(IBDA_DigitalDemodulator3* This,GuardInterval *pGuardInterval) {
4050    return This->lpVtbl->get_GuardInterval(This,pGuardInterval);
4051}
4052static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_TransmissionMode(IBDA_DigitalDemodulator3* This,TransmissionMode *pTransmissionMode) {
4053    return This->lpVtbl->put_TransmissionMode(This,pTransmissionMode);
4054}
4055static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_TransmissionMode(IBDA_DigitalDemodulator3* This,TransmissionMode *pTransmissionMode) {
4056    return This->lpVtbl->get_TransmissionMode(This,pTransmissionMode);
4057}
4058static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_RollOff(IBDA_DigitalDemodulator3* This,RollOff *pRollOff) {
4059    return This->lpVtbl->put_RollOff(This,pRollOff);
4060}
4061static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_RollOff(IBDA_DigitalDemodulator3* This,RollOff *pRollOff) {
4062    return This->lpVtbl->get_RollOff(This,pRollOff);
4063}
4064static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_Pilot(IBDA_DigitalDemodulator3* This,Pilot *pPilot) {
4065    return This->lpVtbl->put_Pilot(This,pPilot);
4066}
4067static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_Pilot(IBDA_DigitalDemodulator3* This,Pilot *pPilot) {
4068    return This->lpVtbl->get_Pilot(This,pPilot);
4069}
4070/*** IBDA_DigitalDemodulator3 methods ***/
4071static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_SignalTimeouts(IBDA_DigitalDemodulator3* This,BDA_SIGNAL_TIMEOUTS *pSignalTimeouts) {
4072    return This->lpVtbl->put_SignalTimeouts(This,pSignalTimeouts);
4073}
4074static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_SignalTimeouts(IBDA_DigitalDemodulator3* This,BDA_SIGNAL_TIMEOUTS *pSignalTimeouts) {
4075    return This->lpVtbl->get_SignalTimeouts(This,pSignalTimeouts);
4076}
4077static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_PLPNumber(IBDA_DigitalDemodulator3* This,ULONG *pPLPNumber) {
4078    return This->lpVtbl->put_PLPNumber(This,pPLPNumber);
4079}
4080static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_PLPNumber(IBDA_DigitalDemodulator3* This,ULONG *pPLPNumber) {
4081    return This->lpVtbl->get_PLPNumber(This,pPLPNumber);
4082}
4083#endif
4084#endif
4085
4086#endif
4087
4088HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_put_SignalTimeouts_Proxy(
4089    IBDA_DigitalDemodulator3* This,
4090    BDA_SIGNAL_TIMEOUTS *pSignalTimeouts);
4091void __RPC_STUB IBDA_DigitalDemodulator3_put_SignalTimeouts_Stub(
4092    IRpcStubBuffer* This,
4093    IRpcChannelBuffer* pRpcChannelBuffer,
4094    PRPC_MESSAGE pRpcMessage,
4095    DWORD* pdwStubPhase);
4096HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_get_SignalTimeouts_Proxy(
4097    IBDA_DigitalDemodulator3* This,
4098    BDA_SIGNAL_TIMEOUTS *pSignalTimeouts);
4099void __RPC_STUB IBDA_DigitalDemodulator3_get_SignalTimeouts_Stub(
4100    IRpcStubBuffer* This,
4101    IRpcChannelBuffer* pRpcChannelBuffer,
4102    PRPC_MESSAGE pRpcMessage,
4103    DWORD* pdwStubPhase);
4104HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_put_PLPNumber_Proxy(
4105    IBDA_DigitalDemodulator3* This,
4106    ULONG *pPLPNumber);
4107void __RPC_STUB IBDA_DigitalDemodulator3_put_PLPNumber_Stub(
4108    IRpcStubBuffer* This,
4109    IRpcChannelBuffer* pRpcChannelBuffer,
4110    PRPC_MESSAGE pRpcMessage,
4111    DWORD* pdwStubPhase);
4112HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_get_PLPNumber_Proxy(
4113    IBDA_DigitalDemodulator3* This,
4114    ULONG *pPLPNumber);
4115void __RPC_STUB IBDA_DigitalDemodulator3_get_PLPNumber_Stub(
4116    IRpcStubBuffer* This,
4117    IRpcChannelBuffer* pRpcChannelBuffer,
4118    PRPC_MESSAGE pRpcMessage,
4119    DWORD* pdwStubPhase);
4120
4121#endif  /* __IBDA_DigitalDemodulator3_INTERFACE_DEFINED__ */
4122
4123/*****************************************************************************
4124 * ICCSubStreamFiltering interface
4125 */
4126#ifndef __ICCSubStreamFiltering_INTERFACE_DEFINED__
4127#define __ICCSubStreamFiltering_INTERFACE_DEFINED__
4128
4129DEFINE_GUID(IID_ICCSubStreamFiltering, 0x4b2bd7ea, 0x8347, 0x467b, 0x8d,0xbf, 0x62,0xf7,0x84,0x92,0x9c,0xc3);
4130#if defined(__cplusplus) && !defined(CINTERFACE)
4131MIDL_INTERFACE("4b2bd7ea-8347-467b-8dbf-62f784929cc3")
4132ICCSubStreamFiltering : public IUnknown
4133{
4134    virtual HRESULT STDMETHODCALLTYPE get_SubstreamTypes(
4135        LONG *pTypes) = 0;
4136
4137    virtual HRESULT STDMETHODCALLTYPE put_SubstreamTypes(
4138        LONG Types) = 0;
4139
4140};
4141#ifdef __CRT_UUID_DECL
4142__CRT_UUID_DECL(ICCSubStreamFiltering, 0x4b2bd7ea, 0x8347, 0x467b, 0x8d,0xbf, 0x62,0xf7,0x84,0x92,0x9c,0xc3)
4143#endif
4144#else
4145typedef struct ICCSubStreamFilteringVtbl {
4146    BEGIN_INTERFACE
4147
4148    /*** IUnknown methods ***/
4149    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4150        ICCSubStreamFiltering* This,
4151        REFIID riid,
4152        void **ppvObject);
4153
4154    ULONG (STDMETHODCALLTYPE *AddRef)(
4155        ICCSubStreamFiltering* This);
4156
4157    ULONG (STDMETHODCALLTYPE *Release)(
4158        ICCSubStreamFiltering* This);
4159
4160    /*** ICCSubStreamFiltering methods ***/
4161    HRESULT (STDMETHODCALLTYPE *get_SubstreamTypes)(
4162        ICCSubStreamFiltering* This,
4163        LONG *pTypes);
4164
4165    HRESULT (STDMETHODCALLTYPE *put_SubstreamTypes)(
4166        ICCSubStreamFiltering* This,
4167        LONG Types);
4168
4169    END_INTERFACE
4170} ICCSubStreamFilteringVtbl;
4171interface ICCSubStreamFiltering {
4172    CONST_VTBL ICCSubStreamFilteringVtbl* lpVtbl;
4173};
4174
4175#ifdef COBJMACROS
4176#ifndef WIDL_C_INLINE_WRAPPERS
4177/*** IUnknown methods ***/
4178#define ICCSubStreamFiltering_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4179#define ICCSubStreamFiltering_AddRef(This) (This)->lpVtbl->AddRef(This)
4180#define ICCSubStreamFiltering_Release(This) (This)->lpVtbl->Release(This)
4181/*** ICCSubStreamFiltering methods ***/
4182#define ICCSubStreamFiltering_get_SubstreamTypes(This,pTypes) (This)->lpVtbl->get_SubstreamTypes(This,pTypes)
4183#define ICCSubStreamFiltering_put_SubstreamTypes(This,Types) (This)->lpVtbl->put_SubstreamTypes(This,Types)
4184#else
4185/*** IUnknown methods ***/
4186static FORCEINLINE HRESULT ICCSubStreamFiltering_QueryInterface(ICCSubStreamFiltering* This,REFIID riid,void **ppvObject) {
4187    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4188}
4189static FORCEINLINE ULONG ICCSubStreamFiltering_AddRef(ICCSubStreamFiltering* This) {
4190    return This->lpVtbl->AddRef(This);
4191}
4192static FORCEINLINE ULONG ICCSubStreamFiltering_Release(ICCSubStreamFiltering* This) {
4193    return This->lpVtbl->Release(This);
4194}
4195/*** ICCSubStreamFiltering methods ***/
4196static FORCEINLINE HRESULT ICCSubStreamFiltering_get_SubstreamTypes(ICCSubStreamFiltering* This,LONG *pTypes) {
4197    return This->lpVtbl->get_SubstreamTypes(This,pTypes);
4198}
4199static FORCEINLINE HRESULT ICCSubStreamFiltering_put_SubstreamTypes(ICCSubStreamFiltering* This,LONG Types) {
4200    return This->lpVtbl->put_SubstreamTypes(This,Types);
4201}
4202#endif
4203#endif
4204
4205#endif
4206
4207HRESULT STDMETHODCALLTYPE ICCSubStreamFiltering_get_SubstreamTypes_Proxy(
4208    ICCSubStreamFiltering* This,
4209    LONG *pTypes);
4210void __RPC_STUB ICCSubStreamFiltering_get_SubstreamTypes_Stub(
4211    IRpcStubBuffer* This,
4212    IRpcChannelBuffer* pRpcChannelBuffer,
4213    PRPC_MESSAGE pRpcMessage,
4214    DWORD* pdwStubPhase);
4215HRESULT STDMETHODCALLTYPE ICCSubStreamFiltering_put_SubstreamTypes_Proxy(
4216    ICCSubStreamFiltering* This,
4217    LONG Types);
4218void __RPC_STUB ICCSubStreamFiltering_put_SubstreamTypes_Stub(
4219    IRpcStubBuffer* This,
4220    IRpcChannelBuffer* pRpcChannelBuffer,
4221    PRPC_MESSAGE pRpcMessage,
4222    DWORD* pdwStubPhase);
4223
4224#endif  /* __ICCSubStreamFiltering_INTERFACE_DEFINED__ */
4225
4226/*****************************************************************************
4227 * IBDA_IPSinkControl interface
4228 */
4229#ifndef __IBDA_IPSinkControl_INTERFACE_DEFINED__
4230#define __IBDA_IPSinkControl_INTERFACE_DEFINED__
4231
4232DEFINE_GUID(IID_IBDA_IPSinkControl, 0x3f4dc8e2, 0x4050, 0x11d3, 0x8f,0x4b, 0x00,0xc0,0x4f,0x79,0x71,0xe2);
4233#if defined(__cplusplus) && !defined(CINTERFACE)
4234MIDL_INTERFACE("3f4dc8e2-4050-11d3-8f4b-00c04f7971e2")
4235IBDA_IPSinkControl : public IUnknown
4236{
4237    virtual HRESULT STDMETHODCALLTYPE GetMulticastList(
4238        ULONG *pulcbSize,
4239        BYTE **pbBuffer) = 0;
4240
4241    virtual HRESULT STDMETHODCALLTYPE GetAdapterIPAddress(
4242        ULONG *pulcbSize,
4243        BYTE **pbBuffer) = 0;
4244
4245};
4246#ifdef __CRT_UUID_DECL
4247__CRT_UUID_DECL(IBDA_IPSinkControl, 0x3f4dc8e2, 0x4050, 0x11d3, 0x8f,0x4b, 0x00,0xc0,0x4f,0x79,0x71,0xe2)
4248#endif
4249#else
4250typedef struct IBDA_IPSinkControlVtbl {
4251    BEGIN_INTERFACE
4252
4253    /*** IUnknown methods ***/
4254    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4255        IBDA_IPSinkControl* This,
4256        REFIID riid,
4257        void **ppvObject);
4258
4259    ULONG (STDMETHODCALLTYPE *AddRef)(
4260        IBDA_IPSinkControl* This);
4261
4262    ULONG (STDMETHODCALLTYPE *Release)(
4263        IBDA_IPSinkControl* This);
4264
4265    /*** IBDA_IPSinkControl methods ***/
4266    HRESULT (STDMETHODCALLTYPE *GetMulticastList)(
4267        IBDA_IPSinkControl* This,
4268        ULONG *pulcbSize,
4269        BYTE **pbBuffer);
4270
4271    HRESULT (STDMETHODCALLTYPE *GetAdapterIPAddress)(
4272        IBDA_IPSinkControl* This,
4273        ULONG *pulcbSize,
4274        BYTE **pbBuffer);
4275
4276    END_INTERFACE
4277} IBDA_IPSinkControlVtbl;
4278interface IBDA_IPSinkControl {
4279    CONST_VTBL IBDA_IPSinkControlVtbl* lpVtbl;
4280};
4281
4282#ifdef COBJMACROS
4283#ifndef WIDL_C_INLINE_WRAPPERS
4284/*** IUnknown methods ***/
4285#define IBDA_IPSinkControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4286#define IBDA_IPSinkControl_AddRef(This) (This)->lpVtbl->AddRef(This)
4287#define IBDA_IPSinkControl_Release(This) (This)->lpVtbl->Release(This)
4288/*** IBDA_IPSinkControl methods ***/
4289#define IBDA_IPSinkControl_GetMulticastList(This,pulcbSize,pbBuffer) (This)->lpVtbl->GetMulticastList(This,pulcbSize,pbBuffer)
4290#define IBDA_IPSinkControl_GetAdapterIPAddress(This,pulcbSize,pbBuffer) (This)->lpVtbl->GetAdapterIPAddress(This,pulcbSize,pbBuffer)
4291#else
4292/*** IUnknown methods ***/
4293static FORCEINLINE HRESULT IBDA_IPSinkControl_QueryInterface(IBDA_IPSinkControl* This,REFIID riid,void **ppvObject) {
4294    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4295}
4296static FORCEINLINE ULONG IBDA_IPSinkControl_AddRef(IBDA_IPSinkControl* This) {
4297    return This->lpVtbl->AddRef(This);
4298}
4299static FORCEINLINE ULONG IBDA_IPSinkControl_Release(IBDA_IPSinkControl* This) {
4300    return This->lpVtbl->Release(This);
4301}
4302/*** IBDA_IPSinkControl methods ***/
4303static FORCEINLINE HRESULT IBDA_IPSinkControl_GetMulticastList(IBDA_IPSinkControl* This,ULONG *pulcbSize,BYTE **pbBuffer) {
4304    return This->lpVtbl->GetMulticastList(This,pulcbSize,pbBuffer);
4305}
4306static FORCEINLINE HRESULT IBDA_IPSinkControl_GetAdapterIPAddress(IBDA_IPSinkControl* This,ULONG *pulcbSize,BYTE **pbBuffer) {
4307    return This->lpVtbl->GetAdapterIPAddress(This,pulcbSize,pbBuffer);
4308}
4309#endif
4310#endif
4311
4312#endif
4313
4314HRESULT STDMETHODCALLTYPE IBDA_IPSinkControl_GetMulticastList_Proxy(
4315    IBDA_IPSinkControl* This,
4316    ULONG *pulcbSize,
4317    BYTE **pbBuffer);
4318void __RPC_STUB IBDA_IPSinkControl_GetMulticastList_Stub(
4319    IRpcStubBuffer* This,
4320    IRpcChannelBuffer* pRpcChannelBuffer,
4321    PRPC_MESSAGE pRpcMessage,
4322    DWORD* pdwStubPhase);
4323HRESULT STDMETHODCALLTYPE IBDA_IPSinkControl_GetAdapterIPAddress_Proxy(
4324    IBDA_IPSinkControl* This,
4325    ULONG *pulcbSize,
4326    BYTE **pbBuffer);
4327void __RPC_STUB IBDA_IPSinkControl_GetAdapterIPAddress_Stub(
4328    IRpcStubBuffer* This,
4329    IRpcChannelBuffer* pRpcChannelBuffer,
4330    PRPC_MESSAGE pRpcMessage,
4331    DWORD* pdwStubPhase);
4332
4333#endif  /* __IBDA_IPSinkControl_INTERFACE_DEFINED__ */
4334
4335/*****************************************************************************
4336 * IBDA_IPSinkInfo interface
4337 */
4338#ifndef __IBDA_IPSinkInfo_INTERFACE_DEFINED__
4339#define __IBDA_IPSinkInfo_INTERFACE_DEFINED__
4340
4341DEFINE_GUID(IID_IBDA_IPSinkInfo, 0xa750108f, 0x492e, 0x4d51, 0x95,0xf7, 0x64,0x9b,0x23,0xff,0x7a,0xd7);
4342#if defined(__cplusplus) && !defined(CINTERFACE)
4343MIDL_INTERFACE("a750108f-492e-4d51-95f7-649b23ff7ad7")
4344IBDA_IPSinkInfo : public IUnknown
4345{
4346    virtual HRESULT STDMETHODCALLTYPE get_MulticastList(
4347        ULONG *pulcbAddresses,
4348        BYTE **ppbAddressList) = 0;
4349
4350    virtual HRESULT STDMETHODCALLTYPE get_AdapterIPAddress(
4351        BSTR *pbstrBuffer) = 0;
4352
4353    virtual HRESULT STDMETHODCALLTYPE get_AdapterDescription(
4354        BSTR *pbstrBuffer) = 0;
4355
4356};
4357#ifdef __CRT_UUID_DECL
4358__CRT_UUID_DECL(IBDA_IPSinkInfo, 0xa750108f, 0x492e, 0x4d51, 0x95,0xf7, 0x64,0x9b,0x23,0xff,0x7a,0xd7)
4359#endif
4360#else
4361typedef struct IBDA_IPSinkInfoVtbl {
4362    BEGIN_INTERFACE
4363
4364    /*** IUnknown methods ***/
4365    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4366        IBDA_IPSinkInfo* This,
4367        REFIID riid,
4368        void **ppvObject);
4369
4370    ULONG (STDMETHODCALLTYPE *AddRef)(
4371        IBDA_IPSinkInfo* This);
4372
4373    ULONG (STDMETHODCALLTYPE *Release)(
4374        IBDA_IPSinkInfo* This);
4375
4376    /*** IBDA_IPSinkInfo methods ***/
4377    HRESULT (STDMETHODCALLTYPE *get_MulticastList)(
4378        IBDA_IPSinkInfo* This,
4379        ULONG *pulcbAddresses,
4380        BYTE **ppbAddressList);
4381
4382    HRESULT (STDMETHODCALLTYPE *get_AdapterIPAddress)(
4383        IBDA_IPSinkInfo* This,
4384        BSTR *pbstrBuffer);
4385
4386    HRESULT (STDMETHODCALLTYPE *get_AdapterDescription)(
4387        IBDA_IPSinkInfo* This,
4388        BSTR *pbstrBuffer);
4389
4390    END_INTERFACE
4391} IBDA_IPSinkInfoVtbl;
4392interface IBDA_IPSinkInfo {
4393    CONST_VTBL IBDA_IPSinkInfoVtbl* lpVtbl;
4394};
4395
4396#ifdef COBJMACROS
4397#ifndef WIDL_C_INLINE_WRAPPERS
4398/*** IUnknown methods ***/
4399#define IBDA_IPSinkInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4400#define IBDA_IPSinkInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
4401#define IBDA_IPSinkInfo_Release(This) (This)->lpVtbl->Release(This)
4402/*** IBDA_IPSinkInfo methods ***/
4403#define IBDA_IPSinkInfo_get_MulticastList(This,pulcbAddresses,ppbAddressList) (This)->lpVtbl->get_MulticastList(This,pulcbAddresses,ppbAddressList)
4404#define IBDA_IPSinkInfo_get_AdapterIPAddress(This,pbstrBuffer) (This)->lpVtbl->get_AdapterIPAddress(This,pbstrBuffer)
4405#define IBDA_IPSinkInfo_get_AdapterDescription(This,pbstrBuffer) (This)->lpVtbl->get_AdapterDescription(This,pbstrBuffer)
4406#else
4407/*** IUnknown methods ***/
4408static FORCEINLINE HRESULT IBDA_IPSinkInfo_QueryInterface(IBDA_IPSinkInfo* This,REFIID riid,void **ppvObject) {
4409    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4410}
4411static FORCEINLINE ULONG IBDA_IPSinkInfo_AddRef(IBDA_IPSinkInfo* This) {
4412    return This->lpVtbl->AddRef(This);
4413}
4414static FORCEINLINE ULONG IBDA_IPSinkInfo_Release(IBDA_IPSinkInfo* This) {
4415    return This->lpVtbl->Release(This);
4416}
4417/*** IBDA_IPSinkInfo methods ***/
4418static FORCEINLINE HRESULT IBDA_IPSinkInfo_get_MulticastList(IBDA_IPSinkInfo* This,ULONG *pulcbAddresses,BYTE **ppbAddressList) {
4419    return This->lpVtbl->get_MulticastList(This,pulcbAddresses,ppbAddressList);
4420}
4421static FORCEINLINE HRESULT IBDA_IPSinkInfo_get_AdapterIPAddress(IBDA_IPSinkInfo* This,BSTR *pbstrBuffer) {
4422    return This->lpVtbl->get_AdapterIPAddress(This,pbstrBuffer);
4423}
4424static FORCEINLINE HRESULT IBDA_IPSinkInfo_get_AdapterDescription(IBDA_IPSinkInfo* This,BSTR *pbstrBuffer) {
4425    return This->lpVtbl->get_AdapterDescription(This,pbstrBuffer);
4426}
4427#endif
4428#endif
4429
4430#endif
4431
4432HRESULT STDMETHODCALLTYPE IBDA_IPSinkInfo_get_MulticastList_Proxy(
4433    IBDA_IPSinkInfo* This,
4434    ULONG *pulcbAddresses,
4435    BYTE **ppbAddressList);
4436void __RPC_STUB IBDA_IPSinkInfo_get_MulticastList_Stub(
4437    IRpcStubBuffer* This,
4438    IRpcChannelBuffer* pRpcChannelBuffer,
4439    PRPC_MESSAGE pRpcMessage,
4440    DWORD* pdwStubPhase);
4441HRESULT STDMETHODCALLTYPE IBDA_IPSinkInfo_get_AdapterIPAddress_Proxy(
4442    IBDA_IPSinkInfo* This,
4443    BSTR *pbstrBuffer);
4444void __RPC_STUB IBDA_IPSinkInfo_get_AdapterIPAddress_Stub(
4445    IRpcStubBuffer* This,
4446    IRpcChannelBuffer* pRpcChannelBuffer,
4447    PRPC_MESSAGE pRpcMessage,
4448    DWORD* pdwStubPhase);
4449HRESULT STDMETHODCALLTYPE IBDA_IPSinkInfo_get_AdapterDescription_Proxy(
4450    IBDA_IPSinkInfo* This,
4451    BSTR *pbstrBuffer);
4452void __RPC_STUB IBDA_IPSinkInfo_get_AdapterDescription_Stub(
4453    IRpcStubBuffer* This,
4454    IRpcChannelBuffer* pRpcChannelBuffer,
4455    PRPC_MESSAGE pRpcMessage,
4456    DWORD* pdwStubPhase);
4457
4458#endif  /* __IBDA_IPSinkInfo_INTERFACE_DEFINED__ */
4459
4460/*****************************************************************************
4461 * IEnumPIDMap interface
4462 */
4463#ifndef __IEnumPIDMap_INTERFACE_DEFINED__
4464#define __IEnumPIDMap_INTERFACE_DEFINED__
4465
4466DEFINE_GUID(IID_IEnumPIDMap, 0xafb6c2a2, 0x2c41, 0x11d3, 0x8a,0x60, 0x00,0x00,0xf8,0x1e,0x0e,0x4a);
4467#if defined(__cplusplus) && !defined(CINTERFACE)
4468MIDL_INTERFACE("afb6c2a2-2c41-11d3-8a60-0000f81e0e4a")
4469IEnumPIDMap : public IUnknown
4470{
4471    virtual HRESULT STDMETHODCALLTYPE Next(
4472        ULONG cRequest,
4473        PID_MAP *pPIDMap,
4474        ULONG *pcReceived) = 0;
4475
4476    virtual HRESULT STDMETHODCALLTYPE Skip(
4477        ULONG cRecords) = 0;
4478
4479    virtual HRESULT STDMETHODCALLTYPE Reset(
4480        ) = 0;
4481
4482    virtual HRESULT STDMETHODCALLTYPE Clone(
4483        IEnumPIDMap **ppIEnumPIDMap) = 0;
4484
4485};
4486#ifdef __CRT_UUID_DECL
4487__CRT_UUID_DECL(IEnumPIDMap, 0xafb6c2a2, 0x2c41, 0x11d3, 0x8a,0x60, 0x00,0x00,0xf8,0x1e,0x0e,0x4a)
4488#endif
4489#else
4490typedef struct IEnumPIDMapVtbl {
4491    BEGIN_INTERFACE
4492
4493    /*** IUnknown methods ***/
4494    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4495        IEnumPIDMap* This,
4496        REFIID riid,
4497        void **ppvObject);
4498
4499    ULONG (STDMETHODCALLTYPE *AddRef)(
4500        IEnumPIDMap* This);
4501
4502    ULONG (STDMETHODCALLTYPE *Release)(
4503        IEnumPIDMap* This);
4504
4505    /*** IEnumPIDMap methods ***/
4506    HRESULT (STDMETHODCALLTYPE *Next)(
4507        IEnumPIDMap* This,
4508        ULONG cRequest,
4509        PID_MAP *pPIDMap,
4510        ULONG *pcReceived);
4511
4512    HRESULT (STDMETHODCALLTYPE *Skip)(
4513        IEnumPIDMap* This,
4514        ULONG cRecords);
4515
4516    HRESULT (STDMETHODCALLTYPE *Reset)(
4517        IEnumPIDMap* This);
4518
4519    HRESULT (STDMETHODCALLTYPE *Clone)(
4520        IEnumPIDMap* This,
4521        IEnumPIDMap **ppIEnumPIDMap);
4522
4523    END_INTERFACE
4524} IEnumPIDMapVtbl;
4525interface IEnumPIDMap {
4526    CONST_VTBL IEnumPIDMapVtbl* lpVtbl;
4527};
4528
4529#ifdef COBJMACROS
4530#ifndef WIDL_C_INLINE_WRAPPERS
4531/*** IUnknown methods ***/
4532#define IEnumPIDMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4533#define IEnumPIDMap_AddRef(This) (This)->lpVtbl->AddRef(This)
4534#define IEnumPIDMap_Release(This) (This)->lpVtbl->Release(This)
4535/*** IEnumPIDMap methods ***/
4536#define IEnumPIDMap_Next(This,cRequest,pPIDMap,pcReceived) (This)->lpVtbl->Next(This,cRequest,pPIDMap,pcReceived)
4537#define IEnumPIDMap_Skip(This,cRecords) (This)->lpVtbl->Skip(This,cRecords)
4538#define IEnumPIDMap_Reset(This) (This)->lpVtbl->Reset(This)
4539#define IEnumPIDMap_Clone(This,ppIEnumPIDMap) (This)->lpVtbl->Clone(This,ppIEnumPIDMap)
4540#else
4541/*** IUnknown methods ***/
4542static FORCEINLINE HRESULT IEnumPIDMap_QueryInterface(IEnumPIDMap* This,REFIID riid,void **ppvObject) {
4543    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4544}
4545static FORCEINLINE ULONG IEnumPIDMap_AddRef(IEnumPIDMap* This) {
4546    return This->lpVtbl->AddRef(This);
4547}
4548static FORCEINLINE ULONG IEnumPIDMap_Release(IEnumPIDMap* This) {
4549    return This->lpVtbl->Release(This);
4550}
4551/*** IEnumPIDMap methods ***/
4552static FORCEINLINE HRESULT IEnumPIDMap_Next(IEnumPIDMap* This,ULONG cRequest,PID_MAP *pPIDMap,ULONG *pcReceived) {
4553    return This->lpVtbl->Next(This,cRequest,pPIDMap,pcReceived);
4554}
4555static FORCEINLINE HRESULT IEnumPIDMap_Skip(IEnumPIDMap* This,ULONG cRecords) {
4556    return This->lpVtbl->Skip(This,cRecords);
4557}
4558static FORCEINLINE HRESULT IEnumPIDMap_Reset(IEnumPIDMap* This) {
4559    return This->lpVtbl->Reset(This);
4560}
4561static FORCEINLINE HRESULT IEnumPIDMap_Clone(IEnumPIDMap* This,IEnumPIDMap **ppIEnumPIDMap) {
4562    return This->lpVtbl->Clone(This,ppIEnumPIDMap);
4563}
4564#endif
4565#endif
4566
4567#endif
4568
4569HRESULT STDMETHODCALLTYPE IEnumPIDMap_Next_Proxy(
4570    IEnumPIDMap* This,
4571    ULONG cRequest,
4572    PID_MAP *pPIDMap,
4573    ULONG *pcReceived);
4574void __RPC_STUB IEnumPIDMap_Next_Stub(
4575    IRpcStubBuffer* This,
4576    IRpcChannelBuffer* pRpcChannelBuffer,
4577    PRPC_MESSAGE pRpcMessage,
4578    DWORD* pdwStubPhase);
4579HRESULT STDMETHODCALLTYPE IEnumPIDMap_Skip_Proxy(
4580    IEnumPIDMap* This,
4581    ULONG cRecords);
4582void __RPC_STUB IEnumPIDMap_Skip_Stub(
4583    IRpcStubBuffer* This,
4584    IRpcChannelBuffer* pRpcChannelBuffer,
4585    PRPC_MESSAGE pRpcMessage,
4586    DWORD* pdwStubPhase);
4587HRESULT STDMETHODCALLTYPE IEnumPIDMap_Reset_Proxy(
4588    IEnumPIDMap* This);
4589void __RPC_STUB IEnumPIDMap_Reset_Stub(
4590    IRpcStubBuffer* This,
4591    IRpcChannelBuffer* pRpcChannelBuffer,
4592    PRPC_MESSAGE pRpcMessage,
4593    DWORD* pdwStubPhase);
4594HRESULT STDMETHODCALLTYPE IEnumPIDMap_Clone_Proxy(
4595    IEnumPIDMap* This,
4596    IEnumPIDMap **ppIEnumPIDMap);
4597void __RPC_STUB IEnumPIDMap_Clone_Stub(
4598    IRpcStubBuffer* This,
4599    IRpcChannelBuffer* pRpcChannelBuffer,
4600    PRPC_MESSAGE pRpcMessage,
4601    DWORD* pdwStubPhase);
4602
4603#endif  /* __IEnumPIDMap_INTERFACE_DEFINED__ */
4604
4605/*****************************************************************************
4606 * IMPEG2PIDMap interface
4607 */
4608#ifndef __IMPEG2PIDMap_INTERFACE_DEFINED__
4609#define __IMPEG2PIDMap_INTERFACE_DEFINED__
4610
4611DEFINE_GUID(IID_IMPEG2PIDMap, 0xafb6c2a1, 0x2c41, 0x11d3, 0x8a,0x60, 0x00,0x00,0xf8,0x1e,0x0e,0x4a);
4612#if defined(__cplusplus) && !defined(CINTERFACE)
4613MIDL_INTERFACE("afb6c2a1-2c41-11d3-8a60-0000f81e0e4a")
4614IMPEG2PIDMap : public IUnknown
4615{
4616    virtual HRESULT STDMETHODCALLTYPE MapPID(
4617        ULONG culPID,
4618        ULONG *pulPID,
4619        MEDIA_SAMPLE_CONTENT MediaSampleContent) = 0;
4620
4621    virtual HRESULT STDMETHODCALLTYPE UnmapPID(
4622        ULONG culPID,
4623        ULONG *pulPID) = 0;
4624
4625    virtual HRESULT STDMETHODCALLTYPE EnumPIDMap(
4626        IEnumPIDMap **pIEnumPIDMap) = 0;
4627
4628};
4629#ifdef __CRT_UUID_DECL
4630__CRT_UUID_DECL(IMPEG2PIDMap, 0xafb6c2a1, 0x2c41, 0x11d3, 0x8a,0x60, 0x00,0x00,0xf8,0x1e,0x0e,0x4a)
4631#endif
4632#else
4633typedef struct IMPEG2PIDMapVtbl {
4634    BEGIN_INTERFACE
4635
4636    /*** IUnknown methods ***/
4637    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4638        IMPEG2PIDMap* This,
4639        REFIID riid,
4640        void **ppvObject);
4641
4642    ULONG (STDMETHODCALLTYPE *AddRef)(
4643        IMPEG2PIDMap* This);
4644
4645    ULONG (STDMETHODCALLTYPE *Release)(
4646        IMPEG2PIDMap* This);
4647
4648    /*** IMPEG2PIDMap methods ***/
4649    HRESULT (STDMETHODCALLTYPE *MapPID)(
4650        IMPEG2PIDMap* This,
4651        ULONG culPID,
4652        ULONG *pulPID,
4653        MEDIA_SAMPLE_CONTENT MediaSampleContent);
4654
4655    HRESULT (STDMETHODCALLTYPE *UnmapPID)(
4656        IMPEG2PIDMap* This,
4657        ULONG culPID,
4658        ULONG *pulPID);
4659
4660    HRESULT (STDMETHODCALLTYPE *EnumPIDMap)(
4661        IMPEG2PIDMap* This,
4662        IEnumPIDMap **pIEnumPIDMap);
4663
4664    END_INTERFACE
4665} IMPEG2PIDMapVtbl;
4666interface IMPEG2PIDMap {
4667    CONST_VTBL IMPEG2PIDMapVtbl* lpVtbl;
4668};
4669
4670#ifdef COBJMACROS
4671#ifndef WIDL_C_INLINE_WRAPPERS
4672/*** IUnknown methods ***/
4673#define IMPEG2PIDMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4674#define IMPEG2PIDMap_AddRef(This) (This)->lpVtbl->AddRef(This)
4675#define IMPEG2PIDMap_Release(This) (This)->lpVtbl->Release(This)
4676/*** IMPEG2PIDMap methods ***/
4677#define IMPEG2PIDMap_MapPID(This,culPID,pulPID,MediaSampleContent) (This)->lpVtbl->MapPID(This,culPID,pulPID,MediaSampleContent)
4678#define IMPEG2PIDMap_UnmapPID(This,culPID,pulPID) (This)->lpVtbl->UnmapPID(This,culPID,pulPID)
4679#define IMPEG2PIDMap_EnumPIDMap(This,pIEnumPIDMap) (This)->lpVtbl->EnumPIDMap(This,pIEnumPIDMap)
4680#else
4681/*** IUnknown methods ***/
4682static FORCEINLINE HRESULT IMPEG2PIDMap_QueryInterface(IMPEG2PIDMap* This,REFIID riid,void **ppvObject) {
4683    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4684}
4685static FORCEINLINE ULONG IMPEG2PIDMap_AddRef(IMPEG2PIDMap* This) {
4686    return This->lpVtbl->AddRef(This);
4687}
4688static FORCEINLINE ULONG IMPEG2PIDMap_Release(IMPEG2PIDMap* This) {
4689    return This->lpVtbl->Release(This);
4690}
4691/*** IMPEG2PIDMap methods ***/
4692static FORCEINLINE HRESULT IMPEG2PIDMap_MapPID(IMPEG2PIDMap* This,ULONG culPID,ULONG *pulPID,MEDIA_SAMPLE_CONTENT MediaSampleContent) {
4693    return This->lpVtbl->MapPID(This,culPID,pulPID,MediaSampleContent);
4694}
4695static FORCEINLINE HRESULT IMPEG2PIDMap_UnmapPID(IMPEG2PIDMap* This,ULONG culPID,ULONG *pulPID) {
4696    return This->lpVtbl->UnmapPID(This,culPID,pulPID);
4697}
4698static FORCEINLINE HRESULT IMPEG2PIDMap_EnumPIDMap(IMPEG2PIDMap* This,IEnumPIDMap **pIEnumPIDMap) {
4699    return This->lpVtbl->EnumPIDMap(This,pIEnumPIDMap);
4700}
4701#endif
4702#endif
4703
4704#endif
4705
4706HRESULT STDMETHODCALLTYPE IMPEG2PIDMap_MapPID_Proxy(
4707    IMPEG2PIDMap* This,
4708    ULONG culPID,
4709    ULONG *pulPID,
4710    MEDIA_SAMPLE_CONTENT MediaSampleContent);
4711void __RPC_STUB IMPEG2PIDMap_MapPID_Stub(
4712    IRpcStubBuffer* This,
4713    IRpcChannelBuffer* pRpcChannelBuffer,
4714    PRPC_MESSAGE pRpcMessage,
4715    DWORD* pdwStubPhase);
4716HRESULT STDMETHODCALLTYPE IMPEG2PIDMap_UnmapPID_Proxy(
4717    IMPEG2PIDMap* This,
4718    ULONG culPID,
4719    ULONG *pulPID);
4720void __RPC_STUB IMPEG2PIDMap_UnmapPID_Stub(
4721    IRpcStubBuffer* This,
4722    IRpcChannelBuffer* pRpcChannelBuffer,
4723    PRPC_MESSAGE pRpcMessage,
4724    DWORD* pdwStubPhase);
4725HRESULT STDMETHODCALLTYPE IMPEG2PIDMap_EnumPIDMap_Proxy(
4726    IMPEG2PIDMap* This,
4727    IEnumPIDMap **pIEnumPIDMap);
4728void __RPC_STUB IMPEG2PIDMap_EnumPIDMap_Stub(
4729    IRpcStubBuffer* This,
4730    IRpcChannelBuffer* pRpcChannelBuffer,
4731    PRPC_MESSAGE pRpcMessage,
4732    DWORD* pdwStubPhase);
4733
4734#endif  /* __IMPEG2PIDMap_INTERFACE_DEFINED__ */
4735
4736/*****************************************************************************
4737 * IFrequencyMap interface
4738 */
4739#ifndef __IFrequencyMap_INTERFACE_DEFINED__
4740#define __IFrequencyMap_INTERFACE_DEFINED__
4741
4742DEFINE_GUID(IID_IFrequencyMap, 0x06fb45c1, 0x693c, 0x4ea7, 0xb7,0x9f, 0x7a,0x6a,0x54,0xd8,0xde,0xf2);
4743#if defined(__cplusplus) && !defined(CINTERFACE)
4744MIDL_INTERFACE("06fb45c1-693c-4ea7-b79f-7a6a54d8def2")
4745IFrequencyMap : public IUnknown
4746{
4747    virtual HRESULT STDMETHODCALLTYPE get_FrequencyMapping(
4748        ULONG *ulCount,
4749        ULONG **ppulList) = 0;
4750
4751    virtual HRESULT STDMETHODCALLTYPE put_FrequencyMapping(
4752        ULONG ulCount,
4753        ULONG pList[]) = 0;
4754
4755    virtual HRESULT STDMETHODCALLTYPE get_CountryCode(
4756        ULONG *pulCountryCode) = 0;
4757
4758    virtual HRESULT STDMETHODCALLTYPE put_CountryCode(
4759        ULONG ulCountryCode) = 0;
4760
4761    virtual HRESULT STDMETHODCALLTYPE get_DefaultFrequencyMapping(
4762        ULONG ulCountryCode,
4763        ULONG *pulCount,
4764        ULONG **ppulList) = 0;
4765
4766    virtual HRESULT STDMETHODCALLTYPE get_CountryCodeList(
4767        ULONG *pulCount,
4768        ULONG **ppulList) = 0;
4769
4770};
4771#ifdef __CRT_UUID_DECL
4772__CRT_UUID_DECL(IFrequencyMap, 0x06fb45c1, 0x693c, 0x4ea7, 0xb7,0x9f, 0x7a,0x6a,0x54,0xd8,0xde,0xf2)
4773#endif
4774#else
4775typedef struct IFrequencyMapVtbl {
4776    BEGIN_INTERFACE
4777
4778    /*** IUnknown methods ***/
4779    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4780        IFrequencyMap* This,
4781        REFIID riid,
4782        void **ppvObject);
4783
4784    ULONG (STDMETHODCALLTYPE *AddRef)(
4785        IFrequencyMap* This);
4786
4787    ULONG (STDMETHODCALLTYPE *Release)(
4788        IFrequencyMap* This);
4789
4790    /*** IFrequencyMap methods ***/
4791    HRESULT (STDMETHODCALLTYPE *get_FrequencyMapping)(
4792        IFrequencyMap* This,
4793        ULONG *ulCount,
4794        ULONG **ppulList);
4795
4796    HRESULT (STDMETHODCALLTYPE *put_FrequencyMapping)(
4797        IFrequencyMap* This,
4798        ULONG ulCount,
4799        ULONG pList[]);
4800
4801    HRESULT (STDMETHODCALLTYPE *get_CountryCode)(
4802        IFrequencyMap* This,
4803        ULONG *pulCountryCode);
4804
4805    HRESULT (STDMETHODCALLTYPE *put_CountryCode)(
4806        IFrequencyMap* This,
4807        ULONG ulCountryCode);
4808
4809    HRESULT (STDMETHODCALLTYPE *get_DefaultFrequencyMapping)(
4810        IFrequencyMap* This,
4811        ULONG ulCountryCode,
4812        ULONG *pulCount,
4813        ULONG **ppulList);
4814
4815    HRESULT (STDMETHODCALLTYPE *get_CountryCodeList)(
4816        IFrequencyMap* This,
4817        ULONG *pulCount,
4818        ULONG **ppulList);
4819
4820    END_INTERFACE
4821} IFrequencyMapVtbl;
4822interface IFrequencyMap {
4823    CONST_VTBL IFrequencyMapVtbl* lpVtbl;
4824};
4825
4826#ifdef COBJMACROS
4827#ifndef WIDL_C_INLINE_WRAPPERS
4828/*** IUnknown methods ***/
4829#define IFrequencyMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4830#define IFrequencyMap_AddRef(This) (This)->lpVtbl->AddRef(This)
4831#define IFrequencyMap_Release(This) (This)->lpVtbl->Release(This)
4832/*** IFrequencyMap methods ***/
4833#define IFrequencyMap_get_FrequencyMapping(This,ulCount,ppulList) (This)->lpVtbl->get_FrequencyMapping(This,ulCount,ppulList)
4834#define IFrequencyMap_put_FrequencyMapping(This,ulCount,pList) (This)->lpVtbl->put_FrequencyMapping(This,ulCount,pList)
4835#define IFrequencyMap_get_CountryCode(This,pulCountryCode) (This)->lpVtbl->get_CountryCode(This,pulCountryCode)
4836#define IFrequencyMap_put_CountryCode(This,ulCountryCode) (This)->lpVtbl->put_CountryCode(This,ulCountryCode)
4837#define IFrequencyMap_get_DefaultFrequencyMapping(This,ulCountryCode,pulCount,ppulList) (This)->lpVtbl->get_DefaultFrequencyMapping(This,ulCountryCode,pulCount,ppulList)
4838#define IFrequencyMap_get_CountryCodeList(This,pulCount,ppulList) (This)->lpVtbl->get_CountryCodeList(This,pulCount,ppulList)
4839#else
4840/*** IUnknown methods ***/
4841static FORCEINLINE HRESULT IFrequencyMap_QueryInterface(IFrequencyMap* This,REFIID riid,void **ppvObject) {
4842    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4843}
4844static FORCEINLINE ULONG IFrequencyMap_AddRef(IFrequencyMap* This) {
4845    return This->lpVtbl->AddRef(This);
4846}
4847static FORCEINLINE ULONG IFrequencyMap_Release(IFrequencyMap* This) {
4848    return This->lpVtbl->Release(This);
4849}
4850/*** IFrequencyMap methods ***/
4851static FORCEINLINE HRESULT IFrequencyMap_get_FrequencyMapping(IFrequencyMap* This,ULONG *ulCount,ULONG **ppulList) {
4852    return This->lpVtbl->get_FrequencyMapping(This,ulCount,ppulList);
4853}
4854static FORCEINLINE HRESULT IFrequencyMap_put_FrequencyMapping(IFrequencyMap* This,ULONG ulCount,ULONG pList[]) {
4855    return This->lpVtbl->put_FrequencyMapping(This,ulCount,pList);
4856}
4857static FORCEINLINE HRESULT IFrequencyMap_get_CountryCode(IFrequencyMap* This,ULONG *pulCountryCode) {
4858    return This->lpVtbl->get_CountryCode(This,pulCountryCode);
4859}
4860static FORCEINLINE HRESULT IFrequencyMap_put_CountryCode(IFrequencyMap* This,ULONG ulCountryCode) {
4861    return This->lpVtbl->put_CountryCode(This,ulCountryCode);
4862}
4863static FORCEINLINE HRESULT IFrequencyMap_get_DefaultFrequencyMapping(IFrequencyMap* This,ULONG ulCountryCode,ULONG *pulCount,ULONG **ppulList) {
4864    return This->lpVtbl->get_DefaultFrequencyMapping(This,ulCountryCode,pulCount,ppulList);
4865}
4866static FORCEINLINE HRESULT IFrequencyMap_get_CountryCodeList(IFrequencyMap* This,ULONG *pulCount,ULONG **ppulList) {
4867    return This->lpVtbl->get_CountryCodeList(This,pulCount,ppulList);
4868}
4869#endif
4870#endif
4871
4872#endif
4873
4874HRESULT STDMETHODCALLTYPE IFrequencyMap_get_FrequencyMapping_Proxy(
4875    IFrequencyMap* This,
4876    ULONG *ulCount,
4877    ULONG **ppulList);
4878void __RPC_STUB IFrequencyMap_get_FrequencyMapping_Stub(
4879    IRpcStubBuffer* This,
4880    IRpcChannelBuffer* pRpcChannelBuffer,
4881    PRPC_MESSAGE pRpcMessage,
4882    DWORD* pdwStubPhase);
4883HRESULT STDMETHODCALLTYPE IFrequencyMap_put_FrequencyMapping_Proxy(
4884    IFrequencyMap* This,
4885    ULONG ulCount,
4886    ULONG pList[]);
4887void __RPC_STUB IFrequencyMap_put_FrequencyMapping_Stub(
4888    IRpcStubBuffer* This,
4889    IRpcChannelBuffer* pRpcChannelBuffer,
4890    PRPC_MESSAGE pRpcMessage,
4891    DWORD* pdwStubPhase);
4892HRESULT STDMETHODCALLTYPE IFrequencyMap_get_CountryCode_Proxy(
4893    IFrequencyMap* This,
4894    ULONG *pulCountryCode);
4895void __RPC_STUB IFrequencyMap_get_CountryCode_Stub(
4896    IRpcStubBuffer* This,
4897    IRpcChannelBuffer* pRpcChannelBuffer,
4898    PRPC_MESSAGE pRpcMessage,
4899    DWORD* pdwStubPhase);
4900HRESULT STDMETHODCALLTYPE IFrequencyMap_put_CountryCode_Proxy(
4901    IFrequencyMap* This,
4902    ULONG ulCountryCode);
4903void __RPC_STUB IFrequencyMap_put_CountryCode_Stub(
4904    IRpcStubBuffer* This,
4905    IRpcChannelBuffer* pRpcChannelBuffer,
4906    PRPC_MESSAGE pRpcMessage,
4907    DWORD* pdwStubPhase);
4908HRESULT STDMETHODCALLTYPE IFrequencyMap_get_DefaultFrequencyMapping_Proxy(
4909    IFrequencyMap* This,
4910    ULONG ulCountryCode,
4911    ULONG *pulCount,
4912    ULONG **ppulList);
4913void __RPC_STUB IFrequencyMap_get_DefaultFrequencyMapping_Stub(
4914    IRpcStubBuffer* This,
4915    IRpcChannelBuffer* pRpcChannelBuffer,
4916    PRPC_MESSAGE pRpcMessage,
4917    DWORD* pdwStubPhase);
4918HRESULT STDMETHODCALLTYPE IFrequencyMap_get_CountryCodeList_Proxy(
4919    IFrequencyMap* This,
4920    ULONG *pulCount,
4921    ULONG **ppulList);
4922void __RPC_STUB IFrequencyMap_get_CountryCodeList_Stub(
4923    IRpcStubBuffer* This,
4924    IRpcChannelBuffer* pRpcChannelBuffer,
4925    PRPC_MESSAGE pRpcMessage,
4926    DWORD* pdwStubPhase);
4927
4928#endif  /* __IFrequencyMap_INTERFACE_DEFINED__ */
4929
4930/*****************************************************************************
4931 * IBDA_EasMessage interface
4932 */
4933#ifndef __IBDA_EasMessage_INTERFACE_DEFINED__
4934#define __IBDA_EasMessage_INTERFACE_DEFINED__
4935
4936DEFINE_GUID(IID_IBDA_EasMessage, 0xd806973d, 0x3ebe, 0x46de, 0x8f,0xbb, 0x63,0x58,0xfe,0x78,0x42,0x08);
4937#if defined(__cplusplus) && !defined(CINTERFACE)
4938MIDL_INTERFACE("d806973d-3ebe-46de-8fbb-6358fe784208")
4939IBDA_EasMessage : public IUnknown
4940{
4941    virtual HRESULT STDMETHODCALLTYPE get_EasMessage(
4942        ULONG ulEventID,
4943        IUnknown **ppEASObject) = 0;
4944
4945};
4946#ifdef __CRT_UUID_DECL
4947__CRT_UUID_DECL(IBDA_EasMessage, 0xd806973d, 0x3ebe, 0x46de, 0x8f,0xbb, 0x63,0x58,0xfe,0x78,0x42,0x08)
4948#endif
4949#else
4950typedef struct IBDA_EasMessageVtbl {
4951    BEGIN_INTERFACE
4952
4953    /*** IUnknown methods ***/
4954    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4955        IBDA_EasMessage* This,
4956        REFIID riid,
4957        void **ppvObject);
4958
4959    ULONG (STDMETHODCALLTYPE *AddRef)(
4960        IBDA_EasMessage* This);
4961
4962    ULONG (STDMETHODCALLTYPE *Release)(
4963        IBDA_EasMessage* This);
4964
4965    /*** IBDA_EasMessage methods ***/
4966    HRESULT (STDMETHODCALLTYPE *get_EasMessage)(
4967        IBDA_EasMessage* This,
4968        ULONG ulEventID,
4969        IUnknown **ppEASObject);
4970
4971    END_INTERFACE
4972} IBDA_EasMessageVtbl;
4973interface IBDA_EasMessage {
4974    CONST_VTBL IBDA_EasMessageVtbl* lpVtbl;
4975};
4976
4977#ifdef COBJMACROS
4978#ifndef WIDL_C_INLINE_WRAPPERS
4979/*** IUnknown methods ***/
4980#define IBDA_EasMessage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4981#define IBDA_EasMessage_AddRef(This) (This)->lpVtbl->AddRef(This)
4982#define IBDA_EasMessage_Release(This) (This)->lpVtbl->Release(This)
4983/*** IBDA_EasMessage methods ***/
4984#define IBDA_EasMessage_get_EasMessage(This,ulEventID,ppEASObject) (This)->lpVtbl->get_EasMessage(This,ulEventID,ppEASObject)
4985#else
4986/*** IUnknown methods ***/
4987static FORCEINLINE HRESULT IBDA_EasMessage_QueryInterface(IBDA_EasMessage* This,REFIID riid,void **ppvObject) {
4988    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4989}
4990static FORCEINLINE ULONG IBDA_EasMessage_AddRef(IBDA_EasMessage* This) {
4991    return This->lpVtbl->AddRef(This);
4992}
4993static FORCEINLINE ULONG IBDA_EasMessage_Release(IBDA_EasMessage* This) {
4994    return This->lpVtbl->Release(This);
4995}
4996/*** IBDA_EasMessage methods ***/
4997static FORCEINLINE HRESULT IBDA_EasMessage_get_EasMessage(IBDA_EasMessage* This,ULONG ulEventID,IUnknown **ppEASObject) {
4998    return This->lpVtbl->get_EasMessage(This,ulEventID,ppEASObject);
4999}
5000#endif
5001#endif
5002
5003#endif
5004
5005HRESULT STDMETHODCALLTYPE IBDA_EasMessage_get_EasMessage_Proxy(
5006    IBDA_EasMessage* This,
5007    ULONG ulEventID,
5008    IUnknown **ppEASObject);
5009void __RPC_STUB IBDA_EasMessage_get_EasMessage_Stub(
5010    IRpcStubBuffer* This,
5011    IRpcChannelBuffer* pRpcChannelBuffer,
5012    PRPC_MESSAGE pRpcMessage,
5013    DWORD* pdwStubPhase);
5014
5015#endif  /* __IBDA_EasMessage_INTERFACE_DEFINED__ */
5016
5017/*****************************************************************************
5018 * IBDA_TransportStreamInfo interface
5019 */
5020#ifndef __IBDA_TransportStreamInfo_INTERFACE_DEFINED__
5021#define __IBDA_TransportStreamInfo_INTERFACE_DEFINED__
5022
5023DEFINE_GUID(IID_IBDA_TransportStreamInfo, 0x8e882535, 0x5f86, 0x47ab, 0x86,0xcf, 0xc2,0x81,0xa7,0x2a,0x05,0x49);
5024#if defined(__cplusplus) && !defined(CINTERFACE)
5025MIDL_INTERFACE("8e882535-5f86-47ab-86cf-c281a72a0549")
5026IBDA_TransportStreamInfo : public IUnknown
5027{
5028    virtual HRESULT STDMETHODCALLTYPE get_PatTableTickCount(
5029        ULONG *pPatTickCount) = 0;
5030
5031};
5032#ifdef __CRT_UUID_DECL
5033__CRT_UUID_DECL(IBDA_TransportStreamInfo, 0x8e882535, 0x5f86, 0x47ab, 0x86,0xcf, 0xc2,0x81,0xa7,0x2a,0x05,0x49)
5034#endif
5035#else
5036typedef struct IBDA_TransportStreamInfoVtbl {
5037    BEGIN_INTERFACE
5038
5039    /*** IUnknown methods ***/
5040    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5041        IBDA_TransportStreamInfo* This,
5042        REFIID riid,
5043        void **ppvObject);
5044
5045    ULONG (STDMETHODCALLTYPE *AddRef)(
5046        IBDA_TransportStreamInfo* This);
5047
5048    ULONG (STDMETHODCALLTYPE *Release)(
5049        IBDA_TransportStreamInfo* This);
5050
5051    /*** IBDA_TransportStreamInfo methods ***/
5052    HRESULT (STDMETHODCALLTYPE *get_PatTableTickCount)(
5053        IBDA_TransportStreamInfo* This,
5054        ULONG *pPatTickCount);
5055
5056    END_INTERFACE
5057} IBDA_TransportStreamInfoVtbl;
5058interface IBDA_TransportStreamInfo {
5059    CONST_VTBL IBDA_TransportStreamInfoVtbl* lpVtbl;
5060};
5061
5062#ifdef COBJMACROS
5063#ifndef WIDL_C_INLINE_WRAPPERS
5064/*** IUnknown methods ***/
5065#define IBDA_TransportStreamInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5066#define IBDA_TransportStreamInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
5067#define IBDA_TransportStreamInfo_Release(This) (This)->lpVtbl->Release(This)
5068/*** IBDA_TransportStreamInfo methods ***/
5069#define IBDA_TransportStreamInfo_get_PatTableTickCount(This,pPatTickCount) (This)->lpVtbl->get_PatTableTickCount(This,pPatTickCount)
5070#else
5071/*** IUnknown methods ***/
5072static FORCEINLINE HRESULT IBDA_TransportStreamInfo_QueryInterface(IBDA_TransportStreamInfo* This,REFIID riid,void **ppvObject) {
5073    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5074}
5075static FORCEINLINE ULONG IBDA_TransportStreamInfo_AddRef(IBDA_TransportStreamInfo* This) {
5076    return This->lpVtbl->AddRef(This);
5077}
5078static FORCEINLINE ULONG IBDA_TransportStreamInfo_Release(IBDA_TransportStreamInfo* This) {
5079    return This->lpVtbl->Release(This);
5080}
5081/*** IBDA_TransportStreamInfo methods ***/
5082static FORCEINLINE HRESULT IBDA_TransportStreamInfo_get_PatTableTickCount(IBDA_TransportStreamInfo* This,ULONG *pPatTickCount) {
5083    return This->lpVtbl->get_PatTableTickCount(This,pPatTickCount);
5084}
5085#endif
5086#endif
5087
5088#endif
5089
5090HRESULT STDMETHODCALLTYPE IBDA_TransportStreamInfo_get_PatTableTickCount_Proxy(
5091    IBDA_TransportStreamInfo* This,
5092    ULONG *pPatTickCount);
5093void __RPC_STUB IBDA_TransportStreamInfo_get_PatTableTickCount_Stub(
5094    IRpcStubBuffer* This,
5095    IRpcChannelBuffer* pRpcChannelBuffer,
5096    PRPC_MESSAGE pRpcMessage,
5097    DWORD* pdwStubPhase);
5098
5099#endif  /* __IBDA_TransportStreamInfo_INTERFACE_DEFINED__ */
5100
5101/*****************************************************************************
5102 * IBDA_ConditionalAccess interface
5103 */
5104#ifndef __IBDA_ConditionalAccess_INTERFACE_DEFINED__
5105#define __IBDA_ConditionalAccess_INTERFACE_DEFINED__
5106
5107DEFINE_GUID(IID_IBDA_ConditionalAccess, 0xcd51f1e0, 0x7be9, 0x4123, 0x84,0x82, 0xa2,0xa7,0x96,0xc0,0xa6,0xb0);
5108#if defined(__cplusplus) && !defined(CINTERFACE)
5109MIDL_INTERFACE("cd51f1e0-7be9-4123-8482-a2a796c0a6b0")
5110IBDA_ConditionalAccess : public IUnknown
5111{
5112    virtual HRESULT STDMETHODCALLTYPE get_SmartCardStatus(
5113        SmartCardStatusType *pCardStatus,
5114        SmartCardAssociationType *pCardAssociation,
5115        BSTR *pbstrCardError,
5116        VARIANT_BOOL *pfOOBLocked) = 0;
5117
5118    virtual HRESULT STDMETHODCALLTYPE get_SmartCardInfo(
5119        BSTR *pbstrCardName,
5120        BSTR *pbstrCardManufacturer,
5121        VARIANT_BOOL *pfDaylightSavings,
5122        BYTE *pbyRatingRegion,
5123        LONG *plTimeZoneOffsetMinutes,
5124        BSTR *pbstrLanguage,
5125        EALocationCodeType *pEALocationCode) = 0;
5126
5127    virtual HRESULT STDMETHODCALLTYPE get_SmartCardApplications(
5128        ULONG *pulcApplications,
5129        ULONG ulcApplicationsMax,
5130        SmartCardApplication rgApplications[]) = 0;
5131
5132    virtual HRESULT STDMETHODCALLTYPE get_Entitlement(
5133        USHORT usVirtualChannel,
5134        EntitlementType *pEntitlement) = 0;
5135
5136    virtual HRESULT STDMETHODCALLTYPE TuneByChannel(
5137        USHORT usVirtualChannel) = 0;
5138
5139    virtual HRESULT STDMETHODCALLTYPE SetProgram(
5140        USHORT usProgramNumber) = 0;
5141
5142    virtual HRESULT STDMETHODCALLTYPE AddProgram(
5143        USHORT usProgramNumber) = 0;
5144
5145    virtual HRESULT STDMETHODCALLTYPE RemoveProgram(
5146        USHORT usProgramNumber) = 0;
5147
5148    virtual HRESULT STDMETHODCALLTYPE GetModuleUI(
5149        BYTE byDialogNumber,
5150        BSTR *pbstrURL) = 0;
5151
5152    virtual HRESULT STDMETHODCALLTYPE InformUIClosed(
5153        BYTE byDialogNumber,
5154        UICloseReasonType CloseReason) = 0;
5155
5156};
5157#ifdef __CRT_UUID_DECL
5158__CRT_UUID_DECL(IBDA_ConditionalAccess, 0xcd51f1e0, 0x7be9, 0x4123, 0x84,0x82, 0xa2,0xa7,0x96,0xc0,0xa6,0xb0)
5159#endif
5160#else
5161typedef struct IBDA_ConditionalAccessVtbl {
5162    BEGIN_INTERFACE
5163
5164    /*** IUnknown methods ***/
5165    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5166        IBDA_ConditionalAccess* This,
5167        REFIID riid,
5168        void **ppvObject);
5169
5170    ULONG (STDMETHODCALLTYPE *AddRef)(
5171        IBDA_ConditionalAccess* This);
5172
5173    ULONG (STDMETHODCALLTYPE *Release)(
5174        IBDA_ConditionalAccess* This);
5175
5176    /*** IBDA_ConditionalAccess methods ***/
5177    HRESULT (STDMETHODCALLTYPE *get_SmartCardStatus)(
5178        IBDA_ConditionalAccess* This,
5179        SmartCardStatusType *pCardStatus,
5180        SmartCardAssociationType *pCardAssociation,
5181        BSTR *pbstrCardError,
5182        VARIANT_BOOL *pfOOBLocked);
5183
5184    HRESULT (STDMETHODCALLTYPE *get_SmartCardInfo)(
5185        IBDA_ConditionalAccess* This,
5186        BSTR *pbstrCardName,
5187        BSTR *pbstrCardManufacturer,
5188        VARIANT_BOOL *pfDaylightSavings,
5189        BYTE *pbyRatingRegion,
5190        LONG *plTimeZoneOffsetMinutes,
5191        BSTR *pbstrLanguage,
5192        EALocationCodeType *pEALocationCode);
5193
5194    HRESULT (STDMETHODCALLTYPE *get_SmartCardApplications)(
5195        IBDA_ConditionalAccess* This,
5196        ULONG *pulcApplications,
5197        ULONG ulcApplicationsMax,
5198        SmartCardApplication rgApplications[]);
5199
5200    HRESULT (STDMETHODCALLTYPE *get_Entitlement)(
5201        IBDA_ConditionalAccess* This,
5202        USHORT usVirtualChannel,
5203        EntitlementType *pEntitlement);
5204
5205    HRESULT (STDMETHODCALLTYPE *TuneByChannel)(
5206        IBDA_ConditionalAccess* This,
5207        USHORT usVirtualChannel);
5208
5209    HRESULT (STDMETHODCALLTYPE *SetProgram)(
5210        IBDA_ConditionalAccess* This,
5211        USHORT usProgramNumber);
5212
5213    HRESULT (STDMETHODCALLTYPE *AddProgram)(
5214        IBDA_ConditionalAccess* This,
5215        USHORT usProgramNumber);
5216
5217    HRESULT (STDMETHODCALLTYPE *RemoveProgram)(
5218        IBDA_ConditionalAccess* This,
5219        USHORT usProgramNumber);
5220
5221    HRESULT (STDMETHODCALLTYPE *GetModuleUI)(
5222        IBDA_ConditionalAccess* This,
5223        BYTE byDialogNumber,
5224        BSTR *pbstrURL);
5225
5226    HRESULT (STDMETHODCALLTYPE *InformUIClosed)(
5227        IBDA_ConditionalAccess* This,
5228        BYTE byDialogNumber,
5229        UICloseReasonType CloseReason);
5230
5231    END_INTERFACE
5232} IBDA_ConditionalAccessVtbl;
5233interface IBDA_ConditionalAccess {
5234    CONST_VTBL IBDA_ConditionalAccessVtbl* lpVtbl;
5235};
5236
5237#ifdef COBJMACROS
5238#ifndef WIDL_C_INLINE_WRAPPERS
5239/*** IUnknown methods ***/
5240#define IBDA_ConditionalAccess_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5241#define IBDA_ConditionalAccess_AddRef(This) (This)->lpVtbl->AddRef(This)
5242#define IBDA_ConditionalAccess_Release(This) (This)->lpVtbl->Release(This)
5243/*** IBDA_ConditionalAccess methods ***/
5244#define IBDA_ConditionalAccess_get_SmartCardStatus(This,pCardStatus,pCardAssociation,pbstrCardError,pfOOBLocked) (This)->lpVtbl->get_SmartCardStatus(This,pCardStatus,pCardAssociation,pbstrCardError,pfOOBLocked)
5245#define IBDA_ConditionalAccess_get_SmartCardInfo(This,pbstrCardName,pbstrCardManufacturer,pfDaylightSavings,pbyRatingRegion,plTimeZoneOffsetMinutes,pbstrLanguage,pEALocationCode) (This)->lpVtbl->get_SmartCardInfo(This,pbstrCardName,pbstrCardManufacturer,pfDaylightSavings,pbyRatingRegion,plTimeZoneOffsetMinutes,pbstrLanguage,pEALocationCode)
5246#define IBDA_ConditionalAccess_get_SmartCardApplications(This,pulcApplications,ulcApplicationsMax,rgApplications) (This)->lpVtbl->get_SmartCardApplications(This,pulcApplications,ulcApplicationsMax,rgApplications)
5247#define IBDA_ConditionalAccess_get_Entitlement(This,usVirtualChannel,pEntitlement) (This)->lpVtbl->get_Entitlement(This,usVirtualChannel,pEntitlement)
5248#define IBDA_ConditionalAccess_TuneByChannel(This,usVirtualChannel) (This)->lpVtbl->TuneByChannel(This,usVirtualChannel)
5249#define IBDA_ConditionalAccess_SetProgram(This,usProgramNumber) (This)->lpVtbl->SetProgram(This,usProgramNumber)
5250#define IBDA_ConditionalAccess_AddProgram(This,usProgramNumber) (This)->lpVtbl->AddProgram(This,usProgramNumber)
5251#define IBDA_ConditionalAccess_RemoveProgram(This,usProgramNumber) (This)->lpVtbl->RemoveProgram(This,usProgramNumber)
5252#define IBDA_ConditionalAccess_GetModuleUI(This,byDialogNumber,pbstrURL) (This)->lpVtbl->GetModuleUI(This,byDialogNumber,pbstrURL)
5253#define IBDA_ConditionalAccess_InformUIClosed(This,byDialogNumber,CloseReason) (This)->lpVtbl->InformUIClosed(This,byDialogNumber,CloseReason)
5254#else
5255/*** IUnknown methods ***/
5256static FORCEINLINE HRESULT IBDA_ConditionalAccess_QueryInterface(IBDA_ConditionalAccess* This,REFIID riid,void **ppvObject) {
5257    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5258}
5259static FORCEINLINE ULONG IBDA_ConditionalAccess_AddRef(IBDA_ConditionalAccess* This) {
5260    return This->lpVtbl->AddRef(This);
5261}
5262static FORCEINLINE ULONG IBDA_ConditionalAccess_Release(IBDA_ConditionalAccess* This) {
5263    return This->lpVtbl->Release(This);
5264}
5265/*** IBDA_ConditionalAccess methods ***/
5266static FORCEINLINE HRESULT IBDA_ConditionalAccess_get_SmartCardStatus(IBDA_ConditionalAccess* This,SmartCardStatusType *pCardStatus,SmartCardAssociationType *pCardAssociation,BSTR *pbstrCardError,VARIANT_BOOL *pfOOBLocked) {
5267    return This->lpVtbl->get_SmartCardStatus(This,pCardStatus,pCardAssociation,pbstrCardError,pfOOBLocked);
5268}
5269static FORCEINLINE HRESULT IBDA_ConditionalAccess_get_SmartCardInfo(IBDA_ConditionalAccess* This,BSTR *pbstrCardName,BSTR *pbstrCardManufacturer,VARIANT_BOOL *pfDaylightSavings,BYTE *pbyRatingRegion,LONG *plTimeZoneOffsetMinutes,BSTR *pbstrLanguage,EALocationCodeType *pEALocationCode) {
5270    return This->lpVtbl->get_SmartCardInfo(This,pbstrCardName,pbstrCardManufacturer,pfDaylightSavings,pbyRatingRegion,plTimeZoneOffsetMinutes,pbstrLanguage,pEALocationCode);
5271}
5272static FORCEINLINE HRESULT IBDA_ConditionalAccess_get_SmartCardApplications(IBDA_ConditionalAccess* This,ULONG *pulcApplications,ULONG ulcApplicationsMax,SmartCardApplication rgApplications[]) {
5273    return This->lpVtbl->get_SmartCardApplications(This,pulcApplications,ulcApplicationsMax,rgApplications);
5274}
5275static FORCEINLINE HRESULT IBDA_ConditionalAccess_get_Entitlement(IBDA_ConditionalAccess* This,USHORT usVirtualChannel,EntitlementType *pEntitlement) {
5276    return This->lpVtbl->get_Entitlement(This,usVirtualChannel,pEntitlement);
5277}
5278static FORCEINLINE HRESULT IBDA_ConditionalAccess_TuneByChannel(IBDA_ConditionalAccess* This,USHORT usVirtualChannel) {
5279    return This->lpVtbl->TuneByChannel(This,usVirtualChannel);
5280}
5281static FORCEINLINE HRESULT IBDA_ConditionalAccess_SetProgram(IBDA_ConditionalAccess* This,USHORT usProgramNumber) {
5282    return This->lpVtbl->SetProgram(This,usProgramNumber);
5283}
5284static FORCEINLINE HRESULT IBDA_ConditionalAccess_AddProgram(IBDA_ConditionalAccess* This,USHORT usProgramNumber) {
5285    return This->lpVtbl->AddProgram(This,usProgramNumber);
5286}
5287static FORCEINLINE HRESULT IBDA_ConditionalAccess_RemoveProgram(IBDA_ConditionalAccess* This,USHORT usProgramNumber) {
5288    return This->lpVtbl->RemoveProgram(This,usProgramNumber);
5289}
5290static FORCEINLINE HRESULT IBDA_ConditionalAccess_GetModuleUI(IBDA_ConditionalAccess* This,BYTE byDialogNumber,BSTR *pbstrURL) {
5291    return This->lpVtbl->GetModuleUI(This,byDialogNumber,pbstrURL);
5292}
5293static FORCEINLINE HRESULT IBDA_ConditionalAccess_InformUIClosed(IBDA_ConditionalAccess* This,BYTE byDialogNumber,UICloseReasonType CloseReason) {
5294    return This->lpVtbl->InformUIClosed(This,byDialogNumber,CloseReason);
5295}
5296#endif
5297#endif
5298
5299#endif
5300
5301HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_SmartCardStatus_Proxy(
5302    IBDA_ConditionalAccess* This,
5303    SmartCardStatusType *pCardStatus,
5304    SmartCardAssociationType *pCardAssociation,
5305    BSTR *pbstrCardError,
5306    VARIANT_BOOL *pfOOBLocked);
5307void __RPC_STUB IBDA_ConditionalAccess_get_SmartCardStatus_Stub(
5308    IRpcStubBuffer* This,
5309    IRpcChannelBuffer* pRpcChannelBuffer,
5310    PRPC_MESSAGE pRpcMessage,
5311    DWORD* pdwStubPhase);
5312HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_SmartCardInfo_Proxy(
5313    IBDA_ConditionalAccess* This,
5314    BSTR *pbstrCardName,
5315    BSTR *pbstrCardManufacturer,
5316    VARIANT_BOOL *pfDaylightSavings,
5317    BYTE *pbyRatingRegion,
5318    LONG *plTimeZoneOffsetMinutes,
5319    BSTR *pbstrLanguage,
5320    EALocationCodeType *pEALocationCode);
5321void __RPC_STUB IBDA_ConditionalAccess_get_SmartCardInfo_Stub(
5322    IRpcStubBuffer* This,
5323    IRpcChannelBuffer* pRpcChannelBuffer,
5324    PRPC_MESSAGE pRpcMessage,
5325    DWORD* pdwStubPhase);
5326HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_SmartCardApplications_Proxy(
5327    IBDA_ConditionalAccess* This,
5328    ULONG *pulcApplications,
5329    ULONG ulcApplicationsMax,
5330    SmartCardApplication rgApplications[]);
5331void __RPC_STUB IBDA_ConditionalAccess_get_SmartCardApplications_Stub(
5332    IRpcStubBuffer* This,
5333    IRpcChannelBuffer* pRpcChannelBuffer,
5334    PRPC_MESSAGE pRpcMessage,
5335    DWORD* pdwStubPhase);
5336HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_Entitlement_Proxy(
5337    IBDA_ConditionalAccess* This,
5338    USHORT usVirtualChannel,
5339    EntitlementType *pEntitlement);
5340void __RPC_STUB IBDA_ConditionalAccess_get_Entitlement_Stub(
5341    IRpcStubBuffer* This,
5342    IRpcChannelBuffer* pRpcChannelBuffer,
5343    PRPC_MESSAGE pRpcMessage,
5344    DWORD* pdwStubPhase);
5345HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_TuneByChannel_Proxy(
5346    IBDA_ConditionalAccess* This,
5347    USHORT usVirtualChannel);
5348void __RPC_STUB IBDA_ConditionalAccess_TuneByChannel_Stub(
5349    IRpcStubBuffer* This,
5350    IRpcChannelBuffer* pRpcChannelBuffer,
5351    PRPC_MESSAGE pRpcMessage,
5352    DWORD* pdwStubPhase);
5353HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_SetProgram_Proxy(
5354    IBDA_ConditionalAccess* This,
5355    USHORT usProgramNumber);
5356void __RPC_STUB IBDA_ConditionalAccess_SetProgram_Stub(
5357    IRpcStubBuffer* This,
5358    IRpcChannelBuffer* pRpcChannelBuffer,
5359    PRPC_MESSAGE pRpcMessage,
5360    DWORD* pdwStubPhase);
5361HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_AddProgram_Proxy(
5362    IBDA_ConditionalAccess* This,
5363    USHORT usProgramNumber);
5364void __RPC_STUB IBDA_ConditionalAccess_AddProgram_Stub(
5365    IRpcStubBuffer* This,
5366    IRpcChannelBuffer* pRpcChannelBuffer,
5367    PRPC_MESSAGE pRpcMessage,
5368    DWORD* pdwStubPhase);
5369HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_RemoveProgram_Proxy(
5370    IBDA_ConditionalAccess* This,
5371    USHORT usProgramNumber);
5372void __RPC_STUB IBDA_ConditionalAccess_RemoveProgram_Stub(
5373    IRpcStubBuffer* This,
5374    IRpcChannelBuffer* pRpcChannelBuffer,
5375    PRPC_MESSAGE pRpcMessage,
5376    DWORD* pdwStubPhase);
5377HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_GetModuleUI_Proxy(
5378    IBDA_ConditionalAccess* This,
5379    BYTE byDialogNumber,
5380    BSTR *pbstrURL);
5381void __RPC_STUB IBDA_ConditionalAccess_GetModuleUI_Stub(
5382    IRpcStubBuffer* This,
5383    IRpcChannelBuffer* pRpcChannelBuffer,
5384    PRPC_MESSAGE pRpcMessage,
5385    DWORD* pdwStubPhase);
5386HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_InformUIClosed_Proxy(
5387    IBDA_ConditionalAccess* This,
5388    BYTE byDialogNumber,
5389    UICloseReasonType CloseReason);
5390void __RPC_STUB IBDA_ConditionalAccess_InformUIClosed_Stub(
5391    IRpcStubBuffer* This,
5392    IRpcChannelBuffer* pRpcChannelBuffer,
5393    PRPC_MESSAGE pRpcMessage,
5394    DWORD* pdwStubPhase);
5395
5396#endif  /* __IBDA_ConditionalAccess_INTERFACE_DEFINED__ */
5397
5398/*****************************************************************************
5399 * IBDA_DiagnosticProperties interface
5400 */
5401#ifndef __IBDA_DiagnosticProperties_INTERFACE_DEFINED__
5402#define __IBDA_DiagnosticProperties_INTERFACE_DEFINED__
5403
5404DEFINE_GUID(IID_IBDA_DiagnosticProperties, 0x20e80cb5, 0xc543, 0x4c1b, 0x8e,0xb3, 0x49,0xe7,0x19,0xee,0xe7,0xd4);
5405#if defined(__cplusplus) && !defined(CINTERFACE)
5406MIDL_INTERFACE("20e80cb5-c543-4c1b-8eb3-49e719eee7d4")
5407IBDA_DiagnosticProperties : public IPropertyBag
5408{
5409};
5410#ifdef __CRT_UUID_DECL
5411__CRT_UUID_DECL(IBDA_DiagnosticProperties, 0x20e80cb5, 0xc543, 0x4c1b, 0x8e,0xb3, 0x49,0xe7,0x19,0xee,0xe7,0xd4)
5412#endif
5413#else
5414typedef struct IBDA_DiagnosticPropertiesVtbl {
5415    BEGIN_INTERFACE
5416
5417    /*** IUnknown methods ***/
5418    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5419        IBDA_DiagnosticProperties* This,
5420        REFIID riid,
5421        void **ppvObject);
5422
5423    ULONG (STDMETHODCALLTYPE *AddRef)(
5424        IBDA_DiagnosticProperties* This);
5425
5426    ULONG (STDMETHODCALLTYPE *Release)(
5427        IBDA_DiagnosticProperties* This);
5428
5429    /*** IPropertyBag methods ***/
5430    HRESULT (STDMETHODCALLTYPE *Read)(
5431        IBDA_DiagnosticProperties* This,
5432        LPCOLESTR pszPropName,
5433        VARIANT *pVar,
5434        IErrorLog *pErrorLog);
5435
5436    HRESULT (STDMETHODCALLTYPE *Write)(
5437        IBDA_DiagnosticProperties* This,
5438        LPCOLESTR pszPropName,
5439        VARIANT *pVar);
5440
5441    END_INTERFACE
5442} IBDA_DiagnosticPropertiesVtbl;
5443interface IBDA_DiagnosticProperties {
5444    CONST_VTBL IBDA_DiagnosticPropertiesVtbl* lpVtbl;
5445};
5446
5447#ifdef COBJMACROS
5448#ifndef WIDL_C_INLINE_WRAPPERS
5449/*** IUnknown methods ***/
5450#define IBDA_DiagnosticProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5451#define IBDA_DiagnosticProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
5452#define IBDA_DiagnosticProperties_Release(This) (This)->lpVtbl->Release(This)
5453/*** IPropertyBag methods ***/
5454#define IBDA_DiagnosticProperties_Read(This,pszPropName,pVar,pErrorLog) (This)->lpVtbl->Read(This,pszPropName,pVar,pErrorLog)
5455#define IBDA_DiagnosticProperties_Write(This,pszPropName,pVar) (This)->lpVtbl->Write(This,pszPropName,pVar)
5456#else
5457/*** IUnknown methods ***/
5458static FORCEINLINE HRESULT IBDA_DiagnosticProperties_QueryInterface(IBDA_DiagnosticProperties* This,REFIID riid,void **ppvObject) {
5459    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5460}
5461static FORCEINLINE ULONG IBDA_DiagnosticProperties_AddRef(IBDA_DiagnosticProperties* This) {
5462    return This->lpVtbl->AddRef(This);
5463}
5464static FORCEINLINE ULONG IBDA_DiagnosticProperties_Release(IBDA_DiagnosticProperties* This) {
5465    return This->lpVtbl->Release(This);
5466}
5467/*** IPropertyBag methods ***/
5468static FORCEINLINE HRESULT IBDA_DiagnosticProperties_Read(IBDA_DiagnosticProperties* This,LPCOLESTR pszPropName,VARIANT *pVar,IErrorLog *pErrorLog) {
5469    return This->lpVtbl->Read(This,pszPropName,pVar,pErrorLog);
5470}
5471static FORCEINLINE HRESULT IBDA_DiagnosticProperties_Write(IBDA_DiagnosticProperties* This,LPCOLESTR pszPropName,VARIANT *pVar) {
5472    return This->lpVtbl->Write(This,pszPropName,pVar);
5473}
5474#endif
5475#endif
5476
5477#endif
5478
5479
5480#endif  /* __IBDA_DiagnosticProperties_INTERFACE_DEFINED__ */
5481
5482/*****************************************************************************
5483 * IBDA_DRM interface
5484 */
5485#ifndef __IBDA_DRM_INTERFACE_DEFINED__
5486#define __IBDA_DRM_INTERFACE_DEFINED__
5487
5488DEFINE_GUID(IID_IBDA_DRM, 0xf98d88b0, 0x1992, 0x4cd6, 0xa6,0xd9, 0xb9,0xaf,0xab,0x99,0x33,0x0d);
5489#if defined(__cplusplus) && !defined(CINTERFACE)
5490MIDL_INTERFACE("f98d88b0-1992-4cd6-a6d9-b9afab99330d")
5491IBDA_DRM : public IUnknown
5492{
5493    virtual HRESULT STDMETHODCALLTYPE GetDRMPairingStatus(
5494        DWORD *pdwStatus,
5495        HRESULT *phError) = 0;
5496
5497    virtual HRESULT STDMETHODCALLTYPE PerformDRMPairing(
5498        WINBOOL fSync) = 0;
5499
5500};
5501#ifdef __CRT_UUID_DECL
5502__CRT_UUID_DECL(IBDA_DRM, 0xf98d88b0, 0x1992, 0x4cd6, 0xa6,0xd9, 0xb9,0xaf,0xab,0x99,0x33,0x0d)
5503#endif
5504#else
5505typedef struct IBDA_DRMVtbl {
5506    BEGIN_INTERFACE
5507
5508    /*** IUnknown methods ***/
5509    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5510        IBDA_DRM* This,
5511        REFIID riid,
5512        void **ppvObject);
5513
5514    ULONG (STDMETHODCALLTYPE *AddRef)(
5515        IBDA_DRM* This);
5516
5517    ULONG (STDMETHODCALLTYPE *Release)(
5518        IBDA_DRM* This);
5519
5520    /*** IBDA_DRM methods ***/
5521    HRESULT (STDMETHODCALLTYPE *GetDRMPairingStatus)(
5522        IBDA_DRM* This,
5523        DWORD *pdwStatus,
5524        HRESULT *phError);
5525
5526    HRESULT (STDMETHODCALLTYPE *PerformDRMPairing)(
5527        IBDA_DRM* This,
5528        WINBOOL fSync);
5529
5530    END_INTERFACE
5531} IBDA_DRMVtbl;
5532interface IBDA_DRM {
5533    CONST_VTBL IBDA_DRMVtbl* lpVtbl;
5534};
5535
5536#ifdef COBJMACROS
5537#ifndef WIDL_C_INLINE_WRAPPERS
5538/*** IUnknown methods ***/
5539#define IBDA_DRM_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5540#define IBDA_DRM_AddRef(This) (This)->lpVtbl->AddRef(This)
5541#define IBDA_DRM_Release(This) (This)->lpVtbl->Release(This)
5542/*** IBDA_DRM methods ***/
5543#define IBDA_DRM_GetDRMPairingStatus(This,pdwStatus,phError) (This)->lpVtbl->GetDRMPairingStatus(This,pdwStatus,phError)
5544#define IBDA_DRM_PerformDRMPairing(This,fSync) (This)->lpVtbl->PerformDRMPairing(This,fSync)
5545#else
5546/*** IUnknown methods ***/
5547static FORCEINLINE HRESULT IBDA_DRM_QueryInterface(IBDA_DRM* This,REFIID riid,void **ppvObject) {
5548    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5549}
5550static FORCEINLINE ULONG IBDA_DRM_AddRef(IBDA_DRM* This) {
5551    return This->lpVtbl->AddRef(This);
5552}
5553static FORCEINLINE ULONG IBDA_DRM_Release(IBDA_DRM* This) {
5554    return This->lpVtbl->Release(This);
5555}
5556/*** IBDA_DRM methods ***/
5557static FORCEINLINE HRESULT IBDA_DRM_GetDRMPairingStatus(IBDA_DRM* This,DWORD *pdwStatus,HRESULT *phError) {
5558    return This->lpVtbl->GetDRMPairingStatus(This,pdwStatus,phError);
5559}
5560static FORCEINLINE HRESULT IBDA_DRM_PerformDRMPairing(IBDA_DRM* This,WINBOOL fSync) {
5561    return This->lpVtbl->PerformDRMPairing(This,fSync);
5562}
5563#endif
5564#endif
5565
5566#endif
5567
5568HRESULT STDMETHODCALLTYPE IBDA_DRM_GetDRMPairingStatus_Proxy(
5569    IBDA_DRM* This,
5570    DWORD *pdwStatus,
5571    HRESULT *phError);
5572void __RPC_STUB IBDA_DRM_GetDRMPairingStatus_Stub(
5573    IRpcStubBuffer* This,
5574    IRpcChannelBuffer* pRpcChannelBuffer,
5575    PRPC_MESSAGE pRpcMessage,
5576    DWORD* pdwStubPhase);
5577HRESULT STDMETHODCALLTYPE IBDA_DRM_PerformDRMPairing_Proxy(
5578    IBDA_DRM* This,
5579    WINBOOL fSync);
5580void __RPC_STUB IBDA_DRM_PerformDRMPairing_Stub(
5581    IRpcStubBuffer* This,
5582    IRpcChannelBuffer* pRpcChannelBuffer,
5583    PRPC_MESSAGE pRpcMessage,
5584    DWORD* pdwStubPhase);
5585
5586#endif  /* __IBDA_DRM_INTERFACE_DEFINED__ */
5587
5588/*****************************************************************************
5589 * IBDA_NameValueService interface
5590 */
5591#ifndef __IBDA_NameValueService_INTERFACE_DEFINED__
5592#define __IBDA_NameValueService_INTERFACE_DEFINED__
5593
5594DEFINE_GUID(IID_IBDA_NameValueService, 0x7f0b3150, 0x7b81, 0x4ad4, 0x98,0xe3, 0x7e,0x90,0x97,0x09,0x43,0x01);
5595#if defined(__cplusplus) && !defined(CINTERFACE)
5596MIDL_INTERFACE("7f0b3150-7b81-4ad4-98e3-7e9097094301")
5597IBDA_NameValueService : public IUnknown
5598{
5599    virtual HRESULT STDMETHODCALLTYPE GetValueNameByIndex(
5600        ULONG ulIndex,
5601        BSTR *pbstrName) = 0;
5602
5603    virtual HRESULT STDMETHODCALLTYPE GetValue(
5604        BSTR bstrName,
5605        BSTR bstrLanguage,
5606        BSTR *pbstrValue) = 0;
5607
5608    virtual HRESULT STDMETHODCALLTYPE SetValue(
5609        ULONG ulDialogRequest,
5610        BSTR bstrLanguage,
5611        BSTR bstrName,
5612        BSTR bstrValue,
5613        ULONG ulReserved) = 0;
5614
5615};
5616#ifdef __CRT_UUID_DECL
5617__CRT_UUID_DECL(IBDA_NameValueService, 0x7f0b3150, 0x7b81, 0x4ad4, 0x98,0xe3, 0x7e,0x90,0x97,0x09,0x43,0x01)
5618#endif
5619#else
5620typedef struct IBDA_NameValueServiceVtbl {
5621    BEGIN_INTERFACE
5622
5623    /*** IUnknown methods ***/
5624    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5625        IBDA_NameValueService* This,
5626        REFIID riid,
5627        void **ppvObject);
5628
5629    ULONG (STDMETHODCALLTYPE *AddRef)(
5630        IBDA_NameValueService* This);
5631
5632    ULONG (STDMETHODCALLTYPE *Release)(
5633        IBDA_NameValueService* This);
5634
5635    /*** IBDA_NameValueService methods ***/
5636    HRESULT (STDMETHODCALLTYPE *GetValueNameByIndex)(
5637        IBDA_NameValueService* This,
5638        ULONG ulIndex,
5639        BSTR *pbstrName);
5640
5641    HRESULT (STDMETHODCALLTYPE *GetValue)(
5642        IBDA_NameValueService* This,
5643        BSTR bstrName,
5644        BSTR bstrLanguage,
5645        BSTR *pbstrValue);
5646
5647    HRESULT (STDMETHODCALLTYPE *SetValue)(
5648        IBDA_NameValueService* This,
5649        ULONG ulDialogRequest,
5650        BSTR bstrLanguage,
5651        BSTR bstrName,
5652        BSTR bstrValue,
5653        ULONG ulReserved);
5654
5655    END_INTERFACE
5656} IBDA_NameValueServiceVtbl;
5657interface IBDA_NameValueService {
5658    CONST_VTBL IBDA_NameValueServiceVtbl* lpVtbl;
5659};
5660
5661#ifdef COBJMACROS
5662#ifndef WIDL_C_INLINE_WRAPPERS
5663/*** IUnknown methods ***/
5664#define IBDA_NameValueService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5665#define IBDA_NameValueService_AddRef(This) (This)->lpVtbl->AddRef(This)
5666#define IBDA_NameValueService_Release(This) (This)->lpVtbl->Release(This)
5667/*** IBDA_NameValueService methods ***/
5668#define IBDA_NameValueService_GetValueNameByIndex(This,ulIndex,pbstrName) (This)->lpVtbl->GetValueNameByIndex(This,ulIndex,pbstrName)
5669#define IBDA_NameValueService_GetValue(This,bstrName,bstrLanguage,pbstrValue) (This)->lpVtbl->GetValue(This,bstrName,bstrLanguage,pbstrValue)
5670#define IBDA_NameValueService_SetValue(This,ulDialogRequest,bstrLanguage,bstrName,bstrValue,ulReserved) (This)->lpVtbl->SetValue(This,ulDialogRequest,bstrLanguage,bstrName,bstrValue,ulReserved)
5671#else
5672/*** IUnknown methods ***/
5673static FORCEINLINE HRESULT IBDA_NameValueService_QueryInterface(IBDA_NameValueService* This,REFIID riid,void **ppvObject) {
5674    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5675}
5676static FORCEINLINE ULONG IBDA_NameValueService_AddRef(IBDA_NameValueService* This) {
5677    return This->lpVtbl->AddRef(This);
5678}
5679static FORCEINLINE ULONG IBDA_NameValueService_Release(IBDA_NameValueService* This) {
5680    return This->lpVtbl->Release(This);
5681}
5682/*** IBDA_NameValueService methods ***/
5683static FORCEINLINE HRESULT IBDA_NameValueService_GetValueNameByIndex(IBDA_NameValueService* This,ULONG ulIndex,BSTR *pbstrName) {
5684    return This->lpVtbl->GetValueNameByIndex(This,ulIndex,pbstrName);
5685}
5686static FORCEINLINE HRESULT IBDA_NameValueService_GetValue(IBDA_NameValueService* This,BSTR bstrName,BSTR bstrLanguage,BSTR *pbstrValue) {
5687    return This->lpVtbl->GetValue(This,bstrName,bstrLanguage,pbstrValue);
5688}
5689static FORCEINLINE HRESULT IBDA_NameValueService_SetValue(IBDA_NameValueService* This,ULONG ulDialogRequest,BSTR bstrLanguage,BSTR bstrName,BSTR bstrValue,ULONG ulReserved) {
5690    return This->lpVtbl->SetValue(This,ulDialogRequest,bstrLanguage,bstrName,bstrValue,ulReserved);
5691}
5692#endif
5693#endif
5694
5695#endif
5696
5697HRESULT STDMETHODCALLTYPE IBDA_NameValueService_GetValueNameByIndex_Proxy(
5698    IBDA_NameValueService* This,
5699    ULONG ulIndex,
5700    BSTR *pbstrName);
5701void __RPC_STUB IBDA_NameValueService_GetValueNameByIndex_Stub(
5702    IRpcStubBuffer* This,
5703    IRpcChannelBuffer* pRpcChannelBuffer,
5704    PRPC_MESSAGE pRpcMessage,
5705    DWORD* pdwStubPhase);
5706HRESULT STDMETHODCALLTYPE IBDA_NameValueService_GetValue_Proxy(
5707    IBDA_NameValueService* This,
5708    BSTR bstrName,
5709    BSTR bstrLanguage,
5710    BSTR *pbstrValue);
5711void __RPC_STUB IBDA_NameValueService_GetValue_Stub(
5712    IRpcStubBuffer* This,
5713    IRpcChannelBuffer* pRpcChannelBuffer,
5714    PRPC_MESSAGE pRpcMessage,
5715    DWORD* pdwStubPhase);
5716HRESULT STDMETHODCALLTYPE IBDA_NameValueService_SetValue_Proxy(
5717    IBDA_NameValueService* This,
5718    ULONG ulDialogRequest,
5719    BSTR bstrLanguage,
5720    BSTR bstrName,
5721    BSTR bstrValue,
5722    ULONG ulReserved);
5723void __RPC_STUB IBDA_NameValueService_SetValue_Stub(
5724    IRpcStubBuffer* This,
5725    IRpcChannelBuffer* pRpcChannelBuffer,
5726    PRPC_MESSAGE pRpcMessage,
5727    DWORD* pdwStubPhase);
5728
5729#endif  /* __IBDA_NameValueService_INTERFACE_DEFINED__ */
5730
5731/*****************************************************************************
5732 * IBDA_ConditionalAccessEx interface
5733 */
5734#ifndef __IBDA_ConditionalAccessEx_INTERFACE_DEFINED__
5735#define __IBDA_ConditionalAccessEx_INTERFACE_DEFINED__
5736
5737DEFINE_GUID(IID_IBDA_ConditionalAccessEx, 0x497c3418, 0x23cb, 0x44ba, 0xbb,0x62, 0x76,0x9f,0x50,0x6f,0xce,0xa7);
5738#if defined(__cplusplus) && !defined(CINTERFACE)
5739MIDL_INTERFACE("497c3418-23cb-44ba-bb62-769f506fcea7")
5740IBDA_ConditionalAccessEx : public IUnknown
5741{
5742    virtual HRESULT STDMETHODCALLTYPE CheckEntitlementToken(
5743        ULONG ulDialogRequest,
5744        BSTR bstrLanguage,
5745        BDA_CONDITIONALACCESS_REQUESTTYPE RequestType,
5746        ULONG ulcbEntitlementTokenLen,
5747        BYTE *pbEntitlementToken,
5748        ULONG *pulDescrambleStatus) = 0;
5749
5750    virtual HRESULT STDMETHODCALLTYPE SetCaptureToken(
5751        ULONG ulcbCaptureTokenLen,
5752        BYTE *pbCaptureToken) = 0;
5753
5754    virtual HRESULT STDMETHODCALLTYPE OpenBroadcastMmi(
5755        ULONG ulDialogRequest,
5756        BSTR bstrLanguage,
5757        ULONG EventId) = 0;
5758
5759    virtual HRESULT STDMETHODCALLTYPE CloseMmiDialog(
5760        ULONG ulDialogRequest,
5761        BSTR bstrLanguage,
5762        ULONG ulDialogNumber,
5763        BDA_CONDITIONALACCESS_MMICLOSEREASON ReasonCode,
5764        ULONG *pulSessionResult) = 0;
5765
5766    virtual HRESULT STDMETHODCALLTYPE CreateDialogRequestNumber(
5767        ULONG *pulDialogRequestNumber) = 0;
5768
5769};
5770#ifdef __CRT_UUID_DECL
5771__CRT_UUID_DECL(IBDA_ConditionalAccessEx, 0x497c3418, 0x23cb, 0x44ba, 0xbb,0x62, 0x76,0x9f,0x50,0x6f,0xce,0xa7)
5772#endif
5773#else
5774typedef struct IBDA_ConditionalAccessExVtbl {
5775    BEGIN_INTERFACE
5776
5777    /*** IUnknown methods ***/
5778    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5779        IBDA_ConditionalAccessEx* This,
5780        REFIID riid,
5781        void **ppvObject);
5782
5783    ULONG (STDMETHODCALLTYPE *AddRef)(
5784        IBDA_ConditionalAccessEx* This);
5785
5786    ULONG (STDMETHODCALLTYPE *Release)(
5787        IBDA_ConditionalAccessEx* This);
5788
5789    /*** IBDA_ConditionalAccessEx methods ***/
5790    HRESULT (STDMETHODCALLTYPE *CheckEntitlementToken)(
5791        IBDA_ConditionalAccessEx* This,
5792        ULONG ulDialogRequest,
5793        BSTR bstrLanguage,
5794        BDA_CONDITIONALACCESS_REQUESTTYPE RequestType,
5795        ULONG ulcbEntitlementTokenLen,
5796        BYTE *pbEntitlementToken,
5797        ULONG *pulDescrambleStatus);
5798
5799    HRESULT (STDMETHODCALLTYPE *SetCaptureToken)(
5800        IBDA_ConditionalAccessEx* This,
5801        ULONG ulcbCaptureTokenLen,
5802        BYTE *pbCaptureToken);
5803
5804    HRESULT (STDMETHODCALLTYPE *OpenBroadcastMmi)(
5805        IBDA_ConditionalAccessEx* This,
5806        ULONG ulDialogRequest,
5807        BSTR bstrLanguage,
5808        ULONG EventId);
5809
5810    HRESULT (STDMETHODCALLTYPE *CloseMmiDialog)(
5811        IBDA_ConditionalAccessEx* This,
5812        ULONG ulDialogRequest,
5813        BSTR bstrLanguage,
5814        ULONG ulDialogNumber,
5815        BDA_CONDITIONALACCESS_MMICLOSEREASON ReasonCode,
5816        ULONG *pulSessionResult);
5817
5818    HRESULT (STDMETHODCALLTYPE *CreateDialogRequestNumber)(
5819        IBDA_ConditionalAccessEx* This,
5820        ULONG *pulDialogRequestNumber);
5821
5822    END_INTERFACE
5823} IBDA_ConditionalAccessExVtbl;
5824interface IBDA_ConditionalAccessEx {
5825    CONST_VTBL IBDA_ConditionalAccessExVtbl* lpVtbl;
5826};
5827
5828#ifdef COBJMACROS
5829#ifndef WIDL_C_INLINE_WRAPPERS
5830/*** IUnknown methods ***/
5831#define IBDA_ConditionalAccessEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5832#define IBDA_ConditionalAccessEx_AddRef(This) (This)->lpVtbl->AddRef(This)
5833#define IBDA_ConditionalAccessEx_Release(This) (This)->lpVtbl->Release(This)
5834/*** IBDA_ConditionalAccessEx methods ***/
5835#define IBDA_ConditionalAccessEx_CheckEntitlementToken(This,ulDialogRequest,bstrLanguage,RequestType,ulcbEntitlementTokenLen,pbEntitlementToken,pulDescrambleStatus) (This)->lpVtbl->CheckEntitlementToken(This,ulDialogRequest,bstrLanguage,RequestType,ulcbEntitlementTokenLen,pbEntitlementToken,pulDescrambleStatus)
5836#define IBDA_ConditionalAccessEx_SetCaptureToken(This,ulcbCaptureTokenLen,pbCaptureToken) (This)->lpVtbl->SetCaptureToken(This,ulcbCaptureTokenLen,pbCaptureToken)
5837#define IBDA_ConditionalAccessEx_OpenBroadcastMmi(This,ulDialogRequest,bstrLanguage,EventId) (This)->lpVtbl->OpenBroadcastMmi(This,ulDialogRequest,bstrLanguage,EventId)
5838#define IBDA_ConditionalAccessEx_CloseMmiDialog(This,ulDialogRequest,bstrLanguage,ulDialogNumber,ReasonCode,pulSessionResult) (This)->lpVtbl->CloseMmiDialog(This,ulDialogRequest,bstrLanguage,ulDialogNumber,ReasonCode,pulSessionResult)
5839#define IBDA_ConditionalAccessEx_CreateDialogRequestNumber(This,pulDialogRequestNumber) (This)->lpVtbl->CreateDialogRequestNumber(This,pulDialogRequestNumber)
5840#else
5841/*** IUnknown methods ***/
5842static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_QueryInterface(IBDA_ConditionalAccessEx* This,REFIID riid,void **ppvObject) {
5843    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5844}
5845static FORCEINLINE ULONG IBDA_ConditionalAccessEx_AddRef(IBDA_ConditionalAccessEx* This) {
5846    return This->lpVtbl->AddRef(This);
5847}
5848static FORCEINLINE ULONG IBDA_ConditionalAccessEx_Release(IBDA_ConditionalAccessEx* This) {
5849    return This->lpVtbl->Release(This);
5850}
5851/*** IBDA_ConditionalAccessEx methods ***/
5852static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_CheckEntitlementToken(IBDA_ConditionalAccessEx* This,ULONG ulDialogRequest,BSTR bstrLanguage,BDA_CONDITIONALACCESS_REQUESTTYPE RequestType,ULONG ulcbEntitlementTokenLen,BYTE *pbEntitlementToken,ULONG *pulDescrambleStatus) {
5853    return This->lpVtbl->CheckEntitlementToken(This,ulDialogRequest,bstrLanguage,RequestType,ulcbEntitlementTokenLen,pbEntitlementToken,pulDescrambleStatus);
5854}
5855static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_SetCaptureToken(IBDA_ConditionalAccessEx* This,ULONG ulcbCaptureTokenLen,BYTE *pbCaptureToken) {
5856    return This->lpVtbl->SetCaptureToken(This,ulcbCaptureTokenLen,pbCaptureToken);
5857}
5858static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_OpenBroadcastMmi(IBDA_ConditionalAccessEx* This,ULONG ulDialogRequest,BSTR bstrLanguage,ULONG EventId) {
5859    return This->lpVtbl->OpenBroadcastMmi(This,ulDialogRequest,bstrLanguage,EventId);
5860}
5861static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_CloseMmiDialog(IBDA_ConditionalAccessEx* This,ULONG ulDialogRequest,BSTR bstrLanguage,ULONG ulDialogNumber,BDA_CONDITIONALACCESS_MMICLOSEREASON ReasonCode,ULONG *pulSessionResult) {
5862    return This->lpVtbl->CloseMmiDialog(This,ulDialogRequest,bstrLanguage,ulDialogNumber,ReasonCode,pulSessionResult);
5863}
5864static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_CreateDialogRequestNumber(IBDA_ConditionalAccessEx* This,ULONG *pulDialogRequestNumber) {
5865    return This->lpVtbl->CreateDialogRequestNumber(This,pulDialogRequestNumber);
5866}
5867#endif
5868#endif
5869
5870#endif
5871
5872HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_CheckEntitlementToken_Proxy(
5873    IBDA_ConditionalAccessEx* This,
5874    ULONG ulDialogRequest,
5875    BSTR bstrLanguage,
5876    BDA_CONDITIONALACCESS_REQUESTTYPE RequestType,
5877    ULONG ulcbEntitlementTokenLen,
5878    BYTE *pbEntitlementToken,
5879    ULONG *pulDescrambleStatus);
5880void __RPC_STUB IBDA_ConditionalAccessEx_CheckEntitlementToken_Stub(
5881    IRpcStubBuffer* This,
5882    IRpcChannelBuffer* pRpcChannelBuffer,
5883    PRPC_MESSAGE pRpcMessage,
5884    DWORD* pdwStubPhase);
5885HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_SetCaptureToken_Proxy(
5886    IBDA_ConditionalAccessEx* This,
5887    ULONG ulcbCaptureTokenLen,
5888    BYTE *pbCaptureToken);
5889void __RPC_STUB IBDA_ConditionalAccessEx_SetCaptureToken_Stub(
5890    IRpcStubBuffer* This,
5891    IRpcChannelBuffer* pRpcChannelBuffer,
5892    PRPC_MESSAGE pRpcMessage,
5893    DWORD* pdwStubPhase);
5894HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_OpenBroadcastMmi_Proxy(
5895    IBDA_ConditionalAccessEx* This,
5896    ULONG ulDialogRequest,
5897    BSTR bstrLanguage,
5898    ULONG EventId);
5899void __RPC_STUB IBDA_ConditionalAccessEx_OpenBroadcastMmi_Stub(
5900    IRpcStubBuffer* This,
5901    IRpcChannelBuffer* pRpcChannelBuffer,
5902    PRPC_MESSAGE pRpcMessage,
5903    DWORD* pdwStubPhase);
5904HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_CloseMmiDialog_Proxy(
5905    IBDA_ConditionalAccessEx* This,
5906    ULONG ulDialogRequest,
5907    BSTR bstrLanguage,
5908    ULONG ulDialogNumber,
5909    BDA_CONDITIONALACCESS_MMICLOSEREASON ReasonCode,
5910    ULONG *pulSessionResult);
5911void __RPC_STUB IBDA_ConditionalAccessEx_CloseMmiDialog_Stub(
5912    IRpcStubBuffer* This,
5913    IRpcChannelBuffer* pRpcChannelBuffer,
5914    PRPC_MESSAGE pRpcMessage,
5915    DWORD* pdwStubPhase);
5916HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_CreateDialogRequestNumber_Proxy(
5917    IBDA_ConditionalAccessEx* This,
5918    ULONG *pulDialogRequestNumber);
5919void __RPC_STUB IBDA_ConditionalAccessEx_CreateDialogRequestNumber_Stub(
5920    IRpcStubBuffer* This,
5921    IRpcChannelBuffer* pRpcChannelBuffer,
5922    PRPC_MESSAGE pRpcMessage,
5923    DWORD* pdwStubPhase);
5924
5925#endif  /* __IBDA_ConditionalAccessEx_INTERFACE_DEFINED__ */
5926
5927/*****************************************************************************
5928 * IBDA_ISDBConditionalAccess interface
5929 */
5930#ifndef __IBDA_ISDBConditionalAccess_INTERFACE_DEFINED__
5931#define __IBDA_ISDBConditionalAccess_INTERFACE_DEFINED__
5932
5933DEFINE_GUID(IID_IBDA_ISDBConditionalAccess, 0x5e68c627, 0x16c2, 0x4e6c, 0xb1,0xe2, 0xd0,0x01,0x70,0xcd,0xaa,0x0f);
5934#if defined(__cplusplus) && !defined(CINTERFACE)
5935MIDL_INTERFACE("5e68c627-16c2-4e6c-b1e2-d00170cdaa0f")
5936IBDA_ISDBConditionalAccess : public IUnknown
5937{
5938    virtual HRESULT STDMETHODCALLTYPE SetIsdbCasRequest(
5939        ULONG ulRequestId,
5940        ULONG ulcbRequestBufferLen,
5941        BYTE *pbRequestBuffer) = 0;
5942
5943};
5944#ifdef __CRT_UUID_DECL
5945__CRT_UUID_DECL(IBDA_ISDBConditionalAccess, 0x5e68c627, 0x16c2, 0x4e6c, 0xb1,0xe2, 0xd0,0x01,0x70,0xcd,0xaa,0x0f)
5946#endif
5947#else
5948typedef struct IBDA_ISDBConditionalAccessVtbl {
5949    BEGIN_INTERFACE
5950
5951    /*** IUnknown methods ***/
5952    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5953        IBDA_ISDBConditionalAccess* This,
5954        REFIID riid,
5955        void **ppvObject);
5956
5957    ULONG (STDMETHODCALLTYPE *AddRef)(
5958        IBDA_ISDBConditionalAccess* This);
5959
5960    ULONG (STDMETHODCALLTYPE *Release)(
5961        IBDA_ISDBConditionalAccess* This);
5962
5963    /*** IBDA_ISDBConditionalAccess methods ***/
5964    HRESULT (STDMETHODCALLTYPE *SetIsdbCasRequest)(
5965        IBDA_ISDBConditionalAccess* This,
5966        ULONG ulRequestId,
5967        ULONG ulcbRequestBufferLen,
5968        BYTE *pbRequestBuffer);
5969
5970    END_INTERFACE
5971} IBDA_ISDBConditionalAccessVtbl;
5972interface IBDA_ISDBConditionalAccess {
5973    CONST_VTBL IBDA_ISDBConditionalAccessVtbl* lpVtbl;
5974};
5975
5976#ifdef COBJMACROS
5977#ifndef WIDL_C_INLINE_WRAPPERS
5978/*** IUnknown methods ***/
5979#define IBDA_ISDBConditionalAccess_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5980#define IBDA_ISDBConditionalAccess_AddRef(This) (This)->lpVtbl->AddRef(This)
5981#define IBDA_ISDBConditionalAccess_Release(This) (This)->lpVtbl->Release(This)
5982/*** IBDA_ISDBConditionalAccess methods ***/
5983#define IBDA_ISDBConditionalAccess_SetIsdbCasRequest(This,ulRequestId,ulcbRequestBufferLen,pbRequestBuffer) (This)->lpVtbl->SetIsdbCasRequest(This,ulRequestId,ulcbRequestBufferLen,pbRequestBuffer)
5984#else
5985/*** IUnknown methods ***/
5986static FORCEINLINE HRESULT IBDA_ISDBConditionalAccess_QueryInterface(IBDA_ISDBConditionalAccess* This,REFIID riid,void **ppvObject) {
5987    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5988}
5989static FORCEINLINE ULONG IBDA_ISDBConditionalAccess_AddRef(IBDA_ISDBConditionalAccess* This) {
5990    return This->lpVtbl->AddRef(This);
5991}
5992static FORCEINLINE ULONG IBDA_ISDBConditionalAccess_Release(IBDA_ISDBConditionalAccess* This) {
5993    return This->lpVtbl->Release(This);
5994}
5995/*** IBDA_ISDBConditionalAccess methods ***/
5996static FORCEINLINE HRESULT IBDA_ISDBConditionalAccess_SetIsdbCasRequest(IBDA_ISDBConditionalAccess* This,ULONG ulRequestId,ULONG ulcbRequestBufferLen,BYTE *pbRequestBuffer) {
5997    return This->lpVtbl->SetIsdbCasRequest(This,ulRequestId,ulcbRequestBufferLen,pbRequestBuffer);
5998}
5999#endif
6000#endif
6001
6002#endif
6003
6004HRESULT STDMETHODCALLTYPE IBDA_ISDBConditionalAccess_SetIsdbCasRequest_Proxy(
6005    IBDA_ISDBConditionalAccess* This,
6006    ULONG ulRequestId,
6007    ULONG ulcbRequestBufferLen,
6008    BYTE *pbRequestBuffer);
6009void __RPC_STUB IBDA_ISDBConditionalAccess_SetIsdbCasRequest_Stub(
6010    IRpcStubBuffer* This,
6011    IRpcChannelBuffer* pRpcChannelBuffer,
6012    PRPC_MESSAGE pRpcMessage,
6013    DWORD* pdwStubPhase);
6014
6015#endif  /* __IBDA_ISDBConditionalAccess_INTERFACE_DEFINED__ */
6016
6017/*****************************************************************************
6018 * IBDA_EventingService interface
6019 */
6020#ifndef __IBDA_EventingService_INTERFACE_DEFINED__
6021#define __IBDA_EventingService_INTERFACE_DEFINED__
6022
6023DEFINE_GUID(IID_IBDA_EventingService, 0x207c413f, 0x00dc, 0x4c61, 0xba,0xd6, 0x6f,0xee,0x1f,0xf0,0x70,0x64);
6024#if defined(__cplusplus) && !defined(CINTERFACE)
6025MIDL_INTERFACE("207c413f-00dc-4c61-bad6-6fee1ff07064")
6026IBDA_EventingService : public IUnknown
6027{
6028    virtual HRESULT STDMETHODCALLTYPE CompleteEvent(
6029        ULONG ulEventID,
6030        ULONG ulEventResult) = 0;
6031
6032};
6033#ifdef __CRT_UUID_DECL
6034__CRT_UUID_DECL(IBDA_EventingService, 0x207c413f, 0x00dc, 0x4c61, 0xba,0xd6, 0x6f,0xee,0x1f,0xf0,0x70,0x64)
6035#endif
6036#else
6037typedef struct IBDA_EventingServiceVtbl {
6038    BEGIN_INTERFACE
6039
6040    /*** IUnknown methods ***/
6041    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6042        IBDA_EventingService* This,
6043        REFIID riid,
6044        void **ppvObject);
6045
6046    ULONG (STDMETHODCALLTYPE *AddRef)(
6047        IBDA_EventingService* This);
6048
6049    ULONG (STDMETHODCALLTYPE *Release)(
6050        IBDA_EventingService* This);
6051
6052    /*** IBDA_EventingService methods ***/
6053    HRESULT (STDMETHODCALLTYPE *CompleteEvent)(
6054        IBDA_EventingService* This,
6055        ULONG ulEventID,
6056        ULONG ulEventResult);
6057
6058    END_INTERFACE
6059} IBDA_EventingServiceVtbl;
6060interface IBDA_EventingService {
6061    CONST_VTBL IBDA_EventingServiceVtbl* lpVtbl;
6062};
6063
6064#ifdef COBJMACROS
6065#ifndef WIDL_C_INLINE_WRAPPERS
6066/*** IUnknown methods ***/
6067#define IBDA_EventingService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6068#define IBDA_EventingService_AddRef(This) (This)->lpVtbl->AddRef(This)
6069#define IBDA_EventingService_Release(This) (This)->lpVtbl->Release(This)
6070/*** IBDA_EventingService methods ***/
6071#define IBDA_EventingService_CompleteEvent(This,ulEventID,ulEventResult) (This)->lpVtbl->CompleteEvent(This,ulEventID,ulEventResult)
6072#else
6073/*** IUnknown methods ***/
6074static FORCEINLINE HRESULT IBDA_EventingService_QueryInterface(IBDA_EventingService* This,REFIID riid,void **ppvObject) {
6075    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6076}
6077static FORCEINLINE ULONG IBDA_EventingService_AddRef(IBDA_EventingService* This) {
6078    return This->lpVtbl->AddRef(This);
6079}
6080static FORCEINLINE ULONG IBDA_EventingService_Release(IBDA_EventingService* This) {
6081    return This->lpVtbl->Release(This);
6082}
6083/*** IBDA_EventingService methods ***/
6084static FORCEINLINE HRESULT IBDA_EventingService_CompleteEvent(IBDA_EventingService* This,ULONG ulEventID,ULONG ulEventResult) {
6085    return This->lpVtbl->CompleteEvent(This,ulEventID,ulEventResult);
6086}
6087#endif
6088#endif
6089
6090#endif
6091
6092HRESULT STDMETHODCALLTYPE IBDA_EventingService_CompleteEvent_Proxy(
6093    IBDA_EventingService* This,
6094    ULONG ulEventID,
6095    ULONG ulEventResult);
6096void __RPC_STUB IBDA_EventingService_CompleteEvent_Stub(
6097    IRpcStubBuffer* This,
6098    IRpcChannelBuffer* pRpcChannelBuffer,
6099    PRPC_MESSAGE pRpcMessage,
6100    DWORD* pdwStubPhase);
6101
6102#endif  /* __IBDA_EventingService_INTERFACE_DEFINED__ */
6103
6104/*****************************************************************************
6105 * IBDA_AUX interface
6106 */
6107#ifndef __IBDA_AUX_INTERFACE_DEFINED__
6108#define __IBDA_AUX_INTERFACE_DEFINED__
6109
6110DEFINE_GUID(IID_IBDA_AUX, 0x7def4c09, 0x6e66, 0x4567, 0xa8,0x19, 0xf0,0xe1,0x7f,0x4a,0x81,0xab);
6111#if defined(__cplusplus) && !defined(CINTERFACE)
6112MIDL_INTERFACE("7def4c09-6e66-4567-a819-f0e17f4a81ab")
6113IBDA_AUX : public IUnknown
6114{
6115    virtual HRESULT STDMETHODCALLTYPE QueryCapabilities(
6116        DWORD *pdwNumAuxInputsBSTR) = 0;
6117
6118    virtual HRESULT STDMETHODCALLTYPE EnumCapability(
6119        DWORD dwIndex,
6120        DWORD *dwInputID,
6121        GUID *pConnectorType,
6122        DWORD *ConnTypeNum,
6123        DWORD *NumVideoStds,
6124        ULONGLONG *AnalogStds) = 0;
6125
6126};
6127#ifdef __CRT_UUID_DECL
6128__CRT_UUID_DECL(IBDA_AUX, 0x7def4c09, 0x6e66, 0x4567, 0xa8,0x19, 0xf0,0xe1,0x7f,0x4a,0x81,0xab)
6129#endif
6130#else
6131typedef struct IBDA_AUXVtbl {
6132    BEGIN_INTERFACE
6133
6134    /*** IUnknown methods ***/
6135    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6136        IBDA_AUX* This,
6137        REFIID riid,
6138        void **ppvObject);
6139
6140    ULONG (STDMETHODCALLTYPE *AddRef)(
6141        IBDA_AUX* This);
6142
6143    ULONG (STDMETHODCALLTYPE *Release)(
6144        IBDA_AUX* This);
6145
6146    /*** IBDA_AUX methods ***/
6147    HRESULT (STDMETHODCALLTYPE *QueryCapabilities)(
6148        IBDA_AUX* This,
6149        DWORD *pdwNumAuxInputsBSTR);
6150
6151    HRESULT (STDMETHODCALLTYPE *EnumCapability)(
6152        IBDA_AUX* This,
6153        DWORD dwIndex,
6154        DWORD *dwInputID,
6155        GUID *pConnectorType,
6156        DWORD *ConnTypeNum,
6157        DWORD *NumVideoStds,
6158        ULONGLONG *AnalogStds);
6159
6160    END_INTERFACE
6161} IBDA_AUXVtbl;
6162interface IBDA_AUX {
6163    CONST_VTBL IBDA_AUXVtbl* lpVtbl;
6164};
6165
6166#ifdef COBJMACROS
6167#ifndef WIDL_C_INLINE_WRAPPERS
6168/*** IUnknown methods ***/
6169#define IBDA_AUX_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6170#define IBDA_AUX_AddRef(This) (This)->lpVtbl->AddRef(This)
6171#define IBDA_AUX_Release(This) (This)->lpVtbl->Release(This)
6172/*** IBDA_AUX methods ***/
6173#define IBDA_AUX_QueryCapabilities(This,pdwNumAuxInputsBSTR) (This)->lpVtbl->QueryCapabilities(This,pdwNumAuxInputsBSTR)
6174#define IBDA_AUX_EnumCapability(This,dwIndex,dwInputID,pConnectorType,ConnTypeNum,NumVideoStds,AnalogStds) (This)->lpVtbl->EnumCapability(This,dwIndex,dwInputID,pConnectorType,ConnTypeNum,NumVideoStds,AnalogStds)
6175#else
6176/*** IUnknown methods ***/
6177static FORCEINLINE HRESULT IBDA_AUX_QueryInterface(IBDA_AUX* This,REFIID riid,void **ppvObject) {
6178    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6179}
6180static FORCEINLINE ULONG IBDA_AUX_AddRef(IBDA_AUX* This) {
6181    return This->lpVtbl->AddRef(This);
6182}
6183static FORCEINLINE ULONG IBDA_AUX_Release(IBDA_AUX* This) {
6184    return This->lpVtbl->Release(This);
6185}
6186/*** IBDA_AUX methods ***/
6187static FORCEINLINE HRESULT IBDA_AUX_QueryCapabilities(IBDA_AUX* This,DWORD *pdwNumAuxInputsBSTR) {
6188    return This->lpVtbl->QueryCapabilities(This,pdwNumAuxInputsBSTR);
6189}
6190static FORCEINLINE HRESULT IBDA_AUX_EnumCapability(IBDA_AUX* This,DWORD dwIndex,DWORD *dwInputID,GUID *pConnectorType,DWORD *ConnTypeNum,DWORD *NumVideoStds,ULONGLONG *AnalogStds) {
6191    return This->lpVtbl->EnumCapability(This,dwIndex,dwInputID,pConnectorType,ConnTypeNum,NumVideoStds,AnalogStds);
6192}
6193#endif
6194#endif
6195
6196#endif
6197
6198HRESULT STDMETHODCALLTYPE IBDA_AUX_QueryCapabilities_Proxy(
6199    IBDA_AUX* This,
6200    DWORD *pdwNumAuxInputsBSTR);
6201void __RPC_STUB IBDA_AUX_QueryCapabilities_Stub(
6202    IRpcStubBuffer* This,
6203    IRpcChannelBuffer* pRpcChannelBuffer,
6204    PRPC_MESSAGE pRpcMessage,
6205    DWORD* pdwStubPhase);
6206HRESULT STDMETHODCALLTYPE IBDA_AUX_EnumCapability_Proxy(
6207    IBDA_AUX* This,
6208    DWORD dwIndex,
6209    DWORD *dwInputID,
6210    GUID *pConnectorType,
6211    DWORD *ConnTypeNum,
6212    DWORD *NumVideoStds,
6213    ULONGLONG *AnalogStds);
6214void __RPC_STUB IBDA_AUX_EnumCapability_Stub(
6215    IRpcStubBuffer* This,
6216    IRpcChannelBuffer* pRpcChannelBuffer,
6217    PRPC_MESSAGE pRpcMessage,
6218    DWORD* pdwStubPhase);
6219
6220#endif  /* __IBDA_AUX_INTERFACE_DEFINED__ */
6221
6222/*****************************************************************************
6223 * IBDA_Encoder interface
6224 */
6225#ifndef __IBDA_Encoder_INTERFACE_DEFINED__
6226#define __IBDA_Encoder_INTERFACE_DEFINED__
6227
6228DEFINE_GUID(IID_IBDA_Encoder, 0x3a8bad59, 0x59fe, 0x4559, 0xa0,0xba, 0x39,0x6c,0xfa,0xa9,0x8a,0xe3);
6229#if defined(__cplusplus) && !defined(CINTERFACE)
6230MIDL_INTERFACE("3a8bad59-59fe-4559-a0ba-396cfaa98ae3")
6231IBDA_Encoder : public IUnknown
6232{
6233    virtual HRESULT STDMETHODCALLTYPE QueryCapabilities(
6234        DWORD *NumAudioFmts,
6235        DWORD *NumVideoFmts) = 0;
6236
6237    virtual HRESULT STDMETHODCALLTYPE EnumAudioCapability(
6238        DWORD FmtIndex,
6239        DWORD *MethodID,
6240        DWORD *AlgorithmType,
6241        DWORD *SamplingRate,
6242        DWORD *BitDepth,
6243        DWORD *NumChannels) = 0;
6244
6245    virtual HRESULT STDMETHODCALLTYPE EnumVideoCapability(
6246        DWORD FmtIndex,
6247        DWORD *MethodID,
6248        DWORD *AlgorithmType,
6249        DWORD *VerticalSize,
6250        DWORD *HorizontalSize,
6251        DWORD *AspectRatio,
6252        DWORD *FrameRateCode,
6253        DWORD *ProgressiveSequence) = 0;
6254
6255    virtual HRESULT STDMETHODCALLTYPE SetParameters(
6256        DWORD AudioBitrateMode,
6257        DWORD AudioBitrate,
6258        DWORD AudioMethodID,
6259        DWORD AudioProgram,
6260        DWORD VideoBitrateMode,
6261        DWORD VideoBitrate,
6262        DWORD VideoMethodID) = 0;
6263
6264    virtual HRESULT STDMETHODCALLTYPE GetState(
6265        DWORD *AudioBitrateMax,
6266        DWORD *AudioBitrateMin,
6267        DWORD *AudioBitrateMode,
6268        DWORD *AudioBitrateStepping,
6269        DWORD *AudioBitrate,
6270        DWORD *AudioMethodID,
6271        DWORD *AvailableAudioPrograms,
6272        DWORD *AudioProgram,
6273        DWORD *VideoBitrateMax,
6274        DWORD *VideoBitrateMin,
6275        DWORD *VideoBitrateMode,
6276        DWORD *VideoBitrate,
6277        DWORD *VideoBitrateStepping,
6278        DWORD *VideoMethodID,
6279        DWORD *SignalSourceID,
6280        ULONGLONG *SignalFormat,
6281        WINBOOL *SignalLock,
6282        LONG *SignalLevel,
6283        DWORD *SignalToNoiseRatio) = 0;
6284
6285};
6286#ifdef __CRT_UUID_DECL
6287__CRT_UUID_DECL(IBDA_Encoder, 0x3a8bad59, 0x59fe, 0x4559, 0xa0,0xba, 0x39,0x6c,0xfa,0xa9,0x8a,0xe3)
6288#endif
6289#else
6290typedef struct IBDA_EncoderVtbl {
6291    BEGIN_INTERFACE
6292
6293    /*** IUnknown methods ***/
6294    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6295        IBDA_Encoder* This,
6296        REFIID riid,
6297        void **ppvObject);
6298
6299    ULONG (STDMETHODCALLTYPE *AddRef)(
6300        IBDA_Encoder* This);
6301
6302    ULONG (STDMETHODCALLTYPE *Release)(
6303        IBDA_Encoder* This);
6304
6305    /*** IBDA_Encoder methods ***/
6306    HRESULT (STDMETHODCALLTYPE *QueryCapabilities)(
6307        IBDA_Encoder* This,
6308        DWORD *NumAudioFmts,
6309        DWORD *NumVideoFmts);
6310
6311    HRESULT (STDMETHODCALLTYPE *EnumAudioCapability)(
6312        IBDA_Encoder* This,
6313        DWORD FmtIndex,
6314        DWORD *MethodID,
6315        DWORD *AlgorithmType,
6316        DWORD *SamplingRate,
6317        DWORD *BitDepth,
6318        DWORD *NumChannels);
6319
6320    HRESULT (STDMETHODCALLTYPE *EnumVideoCapability)(
6321        IBDA_Encoder* This,
6322        DWORD FmtIndex,
6323        DWORD *MethodID,
6324        DWORD *AlgorithmType,
6325        DWORD *VerticalSize,
6326        DWORD *HorizontalSize,
6327        DWORD *AspectRatio,
6328        DWORD *FrameRateCode,
6329        DWORD *ProgressiveSequence);
6330
6331    HRESULT (STDMETHODCALLTYPE *SetParameters)(
6332        IBDA_Encoder* This,
6333        DWORD AudioBitrateMode,
6334        DWORD AudioBitrate,
6335        DWORD AudioMethodID,
6336        DWORD AudioProgram,
6337        DWORD VideoBitrateMode,
6338        DWORD VideoBitrate,
6339        DWORD VideoMethodID);
6340
6341    HRESULT (STDMETHODCALLTYPE *GetState)(
6342        IBDA_Encoder* This,
6343        DWORD *AudioBitrateMax,
6344        DWORD *AudioBitrateMin,
6345        DWORD *AudioBitrateMode,
6346        DWORD *AudioBitrateStepping,
6347        DWORD *AudioBitrate,
6348        DWORD *AudioMethodID,
6349        DWORD *AvailableAudioPrograms,
6350        DWORD *AudioProgram,
6351        DWORD *VideoBitrateMax,
6352        DWORD *VideoBitrateMin,
6353        DWORD *VideoBitrateMode,
6354        DWORD *VideoBitrate,
6355        DWORD *VideoBitrateStepping,
6356        DWORD *VideoMethodID,
6357        DWORD *SignalSourceID,
6358        ULONGLONG *SignalFormat,
6359        WINBOOL *SignalLock,
6360        LONG *SignalLevel,
6361        DWORD *SignalToNoiseRatio);
6362
6363    END_INTERFACE
6364} IBDA_EncoderVtbl;
6365interface IBDA_Encoder {
6366    CONST_VTBL IBDA_EncoderVtbl* lpVtbl;
6367};
6368
6369#ifdef COBJMACROS
6370#ifndef WIDL_C_INLINE_WRAPPERS
6371/*** IUnknown methods ***/
6372#define IBDA_Encoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6373#define IBDA_Encoder_AddRef(This) (This)->lpVtbl->AddRef(This)
6374#define IBDA_Encoder_Release(This) (This)->lpVtbl->Release(This)
6375/*** IBDA_Encoder methods ***/
6376#define IBDA_Encoder_QueryCapabilities(This,NumAudioFmts,NumVideoFmts) (This)->lpVtbl->QueryCapabilities(This,NumAudioFmts,NumVideoFmts)
6377#define IBDA_Encoder_EnumAudioCapability(This,FmtIndex,MethodID,AlgorithmType,SamplingRate,BitDepth,NumChannels) (This)->lpVtbl->EnumAudioCapability(This,FmtIndex,MethodID,AlgorithmType,SamplingRate,BitDepth,NumChannels)
6378#define IBDA_Encoder_EnumVideoCapability(This,FmtIndex,MethodID,AlgorithmType,VerticalSize,HorizontalSize,AspectRatio,FrameRateCode,ProgressiveSequence) (This)->lpVtbl->EnumVideoCapability(This,FmtIndex,MethodID,AlgorithmType,VerticalSize,HorizontalSize,AspectRatio,FrameRateCode,ProgressiveSequence)
6379#define IBDA_Encoder_SetParameters(This,AudioBitrateMode,AudioBitrate,AudioMethodID,AudioProgram,VideoBitrateMode,VideoBitrate,VideoMethodID) (This)->lpVtbl->SetParameters(This,AudioBitrateMode,AudioBitrate,AudioMethodID,AudioProgram,VideoBitrateMode,VideoBitrate,VideoMethodID)
6380#define IBDA_Encoder_GetState(This,AudioBitrateMax,AudioBitrateMin,AudioBitrateMode,AudioBitrateStepping,AudioBitrate,AudioMethodID,AvailableAudioPrograms,AudioProgram,VideoBitrateMax,VideoBitrateMin,VideoBitrateMode,VideoBitrate,VideoBitrateStepping,VideoMethodID,SignalSourceID,SignalFormat,SignalLock,SignalLevel,SignalToNoiseRatio) (This)->lpVtbl->GetState(This,AudioBitrateMax,AudioBitrateMin,AudioBitrateMode,AudioBitrateStepping,AudioBitrate,AudioMethodID,AvailableAudioPrograms,AudioProgram,VideoBitrateMax,VideoBitrateMin,VideoBitrateMode,VideoBitrate,VideoBitrateStepping,VideoMethodID,SignalSourceID,SignalFormat,SignalLock,SignalLevel,SignalToNoiseRatio)
6381#else
6382/*** IUnknown methods ***/
6383static FORCEINLINE HRESULT IBDA_Encoder_QueryInterface(IBDA_Encoder* This,REFIID riid,void **ppvObject) {
6384    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6385}
6386static FORCEINLINE ULONG IBDA_Encoder_AddRef(IBDA_Encoder* This) {
6387    return This->lpVtbl->AddRef(This);
6388}
6389static FORCEINLINE ULONG IBDA_Encoder_Release(IBDA_Encoder* This) {
6390    return This->lpVtbl->Release(This);
6391}
6392/*** IBDA_Encoder methods ***/
6393static FORCEINLINE HRESULT IBDA_Encoder_QueryCapabilities(IBDA_Encoder* This,DWORD *NumAudioFmts,DWORD *NumVideoFmts) {
6394    return This->lpVtbl->QueryCapabilities(This,NumAudioFmts,NumVideoFmts);
6395}
6396static FORCEINLINE HRESULT IBDA_Encoder_EnumAudioCapability(IBDA_Encoder* This,DWORD FmtIndex,DWORD *MethodID,DWORD *AlgorithmType,DWORD *SamplingRate,DWORD *BitDepth,DWORD *NumChannels) {
6397    return This->lpVtbl->EnumAudioCapability(This,FmtIndex,MethodID,AlgorithmType,SamplingRate,BitDepth,NumChannels);
6398}
6399static FORCEINLINE HRESULT IBDA_Encoder_EnumVideoCapability(IBDA_Encoder* This,DWORD FmtIndex,DWORD *MethodID,DWORD *AlgorithmType,DWORD *VerticalSize,DWORD *HorizontalSize,DWORD *AspectRatio,DWORD *FrameRateCode,DWORD *ProgressiveSequence) {
6400    return This->lpVtbl->EnumVideoCapability(This,FmtIndex,MethodID,AlgorithmType,VerticalSize,HorizontalSize,AspectRatio,FrameRateCode,ProgressiveSequence);
6401}
6402static FORCEINLINE HRESULT IBDA_Encoder_SetParameters(IBDA_Encoder* This,DWORD AudioBitrateMode,DWORD AudioBitrate,DWORD AudioMethodID,DWORD AudioProgram,DWORD VideoBitrateMode,DWORD VideoBitrate,DWORD VideoMethodID) {
6403    return This->lpVtbl->SetParameters(This,AudioBitrateMode,AudioBitrate,AudioMethodID,AudioProgram,VideoBitrateMode,VideoBitrate,VideoMethodID);
6404}
6405static FORCEINLINE HRESULT IBDA_Encoder_GetState(IBDA_Encoder* This,DWORD *AudioBitrateMax,DWORD *AudioBitrateMin,DWORD *AudioBitrateMode,DWORD *AudioBitrateStepping,DWORD *AudioBitrate,DWORD *AudioMethodID,DWORD *AvailableAudioPrograms,DWORD *AudioProgram,DWORD *VideoBitrateMax,DWORD *VideoBitrateMin,DWORD *VideoBitrateMode,DWORD *VideoBitrate,DWORD *VideoBitrateStepping,DWORD *VideoMethodID,DWORD *SignalSourceID,ULONGLONG *SignalFormat,WINBOOL *SignalLock,LONG *SignalLevel,DWORD *SignalToNoiseRatio) {
6406    return This->lpVtbl->GetState(This,AudioBitrateMax,AudioBitrateMin,AudioBitrateMode,AudioBitrateStepping,AudioBitrate,AudioMethodID,AvailableAudioPrograms,AudioProgram,VideoBitrateMax,VideoBitrateMin,VideoBitrateMode,VideoBitrate,VideoBitrateStepping,VideoMethodID,SignalSourceID,SignalFormat,SignalLock,SignalLevel,SignalToNoiseRatio);
6407}
6408#endif
6409#endif
6410
6411#endif
6412
6413HRESULT STDMETHODCALLTYPE IBDA_Encoder_QueryCapabilities_Proxy(
6414    IBDA_Encoder* This,
6415    DWORD *NumAudioFmts,
6416    DWORD *NumVideoFmts);
6417void __RPC_STUB IBDA_Encoder_QueryCapabilities_Stub(
6418    IRpcStubBuffer* This,
6419    IRpcChannelBuffer* pRpcChannelBuffer,
6420    PRPC_MESSAGE pRpcMessage,
6421    DWORD* pdwStubPhase);
6422HRESULT STDMETHODCALLTYPE IBDA_Encoder_EnumAudioCapability_Proxy(
6423    IBDA_Encoder* This,
6424    DWORD FmtIndex,
6425    DWORD *MethodID,
6426    DWORD *AlgorithmType,
6427    DWORD *SamplingRate,
6428    DWORD *BitDepth,
6429    DWORD *NumChannels);
6430void __RPC_STUB IBDA_Encoder_EnumAudioCapability_Stub(
6431    IRpcStubBuffer* This,
6432    IRpcChannelBuffer* pRpcChannelBuffer,
6433    PRPC_MESSAGE pRpcMessage,
6434    DWORD* pdwStubPhase);
6435HRESULT STDMETHODCALLTYPE IBDA_Encoder_EnumVideoCapability_Proxy(
6436    IBDA_Encoder* This,
6437    DWORD FmtIndex,
6438    DWORD *MethodID,
6439    DWORD *AlgorithmType,
6440    DWORD *VerticalSize,
6441    DWORD *HorizontalSize,
6442    DWORD *AspectRatio,
6443    DWORD *FrameRateCode,
6444    DWORD *ProgressiveSequence);
6445void __RPC_STUB IBDA_Encoder_EnumVideoCapability_Stub(
6446    IRpcStubBuffer* This,
6447    IRpcChannelBuffer* pRpcChannelBuffer,
6448    PRPC_MESSAGE pRpcMessage,
6449    DWORD* pdwStubPhase);
6450HRESULT STDMETHODCALLTYPE IBDA_Encoder_SetParameters_Proxy(
6451    IBDA_Encoder* This,
6452    DWORD AudioBitrateMode,
6453    DWORD AudioBitrate,
6454    DWORD AudioMethodID,
6455    DWORD AudioProgram,
6456    DWORD VideoBitrateMode,
6457    DWORD VideoBitrate,
6458    DWORD VideoMethodID);
6459void __RPC_STUB IBDA_Encoder_SetParameters_Stub(
6460    IRpcStubBuffer* This,
6461    IRpcChannelBuffer* pRpcChannelBuffer,
6462    PRPC_MESSAGE pRpcMessage,
6463    DWORD* pdwStubPhase);
6464HRESULT STDMETHODCALLTYPE IBDA_Encoder_GetState_Proxy(
6465    IBDA_Encoder* This,
6466    DWORD *AudioBitrateMax,
6467    DWORD *AudioBitrateMin,
6468    DWORD *AudioBitrateMode,
6469    DWORD *AudioBitrateStepping,
6470    DWORD *AudioBitrate,
6471    DWORD *AudioMethodID,
6472    DWORD *AvailableAudioPrograms,
6473    DWORD *AudioProgram,
6474    DWORD *VideoBitrateMax,
6475    DWORD *VideoBitrateMin,
6476    DWORD *VideoBitrateMode,
6477    DWORD *VideoBitrate,
6478    DWORD *VideoBitrateStepping,
6479    DWORD *VideoMethodID,
6480    DWORD *SignalSourceID,
6481    ULONGLONG *SignalFormat,
6482    WINBOOL *SignalLock,
6483    LONG *SignalLevel,
6484    DWORD *SignalToNoiseRatio);
6485void __RPC_STUB IBDA_Encoder_GetState_Stub(
6486    IRpcStubBuffer* This,
6487    IRpcChannelBuffer* pRpcChannelBuffer,
6488    PRPC_MESSAGE pRpcMessage,
6489    DWORD* pdwStubPhase);
6490
6491#endif  /* __IBDA_Encoder_INTERFACE_DEFINED__ */
6492
6493/*****************************************************************************
6494 * IBDA_FDC interface
6495 */
6496#ifndef __IBDA_FDC_INTERFACE_DEFINED__
6497#define __IBDA_FDC_INTERFACE_DEFINED__
6498
6499DEFINE_GUID(IID_IBDA_FDC, 0x138adc7e, 0x58ae, 0x437f, 0xb0,0xb4, 0xc9,0xfe,0x19,0xd5,0xb4,0xac);
6500#if defined(__cplusplus) && !defined(CINTERFACE)
6501MIDL_INTERFACE("138adc7e-58ae-437f-b0b4-c9fe19d5b4ac")
6502IBDA_FDC : public IUnknown
6503{
6504    virtual HRESULT STDMETHODCALLTYPE GetStatus(
6505        DWORD *CurrentBitrate,
6506        WINBOOL *CarrierLock,
6507        DWORD *CurrentFrequency,
6508        WINBOOL *CurrentSpectrumInversion,
6509        BSTR *CurrentPIDList,
6510        BSTR *CurrentTIDList,
6511        WINBOOL *Overflow) = 0;
6512
6513    virtual HRESULT STDMETHODCALLTYPE RequestTables(
6514        BSTR TableIDs) = 0;
6515
6516    virtual HRESULT STDMETHODCALLTYPE AddPid(
6517        BSTR PidsToAdd,
6518        DWORD *RemainingFilterEntries) = 0;
6519
6520    virtual HRESULT STDMETHODCALLTYPE RemovePid(
6521        BSTR PidsToRemove) = 0;
6522
6523    virtual HRESULT STDMETHODCALLTYPE AddTid(
6524        BSTR TidsToAdd,
6525        BSTR *CurrentTidList) = 0;
6526
6527    virtual HRESULT STDMETHODCALLTYPE RemoveTid(
6528        BSTR TidsToRemove) = 0;
6529
6530    virtual HRESULT STDMETHODCALLTYPE GetTableSection(
6531        DWORD *Pid,
6532        DWORD MaxBufferSize,
6533        DWORD *ActualSize,
6534        BYTE *SecBuffer) = 0;
6535
6536};
6537#ifdef __CRT_UUID_DECL
6538__CRT_UUID_DECL(IBDA_FDC, 0x138adc7e, 0x58ae, 0x437f, 0xb0,0xb4, 0xc9,0xfe,0x19,0xd5,0xb4,0xac)
6539#endif
6540#else
6541typedef struct IBDA_FDCVtbl {
6542    BEGIN_INTERFACE
6543
6544    /*** IUnknown methods ***/
6545    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6546        IBDA_FDC* This,
6547        REFIID riid,
6548        void **ppvObject);
6549
6550    ULONG (STDMETHODCALLTYPE *AddRef)(
6551        IBDA_FDC* This);
6552
6553    ULONG (STDMETHODCALLTYPE *Release)(
6554        IBDA_FDC* This);
6555
6556    /*** IBDA_FDC methods ***/
6557    HRESULT (STDMETHODCALLTYPE *GetStatus)(
6558        IBDA_FDC* This,
6559        DWORD *CurrentBitrate,
6560        WINBOOL *CarrierLock,
6561        DWORD *CurrentFrequency,
6562        WINBOOL *CurrentSpectrumInversion,
6563        BSTR *CurrentPIDList,
6564        BSTR *CurrentTIDList,
6565        WINBOOL *Overflow);
6566
6567    HRESULT (STDMETHODCALLTYPE *RequestTables)(
6568        IBDA_FDC* This,
6569        BSTR TableIDs);
6570
6571    HRESULT (STDMETHODCALLTYPE *AddPid)(
6572        IBDA_FDC* This,
6573        BSTR PidsToAdd,
6574        DWORD *RemainingFilterEntries);
6575
6576    HRESULT (STDMETHODCALLTYPE *RemovePid)(
6577        IBDA_FDC* This,
6578        BSTR PidsToRemove);
6579
6580    HRESULT (STDMETHODCALLTYPE *AddTid)(
6581        IBDA_FDC* This,
6582        BSTR TidsToAdd,
6583        BSTR *CurrentTidList);
6584
6585    HRESULT (STDMETHODCALLTYPE *RemoveTid)(
6586        IBDA_FDC* This,
6587        BSTR TidsToRemove);
6588
6589    HRESULT (STDMETHODCALLTYPE *GetTableSection)(
6590        IBDA_FDC* This,
6591        DWORD *Pid,
6592        DWORD MaxBufferSize,
6593        DWORD *ActualSize,
6594        BYTE *SecBuffer);
6595
6596    END_INTERFACE
6597} IBDA_FDCVtbl;
6598interface IBDA_FDC {
6599    CONST_VTBL IBDA_FDCVtbl* lpVtbl;
6600};
6601
6602#ifdef COBJMACROS
6603#ifndef WIDL_C_INLINE_WRAPPERS
6604/*** IUnknown methods ***/
6605#define IBDA_FDC_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6606#define IBDA_FDC_AddRef(This) (This)->lpVtbl->AddRef(This)
6607#define IBDA_FDC_Release(This) (This)->lpVtbl->Release(This)
6608/*** IBDA_FDC methods ***/
6609#define IBDA_FDC_GetStatus(This,CurrentBitrate,CarrierLock,CurrentFrequency,CurrentSpectrumInversion,CurrentPIDList,CurrentTIDList,Overflow) (This)->lpVtbl->GetStatus(This,CurrentBitrate,CarrierLock,CurrentFrequency,CurrentSpectrumInversion,CurrentPIDList,CurrentTIDList,Overflow)
6610#define IBDA_FDC_RequestTables(This,TableIDs) (This)->lpVtbl->RequestTables(This,TableIDs)
6611#define IBDA_FDC_AddPid(This,PidsToAdd,RemainingFilterEntries) (This)->lpVtbl->AddPid(This,PidsToAdd,RemainingFilterEntries)
6612#define IBDA_FDC_RemovePid(This,PidsToRemove) (This)->lpVtbl->RemovePid(This,PidsToRemove)
6613#define IBDA_FDC_AddTid(This,TidsToAdd,CurrentTidList) (This)->lpVtbl->AddTid(This,TidsToAdd,CurrentTidList)
6614#define IBDA_FDC_RemoveTid(This,TidsToRemove) (This)->lpVtbl->RemoveTid(This,TidsToRemove)
6615#define IBDA_FDC_GetTableSection(This,Pid,MaxBufferSize,ActualSize,SecBuffer) (This)->lpVtbl->GetTableSection(This,Pid,MaxBufferSize,ActualSize,SecBuffer)
6616#else
6617/*** IUnknown methods ***/
6618static FORCEINLINE HRESULT IBDA_FDC_QueryInterface(IBDA_FDC* This,REFIID riid,void **ppvObject) {
6619    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6620}
6621static FORCEINLINE ULONG IBDA_FDC_AddRef(IBDA_FDC* This) {
6622    return This->lpVtbl->AddRef(This);
6623}
6624static FORCEINLINE ULONG IBDA_FDC_Release(IBDA_FDC* This) {
6625    return This->lpVtbl->Release(This);
6626}
6627/*** IBDA_FDC methods ***/
6628static FORCEINLINE HRESULT IBDA_FDC_GetStatus(IBDA_FDC* This,DWORD *CurrentBitrate,WINBOOL *CarrierLock,DWORD *CurrentFrequency,WINBOOL *CurrentSpectrumInversion,BSTR *CurrentPIDList,BSTR *CurrentTIDList,WINBOOL *Overflow) {
6629    return This->lpVtbl->GetStatus(This,CurrentBitrate,CarrierLock,CurrentFrequency,CurrentSpectrumInversion,CurrentPIDList,CurrentTIDList,Overflow);
6630}
6631static FORCEINLINE HRESULT IBDA_FDC_RequestTables(IBDA_FDC* This,BSTR TableIDs) {
6632    return This->lpVtbl->RequestTables(This,TableIDs);
6633}
6634static FORCEINLINE HRESULT IBDA_FDC_AddPid(IBDA_FDC* This,BSTR PidsToAdd,DWORD *RemainingFilterEntries) {
6635    return This->lpVtbl->AddPid(This,PidsToAdd,RemainingFilterEntries);
6636}
6637static FORCEINLINE HRESULT IBDA_FDC_RemovePid(IBDA_FDC* This,BSTR PidsToRemove) {
6638    return This->lpVtbl->RemovePid(This,PidsToRemove);
6639}
6640static FORCEINLINE HRESULT IBDA_FDC_AddTid(IBDA_FDC* This,BSTR TidsToAdd,BSTR *CurrentTidList) {
6641    return This->lpVtbl->AddTid(This,TidsToAdd,CurrentTidList);
6642}
6643static FORCEINLINE HRESULT IBDA_FDC_RemoveTid(IBDA_FDC* This,BSTR TidsToRemove) {
6644    return This->lpVtbl->RemoveTid(This,TidsToRemove);
6645}
6646static FORCEINLINE HRESULT IBDA_FDC_GetTableSection(IBDA_FDC* This,DWORD *Pid,DWORD MaxBufferSize,DWORD *ActualSize,BYTE *SecBuffer) {
6647    return This->lpVtbl->GetTableSection(This,Pid,MaxBufferSize,ActualSize,SecBuffer);
6648}
6649#endif
6650#endif
6651
6652#endif
6653
6654HRESULT STDMETHODCALLTYPE IBDA_FDC_GetStatus_Proxy(
6655    IBDA_FDC* This,
6656    DWORD *CurrentBitrate,
6657    WINBOOL *CarrierLock,
6658    DWORD *CurrentFrequency,
6659    WINBOOL *CurrentSpectrumInversion,
6660    BSTR *CurrentPIDList,
6661    BSTR *CurrentTIDList,
6662    WINBOOL *Overflow);
6663void __RPC_STUB IBDA_FDC_GetStatus_Stub(
6664    IRpcStubBuffer* This,
6665    IRpcChannelBuffer* pRpcChannelBuffer,
6666    PRPC_MESSAGE pRpcMessage,
6667    DWORD* pdwStubPhase);
6668HRESULT STDMETHODCALLTYPE IBDA_FDC_RequestTables_Proxy(
6669    IBDA_FDC* This,
6670    BSTR TableIDs);
6671void __RPC_STUB IBDA_FDC_RequestTables_Stub(
6672    IRpcStubBuffer* This,
6673    IRpcChannelBuffer* pRpcChannelBuffer,
6674    PRPC_MESSAGE pRpcMessage,
6675    DWORD* pdwStubPhase);
6676HRESULT STDMETHODCALLTYPE IBDA_FDC_AddPid_Proxy(
6677    IBDA_FDC* This,
6678    BSTR PidsToAdd,
6679    DWORD *RemainingFilterEntries);
6680void __RPC_STUB IBDA_FDC_AddPid_Stub(
6681    IRpcStubBuffer* This,
6682    IRpcChannelBuffer* pRpcChannelBuffer,
6683    PRPC_MESSAGE pRpcMessage,
6684    DWORD* pdwStubPhase);
6685HRESULT STDMETHODCALLTYPE IBDA_FDC_RemovePid_Proxy(
6686    IBDA_FDC* This,
6687    BSTR PidsToRemove);
6688void __RPC_STUB IBDA_FDC_RemovePid_Stub(
6689    IRpcStubBuffer* This,
6690    IRpcChannelBuffer* pRpcChannelBuffer,
6691    PRPC_MESSAGE pRpcMessage,
6692    DWORD* pdwStubPhase);
6693HRESULT STDMETHODCALLTYPE IBDA_FDC_AddTid_Proxy(
6694    IBDA_FDC* This,
6695    BSTR TidsToAdd,
6696    BSTR *CurrentTidList);
6697void __RPC_STUB IBDA_FDC_AddTid_Stub(
6698    IRpcStubBuffer* This,
6699    IRpcChannelBuffer* pRpcChannelBuffer,
6700    PRPC_MESSAGE pRpcMessage,
6701    DWORD* pdwStubPhase);
6702HRESULT STDMETHODCALLTYPE IBDA_FDC_RemoveTid_Proxy(
6703    IBDA_FDC* This,
6704    BSTR TidsToRemove);
6705void __RPC_STUB IBDA_FDC_RemoveTid_Stub(
6706    IRpcStubBuffer* This,
6707    IRpcChannelBuffer* pRpcChannelBuffer,
6708    PRPC_MESSAGE pRpcMessage,
6709    DWORD* pdwStubPhase);
6710HRESULT STDMETHODCALLTYPE IBDA_FDC_GetTableSection_Proxy(
6711    IBDA_FDC* This,
6712    DWORD *Pid,
6713    DWORD MaxBufferSize,
6714    DWORD *ActualSize,
6715    BYTE *SecBuffer);
6716void __RPC_STUB IBDA_FDC_GetTableSection_Stub(
6717    IRpcStubBuffer* This,
6718    IRpcChannelBuffer* pRpcChannelBuffer,
6719    PRPC_MESSAGE pRpcMessage,
6720    DWORD* pdwStubPhase);
6721
6722#endif  /* __IBDA_FDC_INTERFACE_DEFINED__ */
6723
6724/*****************************************************************************
6725 * IBDA_GuideDataDeliveryService interface
6726 */
6727#ifndef __IBDA_GuideDataDeliveryService_INTERFACE_DEFINED__
6728#define __IBDA_GuideDataDeliveryService_INTERFACE_DEFINED__
6729
6730DEFINE_GUID(IID_IBDA_GuideDataDeliveryService, 0xc0afcb73, 0x23e7, 0x4bc6, 0xba,0xfa, 0xfd,0xc1,0x67,0xb4,0x71,0x9f);
6731#if defined(__cplusplus) && !defined(CINTERFACE)
6732MIDL_INTERFACE("c0afcb73-23e7-4bc6-bafa-fdc167b4719f")
6733IBDA_GuideDataDeliveryService : public IUnknown
6734{
6735    virtual HRESULT STDMETHODCALLTYPE GetGuideDataType(
6736        GUID *pguidDataType) = 0;
6737
6738    virtual HRESULT STDMETHODCALLTYPE GetGuideData(
6739        ULONG *pulcbBufferLen,
6740        BYTE *pbBuffer,
6741        ULONG *pulGuideDataPercentageProgress) = 0;
6742
6743    virtual HRESULT STDMETHODCALLTYPE RequestGuideDataUpdate(
6744        ) = 0;
6745
6746    virtual HRESULT STDMETHODCALLTYPE GetTuneXmlFromServiceIdx(
6747        ULONG64 ul64ServiceIdx,
6748        BSTR *pbstrTuneXml) = 0;
6749
6750    virtual HRESULT STDMETHODCALLTYPE GetServices(
6751        ULONG *pulcbBufferLen,
6752        BYTE *pbBuffer) = 0;
6753
6754    virtual HRESULT STDMETHODCALLTYPE GetServiceInfoFromTuneXml(
6755        BSTR bstrTuneXml,
6756        BSTR *pbstrServiceDescription) = 0;
6757
6758};
6759#ifdef __CRT_UUID_DECL
6760__CRT_UUID_DECL(IBDA_GuideDataDeliveryService, 0xc0afcb73, 0x23e7, 0x4bc6, 0xba,0xfa, 0xfd,0xc1,0x67,0xb4,0x71,0x9f)
6761#endif
6762#else
6763typedef struct IBDA_GuideDataDeliveryServiceVtbl {
6764    BEGIN_INTERFACE
6765
6766    /*** IUnknown methods ***/
6767    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6768        IBDA_GuideDataDeliveryService* This,
6769        REFIID riid,
6770        void **ppvObject);
6771
6772    ULONG (STDMETHODCALLTYPE *AddRef)(
6773        IBDA_GuideDataDeliveryService* This);
6774
6775    ULONG (STDMETHODCALLTYPE *Release)(
6776        IBDA_GuideDataDeliveryService* This);
6777
6778    /*** IBDA_GuideDataDeliveryService methods ***/
6779    HRESULT (STDMETHODCALLTYPE *GetGuideDataType)(
6780        IBDA_GuideDataDeliveryService* This,
6781        GUID *pguidDataType);
6782
6783    HRESULT (STDMETHODCALLTYPE *GetGuideData)(
6784        IBDA_GuideDataDeliveryService* This,
6785        ULONG *pulcbBufferLen,
6786        BYTE *pbBuffer,
6787        ULONG *pulGuideDataPercentageProgress);
6788
6789    HRESULT (STDMETHODCALLTYPE *RequestGuideDataUpdate)(
6790        IBDA_GuideDataDeliveryService* This);
6791
6792    HRESULT (STDMETHODCALLTYPE *GetTuneXmlFromServiceIdx)(
6793        IBDA_GuideDataDeliveryService* This,
6794        ULONG64 ul64ServiceIdx,
6795        BSTR *pbstrTuneXml);
6796
6797    HRESULT (STDMETHODCALLTYPE *GetServices)(
6798        IBDA_GuideDataDeliveryService* This,
6799        ULONG *pulcbBufferLen,
6800        BYTE *pbBuffer);
6801
6802    HRESULT (STDMETHODCALLTYPE *GetServiceInfoFromTuneXml)(
6803        IBDA_GuideDataDeliveryService* This,
6804        BSTR bstrTuneXml,
6805        BSTR *pbstrServiceDescription);
6806
6807    END_INTERFACE
6808} IBDA_GuideDataDeliveryServiceVtbl;
6809interface IBDA_GuideDataDeliveryService {
6810    CONST_VTBL IBDA_GuideDataDeliveryServiceVtbl* lpVtbl;
6811};
6812
6813#ifdef COBJMACROS
6814#ifndef WIDL_C_INLINE_WRAPPERS
6815/*** IUnknown methods ***/
6816#define IBDA_GuideDataDeliveryService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6817#define IBDA_GuideDataDeliveryService_AddRef(This) (This)->lpVtbl->AddRef(This)
6818#define IBDA_GuideDataDeliveryService_Release(This) (This)->lpVtbl->Release(This)
6819/*** IBDA_GuideDataDeliveryService methods ***/
6820#define IBDA_GuideDataDeliveryService_GetGuideDataType(This,pguidDataType) (This)->lpVtbl->GetGuideDataType(This,pguidDataType)
6821#define IBDA_GuideDataDeliveryService_GetGuideData(This,pulcbBufferLen,pbBuffer,pulGuideDataPercentageProgress) (This)->lpVtbl->GetGuideData(This,pulcbBufferLen,pbBuffer,pulGuideDataPercentageProgress)
6822#define IBDA_GuideDataDeliveryService_RequestGuideDataUpdate(This) (This)->lpVtbl->RequestGuideDataUpdate(This)
6823#define IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx(This,ul64ServiceIdx,pbstrTuneXml) (This)->lpVtbl->GetTuneXmlFromServiceIdx(This,ul64ServiceIdx,pbstrTuneXml)
6824#define IBDA_GuideDataDeliveryService_GetServices(This,pulcbBufferLen,pbBuffer) (This)->lpVtbl->GetServices(This,pulcbBufferLen,pbBuffer)
6825#define IBDA_GuideDataDeliveryService_GetServiceInfoFromTuneXml(This,bstrTuneXml,pbstrServiceDescription) (This)->lpVtbl->GetServiceInfoFromTuneXml(This,bstrTuneXml,pbstrServiceDescription)
6826#else
6827/*** IUnknown methods ***/
6828static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_QueryInterface(IBDA_GuideDataDeliveryService* This,REFIID riid,void **ppvObject) {
6829    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6830}
6831static FORCEINLINE ULONG IBDA_GuideDataDeliveryService_AddRef(IBDA_GuideDataDeliveryService* This) {
6832    return This->lpVtbl->AddRef(This);
6833}
6834static FORCEINLINE ULONG IBDA_GuideDataDeliveryService_Release(IBDA_GuideDataDeliveryService* This) {
6835    return This->lpVtbl->Release(This);
6836}
6837/*** IBDA_GuideDataDeliveryService methods ***/
6838static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetGuideDataType(IBDA_GuideDataDeliveryService* This,GUID *pguidDataType) {
6839    return This->lpVtbl->GetGuideDataType(This,pguidDataType);
6840}
6841static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetGuideData(IBDA_GuideDataDeliveryService* This,ULONG *pulcbBufferLen,BYTE *pbBuffer,ULONG *pulGuideDataPercentageProgress) {
6842    return This->lpVtbl->GetGuideData(This,pulcbBufferLen,pbBuffer,pulGuideDataPercentageProgress);
6843}
6844static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_RequestGuideDataUpdate(IBDA_GuideDataDeliveryService* This) {
6845    return This->lpVtbl->RequestGuideDataUpdate(This);
6846}
6847static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx(IBDA_GuideDataDeliveryService* This,ULONG64 ul64ServiceIdx,BSTR *pbstrTuneXml) {
6848    return This->lpVtbl->GetTuneXmlFromServiceIdx(This,ul64ServiceIdx,pbstrTuneXml);
6849}
6850static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetServices(IBDA_GuideDataDeliveryService* This,ULONG *pulcbBufferLen,BYTE *pbBuffer) {
6851    return This->lpVtbl->GetServices(This,pulcbBufferLen,pbBuffer);
6852}
6853static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetServiceInfoFromTuneXml(IBDA_GuideDataDeliveryService* This,BSTR bstrTuneXml,BSTR *pbstrServiceDescription) {
6854    return This->lpVtbl->GetServiceInfoFromTuneXml(This,bstrTuneXml,pbstrServiceDescription);
6855}
6856#endif
6857#endif
6858
6859#endif
6860
6861HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetGuideDataType_Proxy(
6862    IBDA_GuideDataDeliveryService* This,
6863    GUID *pguidDataType);
6864void __RPC_STUB IBDA_GuideDataDeliveryService_GetGuideDataType_Stub(
6865    IRpcStubBuffer* This,
6866    IRpcChannelBuffer* pRpcChannelBuffer,
6867    PRPC_MESSAGE pRpcMessage,
6868    DWORD* pdwStubPhase);
6869HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetGuideData_Proxy(
6870    IBDA_GuideDataDeliveryService* This,
6871    ULONG *pulcbBufferLen,
6872    BYTE *pbBuffer,
6873    ULONG *pulGuideDataPercentageProgress);
6874void __RPC_STUB IBDA_GuideDataDeliveryService_GetGuideData_Stub(
6875    IRpcStubBuffer* This,
6876    IRpcChannelBuffer* pRpcChannelBuffer,
6877    PRPC_MESSAGE pRpcMessage,
6878    DWORD* pdwStubPhase);
6879HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_RequestGuideDataUpdate_Proxy(
6880    IBDA_GuideDataDeliveryService* This);
6881void __RPC_STUB IBDA_GuideDataDeliveryService_RequestGuideDataUpdate_Stub(
6882    IRpcStubBuffer* This,
6883    IRpcChannelBuffer* pRpcChannelBuffer,
6884    PRPC_MESSAGE pRpcMessage,
6885    DWORD* pdwStubPhase);
6886HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx_Proxy(
6887    IBDA_GuideDataDeliveryService* This,
6888    ULONG64 ul64ServiceIdx,
6889    BSTR *pbstrTuneXml);
6890void __RPC_STUB IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx_Stub(
6891    IRpcStubBuffer* This,
6892    IRpcChannelBuffer* pRpcChannelBuffer,
6893    PRPC_MESSAGE pRpcMessage,
6894    DWORD* pdwStubPhase);
6895HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetServices_Proxy(
6896    IBDA_GuideDataDeliveryService* This,
6897    ULONG *pulcbBufferLen,
6898    BYTE *pbBuffer);
6899void __RPC_STUB IBDA_GuideDataDeliveryService_GetServices_Stub(
6900    IRpcStubBuffer* This,
6901    IRpcChannelBuffer* pRpcChannelBuffer,
6902    PRPC_MESSAGE pRpcMessage,
6903    DWORD* pdwStubPhase);
6904HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetServiceInfoFromTuneXml_Proxy(
6905    IBDA_GuideDataDeliveryService* This,
6906    BSTR bstrTuneXml,
6907    BSTR *pbstrServiceDescription);
6908void __RPC_STUB IBDA_GuideDataDeliveryService_GetServiceInfoFromTuneXml_Stub(
6909    IRpcStubBuffer* This,
6910    IRpcChannelBuffer* pRpcChannelBuffer,
6911    PRPC_MESSAGE pRpcMessage,
6912    DWORD* pdwStubPhase);
6913
6914#endif  /* __IBDA_GuideDataDeliveryService_INTERFACE_DEFINED__ */
6915
6916/*****************************************************************************
6917 * IBDA_DRMService interface
6918 */
6919#ifndef __IBDA_DRMService_INTERFACE_DEFINED__
6920#define __IBDA_DRMService_INTERFACE_DEFINED__
6921
6922DEFINE_GUID(IID_IBDA_DRMService, 0xbff6b5bb, 0xb0ae, 0x484c, 0x9d,0xca, 0x73,0x52,0x8f,0xb0,0xb4,0x6e);
6923#if defined(__cplusplus) && !defined(CINTERFACE)
6924MIDL_INTERFACE("bff6b5bb-b0ae-484c-9dca-73528fb0b46e")
6925IBDA_DRMService : public IUnknown
6926{
6927    virtual HRESULT STDMETHODCALLTYPE SetDRM(
6928        GUID *puuidNewDrm) = 0;
6929
6930    virtual HRESULT STDMETHODCALLTYPE GetDRMStatus(
6931        BSTR *pbstrDrmUuidList,
6932        GUID *DrmUuid) = 0;
6933
6934};
6935#ifdef __CRT_UUID_DECL
6936__CRT_UUID_DECL(IBDA_DRMService, 0xbff6b5bb, 0xb0ae, 0x484c, 0x9d,0xca, 0x73,0x52,0x8f,0xb0,0xb4,0x6e)
6937#endif
6938#else
6939typedef struct IBDA_DRMServiceVtbl {
6940    BEGIN_INTERFACE
6941
6942    /*** IUnknown methods ***/
6943    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6944        IBDA_DRMService* This,
6945        REFIID riid,
6946        void **ppvObject);
6947
6948    ULONG (STDMETHODCALLTYPE *AddRef)(
6949        IBDA_DRMService* This);
6950
6951    ULONG (STDMETHODCALLTYPE *Release)(
6952        IBDA_DRMService* This);
6953
6954    /*** IBDA_DRMService methods ***/
6955    HRESULT (STDMETHODCALLTYPE *SetDRM)(
6956        IBDA_DRMService* This,
6957        GUID *puuidNewDrm);
6958
6959    HRESULT (STDMETHODCALLTYPE *GetDRMStatus)(
6960        IBDA_DRMService* This,
6961        BSTR *pbstrDrmUuidList,
6962        GUID *DrmUuid);
6963
6964    END_INTERFACE
6965} IBDA_DRMServiceVtbl;
6966interface IBDA_DRMService {
6967    CONST_VTBL IBDA_DRMServiceVtbl* lpVtbl;
6968};
6969
6970#ifdef COBJMACROS
6971#ifndef WIDL_C_INLINE_WRAPPERS
6972/*** IUnknown methods ***/
6973#define IBDA_DRMService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6974#define IBDA_DRMService_AddRef(This) (This)->lpVtbl->AddRef(This)
6975#define IBDA_DRMService_Release(This) (This)->lpVtbl->Release(This)
6976/*** IBDA_DRMService methods ***/
6977#define IBDA_DRMService_SetDRM(This,puuidNewDrm) (This)->lpVtbl->SetDRM(This,puuidNewDrm)
6978#define IBDA_DRMService_GetDRMStatus(This,pbstrDrmUuidList,DrmUuid) (This)->lpVtbl->GetDRMStatus(This,pbstrDrmUuidList,DrmUuid)
6979#else
6980/*** IUnknown methods ***/
6981static FORCEINLINE HRESULT IBDA_DRMService_QueryInterface(IBDA_DRMService* This,REFIID riid,void **ppvObject) {
6982    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6983}
6984static FORCEINLINE ULONG IBDA_DRMService_AddRef(IBDA_DRMService* This) {
6985    return This->lpVtbl->AddRef(This);
6986}
6987static FORCEINLINE ULONG IBDA_DRMService_Release(IBDA_DRMService* This) {
6988    return This->lpVtbl->Release(This);
6989}
6990/*** IBDA_DRMService methods ***/
6991static FORCEINLINE HRESULT IBDA_DRMService_SetDRM(IBDA_DRMService* This,GUID *puuidNewDrm) {
6992    return This->lpVtbl->SetDRM(This,puuidNewDrm);
6993}
6994static FORCEINLINE HRESULT IBDA_DRMService_GetDRMStatus(IBDA_DRMService* This,BSTR *pbstrDrmUuidList,GUID *DrmUuid) {
6995    return This->lpVtbl->GetDRMStatus(This,pbstrDrmUuidList,DrmUuid);
6996}
6997#endif
6998#endif
6999
7000#endif
7001
7002HRESULT STDMETHODCALLTYPE IBDA_DRMService_SetDRM_Proxy(
7003    IBDA_DRMService* This,
7004    GUID *puuidNewDrm);
7005void __RPC_STUB IBDA_DRMService_SetDRM_Stub(
7006    IRpcStubBuffer* This,
7007    IRpcChannelBuffer* pRpcChannelBuffer,
7008    PRPC_MESSAGE pRpcMessage,
7009    DWORD* pdwStubPhase);
7010HRESULT STDMETHODCALLTYPE IBDA_DRMService_GetDRMStatus_Proxy(
7011    IBDA_DRMService* This,
7012    BSTR *pbstrDrmUuidList,
7013    GUID *DrmUuid);
7014void __RPC_STUB IBDA_DRMService_GetDRMStatus_Stub(
7015    IRpcStubBuffer* This,
7016    IRpcChannelBuffer* pRpcChannelBuffer,
7017    PRPC_MESSAGE pRpcMessage,
7018    DWORD* pdwStubPhase);
7019
7020#endif  /* __IBDA_DRMService_INTERFACE_DEFINED__ */
7021
7022/*****************************************************************************
7023 * IBDA_WMDRMSession interface
7024 */
7025#ifndef __IBDA_WMDRMSession_INTERFACE_DEFINED__
7026#define __IBDA_WMDRMSession_INTERFACE_DEFINED__
7027
7028DEFINE_GUID(IID_IBDA_WMDRMSession, 0x4be6fa3d, 0x07cd, 0x4139, 0x8b,0x80, 0x8c,0x18,0xba,0x3a,0xec,0x88);
7029#if defined(__cplusplus) && !defined(CINTERFACE)
7030MIDL_INTERFACE("4be6fa3d-07cd-4139-8b80-8c18ba3aec88")
7031IBDA_WMDRMSession : public IUnknown
7032{
7033    virtual HRESULT STDMETHODCALLTYPE GetStatus(
7034        ULONG *MaxCaptureToken,
7035        ULONG *MaxStreamingPid,
7036        ULONG *MaxLicense,
7037        ULONG *MinSecurityLevel,
7038        ULONG *RevInfoSequenceNumber,
7039        ULONGLONG *RevInfoIssuedTime,
7040        ULONG *RevInfoTTL,
7041        ULONG *RevListVersion,
7042        ULONG *ulState) = 0;
7043
7044    virtual HRESULT STDMETHODCALLTYPE SetRevInfo(
7045        ULONG ulRevInfoLen,
7046        BYTE *pbRevInfo) = 0;
7047
7048    virtual HRESULT STDMETHODCALLTYPE SetCrl(
7049        ULONG ulCrlLen,
7050        BYTE *pbCrlLen) = 0;
7051
7052    virtual HRESULT STDMETHODCALLTYPE TransactMessage(
7053        ULONG ulcbRequest,
7054        BYTE *pbRequest,
7055        ULONG *pulcbResponse,
7056        BYTE *pbResponse) = 0;
7057
7058    virtual HRESULT STDMETHODCALLTYPE GetLicense(
7059        GUID *uuidKey,
7060        ULONG *pulPackageLen,
7061        BYTE *pbPackage) = 0;
7062
7063    virtual HRESULT STDMETHODCALLTYPE ReissueLicense(
7064        GUID *uuidKey) = 0;
7065
7066    virtual HRESULT STDMETHODCALLTYPE RenewLicense(
7067        ULONG ulInXmrLicenseLen,
7068        BYTE *pbInXmrLicense,
7069        ULONG ulEntitlementTokenLen,
7070        BYTE *pbEntitlementToken,
7071        ULONG *pulDescrambleStatus,
7072        ULONG *pulOutXmrLicenseLen,
7073        BYTE *pbOutXmrLicense) = 0;
7074
7075    virtual HRESULT STDMETHODCALLTYPE GetKeyInfo(
7076        ULONG *pulKeyInfoLen,
7077        BYTE *pbKeyInfo) = 0;
7078
7079};
7080#ifdef __CRT_UUID_DECL
7081__CRT_UUID_DECL(IBDA_WMDRMSession, 0x4be6fa3d, 0x07cd, 0x4139, 0x8b,0x80, 0x8c,0x18,0xba,0x3a,0xec,0x88)
7082#endif
7083#else
7084typedef struct IBDA_WMDRMSessionVtbl {
7085    BEGIN_INTERFACE
7086
7087    /*** IUnknown methods ***/
7088    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7089        IBDA_WMDRMSession* This,
7090        REFIID riid,
7091        void **ppvObject);
7092
7093    ULONG (STDMETHODCALLTYPE *AddRef)(
7094        IBDA_WMDRMSession* This);
7095
7096    ULONG (STDMETHODCALLTYPE *Release)(
7097        IBDA_WMDRMSession* This);
7098
7099    /*** IBDA_WMDRMSession methods ***/
7100    HRESULT (STDMETHODCALLTYPE *GetStatus)(
7101        IBDA_WMDRMSession* This,
7102        ULONG *MaxCaptureToken,
7103        ULONG *MaxStreamingPid,
7104        ULONG *MaxLicense,
7105        ULONG *MinSecurityLevel,
7106        ULONG *RevInfoSequenceNumber,
7107        ULONGLONG *RevInfoIssuedTime,
7108        ULONG *RevInfoTTL,
7109        ULONG *RevListVersion,
7110        ULONG *ulState);
7111
7112    HRESULT (STDMETHODCALLTYPE *SetRevInfo)(
7113        IBDA_WMDRMSession* This,
7114        ULONG ulRevInfoLen,
7115        BYTE *pbRevInfo);
7116
7117    HRESULT (STDMETHODCALLTYPE *SetCrl)(
7118        IBDA_WMDRMSession* This,
7119        ULONG ulCrlLen,
7120        BYTE *pbCrlLen);
7121
7122    HRESULT (STDMETHODCALLTYPE *TransactMessage)(
7123        IBDA_WMDRMSession* This,
7124        ULONG ulcbRequest,
7125        BYTE *pbRequest,
7126        ULONG *pulcbResponse,
7127        BYTE *pbResponse);
7128
7129    HRESULT (STDMETHODCALLTYPE *GetLicense)(
7130        IBDA_WMDRMSession* This,
7131        GUID *uuidKey,
7132        ULONG *pulPackageLen,
7133        BYTE *pbPackage);
7134
7135    HRESULT (STDMETHODCALLTYPE *ReissueLicense)(
7136        IBDA_WMDRMSession* This,
7137        GUID *uuidKey);
7138
7139    HRESULT (STDMETHODCALLTYPE *RenewLicense)(
7140        IBDA_WMDRMSession* This,
7141        ULONG ulInXmrLicenseLen,
7142        BYTE *pbInXmrLicense,
7143        ULONG ulEntitlementTokenLen,
7144        BYTE *pbEntitlementToken,
7145        ULONG *pulDescrambleStatus,
7146        ULONG *pulOutXmrLicenseLen,
7147        BYTE *pbOutXmrLicense);
7148
7149    HRESULT (STDMETHODCALLTYPE *GetKeyInfo)(
7150        IBDA_WMDRMSession* This,
7151        ULONG *pulKeyInfoLen,
7152        BYTE *pbKeyInfo);
7153
7154    END_INTERFACE
7155} IBDA_WMDRMSessionVtbl;
7156interface IBDA_WMDRMSession {
7157    CONST_VTBL IBDA_WMDRMSessionVtbl* lpVtbl;
7158};
7159
7160#ifdef COBJMACROS
7161#ifndef WIDL_C_INLINE_WRAPPERS
7162/*** IUnknown methods ***/
7163#define IBDA_WMDRMSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7164#define IBDA_WMDRMSession_AddRef(This) (This)->lpVtbl->AddRef(This)
7165#define IBDA_WMDRMSession_Release(This) (This)->lpVtbl->Release(This)
7166/*** IBDA_WMDRMSession methods ***/
7167#define IBDA_WMDRMSession_GetStatus(This,MaxCaptureToken,MaxStreamingPid,MaxLicense,MinSecurityLevel,RevInfoSequenceNumber,RevInfoIssuedTime,RevInfoTTL,RevListVersion,ulState) (This)->lpVtbl->GetStatus(This,MaxCaptureToken,MaxStreamingPid,MaxLicense,MinSecurityLevel,RevInfoSequenceNumber,RevInfoIssuedTime,RevInfoTTL,RevListVersion,ulState)
7168#define IBDA_WMDRMSession_SetRevInfo(This,ulRevInfoLen,pbRevInfo) (This)->lpVtbl->SetRevInfo(This,ulRevInfoLen,pbRevInfo)
7169#define IBDA_WMDRMSession_SetCrl(This,ulCrlLen,pbCrlLen) (This)->lpVtbl->SetCrl(This,ulCrlLen,pbCrlLen)
7170#define IBDA_WMDRMSession_TransactMessage(This,ulcbRequest,pbRequest,pulcbResponse,pbResponse) (This)->lpVtbl->TransactMessage(This,ulcbRequest,pbRequest,pulcbResponse,pbResponse)
7171#define IBDA_WMDRMSession_GetLicense(This,uuidKey,pulPackageLen,pbPackage) (This)->lpVtbl->GetLicense(This,uuidKey,pulPackageLen,pbPackage)
7172#define IBDA_WMDRMSession_ReissueLicense(This,uuidKey) (This)->lpVtbl->ReissueLicense(This,uuidKey)
7173#define IBDA_WMDRMSession_RenewLicense(This,ulInXmrLicenseLen,pbInXmrLicense,ulEntitlementTokenLen,pbEntitlementToken,pulDescrambleStatus,pulOutXmrLicenseLen,pbOutXmrLicense) (This)->lpVtbl->RenewLicense(This,ulInXmrLicenseLen,pbInXmrLicense,ulEntitlementTokenLen,pbEntitlementToken,pulDescrambleStatus,pulOutXmrLicenseLen,pbOutXmrLicense)
7174#define IBDA_WMDRMSession_GetKeyInfo(This,pulKeyInfoLen,pbKeyInfo) (This)->lpVtbl->GetKeyInfo(This,pulKeyInfoLen,pbKeyInfo)
7175#else
7176/*** IUnknown methods ***/
7177static FORCEINLINE HRESULT IBDA_WMDRMSession_QueryInterface(IBDA_WMDRMSession* This,REFIID riid,void **ppvObject) {
7178    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7179}
7180static FORCEINLINE ULONG IBDA_WMDRMSession_AddRef(IBDA_WMDRMSession* This) {
7181    return This->lpVtbl->AddRef(This);
7182}
7183static FORCEINLINE ULONG IBDA_WMDRMSession_Release(IBDA_WMDRMSession* This) {
7184    return This->lpVtbl->Release(This);
7185}
7186/*** IBDA_WMDRMSession methods ***/
7187static FORCEINLINE HRESULT IBDA_WMDRMSession_GetStatus(IBDA_WMDRMSession* This,ULONG *MaxCaptureToken,ULONG *MaxStreamingPid,ULONG *MaxLicense,ULONG *MinSecurityLevel,ULONG *RevInfoSequenceNumber,ULONGLONG *RevInfoIssuedTime,ULONG *RevInfoTTL,ULONG *RevListVersion,ULONG *ulState) {
7188    return This->lpVtbl->GetStatus(This,MaxCaptureToken,MaxStreamingPid,MaxLicense,MinSecurityLevel,RevInfoSequenceNumber,RevInfoIssuedTime,RevInfoTTL,RevListVersion,ulState);
7189}
7190static FORCEINLINE HRESULT IBDA_WMDRMSession_SetRevInfo(IBDA_WMDRMSession* This,ULONG ulRevInfoLen,BYTE *pbRevInfo) {
7191    return This->lpVtbl->SetRevInfo(This,ulRevInfoLen,pbRevInfo);
7192}
7193static FORCEINLINE HRESULT IBDA_WMDRMSession_SetCrl(IBDA_WMDRMSession* This,ULONG ulCrlLen,BYTE *pbCrlLen) {
7194    return This->lpVtbl->SetCrl(This,ulCrlLen,pbCrlLen);
7195}
7196static FORCEINLINE HRESULT IBDA_WMDRMSession_TransactMessage(IBDA_WMDRMSession* This,ULONG ulcbRequest,BYTE *pbRequest,ULONG *pulcbResponse,BYTE *pbResponse) {
7197    return This->lpVtbl->TransactMessage(This,ulcbRequest,pbRequest,pulcbResponse,pbResponse);
7198}
7199static FORCEINLINE HRESULT IBDA_WMDRMSession_GetLicense(IBDA_WMDRMSession* This,GUID *uuidKey,ULONG *pulPackageLen,BYTE *pbPackage) {
7200    return This->lpVtbl->GetLicense(This,uuidKey,pulPackageLen,pbPackage);
7201}
7202static FORCEINLINE HRESULT IBDA_WMDRMSession_ReissueLicense(IBDA_WMDRMSession* This,GUID *uuidKey) {
7203    return This->lpVtbl->ReissueLicense(This,uuidKey);
7204}
7205static FORCEINLINE HRESULT IBDA_WMDRMSession_RenewLicense(IBDA_WMDRMSession* This,ULONG ulInXmrLicenseLen,BYTE *pbInXmrLicense,ULONG ulEntitlementTokenLen,BYTE *pbEntitlementToken,ULONG *pulDescrambleStatus,ULONG *pulOutXmrLicenseLen,BYTE *pbOutXmrLicense) {
7206    return This->lpVtbl->RenewLicense(This,ulInXmrLicenseLen,pbInXmrLicense,ulEntitlementTokenLen,pbEntitlementToken,pulDescrambleStatus,pulOutXmrLicenseLen,pbOutXmrLicense);
7207}
7208static FORCEINLINE HRESULT IBDA_WMDRMSession_GetKeyInfo(IBDA_WMDRMSession* This,ULONG *pulKeyInfoLen,BYTE *pbKeyInfo) {
7209    return This->lpVtbl->GetKeyInfo(This,pulKeyInfoLen,pbKeyInfo);
7210}
7211#endif
7212#endif
7213
7214#endif
7215
7216HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_GetStatus_Proxy(
7217    IBDA_WMDRMSession* This,
7218    ULONG *MaxCaptureToken,
7219    ULONG *MaxStreamingPid,
7220    ULONG *MaxLicense,
7221    ULONG *MinSecurityLevel,
7222    ULONG *RevInfoSequenceNumber,
7223    ULONGLONG *RevInfoIssuedTime,
7224    ULONG *RevInfoTTL,
7225    ULONG *RevListVersion,
7226    ULONG *ulState);
7227void __RPC_STUB IBDA_WMDRMSession_GetStatus_Stub(
7228    IRpcStubBuffer* This,
7229    IRpcChannelBuffer* pRpcChannelBuffer,
7230    PRPC_MESSAGE pRpcMessage,
7231    DWORD* pdwStubPhase);
7232HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_SetRevInfo_Proxy(
7233    IBDA_WMDRMSession* This,
7234    ULONG ulRevInfoLen,
7235    BYTE *pbRevInfo);
7236void __RPC_STUB IBDA_WMDRMSession_SetRevInfo_Stub(
7237    IRpcStubBuffer* This,
7238    IRpcChannelBuffer* pRpcChannelBuffer,
7239    PRPC_MESSAGE pRpcMessage,
7240    DWORD* pdwStubPhase);
7241HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_SetCrl_Proxy(
7242    IBDA_WMDRMSession* This,
7243    ULONG ulCrlLen,
7244    BYTE *pbCrlLen);
7245void __RPC_STUB IBDA_WMDRMSession_SetCrl_Stub(
7246    IRpcStubBuffer* This,
7247    IRpcChannelBuffer* pRpcChannelBuffer,
7248    PRPC_MESSAGE pRpcMessage,
7249    DWORD* pdwStubPhase);
7250HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_TransactMessage_Proxy(
7251    IBDA_WMDRMSession* This,
7252    ULONG ulcbRequest,
7253    BYTE *pbRequest,
7254    ULONG *pulcbResponse,
7255    BYTE *pbResponse);
7256void __RPC_STUB IBDA_WMDRMSession_TransactMessage_Stub(
7257    IRpcStubBuffer* This,
7258    IRpcChannelBuffer* pRpcChannelBuffer,
7259    PRPC_MESSAGE pRpcMessage,
7260    DWORD* pdwStubPhase);
7261HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_GetLicense_Proxy(
7262    IBDA_WMDRMSession* This,
7263    GUID *uuidKey,
7264    ULONG *pulPackageLen,
7265    BYTE *pbPackage);
7266void __RPC_STUB IBDA_WMDRMSession_GetLicense_Stub(
7267    IRpcStubBuffer* This,
7268    IRpcChannelBuffer* pRpcChannelBuffer,
7269    PRPC_MESSAGE pRpcMessage,
7270    DWORD* pdwStubPhase);
7271HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_ReissueLicense_Proxy(
7272    IBDA_WMDRMSession* This,
7273    GUID *uuidKey);
7274void __RPC_STUB IBDA_WMDRMSession_ReissueLicense_Stub(
7275    IRpcStubBuffer* This,
7276    IRpcChannelBuffer* pRpcChannelBuffer,
7277    PRPC_MESSAGE pRpcMessage,
7278    DWORD* pdwStubPhase);
7279HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_RenewLicense_Proxy(
7280    IBDA_WMDRMSession* This,
7281    ULONG ulInXmrLicenseLen,
7282    BYTE *pbInXmrLicense,
7283    ULONG ulEntitlementTokenLen,
7284    BYTE *pbEntitlementToken,
7285    ULONG *pulDescrambleStatus,
7286    ULONG *pulOutXmrLicenseLen,
7287    BYTE *pbOutXmrLicense);
7288void __RPC_STUB IBDA_WMDRMSession_RenewLicense_Stub(
7289    IRpcStubBuffer* This,
7290    IRpcChannelBuffer* pRpcChannelBuffer,
7291    PRPC_MESSAGE pRpcMessage,
7292    DWORD* pdwStubPhase);
7293HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_GetKeyInfo_Proxy(
7294    IBDA_WMDRMSession* This,
7295    ULONG *pulKeyInfoLen,
7296    BYTE *pbKeyInfo);
7297void __RPC_STUB IBDA_WMDRMSession_GetKeyInfo_Stub(
7298    IRpcStubBuffer* This,
7299    IRpcChannelBuffer* pRpcChannelBuffer,
7300    PRPC_MESSAGE pRpcMessage,
7301    DWORD* pdwStubPhase);
7302
7303#endif  /* __IBDA_WMDRMSession_INTERFACE_DEFINED__ */
7304
7305/*****************************************************************************
7306 * IBDA_WMDRMTuner interface
7307 */
7308#ifndef __IBDA_WMDRMTuner_INTERFACE_DEFINED__
7309#define __IBDA_WMDRMTuner_INTERFACE_DEFINED__
7310
7311DEFINE_GUID(IID_IBDA_WMDRMTuner, 0x86d979cf, 0xa8a7, 0x4f94, 0xb5,0xfb, 0x14,0xc0,0xac,0xa6,0x8f,0xe6);
7312#if defined(__cplusplus) && !defined(CINTERFACE)
7313MIDL_INTERFACE("86d979cf-a8a7-4f94-b5fb-14c0aca68fe6")
7314IBDA_WMDRMTuner : public IUnknown
7315{
7316    virtual HRESULT STDMETHODCALLTYPE PurchaseEntitlement(
7317        ULONG ulDialogRequest,
7318        BSTR bstrLanguage,
7319        ULONG ulPurchaseTokenLen,
7320        BYTE *pbPurchaseToken,
7321        ULONG *pulDescrambleStatus,
7322        ULONG *pulCaptureTokenLen,
7323        BYTE *pbCaptureToken) = 0;
7324
7325    virtual HRESULT STDMETHODCALLTYPE CancelCaptureToken(
7326        ULONG ulCaptureTokenLen,
7327        BYTE *pbCaptureToken) = 0;
7328
7329    virtual HRESULT STDMETHODCALLTYPE SetPidProtection(
7330        ULONG ulPid,
7331        GUID *uuidKey) = 0;
7332
7333    virtual HRESULT STDMETHODCALLTYPE GetPidProtection(
7334        ULONG pulPid,
7335        GUID *uuidKey) = 0;
7336
7337    virtual HRESULT STDMETHODCALLTYPE SetSyncValue(
7338        ULONG ulSyncValue) = 0;
7339
7340    virtual HRESULT STDMETHODCALLTYPE GetStartCodeProfile(
7341        ULONG *pulStartCodeProfileLen,
7342        BYTE *pbStartCodeProfile) = 0;
7343
7344};
7345#ifdef __CRT_UUID_DECL
7346__CRT_UUID_DECL(IBDA_WMDRMTuner, 0x86d979cf, 0xa8a7, 0x4f94, 0xb5,0xfb, 0x14,0xc0,0xac,0xa6,0x8f,0xe6)
7347#endif
7348#else
7349typedef struct IBDA_WMDRMTunerVtbl {
7350    BEGIN_INTERFACE
7351
7352    /*** IUnknown methods ***/
7353    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7354        IBDA_WMDRMTuner* This,
7355        REFIID riid,
7356        void **ppvObject);
7357
7358    ULONG (STDMETHODCALLTYPE *AddRef)(
7359        IBDA_WMDRMTuner* This);
7360
7361    ULONG (STDMETHODCALLTYPE *Release)(
7362        IBDA_WMDRMTuner* This);
7363
7364    /*** IBDA_WMDRMTuner methods ***/
7365    HRESULT (STDMETHODCALLTYPE *PurchaseEntitlement)(
7366        IBDA_WMDRMTuner* This,
7367        ULONG ulDialogRequest,
7368        BSTR bstrLanguage,
7369        ULONG ulPurchaseTokenLen,
7370        BYTE *pbPurchaseToken,
7371        ULONG *pulDescrambleStatus,
7372        ULONG *pulCaptureTokenLen,
7373        BYTE *pbCaptureToken);
7374
7375    HRESULT (STDMETHODCALLTYPE *CancelCaptureToken)(
7376        IBDA_WMDRMTuner* This,
7377        ULONG ulCaptureTokenLen,
7378        BYTE *pbCaptureToken);
7379
7380    HRESULT (STDMETHODCALLTYPE *SetPidProtection)(
7381        IBDA_WMDRMTuner* This,
7382        ULONG ulPid,
7383        GUID *uuidKey);
7384
7385    HRESULT (STDMETHODCALLTYPE *GetPidProtection)(
7386        IBDA_WMDRMTuner* This,
7387        ULONG pulPid,
7388        GUID *uuidKey);
7389
7390    HRESULT (STDMETHODCALLTYPE *SetSyncValue)(
7391        IBDA_WMDRMTuner* This,
7392        ULONG ulSyncValue);
7393
7394    HRESULT (STDMETHODCALLTYPE *GetStartCodeProfile)(
7395        IBDA_WMDRMTuner* This,
7396        ULONG *pulStartCodeProfileLen,
7397        BYTE *pbStartCodeProfile);
7398
7399    END_INTERFACE
7400} IBDA_WMDRMTunerVtbl;
7401interface IBDA_WMDRMTuner {
7402    CONST_VTBL IBDA_WMDRMTunerVtbl* lpVtbl;
7403};
7404
7405#ifdef COBJMACROS
7406#ifndef WIDL_C_INLINE_WRAPPERS
7407/*** IUnknown methods ***/
7408#define IBDA_WMDRMTuner_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7409#define IBDA_WMDRMTuner_AddRef(This) (This)->lpVtbl->AddRef(This)
7410#define IBDA_WMDRMTuner_Release(This) (This)->lpVtbl->Release(This)
7411/*** IBDA_WMDRMTuner methods ***/
7412#define IBDA_WMDRMTuner_PurchaseEntitlement(This,ulDialogRequest,bstrLanguage,ulPurchaseTokenLen,pbPurchaseToken,pulDescrambleStatus,pulCaptureTokenLen,pbCaptureToken) (This)->lpVtbl->PurchaseEntitlement(This,ulDialogRequest,bstrLanguage,ulPurchaseTokenLen,pbPurchaseToken,pulDescrambleStatus,pulCaptureTokenLen,pbCaptureToken)
7413#define IBDA_WMDRMTuner_CancelCaptureToken(This,ulCaptureTokenLen,pbCaptureToken) (This)->lpVtbl->CancelCaptureToken(This,ulCaptureTokenLen,pbCaptureToken)
7414#define IBDA_WMDRMTuner_SetPidProtection(This,ulPid,uuidKey) (This)->lpVtbl->SetPidProtection(This,ulPid,uuidKey)
7415#define IBDA_WMDRMTuner_GetPidProtection(This,pulPid,uuidKey) (This)->lpVtbl->GetPidProtection(This,pulPid,uuidKey)
7416#define IBDA_WMDRMTuner_SetSyncValue(This,ulSyncValue) (This)->lpVtbl->SetSyncValue(This,ulSyncValue)
7417#define IBDA_WMDRMTuner_GetStartCodeProfile(This,pulStartCodeProfileLen,pbStartCodeProfile) (This)->lpVtbl->GetStartCodeProfile(This,pulStartCodeProfileLen,pbStartCodeProfile)
7418#else
7419/*** IUnknown methods ***/
7420static FORCEINLINE HRESULT IBDA_WMDRMTuner_QueryInterface(IBDA_WMDRMTuner* This,REFIID riid,void **ppvObject) {
7421    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7422}
7423static FORCEINLINE ULONG IBDA_WMDRMTuner_AddRef(IBDA_WMDRMTuner* This) {
7424    return This->lpVtbl->AddRef(This);
7425}
7426static FORCEINLINE ULONG IBDA_WMDRMTuner_Release(IBDA_WMDRMTuner* This) {
7427    return This->lpVtbl->Release(This);
7428}
7429/*** IBDA_WMDRMTuner methods ***/
7430static FORCEINLINE HRESULT IBDA_WMDRMTuner_PurchaseEntitlement(IBDA_WMDRMTuner* This,ULONG ulDialogRequest,BSTR bstrLanguage,ULONG ulPurchaseTokenLen,BYTE *pbPurchaseToken,ULONG *pulDescrambleStatus,ULONG *pulCaptureTokenLen,BYTE *pbCaptureToken) {
7431    return This->lpVtbl->PurchaseEntitlement(This,ulDialogRequest,bstrLanguage,ulPurchaseTokenLen,pbPurchaseToken,pulDescrambleStatus,pulCaptureTokenLen,pbCaptureToken);
7432}
7433static FORCEINLINE HRESULT IBDA_WMDRMTuner_CancelCaptureToken(IBDA_WMDRMTuner* This,ULONG ulCaptureTokenLen,BYTE *pbCaptureToken) {
7434    return This->lpVtbl->CancelCaptureToken(This,ulCaptureTokenLen,pbCaptureToken);
7435}
7436static FORCEINLINE HRESULT IBDA_WMDRMTuner_SetPidProtection(IBDA_WMDRMTuner* This,ULONG ulPid,GUID *uuidKey) {
7437    return This->lpVtbl->SetPidProtection(This,ulPid,uuidKey);
7438}
7439static FORCEINLINE HRESULT IBDA_WMDRMTuner_GetPidProtection(IBDA_WMDRMTuner* This,ULONG pulPid,GUID *uuidKey) {
7440    return This->lpVtbl->GetPidProtection(This,pulPid,uuidKey);
7441}
7442static FORCEINLINE HRESULT IBDA_WMDRMTuner_SetSyncValue(IBDA_WMDRMTuner* This,ULONG ulSyncValue) {
7443    return This->lpVtbl->SetSyncValue(This,ulSyncValue);
7444}
7445static FORCEINLINE HRESULT IBDA_WMDRMTuner_GetStartCodeProfile(IBDA_WMDRMTuner* This,ULONG *pulStartCodeProfileLen,BYTE *pbStartCodeProfile) {
7446    return This->lpVtbl->GetStartCodeProfile(This,pulStartCodeProfileLen,pbStartCodeProfile);
7447}
7448#endif
7449#endif
7450
7451#endif
7452
7453HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_PurchaseEntitlement_Proxy(
7454    IBDA_WMDRMTuner* This,
7455    ULONG ulDialogRequest,
7456    BSTR bstrLanguage,
7457    ULONG ulPurchaseTokenLen,
7458    BYTE *pbPurchaseToken,
7459    ULONG *pulDescrambleStatus,
7460    ULONG *pulCaptureTokenLen,
7461    BYTE *pbCaptureToken);
7462void __RPC_STUB IBDA_WMDRMTuner_PurchaseEntitlement_Stub(
7463    IRpcStubBuffer* This,
7464    IRpcChannelBuffer* pRpcChannelBuffer,
7465    PRPC_MESSAGE pRpcMessage,
7466    DWORD* pdwStubPhase);
7467HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_CancelCaptureToken_Proxy(
7468    IBDA_WMDRMTuner* This,
7469    ULONG ulCaptureTokenLen,
7470    BYTE *pbCaptureToken);
7471void __RPC_STUB IBDA_WMDRMTuner_CancelCaptureToken_Stub(
7472    IRpcStubBuffer* This,
7473    IRpcChannelBuffer* pRpcChannelBuffer,
7474    PRPC_MESSAGE pRpcMessage,
7475    DWORD* pdwStubPhase);
7476HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_SetPidProtection_Proxy(
7477    IBDA_WMDRMTuner* This,
7478    ULONG ulPid,
7479    GUID *uuidKey);
7480void __RPC_STUB IBDA_WMDRMTuner_SetPidProtection_Stub(
7481    IRpcStubBuffer* This,
7482    IRpcChannelBuffer* pRpcChannelBuffer,
7483    PRPC_MESSAGE pRpcMessage,
7484    DWORD* pdwStubPhase);
7485HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_GetPidProtection_Proxy(
7486    IBDA_WMDRMTuner* This,
7487    ULONG pulPid,
7488    GUID *uuidKey);
7489void __RPC_STUB IBDA_WMDRMTuner_GetPidProtection_Stub(
7490    IRpcStubBuffer* This,
7491    IRpcChannelBuffer* pRpcChannelBuffer,
7492    PRPC_MESSAGE pRpcMessage,
7493    DWORD* pdwStubPhase);
7494HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_SetSyncValue_Proxy(
7495    IBDA_WMDRMTuner* This,
7496    ULONG ulSyncValue);
7497void __RPC_STUB IBDA_WMDRMTuner_SetSyncValue_Stub(
7498    IRpcStubBuffer* This,
7499    IRpcChannelBuffer* pRpcChannelBuffer,
7500    PRPC_MESSAGE pRpcMessage,
7501    DWORD* pdwStubPhase);
7502HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_GetStartCodeProfile_Proxy(
7503    IBDA_WMDRMTuner* This,
7504    ULONG *pulStartCodeProfileLen,
7505    BYTE *pbStartCodeProfile);
7506void __RPC_STUB IBDA_WMDRMTuner_GetStartCodeProfile_Stub(
7507    IRpcStubBuffer* This,
7508    IRpcChannelBuffer* pRpcChannelBuffer,
7509    PRPC_MESSAGE pRpcMessage,
7510    DWORD* pdwStubPhase);
7511
7512#endif  /* __IBDA_WMDRMTuner_INTERFACE_DEFINED__ */
7513
7514/*****************************************************************************
7515 * IBDA_DRIDRMService interface
7516 */
7517#ifndef __IBDA_DRIDRMService_INTERFACE_DEFINED__
7518#define __IBDA_DRIDRMService_INTERFACE_DEFINED__
7519
7520DEFINE_GUID(IID_IBDA_DRIDRMService, 0x1f9bc2a5, 0x44a3, 0x4c52, 0xaa,0xb1, 0x0b,0xbc,0xe5,0xa1,0x38,0x1d);
7521#if defined(__cplusplus) && !defined(CINTERFACE)
7522MIDL_INTERFACE("1f9bc2a5-44a3-4c52-aab1-0bbce5a1381d")
7523IBDA_DRIDRMService : public IUnknown
7524{
7525    virtual HRESULT STDMETHODCALLTYPE SetDRM(
7526        BSTR bstrNewDrm) = 0;
7527
7528    virtual HRESULT STDMETHODCALLTYPE GetDRMStatus(
7529        BSTR *pbstrDrmUuidList,
7530        GUID *DrmUuid) = 0;
7531
7532    virtual HRESULT STDMETHODCALLTYPE GetPairingStatus(
7533        BDA_DrmPairingError *penumPairingStatus) = 0;
7534
7535};
7536#ifdef __CRT_UUID_DECL
7537__CRT_UUID_DECL(IBDA_DRIDRMService, 0x1f9bc2a5, 0x44a3, 0x4c52, 0xaa,0xb1, 0x0b,0xbc,0xe5,0xa1,0x38,0x1d)
7538#endif
7539#else
7540typedef struct IBDA_DRIDRMServiceVtbl {
7541    BEGIN_INTERFACE
7542
7543    /*** IUnknown methods ***/
7544    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7545        IBDA_DRIDRMService* This,
7546        REFIID riid,
7547        void **ppvObject);
7548
7549    ULONG (STDMETHODCALLTYPE *AddRef)(
7550        IBDA_DRIDRMService* This);
7551
7552    ULONG (STDMETHODCALLTYPE *Release)(
7553        IBDA_DRIDRMService* This);
7554
7555    /*** IBDA_DRIDRMService methods ***/
7556    HRESULT (STDMETHODCALLTYPE *SetDRM)(
7557        IBDA_DRIDRMService* This,
7558        BSTR bstrNewDrm);
7559
7560    HRESULT (STDMETHODCALLTYPE *GetDRMStatus)(
7561        IBDA_DRIDRMService* This,
7562        BSTR *pbstrDrmUuidList,
7563        GUID *DrmUuid);
7564
7565    HRESULT (STDMETHODCALLTYPE *GetPairingStatus)(
7566        IBDA_DRIDRMService* This,
7567        BDA_DrmPairingError *penumPairingStatus);
7568
7569    END_INTERFACE
7570} IBDA_DRIDRMServiceVtbl;
7571interface IBDA_DRIDRMService {
7572    CONST_VTBL IBDA_DRIDRMServiceVtbl* lpVtbl;
7573};
7574
7575#ifdef COBJMACROS
7576#ifndef WIDL_C_INLINE_WRAPPERS
7577/*** IUnknown methods ***/
7578#define IBDA_DRIDRMService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7579#define IBDA_DRIDRMService_AddRef(This) (This)->lpVtbl->AddRef(This)
7580#define IBDA_DRIDRMService_Release(This) (This)->lpVtbl->Release(This)
7581/*** IBDA_DRIDRMService methods ***/
7582#define IBDA_DRIDRMService_SetDRM(This,bstrNewDrm) (This)->lpVtbl->SetDRM(This,bstrNewDrm)
7583#define IBDA_DRIDRMService_GetDRMStatus(This,pbstrDrmUuidList,DrmUuid) (This)->lpVtbl->GetDRMStatus(This,pbstrDrmUuidList,DrmUuid)
7584#define IBDA_DRIDRMService_GetPairingStatus(This,penumPairingStatus) (This)->lpVtbl->GetPairingStatus(This,penumPairingStatus)
7585#else
7586/*** IUnknown methods ***/
7587static FORCEINLINE HRESULT IBDA_DRIDRMService_QueryInterface(IBDA_DRIDRMService* This,REFIID riid,void **ppvObject) {
7588    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7589}
7590static FORCEINLINE ULONG IBDA_DRIDRMService_AddRef(IBDA_DRIDRMService* This) {
7591    return This->lpVtbl->AddRef(This);
7592}
7593static FORCEINLINE ULONG IBDA_DRIDRMService_Release(IBDA_DRIDRMService* This) {
7594    return This->lpVtbl->Release(This);
7595}
7596/*** IBDA_DRIDRMService methods ***/
7597static FORCEINLINE HRESULT IBDA_DRIDRMService_SetDRM(IBDA_DRIDRMService* This,BSTR bstrNewDrm) {
7598    return This->lpVtbl->SetDRM(This,bstrNewDrm);
7599}
7600static FORCEINLINE HRESULT IBDA_DRIDRMService_GetDRMStatus(IBDA_DRIDRMService* This,BSTR *pbstrDrmUuidList,GUID *DrmUuid) {
7601    return This->lpVtbl->GetDRMStatus(This,pbstrDrmUuidList,DrmUuid);
7602}
7603static FORCEINLINE HRESULT IBDA_DRIDRMService_GetPairingStatus(IBDA_DRIDRMService* This,BDA_DrmPairingError *penumPairingStatus) {
7604    return This->lpVtbl->GetPairingStatus(This,penumPairingStatus);
7605}
7606#endif
7607#endif
7608
7609#endif
7610
7611HRESULT STDMETHODCALLTYPE IBDA_DRIDRMService_SetDRM_Proxy(
7612    IBDA_DRIDRMService* This,
7613    BSTR bstrNewDrm);
7614void __RPC_STUB IBDA_DRIDRMService_SetDRM_Stub(
7615    IRpcStubBuffer* This,
7616    IRpcChannelBuffer* pRpcChannelBuffer,
7617    PRPC_MESSAGE pRpcMessage,
7618    DWORD* pdwStubPhase);
7619HRESULT STDMETHODCALLTYPE IBDA_DRIDRMService_GetDRMStatus_Proxy(
7620    IBDA_DRIDRMService* This,
7621    BSTR *pbstrDrmUuidList,
7622    GUID *DrmUuid);
7623void __RPC_STUB IBDA_DRIDRMService_GetDRMStatus_Stub(
7624    IRpcStubBuffer* This,
7625    IRpcChannelBuffer* pRpcChannelBuffer,
7626    PRPC_MESSAGE pRpcMessage,
7627    DWORD* pdwStubPhase);
7628HRESULT STDMETHODCALLTYPE IBDA_DRIDRMService_GetPairingStatus_Proxy(
7629    IBDA_DRIDRMService* This,
7630    BDA_DrmPairingError *penumPairingStatus);
7631void __RPC_STUB IBDA_DRIDRMService_GetPairingStatus_Stub(
7632    IRpcStubBuffer* This,
7633    IRpcChannelBuffer* pRpcChannelBuffer,
7634    PRPC_MESSAGE pRpcMessage,
7635    DWORD* pdwStubPhase);
7636
7637#endif  /* __IBDA_DRIDRMService_INTERFACE_DEFINED__ */
7638
7639/*****************************************************************************
7640 * IBDA_DRIWMDRMSession interface
7641 */
7642#ifndef __IBDA_DRIWMDRMSession_INTERFACE_DEFINED__
7643#define __IBDA_DRIWMDRMSession_INTERFACE_DEFINED__
7644
7645DEFINE_GUID(IID_IBDA_DRIWMDRMSession, 0x05c690f8, 0x56db, 0x4bb2, 0xb0,0x53, 0x79,0xc1,0x20,0x98,0xbb,0x26);
7646#if defined(__cplusplus) && !defined(CINTERFACE)
7647MIDL_INTERFACE("05c690f8-56db-4bb2-b053-79c12098bb26")
7648IBDA_DRIWMDRMSession : public IUnknown
7649{
7650    virtual HRESULT STDMETHODCALLTYPE AcknowledgeLicense(
7651        HRESULT hrLicenseAck) = 0;
7652
7653    virtual HRESULT STDMETHODCALLTYPE ProcessLicenseChallenge(
7654        DWORD dwcbLicenseMessage,
7655        BYTE *pbLicenseMessage,
7656        DWORD *pdwcbLicenseResponse,
7657        BYTE **ppbLicenseResponse) = 0;
7658
7659    virtual HRESULT STDMETHODCALLTYPE ProcessRegistrationChallenge(
7660        DWORD dwcbRegistrationMessage,
7661        BYTE *pbRegistrationMessage,
7662        DWORD *pdwcbRegistrationResponse,
7663        BYTE **ppbRegistrationResponse) = 0;
7664
7665    virtual HRESULT STDMETHODCALLTYPE SetRevInfo(
7666        DWORD dwRevInfoLen,
7667        BYTE *pbRevInfo,
7668        DWORD *pdwResponse) = 0;
7669
7670    virtual HRESULT STDMETHODCALLTYPE SetCrl(
7671        DWORD dwCrlLen,
7672        BYTE *pbCrlLen,
7673        DWORD *pdwResponse) = 0;
7674
7675    virtual HRESULT STDMETHODCALLTYPE GetHMSAssociationData(
7676        ) = 0;
7677
7678    virtual HRESULT STDMETHODCALLTYPE GetLastCardeaError(
7679        DWORD *pdwError) = 0;
7680
7681};
7682#ifdef __CRT_UUID_DECL
7683__CRT_UUID_DECL(IBDA_DRIWMDRMSession, 0x05c690f8, 0x56db, 0x4bb2, 0xb0,0x53, 0x79,0xc1,0x20,0x98,0xbb,0x26)
7684#endif
7685#else
7686typedef struct IBDA_DRIWMDRMSessionVtbl {
7687    BEGIN_INTERFACE
7688
7689    /*** IUnknown methods ***/
7690    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7691        IBDA_DRIWMDRMSession* This,
7692        REFIID riid,
7693        void **ppvObject);
7694
7695    ULONG (STDMETHODCALLTYPE *AddRef)(
7696        IBDA_DRIWMDRMSession* This);
7697
7698    ULONG (STDMETHODCALLTYPE *Release)(
7699        IBDA_DRIWMDRMSession* This);
7700
7701    /*** IBDA_DRIWMDRMSession methods ***/
7702    HRESULT (STDMETHODCALLTYPE *AcknowledgeLicense)(
7703        IBDA_DRIWMDRMSession* This,
7704        HRESULT hrLicenseAck);
7705
7706    HRESULT (STDMETHODCALLTYPE *ProcessLicenseChallenge)(
7707        IBDA_DRIWMDRMSession* This,
7708        DWORD dwcbLicenseMessage,
7709        BYTE *pbLicenseMessage,
7710        DWORD *pdwcbLicenseResponse,
7711        BYTE **ppbLicenseResponse);
7712
7713    HRESULT (STDMETHODCALLTYPE *ProcessRegistrationChallenge)(
7714        IBDA_DRIWMDRMSession* This,
7715        DWORD dwcbRegistrationMessage,
7716        BYTE *pbRegistrationMessage,
7717        DWORD *pdwcbRegistrationResponse,
7718        BYTE **ppbRegistrationResponse);
7719
7720    HRESULT (STDMETHODCALLTYPE *SetRevInfo)(
7721        IBDA_DRIWMDRMSession* This,
7722        DWORD dwRevInfoLen,
7723        BYTE *pbRevInfo,
7724        DWORD *pdwResponse);
7725
7726    HRESULT (STDMETHODCALLTYPE *SetCrl)(
7727        IBDA_DRIWMDRMSession* This,
7728        DWORD dwCrlLen,
7729        BYTE *pbCrlLen,
7730        DWORD *pdwResponse);
7731
7732    HRESULT (STDMETHODCALLTYPE *GetHMSAssociationData)(
7733        IBDA_DRIWMDRMSession* This);
7734
7735    HRESULT (STDMETHODCALLTYPE *GetLastCardeaError)(
7736        IBDA_DRIWMDRMSession* This,
7737        DWORD *pdwError);
7738
7739    END_INTERFACE
7740} IBDA_DRIWMDRMSessionVtbl;
7741interface IBDA_DRIWMDRMSession {
7742    CONST_VTBL IBDA_DRIWMDRMSessionVtbl* lpVtbl;
7743};
7744
7745#ifdef COBJMACROS
7746#ifndef WIDL_C_INLINE_WRAPPERS
7747/*** IUnknown methods ***/
7748#define IBDA_DRIWMDRMSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7749#define IBDA_DRIWMDRMSession_AddRef(This) (This)->lpVtbl->AddRef(This)
7750#define IBDA_DRIWMDRMSession_Release(This) (This)->lpVtbl->Release(This)
7751/*** IBDA_DRIWMDRMSession methods ***/
7752#define IBDA_DRIWMDRMSession_AcknowledgeLicense(This,hrLicenseAck) (This)->lpVtbl->AcknowledgeLicense(This,hrLicenseAck)
7753#define IBDA_DRIWMDRMSession_ProcessLicenseChallenge(This,dwcbLicenseMessage,pbLicenseMessage,pdwcbLicenseResponse,ppbLicenseResponse) (This)->lpVtbl->ProcessLicenseChallenge(This,dwcbLicenseMessage,pbLicenseMessage,pdwcbLicenseResponse,ppbLicenseResponse)
7754#define IBDA_DRIWMDRMSession_ProcessRegistrationChallenge(This,dwcbRegistrationMessage,pbRegistrationMessage,pdwcbRegistrationResponse,ppbRegistrationResponse) (This)->lpVtbl->ProcessRegistrationChallenge(This,dwcbRegistrationMessage,pbRegistrationMessage,pdwcbRegistrationResponse,ppbRegistrationResponse)
7755#define IBDA_DRIWMDRMSession_SetRevInfo(This,dwRevInfoLen,pbRevInfo,pdwResponse) (This)->lpVtbl->SetRevInfo(This,dwRevInfoLen,pbRevInfo,pdwResponse)
7756#define IBDA_DRIWMDRMSession_SetCrl(This,dwCrlLen,pbCrlLen,pdwResponse) (This)->lpVtbl->SetCrl(This,dwCrlLen,pbCrlLen,pdwResponse)
7757#define IBDA_DRIWMDRMSession_GetHMSAssociationData(This) (This)->lpVtbl->GetHMSAssociationData(This)
7758#define IBDA_DRIWMDRMSession_GetLastCardeaError(This,pdwError) (This)->lpVtbl->GetLastCardeaError(This,pdwError)
7759#else
7760/*** IUnknown methods ***/
7761static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_QueryInterface(IBDA_DRIWMDRMSession* This,REFIID riid,void **ppvObject) {
7762    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7763}
7764static FORCEINLINE ULONG IBDA_DRIWMDRMSession_AddRef(IBDA_DRIWMDRMSession* This) {
7765    return This->lpVtbl->AddRef(This);
7766}
7767static FORCEINLINE ULONG IBDA_DRIWMDRMSession_Release(IBDA_DRIWMDRMSession* This) {
7768    return This->lpVtbl->Release(This);
7769}
7770/*** IBDA_DRIWMDRMSession methods ***/
7771static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_AcknowledgeLicense(IBDA_DRIWMDRMSession* This,HRESULT hrLicenseAck) {
7772    return This->lpVtbl->AcknowledgeLicense(This,hrLicenseAck);
7773}
7774static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_ProcessLicenseChallenge(IBDA_DRIWMDRMSession* This,DWORD dwcbLicenseMessage,BYTE *pbLicenseMessage,DWORD *pdwcbLicenseResponse,BYTE **ppbLicenseResponse) {
7775    return This->lpVtbl->ProcessLicenseChallenge(This,dwcbLicenseMessage,pbLicenseMessage,pdwcbLicenseResponse,ppbLicenseResponse);
7776}
7777static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_ProcessRegistrationChallenge(IBDA_DRIWMDRMSession* This,DWORD dwcbRegistrationMessage,BYTE *pbRegistrationMessage,DWORD *pdwcbRegistrationResponse,BYTE **ppbRegistrationResponse) {
7778    return This->lpVtbl->ProcessRegistrationChallenge(This,dwcbRegistrationMessage,pbRegistrationMessage,pdwcbRegistrationResponse,ppbRegistrationResponse);
7779}
7780static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_SetRevInfo(IBDA_DRIWMDRMSession* This,DWORD dwRevInfoLen,BYTE *pbRevInfo,DWORD *pdwResponse) {
7781    return This->lpVtbl->SetRevInfo(This,dwRevInfoLen,pbRevInfo,pdwResponse);
7782}
7783static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_SetCrl(IBDA_DRIWMDRMSession* This,DWORD dwCrlLen,BYTE *pbCrlLen,DWORD *pdwResponse) {
7784    return This->lpVtbl->SetCrl(This,dwCrlLen,pbCrlLen,pdwResponse);
7785}
7786static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_GetHMSAssociationData(IBDA_DRIWMDRMSession* This) {
7787    return This->lpVtbl->GetHMSAssociationData(This);
7788}
7789static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_GetLastCardeaError(IBDA_DRIWMDRMSession* This,DWORD *pdwError) {
7790    return This->lpVtbl->GetLastCardeaError(This,pdwError);
7791}
7792#endif
7793#endif
7794
7795#endif
7796
7797HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_AcknowledgeLicense_Proxy(
7798    IBDA_DRIWMDRMSession* This,
7799    HRESULT hrLicenseAck);
7800void __RPC_STUB IBDA_DRIWMDRMSession_AcknowledgeLicense_Stub(
7801    IRpcStubBuffer* This,
7802    IRpcChannelBuffer* pRpcChannelBuffer,
7803    PRPC_MESSAGE pRpcMessage,
7804    DWORD* pdwStubPhase);
7805HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_ProcessLicenseChallenge_Proxy(
7806    IBDA_DRIWMDRMSession* This,
7807    DWORD dwcbLicenseMessage,
7808    BYTE *pbLicenseMessage,
7809    DWORD *pdwcbLicenseResponse,
7810    BYTE **ppbLicenseResponse);
7811void __RPC_STUB IBDA_DRIWMDRMSession_ProcessLicenseChallenge_Stub(
7812    IRpcStubBuffer* This,
7813    IRpcChannelBuffer* pRpcChannelBuffer,
7814    PRPC_MESSAGE pRpcMessage,
7815    DWORD* pdwStubPhase);
7816HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_ProcessRegistrationChallenge_Proxy(
7817    IBDA_DRIWMDRMSession* This,
7818    DWORD dwcbRegistrationMessage,
7819    BYTE *pbRegistrationMessage,
7820    DWORD *pdwcbRegistrationResponse,
7821    BYTE **ppbRegistrationResponse);
7822void __RPC_STUB IBDA_DRIWMDRMSession_ProcessRegistrationChallenge_Stub(
7823    IRpcStubBuffer* This,
7824    IRpcChannelBuffer* pRpcChannelBuffer,
7825    PRPC_MESSAGE pRpcMessage,
7826    DWORD* pdwStubPhase);
7827HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_SetRevInfo_Proxy(
7828    IBDA_DRIWMDRMSession* This,
7829    DWORD dwRevInfoLen,
7830    BYTE *pbRevInfo,
7831    DWORD *pdwResponse);
7832void __RPC_STUB IBDA_DRIWMDRMSession_SetRevInfo_Stub(
7833    IRpcStubBuffer* This,
7834    IRpcChannelBuffer* pRpcChannelBuffer,
7835    PRPC_MESSAGE pRpcMessage,
7836    DWORD* pdwStubPhase);
7837HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_SetCrl_Proxy(
7838    IBDA_DRIWMDRMSession* This,
7839    DWORD dwCrlLen,
7840    BYTE *pbCrlLen,
7841    DWORD *pdwResponse);
7842void __RPC_STUB IBDA_DRIWMDRMSession_SetCrl_Stub(
7843    IRpcStubBuffer* This,
7844    IRpcChannelBuffer* pRpcChannelBuffer,
7845    PRPC_MESSAGE pRpcMessage,
7846    DWORD* pdwStubPhase);
7847HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_GetHMSAssociationData_Proxy(
7848    IBDA_DRIWMDRMSession* This);
7849void __RPC_STUB IBDA_DRIWMDRMSession_GetHMSAssociationData_Stub(
7850    IRpcStubBuffer* This,
7851    IRpcChannelBuffer* pRpcChannelBuffer,
7852    PRPC_MESSAGE pRpcMessage,
7853    DWORD* pdwStubPhase);
7854HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_GetLastCardeaError_Proxy(
7855    IBDA_DRIWMDRMSession* This,
7856    DWORD *pdwError);
7857void __RPC_STUB IBDA_DRIWMDRMSession_GetLastCardeaError_Stub(
7858    IRpcStubBuffer* This,
7859    IRpcChannelBuffer* pRpcChannelBuffer,
7860    PRPC_MESSAGE pRpcMessage,
7861    DWORD* pdwStubPhase);
7862
7863#endif  /* __IBDA_DRIWMDRMSession_INTERFACE_DEFINED__ */
7864
7865/*****************************************************************************
7866 * IBDA_MUX interface
7867 */
7868#ifndef __IBDA_MUX_INTERFACE_DEFINED__
7869#define __IBDA_MUX_INTERFACE_DEFINED__
7870
7871DEFINE_GUID(IID_IBDA_MUX, 0x942aafec, 0x4c05, 0x4c74, 0xb8,0xeb, 0x87,0x06,0xc2,0xa4,0x94,0x3f);
7872#if defined(__cplusplus) && !defined(CINTERFACE)
7873MIDL_INTERFACE("942aafec-4c05-4c74-b8eb-8706c2a4943f")
7874IBDA_MUX : public IUnknown
7875{
7876    virtual HRESULT STDMETHODCALLTYPE SetPidList(
7877        ULONG ulPidListCount,
7878        BDA_MUX_PIDLISTITEM *pbPidListBuffer) = 0;
7879
7880    virtual HRESULT STDMETHODCALLTYPE GetPidList(
7881        ULONG *pulPidListCount,
7882        BDA_MUX_PIDLISTITEM *pbPidListBuffer) = 0;
7883
7884};
7885#ifdef __CRT_UUID_DECL
7886__CRT_UUID_DECL(IBDA_MUX, 0x942aafec, 0x4c05, 0x4c74, 0xb8,0xeb, 0x87,0x06,0xc2,0xa4,0x94,0x3f)
7887#endif
7888#else
7889typedef struct IBDA_MUXVtbl {
7890    BEGIN_INTERFACE
7891
7892    /*** IUnknown methods ***/
7893    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7894        IBDA_MUX* This,
7895        REFIID riid,
7896        void **ppvObject);
7897
7898    ULONG (STDMETHODCALLTYPE *AddRef)(
7899        IBDA_MUX* This);
7900
7901    ULONG (STDMETHODCALLTYPE *Release)(
7902        IBDA_MUX* This);
7903
7904    /*** IBDA_MUX methods ***/
7905    HRESULT (STDMETHODCALLTYPE *SetPidList)(
7906        IBDA_MUX* This,
7907        ULONG ulPidListCount,
7908        BDA_MUX_PIDLISTITEM *pbPidListBuffer);
7909
7910    HRESULT (STDMETHODCALLTYPE *GetPidList)(
7911        IBDA_MUX* This,
7912        ULONG *pulPidListCount,
7913        BDA_MUX_PIDLISTITEM *pbPidListBuffer);
7914
7915    END_INTERFACE
7916} IBDA_MUXVtbl;
7917interface IBDA_MUX {
7918    CONST_VTBL IBDA_MUXVtbl* lpVtbl;
7919};
7920
7921#ifdef COBJMACROS
7922#ifndef WIDL_C_INLINE_WRAPPERS
7923/*** IUnknown methods ***/
7924#define IBDA_MUX_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7925#define IBDA_MUX_AddRef(This) (This)->lpVtbl->AddRef(This)
7926#define IBDA_MUX_Release(This) (This)->lpVtbl->Release(This)
7927/*** IBDA_MUX methods ***/
7928#define IBDA_MUX_SetPidList(This,ulPidListCount,pbPidListBuffer) (This)->lpVtbl->SetPidList(This,ulPidListCount,pbPidListBuffer)
7929#define IBDA_MUX_GetPidList(This,pulPidListCount,pbPidListBuffer) (This)->lpVtbl->GetPidList(This,pulPidListCount,pbPidListBuffer)
7930#else
7931/*** IUnknown methods ***/
7932static FORCEINLINE HRESULT IBDA_MUX_QueryInterface(IBDA_MUX* This,REFIID riid,void **ppvObject) {
7933    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7934}
7935static FORCEINLINE ULONG IBDA_MUX_AddRef(IBDA_MUX* This) {
7936    return This->lpVtbl->AddRef(This);
7937}
7938static FORCEINLINE ULONG IBDA_MUX_Release(IBDA_MUX* This) {
7939    return This->lpVtbl->Release(This);
7940}
7941/*** IBDA_MUX methods ***/
7942static FORCEINLINE HRESULT IBDA_MUX_SetPidList(IBDA_MUX* This,ULONG ulPidListCount,BDA_MUX_PIDLISTITEM *pbPidListBuffer) {
7943    return This->lpVtbl->SetPidList(This,ulPidListCount,pbPidListBuffer);
7944}
7945static FORCEINLINE HRESULT IBDA_MUX_GetPidList(IBDA_MUX* This,ULONG *pulPidListCount,BDA_MUX_PIDLISTITEM *pbPidListBuffer) {
7946    return This->lpVtbl->GetPidList(This,pulPidListCount,pbPidListBuffer);
7947}
7948#endif
7949#endif
7950
7951#endif
7952
7953HRESULT STDMETHODCALLTYPE IBDA_MUX_SetPidList_Proxy(
7954    IBDA_MUX* This,
7955    ULONG ulPidListCount,
7956    BDA_MUX_PIDLISTITEM *pbPidListBuffer);
7957void __RPC_STUB IBDA_MUX_SetPidList_Stub(
7958    IRpcStubBuffer* This,
7959    IRpcChannelBuffer* pRpcChannelBuffer,
7960    PRPC_MESSAGE pRpcMessage,
7961    DWORD* pdwStubPhase);
7962HRESULT STDMETHODCALLTYPE IBDA_MUX_GetPidList_Proxy(
7963    IBDA_MUX* This,
7964    ULONG *pulPidListCount,
7965    BDA_MUX_PIDLISTITEM *pbPidListBuffer);
7966void __RPC_STUB IBDA_MUX_GetPidList_Stub(
7967    IRpcStubBuffer* This,
7968    IRpcChannelBuffer* pRpcChannelBuffer,
7969    PRPC_MESSAGE pRpcMessage,
7970    DWORD* pdwStubPhase);
7971
7972#endif  /* __IBDA_MUX_INTERFACE_DEFINED__ */
7973
7974/*****************************************************************************
7975 * IBDA_TransportStreamSelector interface
7976 */
7977#ifndef __IBDA_TransportStreamSelector_INTERFACE_DEFINED__
7978#define __IBDA_TransportStreamSelector_INTERFACE_DEFINED__
7979
7980DEFINE_GUID(IID_IBDA_TransportStreamSelector, 0x1dcfafe9, 0xb45e, 0x41b3, 0xbb,0x2a, 0x56,0x1e,0xb1,0x29,0xae,0x98);
7981#if defined(__cplusplus) && !defined(CINTERFACE)
7982MIDL_INTERFACE("1dcfafe9-b45e-41b3-bb2a-561eb129ae98")
7983IBDA_TransportStreamSelector : public IUnknown
7984{
7985    virtual HRESULT STDMETHODCALLTYPE SetTSID(
7986        USHORT usTSID) = 0;
7987
7988    virtual HRESULT STDMETHODCALLTYPE GetTSInformation(
7989        ULONG *pulTSInformationBufferLen,
7990        BYTE *pbTSInformationBuffer) = 0;
7991
7992};
7993#ifdef __CRT_UUID_DECL
7994__CRT_UUID_DECL(IBDA_TransportStreamSelector, 0x1dcfafe9, 0xb45e, 0x41b3, 0xbb,0x2a, 0x56,0x1e,0xb1,0x29,0xae,0x98)
7995#endif
7996#else
7997typedef struct IBDA_TransportStreamSelectorVtbl {
7998    BEGIN_INTERFACE
7999
8000    /*** IUnknown methods ***/
8001    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8002        IBDA_TransportStreamSelector* This,
8003        REFIID riid,
8004        void **ppvObject);
8005
8006    ULONG (STDMETHODCALLTYPE *AddRef)(
8007        IBDA_TransportStreamSelector* This);
8008
8009    ULONG (STDMETHODCALLTYPE *Release)(
8010        IBDA_TransportStreamSelector* This);
8011
8012    /*** IBDA_TransportStreamSelector methods ***/
8013    HRESULT (STDMETHODCALLTYPE *SetTSID)(
8014        IBDA_TransportStreamSelector* This,
8015        USHORT usTSID);
8016
8017    HRESULT (STDMETHODCALLTYPE *GetTSInformation)(
8018        IBDA_TransportStreamSelector* This,
8019        ULONG *pulTSInformationBufferLen,
8020        BYTE *pbTSInformationBuffer);
8021
8022    END_INTERFACE
8023} IBDA_TransportStreamSelectorVtbl;
8024interface IBDA_TransportStreamSelector {
8025    CONST_VTBL IBDA_TransportStreamSelectorVtbl* lpVtbl;
8026};
8027
8028#ifdef COBJMACROS
8029#ifndef WIDL_C_INLINE_WRAPPERS
8030/*** IUnknown methods ***/
8031#define IBDA_TransportStreamSelector_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8032#define IBDA_TransportStreamSelector_AddRef(This) (This)->lpVtbl->AddRef(This)
8033#define IBDA_TransportStreamSelector_Release(This) (This)->lpVtbl->Release(This)
8034/*** IBDA_TransportStreamSelector methods ***/
8035#define IBDA_TransportStreamSelector_SetTSID(This,usTSID) (This)->lpVtbl->SetTSID(This,usTSID)
8036#define IBDA_TransportStreamSelector_GetTSInformation(This,pulTSInformationBufferLen,pbTSInformationBuffer) (This)->lpVtbl->GetTSInformation(This,pulTSInformationBufferLen,pbTSInformationBuffer)
8037#else
8038/*** IUnknown methods ***/
8039static FORCEINLINE HRESULT IBDA_TransportStreamSelector_QueryInterface(IBDA_TransportStreamSelector* This,REFIID riid,void **ppvObject) {
8040    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8041}
8042static FORCEINLINE ULONG IBDA_TransportStreamSelector_AddRef(IBDA_TransportStreamSelector* This) {
8043    return This->lpVtbl->AddRef(This);
8044}
8045static FORCEINLINE ULONG IBDA_TransportStreamSelector_Release(IBDA_TransportStreamSelector* This) {
8046    return This->lpVtbl->Release(This);
8047}
8048/*** IBDA_TransportStreamSelector methods ***/
8049static FORCEINLINE HRESULT IBDA_TransportStreamSelector_SetTSID(IBDA_TransportStreamSelector* This,USHORT usTSID) {
8050    return This->lpVtbl->SetTSID(This,usTSID);
8051}
8052static FORCEINLINE HRESULT IBDA_TransportStreamSelector_GetTSInformation(IBDA_TransportStreamSelector* This,ULONG *pulTSInformationBufferLen,BYTE *pbTSInformationBuffer) {
8053    return This->lpVtbl->GetTSInformation(This,pulTSInformationBufferLen,pbTSInformationBuffer);
8054}
8055#endif
8056#endif
8057
8058#endif
8059
8060HRESULT STDMETHODCALLTYPE IBDA_TransportStreamSelector_SetTSID_Proxy(
8061    IBDA_TransportStreamSelector* This,
8062    USHORT usTSID);
8063void __RPC_STUB IBDA_TransportStreamSelector_SetTSID_Stub(
8064    IRpcStubBuffer* This,
8065    IRpcChannelBuffer* pRpcChannelBuffer,
8066    PRPC_MESSAGE pRpcMessage,
8067    DWORD* pdwStubPhase);
8068HRESULT STDMETHODCALLTYPE IBDA_TransportStreamSelector_GetTSInformation_Proxy(
8069    IBDA_TransportStreamSelector* This,
8070    ULONG *pulTSInformationBufferLen,
8071    BYTE *pbTSInformationBuffer);
8072void __RPC_STUB IBDA_TransportStreamSelector_GetTSInformation_Stub(
8073    IRpcStubBuffer* This,
8074    IRpcChannelBuffer* pRpcChannelBuffer,
8075    PRPC_MESSAGE pRpcMessage,
8076    DWORD* pdwStubPhase);
8077
8078#endif  /* __IBDA_TransportStreamSelector_INTERFACE_DEFINED__ */
8079
8080/*****************************************************************************
8081 * IBDA_UserActivityService interface
8082 */
8083#ifndef __IBDA_UserActivityService_INTERFACE_DEFINED__
8084#define __IBDA_UserActivityService_INTERFACE_DEFINED__
8085
8086DEFINE_GUID(IID_IBDA_UserActivityService, 0x53b14189, 0xe478, 0x4b7a, 0xa1,0xff, 0x50,0x6d,0xb4,0xb9,0x9d,0xfe);
8087#if defined(__cplusplus) && !defined(CINTERFACE)
8088MIDL_INTERFACE("53b14189-e478-4b7a-a1ff-506db4b99dfe")
8089IBDA_UserActivityService : public IUnknown
8090{
8091    virtual HRESULT STDMETHODCALLTYPE SetCurrentTunerUseReason(
8092        DWORD dwUseReason) = 0;
8093
8094    virtual HRESULT STDMETHODCALLTYPE GetUserActivityInterval(
8095        DWORD *pdwActivityInterval) = 0;
8096
8097    virtual HRESULT STDMETHODCALLTYPE UserActivityDetected(
8098        ) = 0;
8099
8100};
8101#ifdef __CRT_UUID_DECL
8102__CRT_UUID_DECL(IBDA_UserActivityService, 0x53b14189, 0xe478, 0x4b7a, 0xa1,0xff, 0x50,0x6d,0xb4,0xb9,0x9d,0xfe)
8103#endif
8104#else
8105typedef struct IBDA_UserActivityServiceVtbl {
8106    BEGIN_INTERFACE
8107
8108    /*** IUnknown methods ***/
8109    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8110        IBDA_UserActivityService* This,
8111        REFIID riid,
8112        void **ppvObject);
8113
8114    ULONG (STDMETHODCALLTYPE *AddRef)(
8115        IBDA_UserActivityService* This);
8116
8117    ULONG (STDMETHODCALLTYPE *Release)(
8118        IBDA_UserActivityService* This);
8119
8120    /*** IBDA_UserActivityService methods ***/
8121    HRESULT (STDMETHODCALLTYPE *SetCurrentTunerUseReason)(
8122        IBDA_UserActivityService* This,
8123        DWORD dwUseReason);
8124
8125    HRESULT (STDMETHODCALLTYPE *GetUserActivityInterval)(
8126        IBDA_UserActivityService* This,
8127        DWORD *pdwActivityInterval);
8128
8129    HRESULT (STDMETHODCALLTYPE *UserActivityDetected)(
8130        IBDA_UserActivityService* This);
8131
8132    END_INTERFACE
8133} IBDA_UserActivityServiceVtbl;
8134interface IBDA_UserActivityService {
8135    CONST_VTBL IBDA_UserActivityServiceVtbl* lpVtbl;
8136};
8137
8138#ifdef COBJMACROS
8139#ifndef WIDL_C_INLINE_WRAPPERS
8140/*** IUnknown methods ***/
8141#define IBDA_UserActivityService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8142#define IBDA_UserActivityService_AddRef(This) (This)->lpVtbl->AddRef(This)
8143#define IBDA_UserActivityService_Release(This) (This)->lpVtbl->Release(This)
8144/*** IBDA_UserActivityService methods ***/
8145#define IBDA_UserActivityService_SetCurrentTunerUseReason(This,dwUseReason) (This)->lpVtbl->SetCurrentTunerUseReason(This,dwUseReason)
8146#define IBDA_UserActivityService_GetUserActivityInterval(This,pdwActivityInterval) (This)->lpVtbl->GetUserActivityInterval(This,pdwActivityInterval)
8147#define IBDA_UserActivityService_UserActivityDetected(This) (This)->lpVtbl->UserActivityDetected(This)
8148#else
8149/*** IUnknown methods ***/
8150static FORCEINLINE HRESULT IBDA_UserActivityService_QueryInterface(IBDA_UserActivityService* This,REFIID riid,void **ppvObject) {
8151    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8152}
8153static FORCEINLINE ULONG IBDA_UserActivityService_AddRef(IBDA_UserActivityService* This) {
8154    return This->lpVtbl->AddRef(This);
8155}
8156static FORCEINLINE ULONG IBDA_UserActivityService_Release(IBDA_UserActivityService* This) {
8157    return This->lpVtbl->Release(This);
8158}
8159/*** IBDA_UserActivityService methods ***/
8160static FORCEINLINE HRESULT IBDA_UserActivityService_SetCurrentTunerUseReason(IBDA_UserActivityService* This,DWORD dwUseReason) {
8161    return This->lpVtbl->SetCurrentTunerUseReason(This,dwUseReason);
8162}
8163static FORCEINLINE HRESULT IBDA_UserActivityService_GetUserActivityInterval(IBDA_UserActivityService* This,DWORD *pdwActivityInterval) {
8164    return This->lpVtbl->GetUserActivityInterval(This,pdwActivityInterval);
8165}
8166static FORCEINLINE HRESULT IBDA_UserActivityService_UserActivityDetected(IBDA_UserActivityService* This) {
8167    return This->lpVtbl->UserActivityDetected(This);
8168}
8169#endif
8170#endif
8171
8172#endif
8173
8174HRESULT STDMETHODCALLTYPE IBDA_UserActivityService_SetCurrentTunerUseReason_Proxy(
8175    IBDA_UserActivityService* This,
8176    DWORD dwUseReason);
8177void __RPC_STUB IBDA_UserActivityService_SetCurrentTunerUseReason_Stub(
8178    IRpcStubBuffer* This,
8179    IRpcChannelBuffer* pRpcChannelBuffer,
8180    PRPC_MESSAGE pRpcMessage,
8181    DWORD* pdwStubPhase);
8182HRESULT STDMETHODCALLTYPE IBDA_UserActivityService_GetUserActivityInterval_Proxy(
8183    IBDA_UserActivityService* This,
8184    DWORD *pdwActivityInterval);
8185void __RPC_STUB IBDA_UserActivityService_GetUserActivityInterval_Stub(
8186    IRpcStubBuffer* This,
8187    IRpcChannelBuffer* pRpcChannelBuffer,
8188    PRPC_MESSAGE pRpcMessage,
8189    DWORD* pdwStubPhase);
8190HRESULT STDMETHODCALLTYPE IBDA_UserActivityService_UserActivityDetected_Proxy(
8191    IBDA_UserActivityService* This);
8192void __RPC_STUB IBDA_UserActivityService_UserActivityDetected_Stub(
8193    IRpcStubBuffer* This,
8194    IRpcChannelBuffer* pRpcChannelBuffer,
8195    PRPC_MESSAGE pRpcMessage,
8196    DWORD* pdwStubPhase);
8197
8198#endif  /* __IBDA_UserActivityService_INTERFACE_DEFINED__ */
8199
8200#define SID_BDA_EasMessage __uuidof (IBDA_EasMessage)
8201#define SID_BDA_TransportStreamInfo __uuidof (IBDA_TransportStreamInfo)
8202#define SID_BDA_ConditionalAccess __uuidof (IBDA_ConditionalAccess)
8203#define SID_BDA_DiagnosticProperties __uuidof (IBDA_DiagnosticProperties)
8204#define SID_BDA_DRM __uuidof (IBDA_DRM)
8205#define SID_BDA_NameValueService __uuidof (IBDA_NameValueService)
8206#define SID_BDA_ConditionalAccessEx __uuidof (IBDA_ConditionalAccessEx)
8207#define SID_BDA_ISDBConditionalAccess __uuidof (IBDA_ISDBConditionalAccess)
8208#define SID_BDA_EventingService __uuidof (IBDA_EventingService)
8209#define SID_BDA_AUX __uuidof (IBDA_AUX)
8210#define SID_BDA_Encoder __uuidof (IBDA_Encoder)
8211#define SID_BDA_FDC __uuidof (IBDA_FDC
8212#define SID_BDA_GuideDataDeliveryService  __uuidof (IBDA_GuideDataDeliveryService)
8213#define SID_BDA_DRMService __uuidof (IBDA_DRMService)
8214#define SID_BDA_WMDRMSession __uuidof (IBDA_WMDRMSession)
8215#define SID_BDA_WMDRMTuner __uuidof (IBDA_WMDRMTuner)
8216#define SID_BDA_DRIDRMService __uuidof (IBDA_DRIDRMService)
8217#define SID_BDA_DRIWMDRMSession __uuidof (IBDA_DRIWMDRMSession)
8218#define SID_BDA_MUX __uuidof (IBDA_MUX)
8219#define SID_BDA_TransportStreamSelector __uuidof (IBDA_TransportStreamSelector)
8220#define SID_BDA_UserActivityService __uuidof (IBDA_UserActivityService)
8221
8222DEFINE_GUID(CLSID_PBDA_Encoder_DATA_TYPE, 0x728fd6bc, 0x5546, 0x4716, 0xb1, 0x03, 0xf8, 0x99, 0xf5, 0xa1, 0xfa, 0x68);
8223DEFINE_GUID(CLSID_PBDA_FDC_DATA_TYPE, 0xe7dbf9a0, 0x22ab, 0x4047, 0x8e, 0x67, 0xef, 0x9a, 0xd5, 0x4, 0xe7, 0x29);
8224DEFINE_GUID(CLSID_PBDA_GDDS_DATA_TYPE, 0xC80C0DF3, 0x6052, 0x4c16, 0x9F, 0x56, 0xC4, 0x4C, 0x21, 0xF7, 0x3C, 0x45);
8225DEFINE_GUID(PBDA_AUX_CONNECTOR_TYPE_SVideo, 0xa0e905f4,0x24c9,0x4a54, 0xb7, 0x61, 0x21, 0x33, 0x55, 0xef, 0xc1, 0x3A);
8226DEFINE_GUID(PBDA_AUX_CONNECTOR_TYPE_Composite, 0xf6298b4c,0xc725,0x4d42, 0x84, 0x9b, 0x41, 0x0b, 0xbb, 0x14, 0xea, 0x62);
8227DEFINE_GUID(CLSID_PBDA_AUX_DATA_TYPE, 0xfd456373, 0x3323, 0x4090, 0xad, 0xca, 0x8e, 0xd4, 0x5f, 0x55, 0xcf, 0x10);
8228#endif
8229/* Begin additional prototypes for all interfaces */
8230
8231ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
8232unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
8233unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
8234void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
8235
8236/* End additional prototypes */
8237
8238#ifdef __cplusplus
8239}
8240#endif
8241
8242#endif /* __bdaiface_h__ */
8243