Home | History | Annotate | Download | only in include
      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__
     22 typedef interface IBDA_NetworkProvider IBDA_NetworkProvider;
     23 #endif
     24 
     25 #ifndef __IBDA_EthernetFilter_FWD_DEFINED__
     26 #define __IBDA_EthernetFilter_FWD_DEFINED__
     27 typedef interface IBDA_EthernetFilter IBDA_EthernetFilter;
     28 #endif
     29 
     30 #ifndef __IBDA_IPV4Filter_FWD_DEFINED__
     31 #define __IBDA_IPV4Filter_FWD_DEFINED__
     32 typedef interface IBDA_IPV4Filter IBDA_IPV4Filter;
     33 #endif
     34 
     35 #ifndef __IBDA_IPV6Filter_FWD_DEFINED__
     36 #define __IBDA_IPV6Filter_FWD_DEFINED__
     37 typedef interface IBDA_IPV6Filter IBDA_IPV6Filter;
     38 #endif
     39 
     40 #ifndef __IBDA_DeviceControl_FWD_DEFINED__
     41 #define __IBDA_DeviceControl_FWD_DEFINED__
     42 typedef interface IBDA_DeviceControl IBDA_DeviceControl;
     43 #endif
     44 
     45 #ifndef __IBDA_PinControl_FWD_DEFINED__
     46 #define __IBDA_PinControl_FWD_DEFINED__
     47 typedef interface IBDA_PinControl IBDA_PinControl;
     48 #endif
     49 
     50 #ifndef __IBDA_SignalProperties_FWD_DEFINED__
     51 #define __IBDA_SignalProperties_FWD_DEFINED__
     52 typedef interface IBDA_SignalProperties IBDA_SignalProperties;
     53 #endif
     54 
     55 #ifndef __IBDA_SignalStatistics_FWD_DEFINED__
     56 #define __IBDA_SignalStatistics_FWD_DEFINED__
     57 typedef interface IBDA_SignalStatistics IBDA_SignalStatistics;
     58 #endif
     59 
     60 #ifndef __IBDA_Topology_FWD_DEFINED__
     61 #define __IBDA_Topology_FWD_DEFINED__
     62 typedef interface IBDA_Topology IBDA_Topology;
     63 #endif
     64 
     65 #ifndef __IBDA_VoidTransform_FWD_DEFINED__
     66 #define __IBDA_VoidTransform_FWD_DEFINED__
     67 typedef interface IBDA_VoidTransform IBDA_VoidTransform;
     68 #endif
     69 
     70 #ifndef __IBDA_NullTransform_FWD_DEFINED__
     71 #define __IBDA_NullTransform_FWD_DEFINED__
     72 typedef interface IBDA_NullTransform IBDA_NullTransform;
     73 #endif
     74 
     75 #ifndef __IBDA_FrequencyFilter_FWD_DEFINED__
     76 #define __IBDA_FrequencyFilter_FWD_DEFINED__
     77 typedef interface IBDA_FrequencyFilter IBDA_FrequencyFilter;
     78 #endif
     79 
     80 #ifndef __IBDA_LNBInfo_FWD_DEFINED__
     81 #define __IBDA_LNBInfo_FWD_DEFINED__
     82 typedef interface IBDA_LNBInfo IBDA_LNBInfo;
     83 #endif
     84 
     85 #ifndef __IBDA_DiseqCommand_FWD_DEFINED__
     86 #define __IBDA_DiseqCommand_FWD_DEFINED__
     87 typedef interface IBDA_DiseqCommand IBDA_DiseqCommand;
     88 #endif
     89 
     90 #ifndef __IBDA_AutoDemodulate_FWD_DEFINED__
     91 #define __IBDA_AutoDemodulate_FWD_DEFINED__
     92 typedef interface IBDA_AutoDemodulate IBDA_AutoDemodulate;
     93 #endif
     94 
     95 #ifndef __IBDA_AutoDemodulateEx_FWD_DEFINED__
     96 #define __IBDA_AutoDemodulateEx_FWD_DEFINED__
     97 typedef interface IBDA_AutoDemodulateEx IBDA_AutoDemodulateEx;
     98 #endif
     99 
    100 #ifndef __IBDA_DigitalDemodulator_FWD_DEFINED__
    101 #define __IBDA_DigitalDemodulator_FWD_DEFINED__
    102 typedef interface IBDA_DigitalDemodulator IBDA_DigitalDemodulator;
    103 #endif
    104 
    105 #ifndef __IBDA_DigitalDemodulator2_FWD_DEFINED__
    106 #define __IBDA_DigitalDemodulator2_FWD_DEFINED__
    107 typedef interface IBDA_DigitalDemodulator2 IBDA_DigitalDemodulator2;
    108 #endif
    109 
    110 #ifndef __IBDA_DigitalDemodulator3_FWD_DEFINED__
    111 #define __IBDA_DigitalDemodulator3_FWD_DEFINED__
    112 typedef interface IBDA_DigitalDemodulator3 IBDA_DigitalDemodulator3;
    113 #endif
    114 
    115 #ifndef __ICCSubStreamFiltering_FWD_DEFINED__
    116 #define __ICCSubStreamFiltering_FWD_DEFINED__
    117 typedef interface ICCSubStreamFiltering ICCSubStreamFiltering;
    118 #endif
    119 
    120 #ifndef __IBDA_IPSinkControl_FWD_DEFINED__
    121 #define __IBDA_IPSinkControl_FWD_DEFINED__
    122 typedef interface IBDA_IPSinkControl IBDA_IPSinkControl;
    123 #endif
    124 
    125 #ifndef __IBDA_IPSinkInfo_FWD_DEFINED__
    126 #define __IBDA_IPSinkInfo_FWD_DEFINED__
    127 typedef interface IBDA_IPSinkInfo IBDA_IPSinkInfo;
    128 #endif
    129 
    130 #ifndef __IEnumPIDMap_FWD_DEFINED__
    131 #define __IEnumPIDMap_FWD_DEFINED__
    132 typedef interface IEnumPIDMap IEnumPIDMap;
    133 #endif
    134 
    135 #ifndef __IMPEG2PIDMap_FWD_DEFINED__
    136 #define __IMPEG2PIDMap_FWD_DEFINED__
    137 typedef interface IMPEG2PIDMap IMPEG2PIDMap;
    138 #endif
    139 
    140 #ifndef __IFrequencyMap_FWD_DEFINED__
    141 #define __IFrequencyMap_FWD_DEFINED__
    142 typedef interface IFrequencyMap IFrequencyMap;
    143 #endif
    144 
    145 #ifndef __IBDA_EasMessage_FWD_DEFINED__
    146 #define __IBDA_EasMessage_FWD_DEFINED__
    147 typedef interface IBDA_EasMessage IBDA_EasMessage;
    148 #endif
    149 
    150 #ifndef __IBDA_TransportStreamInfo_FWD_DEFINED__
    151 #define __IBDA_TransportStreamInfo_FWD_DEFINED__
    152 typedef interface IBDA_TransportStreamInfo IBDA_TransportStreamInfo;
    153 #endif
    154 
    155 #ifndef __IBDA_ConditionalAccess_FWD_DEFINED__
    156 #define __IBDA_ConditionalAccess_FWD_DEFINED__
    157 typedef interface IBDA_ConditionalAccess IBDA_ConditionalAccess;
    158 #endif
    159 
    160 #ifndef __IBDA_DiagnosticProperties_FWD_DEFINED__
    161 #define __IBDA_DiagnosticProperties_FWD_DEFINED__
    162 typedef interface IBDA_DiagnosticProperties IBDA_DiagnosticProperties;
    163 #endif
    164 
    165 #ifndef __IBDA_DRM_FWD_DEFINED__
    166 #define __IBDA_DRM_FWD_DEFINED__
    167 typedef interface IBDA_DRM IBDA_DRM;
    168 #endif
    169 
    170 #ifndef __IBDA_NameValueService_FWD_DEFINED__
    171 #define __IBDA_NameValueService_FWD_DEFINED__
    172 typedef interface IBDA_NameValueService IBDA_NameValueService;
    173 #endif
    174 
    175 #ifndef __IBDA_ConditionalAccessEx_FWD_DEFINED__
    176 #define __IBDA_ConditionalAccessEx_FWD_DEFINED__
    177 typedef interface IBDA_ConditionalAccessEx IBDA_ConditionalAccessEx;
    178 #endif
    179 
    180 #ifndef __IBDA_ISDBConditionalAccess_FWD_DEFINED__
    181 #define __IBDA_ISDBConditionalAccess_FWD_DEFINED__
    182 typedef interface IBDA_ISDBConditionalAccess IBDA_ISDBConditionalAccess;
    183 #endif
    184 
    185 #ifndef __IBDA_EventingService_FWD_DEFINED__
    186 #define __IBDA_EventingService_FWD_DEFINED__
    187 typedef interface IBDA_EventingService IBDA_EventingService;
    188 #endif
    189 
    190 #ifndef __IBDA_AUX_FWD_DEFINED__
    191 #define __IBDA_AUX_FWD_DEFINED__
    192 typedef interface IBDA_AUX IBDA_AUX;
    193 #endif
    194 
    195 #ifndef __IBDA_Encoder_FWD_DEFINED__
    196 #define __IBDA_Encoder_FWD_DEFINED__
    197 typedef interface IBDA_Encoder IBDA_Encoder;
    198 #endif
    199 
    200 #ifndef __IBDA_FDC_FWD_DEFINED__
    201 #define __IBDA_FDC_FWD_DEFINED__
    202 typedef interface IBDA_FDC IBDA_FDC;
    203 #endif
    204 
    205 #ifndef __IBDA_GuideDataDeliveryService_FWD_DEFINED__
    206 #define __IBDA_GuideDataDeliveryService_FWD_DEFINED__
    207 typedef interface IBDA_GuideDataDeliveryService IBDA_GuideDataDeliveryService;
    208 #endif
    209 
    210 #ifndef __IBDA_DRMService_FWD_DEFINED__
    211 #define __IBDA_DRMService_FWD_DEFINED__
    212 typedef interface IBDA_DRMService IBDA_DRMService;
    213 #endif
    214 
    215 #ifndef __IBDA_WMDRMSession_FWD_DEFINED__
    216 #define __IBDA_WMDRMSession_FWD_DEFINED__
    217 typedef interface IBDA_WMDRMSession IBDA_WMDRMSession;
    218 #endif
    219 
    220 #ifndef __IBDA_WMDRMTuner_FWD_DEFINED__
    221 #define __IBDA_WMDRMTuner_FWD_DEFINED__
    222 typedef interface IBDA_WMDRMTuner IBDA_WMDRMTuner;
    223 #endif
    224 
    225 #ifndef __IBDA_DRIDRMService_FWD_DEFINED__
    226 #define __IBDA_DRIDRMService_FWD_DEFINED__
    227 typedef interface IBDA_DRIDRMService IBDA_DRIDRMService;
    228 #endif
    229 
    230 #ifndef __IBDA_DRIWMDRMSession_FWD_DEFINED__
    231 #define __IBDA_DRIWMDRMSession_FWD_DEFINED__
    232 typedef interface IBDA_DRIWMDRMSession IBDA_DRIWMDRMSession;
    233 #endif
    234 
    235 #ifndef __IBDA_MUX_FWD_DEFINED__
    236 #define __IBDA_MUX_FWD_DEFINED__
    237 typedef interface IBDA_MUX IBDA_MUX;
    238 #endif
    239 
    240 #ifndef __IBDA_TransportStreamSelector_FWD_DEFINED__
    241 #define __IBDA_TransportStreamSelector_FWD_DEFINED__
    242 typedef interface IBDA_TransportStreamSelector IBDA_TransportStreamSelector;
    243 #endif
    244 
    245 #ifndef __IBDA_UserActivityService_FWD_DEFINED__
    246 #define __IBDA_UserActivityService_FWD_DEFINED__
    247 typedef 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
    257 extern "C" {
    258 #endif
    259 
    260 #include <winapifamily.h>
    261 
    262 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
    263 typedef enum SmartCardStatusType {
    264     CardInserted = 0,
    265     CardRemoved = 1,
    266     CardError = 2,
    267     CardDataChanged = 3,
    268     CardFirmwareUpgrade = 4
    269 } SmartCardStatusType;
    270 typedef enum SmartCardAssociationType {
    271     NotAssociated = 0,
    272     Associated = 1,
    273     AssociationUnknown = 2
    274 } SmartCardAssociationType;
    275 typedef enum LocationCodeSchemeType {
    276     SCTE_18 = 0
    277 } LocationCodeSchemeType;
    278 typedef enum EntitlementType {
    279     Entitled = 0,
    280     NotEntitled = 1,
    281     TechnicalFailure = 2
    282 } EntitlementType;
    283 typedef enum UICloseReasonType {
    284     NotReady = 0,
    285     UserClosed = 1,
    286     SystemClosed = 2,
    287     DeviceClosed = 3,
    288     ErrorClosed = 4
    289 } UICloseReasonType;
    290 typedef 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;
    302 typedef struct EALocationCodeType {
    303     LocationCodeSchemeType LocationCodeScheme;
    304     BYTE state_code;
    305     BYTE county_subdivision;
    306     WORD county_code;
    307 } EALocationCodeType;
    308 typedef 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
    327 typedef 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 
    338 DEFINE_GUID(IID_IBDA_NetworkProvider, 0xfd501041, 0x8ebe, 0x11ce, 0x81,0x83, 0x00,0xaa,0x00,0x57,0x7d,0xa2);
    339 #if defined(__cplusplus) && !defined(CINTERFACE)
    340 MIDL_INTERFACE("fd501041-8ebe-11ce-8183-00aa00577da2")
    341 IBDA_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
    370 typedef 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;
    417 interface 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 ***/
    437 static FORCEINLINE HRESULT IBDA_NetworkProvider_QueryInterface(IBDA_NetworkProvider* This,REFIID riid,void **ppvObject) {
    438     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    439 }
    440 static FORCEINLINE ULONG IBDA_NetworkProvider_AddRef(IBDA_NetworkProvider* This) {
    441     return This->lpVtbl->AddRef(This);
    442 }
    443 static FORCEINLINE ULONG IBDA_NetworkProvider_Release(IBDA_NetworkProvider* This) {
    444     return This->lpVtbl->Release(This);
    445 }
    446 /*** IBDA_NetworkProvider methods ***/
    447 static FORCEINLINE HRESULT IBDA_NetworkProvider_PutSignalSource(IBDA_NetworkProvider* This,ULONG ulSignalSource) {
    448     return This->lpVtbl->PutSignalSource(This,ulSignalSource);
    449 }
    450 static FORCEINLINE HRESULT IBDA_NetworkProvider_GetSignalSource(IBDA_NetworkProvider* This,ULONG *pulSignalSource) {
    451     return This->lpVtbl->GetSignalSource(This,pulSignalSource);
    452 }
    453 static FORCEINLINE HRESULT IBDA_NetworkProvider_GetNetworkType(IBDA_NetworkProvider* This,GUID *pguidNetworkType) {
    454     return This->lpVtbl->GetNetworkType(This,pguidNetworkType);
    455 }
    456 static FORCEINLINE HRESULT IBDA_NetworkProvider_PutTuningSpace(IBDA_NetworkProvider* This,REFGUID guidTuningSpace) {
    457     return This->lpVtbl->PutTuningSpace(This,guidTuningSpace);
    458 }
    459 static FORCEINLINE HRESULT IBDA_NetworkProvider_GetTuningSpace(IBDA_NetworkProvider* This,GUID *pguidTuingSpace) {
    460     return This->lpVtbl->GetTuningSpace(This,pguidTuingSpace);
    461 }
    462 static FORCEINLINE HRESULT IBDA_NetworkProvider_RegisterDeviceFilter(IBDA_NetworkProvider* This,IUnknown *pUnkFilterControl,ULONG *ppvRegisitrationContext) {
    463     return This->lpVtbl->RegisterDeviceFilter(This,pUnkFilterControl,ppvRegisitrationContext);
    464 }
    465 static 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 
    473 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_PutSignalSource_Proxy(
    474     IBDA_NetworkProvider* This,
    475     ULONG ulSignalSource);
    476 void __RPC_STUB IBDA_NetworkProvider_PutSignalSource_Stub(
    477     IRpcStubBuffer* This,
    478     IRpcChannelBuffer* pRpcChannelBuffer,
    479     PRPC_MESSAGE pRpcMessage,
    480     DWORD* pdwStubPhase);
    481 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_GetSignalSource_Proxy(
    482     IBDA_NetworkProvider* This,
    483     ULONG *pulSignalSource);
    484 void __RPC_STUB IBDA_NetworkProvider_GetSignalSource_Stub(
    485     IRpcStubBuffer* This,
    486     IRpcChannelBuffer* pRpcChannelBuffer,
    487     PRPC_MESSAGE pRpcMessage,
    488     DWORD* pdwStubPhase);
    489 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_GetNetworkType_Proxy(
    490     IBDA_NetworkProvider* This,
    491     GUID *pguidNetworkType);
    492 void __RPC_STUB IBDA_NetworkProvider_GetNetworkType_Stub(
    493     IRpcStubBuffer* This,
    494     IRpcChannelBuffer* pRpcChannelBuffer,
    495     PRPC_MESSAGE pRpcMessage,
    496     DWORD* pdwStubPhase);
    497 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_PutTuningSpace_Proxy(
    498     IBDA_NetworkProvider* This,
    499     REFGUID guidTuningSpace);
    500 void __RPC_STUB IBDA_NetworkProvider_PutTuningSpace_Stub(
    501     IRpcStubBuffer* This,
    502     IRpcChannelBuffer* pRpcChannelBuffer,
    503     PRPC_MESSAGE pRpcMessage,
    504     DWORD* pdwStubPhase);
    505 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_GetTuningSpace_Proxy(
    506     IBDA_NetworkProvider* This,
    507     GUID *pguidTuingSpace);
    508 void __RPC_STUB IBDA_NetworkProvider_GetTuningSpace_Stub(
    509     IRpcStubBuffer* This,
    510     IRpcChannelBuffer* pRpcChannelBuffer,
    511     PRPC_MESSAGE pRpcMessage,
    512     DWORD* pdwStubPhase);
    513 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_RegisterDeviceFilter_Proxy(
    514     IBDA_NetworkProvider* This,
    515     IUnknown *pUnkFilterControl,
    516     ULONG *ppvRegisitrationContext);
    517 void __RPC_STUB IBDA_NetworkProvider_RegisterDeviceFilter_Stub(
    518     IRpcStubBuffer* This,
    519     IRpcChannelBuffer* pRpcChannelBuffer,
    520     PRPC_MESSAGE pRpcMessage,
    521     DWORD* pdwStubPhase);
    522 HRESULT STDMETHODCALLTYPE IBDA_NetworkProvider_UnRegisterDeviceFilter_Proxy(
    523     IBDA_NetworkProvider* This,
    524     ULONG pvRegistrationContext);
    525 void __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 
    539 DEFINE_GUID(IID_IBDA_EthernetFilter, 0x71985f43, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
    540 #if defined(__cplusplus) && !defined(CINTERFACE)
    541 MIDL_INTERFACE("71985f43-1ca1-11d3-9cc8-00c04f7971e0")
    542 IBDA_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
    566 typedef 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;
    606 interface 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 ***/
    624 static FORCEINLINE HRESULT IBDA_EthernetFilter_QueryInterface(IBDA_EthernetFilter* This,REFIID riid,void **ppvObject) {
    625     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    626 }
    627 static FORCEINLINE ULONG IBDA_EthernetFilter_AddRef(IBDA_EthernetFilter* This) {
    628     return This->lpVtbl->AddRef(This);
    629 }
    630 static FORCEINLINE ULONG IBDA_EthernetFilter_Release(IBDA_EthernetFilter* This) {
    631     return This->lpVtbl->Release(This);
    632 }
    633 /*** IBDA_EthernetFilter methods ***/
    634 static FORCEINLINE HRESULT IBDA_EthernetFilter_GetMulticastListSize(IBDA_EthernetFilter* This,ULONG *pulcbAddresses) {
    635     return This->lpVtbl->GetMulticastListSize(This,pulcbAddresses);
    636 }
    637 static FORCEINLINE HRESULT IBDA_EthernetFilter_PutMulticastList(IBDA_EthernetFilter* This,ULONG ulcbAddresses,BYTE pAddressList[]) {
    638     return This->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList);
    639 }
    640 static FORCEINLINE HRESULT IBDA_EthernetFilter_GetMulticastList(IBDA_EthernetFilter* This,ULONG *pulcbAddresses,BYTE pAddressList[]) {
    641     return This->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList);
    642 }
    643 static FORCEINLINE HRESULT IBDA_EthernetFilter_PutMulticastMode(IBDA_EthernetFilter* This,ULONG ulModeMask) {
    644     return This->lpVtbl->PutMulticastMode(This,ulModeMask);
    645 }
    646 static 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 
    654 HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_GetMulticastListSize_Proxy(
    655     IBDA_EthernetFilter* This,
    656     ULONG *pulcbAddresses);
    657 void __RPC_STUB IBDA_EthernetFilter_GetMulticastListSize_Stub(
    658     IRpcStubBuffer* This,
    659     IRpcChannelBuffer* pRpcChannelBuffer,
    660     PRPC_MESSAGE pRpcMessage,
    661     DWORD* pdwStubPhase);
    662 HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_PutMulticastList_Proxy(
    663     IBDA_EthernetFilter* This,
    664     ULONG ulcbAddresses,
    665     BYTE pAddressList[]);
    666 void __RPC_STUB IBDA_EthernetFilter_PutMulticastList_Stub(
    667     IRpcStubBuffer* This,
    668     IRpcChannelBuffer* pRpcChannelBuffer,
    669     PRPC_MESSAGE pRpcMessage,
    670     DWORD* pdwStubPhase);
    671 HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_GetMulticastList_Proxy(
    672     IBDA_EthernetFilter* This,
    673     ULONG *pulcbAddresses,
    674     BYTE pAddressList[]);
    675 void __RPC_STUB IBDA_EthernetFilter_GetMulticastList_Stub(
    676     IRpcStubBuffer* This,
    677     IRpcChannelBuffer* pRpcChannelBuffer,
    678     PRPC_MESSAGE pRpcMessage,
    679     DWORD* pdwStubPhase);
    680 HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_PutMulticastMode_Proxy(
    681     IBDA_EthernetFilter* This,
    682     ULONG ulModeMask);
    683 void __RPC_STUB IBDA_EthernetFilter_PutMulticastMode_Stub(
    684     IRpcStubBuffer* This,
    685     IRpcChannelBuffer* pRpcChannelBuffer,
    686     PRPC_MESSAGE pRpcMessage,
    687     DWORD* pdwStubPhase);
    688 HRESULT STDMETHODCALLTYPE IBDA_EthernetFilter_GetMulticastMode_Proxy(
    689     IBDA_EthernetFilter* This,
    690     ULONG *pulModeMask);
    691 void __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 
    705 DEFINE_GUID(IID_IBDA_IPV4Filter, 0x71985f44, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
    706 #if defined(__cplusplus) && !defined(CINTERFACE)
    707 MIDL_INTERFACE("71985f44-1ca1-11d3-9cc8-00c04f7971e0")
    708 IBDA_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
    732 typedef 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;
    772 interface 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 ***/
    790 static FORCEINLINE HRESULT IBDA_IPV4Filter_QueryInterface(IBDA_IPV4Filter* This,REFIID riid,void **ppvObject) {
    791     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    792 }
    793 static FORCEINLINE ULONG IBDA_IPV4Filter_AddRef(IBDA_IPV4Filter* This) {
    794     return This->lpVtbl->AddRef(This);
    795 }
    796 static FORCEINLINE ULONG IBDA_IPV4Filter_Release(IBDA_IPV4Filter* This) {
    797     return This->lpVtbl->Release(This);
    798 }
    799 /*** IBDA_IPV4Filter methods ***/
    800 static FORCEINLINE HRESULT IBDA_IPV4Filter_GetMulticastListSize(IBDA_IPV4Filter* This,ULONG *pulcbAddresses) {
    801     return This->lpVtbl->GetMulticastListSize(This,pulcbAddresses);
    802 }
    803 static FORCEINLINE HRESULT IBDA_IPV4Filter_PutMulticastList(IBDA_IPV4Filter* This,ULONG ulcbAddresses,BYTE pAddressList[]) {
    804     return This->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList);
    805 }
    806 static FORCEINLINE HRESULT IBDA_IPV4Filter_GetMulticastList(IBDA_IPV4Filter* This,ULONG *pulcbAddresses,BYTE pAddressList[]) {
    807     return This->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList);
    808 }
    809 static FORCEINLINE HRESULT IBDA_IPV4Filter_PutMulticastMode(IBDA_IPV4Filter* This,ULONG ulModeMask) {
    810     return This->lpVtbl->PutMulticastMode(This,ulModeMask);
    811 }
    812 static 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 
    820 HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_GetMulticastListSize_Proxy(
    821     IBDA_IPV4Filter* This,
    822     ULONG *pulcbAddresses);
    823 void __RPC_STUB IBDA_IPV4Filter_GetMulticastListSize_Stub(
    824     IRpcStubBuffer* This,
    825     IRpcChannelBuffer* pRpcChannelBuffer,
    826     PRPC_MESSAGE pRpcMessage,
    827     DWORD* pdwStubPhase);
    828 HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_PutMulticastList_Proxy(
    829     IBDA_IPV4Filter* This,
    830     ULONG ulcbAddresses,
    831     BYTE pAddressList[]);
    832 void __RPC_STUB IBDA_IPV4Filter_PutMulticastList_Stub(
    833     IRpcStubBuffer* This,
    834     IRpcChannelBuffer* pRpcChannelBuffer,
    835     PRPC_MESSAGE pRpcMessage,
    836     DWORD* pdwStubPhase);
    837 HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_GetMulticastList_Proxy(
    838     IBDA_IPV4Filter* This,
    839     ULONG *pulcbAddresses,
    840     BYTE pAddressList[]);
    841 void __RPC_STUB IBDA_IPV4Filter_GetMulticastList_Stub(
    842     IRpcStubBuffer* This,
    843     IRpcChannelBuffer* pRpcChannelBuffer,
    844     PRPC_MESSAGE pRpcMessage,
    845     DWORD* pdwStubPhase);
    846 HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_PutMulticastMode_Proxy(
    847     IBDA_IPV4Filter* This,
    848     ULONG ulModeMask);
    849 void __RPC_STUB IBDA_IPV4Filter_PutMulticastMode_Stub(
    850     IRpcStubBuffer* This,
    851     IRpcChannelBuffer* pRpcChannelBuffer,
    852     PRPC_MESSAGE pRpcMessage,
    853     DWORD* pdwStubPhase);
    854 HRESULT STDMETHODCALLTYPE IBDA_IPV4Filter_GetMulticastMode_Proxy(
    855     IBDA_IPV4Filter* This,
    856     ULONG *pulModeMask);
    857 void __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 
    871 DEFINE_GUID(IID_IBDA_IPV6Filter, 0xe1785a74, 0x2a23, 0x4fb3, 0x92,0x45, 0xa8,0xf8,0x80,0x17,0xef,0x33);
    872 #if defined(__cplusplus) && !defined(CINTERFACE)
    873 MIDL_INTERFACE("e1785a74-2a23-4fb3-9245-a8f88017ef33")
    874 IBDA_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
    898 typedef 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;
    938 interface 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 ***/
    956 static FORCEINLINE HRESULT IBDA_IPV6Filter_QueryInterface(IBDA_IPV6Filter* This,REFIID riid,void **ppvObject) {
    957     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    958 }
    959 static FORCEINLINE ULONG IBDA_IPV6Filter_AddRef(IBDA_IPV6Filter* This) {
    960     return This->lpVtbl->AddRef(This);
    961 }
    962 static FORCEINLINE ULONG IBDA_IPV6Filter_Release(IBDA_IPV6Filter* This) {
    963     return This->lpVtbl->Release(This);
    964 }
    965 /*** IBDA_IPV6Filter methods ***/
    966 static FORCEINLINE HRESULT IBDA_IPV6Filter_GetMulticastListSize(IBDA_IPV6Filter* This,ULONG *pulcbAddresses) {
    967     return This->lpVtbl->GetMulticastListSize(This,pulcbAddresses);
    968 }
    969 static FORCEINLINE HRESULT IBDA_IPV6Filter_PutMulticastList(IBDA_IPV6Filter* This,ULONG ulcbAddresses,BYTE pAddressList[]) {
    970     return This->lpVtbl->PutMulticastList(This,ulcbAddresses,pAddressList);
    971 }
    972 static FORCEINLINE HRESULT IBDA_IPV6Filter_GetMulticastList(IBDA_IPV6Filter* This,ULONG *pulcbAddresses,BYTE pAddressList[]) {
    973     return This->lpVtbl->GetMulticastList(This,pulcbAddresses,pAddressList);
    974 }
    975 static FORCEINLINE HRESULT IBDA_IPV6Filter_PutMulticastMode(IBDA_IPV6Filter* This,ULONG ulModeMask) {
    976     return This->lpVtbl->PutMulticastMode(This,ulModeMask);
    977 }
    978 static 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 
    986 HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_GetMulticastListSize_Proxy(
    987     IBDA_IPV6Filter* This,
    988     ULONG *pulcbAddresses);
    989 void __RPC_STUB IBDA_IPV6Filter_GetMulticastListSize_Stub(
    990     IRpcStubBuffer* This,
    991     IRpcChannelBuffer* pRpcChannelBuffer,
    992     PRPC_MESSAGE pRpcMessage,
    993     DWORD* pdwStubPhase);
    994 HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_PutMulticastList_Proxy(
    995     IBDA_IPV6Filter* This,
    996     ULONG ulcbAddresses,
    997     BYTE pAddressList[]);
    998 void __RPC_STUB IBDA_IPV6Filter_PutMulticastList_Stub(
    999     IRpcStubBuffer* This,
   1000     IRpcChannelBuffer* pRpcChannelBuffer,
   1001     PRPC_MESSAGE pRpcMessage,
   1002     DWORD* pdwStubPhase);
   1003 HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_GetMulticastList_Proxy(
   1004     IBDA_IPV6Filter* This,
   1005     ULONG *pulcbAddresses,
   1006     BYTE pAddressList[]);
   1007 void __RPC_STUB IBDA_IPV6Filter_GetMulticastList_Stub(
   1008     IRpcStubBuffer* This,
   1009     IRpcChannelBuffer* pRpcChannelBuffer,
   1010     PRPC_MESSAGE pRpcMessage,
   1011     DWORD* pdwStubPhase);
   1012 HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_PutMulticastMode_Proxy(
   1013     IBDA_IPV6Filter* This,
   1014     ULONG ulModeMask);
   1015 void __RPC_STUB IBDA_IPV6Filter_PutMulticastMode_Stub(
   1016     IRpcStubBuffer* This,
   1017     IRpcChannelBuffer* pRpcChannelBuffer,
   1018     PRPC_MESSAGE pRpcMessage,
   1019     DWORD* pdwStubPhase);
   1020 HRESULT STDMETHODCALLTYPE IBDA_IPV6Filter_GetMulticastMode_Proxy(
   1021     IBDA_IPV6Filter* This,
   1022     ULONG *pulModeMask);
   1023 void __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 
   1037 DEFINE_GUID(IID_IBDA_DeviceControl, 0xfd0a5af3, 0xb41d, 0x11d2, 0x9c,0x95, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
   1038 #if defined(__cplusplus) && !defined(CINTERFACE)
   1039 MIDL_INTERFACE("fd0a5af3-b41d-11d2-9c95-00c04f7971e0")
   1040 IBDA_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
   1059 typedef 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;
   1090 interface 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 ***/
   1107 static FORCEINLINE HRESULT IBDA_DeviceControl_QueryInterface(IBDA_DeviceControl* This,REFIID riid,void **ppvObject) {
   1108     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1109 }
   1110 static FORCEINLINE ULONG IBDA_DeviceControl_AddRef(IBDA_DeviceControl* This) {
   1111     return This->lpVtbl->AddRef(This);
   1112 }
   1113 static FORCEINLINE ULONG IBDA_DeviceControl_Release(IBDA_DeviceControl* This) {
   1114     return This->lpVtbl->Release(This);
   1115 }
   1116 /*** IBDA_DeviceControl methods ***/
   1117 static FORCEINLINE HRESULT IBDA_DeviceControl_StartChanges(IBDA_DeviceControl* This) {
   1118     return This->lpVtbl->StartChanges(This);
   1119 }
   1120 static FORCEINLINE HRESULT IBDA_DeviceControl_CheckChanges(IBDA_DeviceControl* This) {
   1121     return This->lpVtbl->CheckChanges(This);
   1122 }
   1123 static FORCEINLINE HRESULT IBDA_DeviceControl_CommitChanges(IBDA_DeviceControl* This) {
   1124     return This->lpVtbl->CommitChanges(This);
   1125 }
   1126 static 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 
   1134 HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_StartChanges_Proxy(
   1135     IBDA_DeviceControl* This);
   1136 void __RPC_STUB IBDA_DeviceControl_StartChanges_Stub(
   1137     IRpcStubBuffer* This,
   1138     IRpcChannelBuffer* pRpcChannelBuffer,
   1139     PRPC_MESSAGE pRpcMessage,
   1140     DWORD* pdwStubPhase);
   1141 HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_CheckChanges_Proxy(
   1142     IBDA_DeviceControl* This);
   1143 void __RPC_STUB IBDA_DeviceControl_CheckChanges_Stub(
   1144     IRpcStubBuffer* This,
   1145     IRpcChannelBuffer* pRpcChannelBuffer,
   1146     PRPC_MESSAGE pRpcMessage,
   1147     DWORD* pdwStubPhase);
   1148 HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_CommitChanges_Proxy(
   1149     IBDA_DeviceControl* This);
   1150 void __RPC_STUB IBDA_DeviceControl_CommitChanges_Stub(
   1151     IRpcStubBuffer* This,
   1152     IRpcChannelBuffer* pRpcChannelBuffer,
   1153     PRPC_MESSAGE pRpcMessage,
   1154     DWORD* pdwStubPhase);
   1155 HRESULT STDMETHODCALLTYPE IBDA_DeviceControl_GetChangeState_Proxy(
   1156     IBDA_DeviceControl* This,
   1157     ULONG *pState);
   1158 void __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 
   1172 DEFINE_GUID(IID_IBDA_PinControl, 0x0ded49d5, 0xa8b7, 0x4d5d, 0x97,0xa1, 0x12,0xb0,0xc1,0x95,0x87,0x4d);
   1173 #if defined(__cplusplus) && !defined(CINTERFACE)
   1174 MIDL_INTERFACE("0ded49d5-a8b7-4d5d-97a1-12b0c195874d")
   1175 IBDA_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
   1191 typedef 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;
   1221 interface 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 ***/
   1237 static FORCEINLINE HRESULT IBDA_PinControl_QueryInterface(IBDA_PinControl* This,REFIID riid,void **ppvObject) {
   1238     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1239 }
   1240 static FORCEINLINE ULONG IBDA_PinControl_AddRef(IBDA_PinControl* This) {
   1241     return This->lpVtbl->AddRef(This);
   1242 }
   1243 static FORCEINLINE ULONG IBDA_PinControl_Release(IBDA_PinControl* This) {
   1244     return This->lpVtbl->Release(This);
   1245 }
   1246 /*** IBDA_PinControl methods ***/
   1247 static FORCEINLINE HRESULT IBDA_PinControl_GetPinID(IBDA_PinControl* This,ULONG *pulPinID) {
   1248     return This->lpVtbl->GetPinID(This,pulPinID);
   1249 }
   1250 static FORCEINLINE HRESULT IBDA_PinControl_GetPinType(IBDA_PinControl* This,ULONG *pulPinType) {
   1251     return This->lpVtbl->GetPinType(This,pulPinType);
   1252 }
   1253 static 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 
   1261 HRESULT STDMETHODCALLTYPE IBDA_PinControl_GetPinID_Proxy(
   1262     IBDA_PinControl* This,
   1263     ULONG *pulPinID);
   1264 void __RPC_STUB IBDA_PinControl_GetPinID_Stub(
   1265     IRpcStubBuffer* This,
   1266     IRpcChannelBuffer* pRpcChannelBuffer,
   1267     PRPC_MESSAGE pRpcMessage,
   1268     DWORD* pdwStubPhase);
   1269 HRESULT STDMETHODCALLTYPE IBDA_PinControl_GetPinType_Proxy(
   1270     IBDA_PinControl* This,
   1271     ULONG *pulPinType);
   1272 void __RPC_STUB IBDA_PinControl_GetPinType_Stub(
   1273     IRpcStubBuffer* This,
   1274     IRpcChannelBuffer* pRpcChannelBuffer,
   1275     PRPC_MESSAGE pRpcMessage,
   1276     DWORD* pdwStubPhase);
   1277 HRESULT STDMETHODCALLTYPE IBDA_PinControl_RegistrationContext_Proxy(
   1278     IBDA_PinControl* This,
   1279     ULONG *pulRegistrationCtx);
   1280 void __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 
   1294 DEFINE_GUID(IID_IBDA_SignalProperties, 0xd2f1644b, 0xb409, 0x11d2, 0xbc,0x69, 0x00,0xa0,0xc9,0xee,0x9e,0x16);
   1295 #if defined(__cplusplus) && !defined(CINTERFACE)
   1296 MIDL_INTERFACE("d2f1644b-b409-11d2-bc69-00a0c9ee9e16")
   1297 IBDA_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
   1322 typedef 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;
   1364 interface 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 ***/
   1383 static FORCEINLINE HRESULT IBDA_SignalProperties_QueryInterface(IBDA_SignalProperties* This,REFIID riid,void **ppvObject) {
   1384     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1385 }
   1386 static FORCEINLINE ULONG IBDA_SignalProperties_AddRef(IBDA_SignalProperties* This) {
   1387     return This->lpVtbl->AddRef(This);
   1388 }
   1389 static FORCEINLINE ULONG IBDA_SignalProperties_Release(IBDA_SignalProperties* This) {
   1390     return This->lpVtbl->Release(This);
   1391 }
   1392 /*** IBDA_SignalProperties methods ***/
   1393 static FORCEINLINE HRESULT IBDA_SignalProperties_PutNetworkType(IBDA_SignalProperties* This,REFGUID guidNetworkType) {
   1394     return This->lpVtbl->PutNetworkType(This,guidNetworkType);
   1395 }
   1396 static FORCEINLINE HRESULT IBDA_SignalProperties_GetNetworkType(IBDA_SignalProperties* This,GUID *pguidNetworkType) {
   1397     return This->lpVtbl->GetNetworkType(This,pguidNetworkType);
   1398 }
   1399 static FORCEINLINE HRESULT IBDA_SignalProperties_PutSignalSource(IBDA_SignalProperties* This,ULONG ulSignalSource) {
   1400     return This->lpVtbl->PutSignalSource(This,ulSignalSource);
   1401 }
   1402 static FORCEINLINE HRESULT IBDA_SignalProperties_GetSignalSource(IBDA_SignalProperties* This,ULONG *pulSignalSource) {
   1403     return This->lpVtbl->GetSignalSource(This,pulSignalSource);
   1404 }
   1405 static FORCEINLINE HRESULT IBDA_SignalProperties_PutTuningSpace(IBDA_SignalProperties* This,REFGUID guidTuningSpace) {
   1406     return This->lpVtbl->PutTuningSpace(This,guidTuningSpace);
   1407 }
   1408 static 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 
   1416 HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_PutNetworkType_Proxy(
   1417     IBDA_SignalProperties* This,
   1418     REFGUID guidNetworkType);
   1419 void __RPC_STUB IBDA_SignalProperties_PutNetworkType_Stub(
   1420     IRpcStubBuffer* This,
   1421     IRpcChannelBuffer* pRpcChannelBuffer,
   1422     PRPC_MESSAGE pRpcMessage,
   1423     DWORD* pdwStubPhase);
   1424 HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_GetNetworkType_Proxy(
   1425     IBDA_SignalProperties* This,
   1426     GUID *pguidNetworkType);
   1427 void __RPC_STUB IBDA_SignalProperties_GetNetworkType_Stub(
   1428     IRpcStubBuffer* This,
   1429     IRpcChannelBuffer* pRpcChannelBuffer,
   1430     PRPC_MESSAGE pRpcMessage,
   1431     DWORD* pdwStubPhase);
   1432 HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_PutSignalSource_Proxy(
   1433     IBDA_SignalProperties* This,
   1434     ULONG ulSignalSource);
   1435 void __RPC_STUB IBDA_SignalProperties_PutSignalSource_Stub(
   1436     IRpcStubBuffer* This,
   1437     IRpcChannelBuffer* pRpcChannelBuffer,
   1438     PRPC_MESSAGE pRpcMessage,
   1439     DWORD* pdwStubPhase);
   1440 HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_GetSignalSource_Proxy(
   1441     IBDA_SignalProperties* This,
   1442     ULONG *pulSignalSource);
   1443 void __RPC_STUB IBDA_SignalProperties_GetSignalSource_Stub(
   1444     IRpcStubBuffer* This,
   1445     IRpcChannelBuffer* pRpcChannelBuffer,
   1446     PRPC_MESSAGE pRpcMessage,
   1447     DWORD* pdwStubPhase);
   1448 HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_PutTuningSpace_Proxy(
   1449     IBDA_SignalProperties* This,
   1450     REFGUID guidTuningSpace);
   1451 void __RPC_STUB IBDA_SignalProperties_PutTuningSpace_Stub(
   1452     IRpcStubBuffer* This,
   1453     IRpcChannelBuffer* pRpcChannelBuffer,
   1454     PRPC_MESSAGE pRpcMessage,
   1455     DWORD* pdwStubPhase);
   1456 HRESULT STDMETHODCALLTYPE IBDA_SignalProperties_GetTuningSpace_Proxy(
   1457     IBDA_SignalProperties* This,
   1458     GUID *pguidTuingSpace);
   1459 void __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 
   1473 DEFINE_GUID(IID_IBDA_SignalStatistics, 0x1347d106, 0xcf3a, 0x428a, 0xa5,0xcb, 0xac,0x0d,0x9a,0x2a,0x43,0x38);
   1474 #if defined(__cplusplus) && !defined(CINTERFACE)
   1475 MIDL_INTERFACE("1347d106-cf3a-428a-a5cb-ac0d9a2a4338")
   1476 IBDA_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
   1513 typedef 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;
   1571 interface 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 ***/
   1594 static FORCEINLINE HRESULT IBDA_SignalStatistics_QueryInterface(IBDA_SignalStatistics* This,REFIID riid,void **ppvObject) {
   1595     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1596 }
   1597 static FORCEINLINE ULONG IBDA_SignalStatistics_AddRef(IBDA_SignalStatistics* This) {
   1598     return This->lpVtbl->AddRef(This);
   1599 }
   1600 static FORCEINLINE ULONG IBDA_SignalStatistics_Release(IBDA_SignalStatistics* This) {
   1601     return This->lpVtbl->Release(This);
   1602 }
   1603 /*** IBDA_SignalStatistics methods ***/
   1604 static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalStrength(IBDA_SignalStatistics* This,LONG lDbStrength) {
   1605     return This->lpVtbl->put_SignalStrength(This,lDbStrength);
   1606 }
   1607 static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalStrength(IBDA_SignalStatistics* This,LONG *plDbStrength) {
   1608     return This->lpVtbl->get_SignalStrength(This,plDbStrength);
   1609 }
   1610 static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalQuality(IBDA_SignalStatistics* This,LONG lPercentQuality) {
   1611     return This->lpVtbl->put_SignalQuality(This,lPercentQuality);
   1612 }
   1613 static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalQuality(IBDA_SignalStatistics* This,LONG *plPercentQuality) {
   1614     return This->lpVtbl->get_SignalQuality(This,plPercentQuality);
   1615 }
   1616 static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalPresent(IBDA_SignalStatistics* This,BOOLEAN fPresent) {
   1617     return This->lpVtbl->put_SignalPresent(This,fPresent);
   1618 }
   1619 static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalPresent(IBDA_SignalStatistics* This,BOOLEAN *pfPresent) {
   1620     return This->lpVtbl->get_SignalPresent(This,pfPresent);
   1621 }
   1622 static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SignalLocked(IBDA_SignalStatistics* This,BOOLEAN fLocked) {
   1623     return This->lpVtbl->put_SignalLocked(This,fLocked);
   1624 }
   1625 static FORCEINLINE HRESULT IBDA_SignalStatistics_get_SignalLocked(IBDA_SignalStatistics* This,BOOLEAN *pfLocked) {
   1626     return This->lpVtbl->get_SignalLocked(This,pfLocked);
   1627 }
   1628 static FORCEINLINE HRESULT IBDA_SignalStatistics_put_SampleTime(IBDA_SignalStatistics* This,LONG lmsSampleTime) {
   1629     return This->lpVtbl->put_SampleTime(This,lmsSampleTime);
   1630 }
   1631 static 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 
   1639 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalStrength_Proxy(
   1640     IBDA_SignalStatistics* This,
   1641     LONG lDbStrength);
   1642 void __RPC_STUB IBDA_SignalStatistics_put_SignalStrength_Stub(
   1643     IRpcStubBuffer* This,
   1644     IRpcChannelBuffer* pRpcChannelBuffer,
   1645     PRPC_MESSAGE pRpcMessage,
   1646     DWORD* pdwStubPhase);
   1647 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalStrength_Proxy(
   1648     IBDA_SignalStatistics* This,
   1649     LONG *plDbStrength);
   1650 void __RPC_STUB IBDA_SignalStatistics_get_SignalStrength_Stub(
   1651     IRpcStubBuffer* This,
   1652     IRpcChannelBuffer* pRpcChannelBuffer,
   1653     PRPC_MESSAGE pRpcMessage,
   1654     DWORD* pdwStubPhase);
   1655 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalQuality_Proxy(
   1656     IBDA_SignalStatistics* This,
   1657     LONG lPercentQuality);
   1658 void __RPC_STUB IBDA_SignalStatistics_put_SignalQuality_Stub(
   1659     IRpcStubBuffer* This,
   1660     IRpcChannelBuffer* pRpcChannelBuffer,
   1661     PRPC_MESSAGE pRpcMessage,
   1662     DWORD* pdwStubPhase);
   1663 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalQuality_Proxy(
   1664     IBDA_SignalStatistics* This,
   1665     LONG *plPercentQuality);
   1666 void __RPC_STUB IBDA_SignalStatistics_get_SignalQuality_Stub(
   1667     IRpcStubBuffer* This,
   1668     IRpcChannelBuffer* pRpcChannelBuffer,
   1669     PRPC_MESSAGE pRpcMessage,
   1670     DWORD* pdwStubPhase);
   1671 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalPresent_Proxy(
   1672     IBDA_SignalStatistics* This,
   1673     BOOLEAN fPresent);
   1674 void __RPC_STUB IBDA_SignalStatistics_put_SignalPresent_Stub(
   1675     IRpcStubBuffer* This,
   1676     IRpcChannelBuffer* pRpcChannelBuffer,
   1677     PRPC_MESSAGE pRpcMessage,
   1678     DWORD* pdwStubPhase);
   1679 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalPresent_Proxy(
   1680     IBDA_SignalStatistics* This,
   1681     BOOLEAN *pfPresent);
   1682 void __RPC_STUB IBDA_SignalStatistics_get_SignalPresent_Stub(
   1683     IRpcStubBuffer* This,
   1684     IRpcChannelBuffer* pRpcChannelBuffer,
   1685     PRPC_MESSAGE pRpcMessage,
   1686     DWORD* pdwStubPhase);
   1687 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SignalLocked_Proxy(
   1688     IBDA_SignalStatistics* This,
   1689     BOOLEAN fLocked);
   1690 void __RPC_STUB IBDA_SignalStatistics_put_SignalLocked_Stub(
   1691     IRpcStubBuffer* This,
   1692     IRpcChannelBuffer* pRpcChannelBuffer,
   1693     PRPC_MESSAGE pRpcMessage,
   1694     DWORD* pdwStubPhase);
   1695 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SignalLocked_Proxy(
   1696     IBDA_SignalStatistics* This,
   1697     BOOLEAN *pfLocked);
   1698 void __RPC_STUB IBDA_SignalStatistics_get_SignalLocked_Stub(
   1699     IRpcStubBuffer* This,
   1700     IRpcChannelBuffer* pRpcChannelBuffer,
   1701     PRPC_MESSAGE pRpcMessage,
   1702     DWORD* pdwStubPhase);
   1703 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_put_SampleTime_Proxy(
   1704     IBDA_SignalStatistics* This,
   1705     LONG lmsSampleTime);
   1706 void __RPC_STUB IBDA_SignalStatistics_put_SampleTime_Stub(
   1707     IRpcStubBuffer* This,
   1708     IRpcChannelBuffer* pRpcChannelBuffer,
   1709     PRPC_MESSAGE pRpcMessage,
   1710     DWORD* pdwStubPhase);
   1711 HRESULT STDMETHODCALLTYPE IBDA_SignalStatistics_get_SampleTime_Proxy(
   1712     IBDA_SignalStatistics* This,
   1713     LONG *plmsSampleTime);
   1714 void __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 
   1728 DEFINE_GUID(IID_IBDA_Topology, 0x79b56888, 0x7fea, 0x4690, 0xb4,0x5d, 0x38,0xfd,0x3c,0x78,0x49,0xbe);
   1729 #if defined(__cplusplus) && !defined(CINTERFACE)
   1730 MIDL_INTERFACE("79b56888-7fea-4690-b45d-38fd3c7849be")
   1731 IBDA_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
   1789 typedef 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;
   1869 interface 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 ***/
   1893 static FORCEINLINE HRESULT IBDA_Topology_QueryInterface(IBDA_Topology* This,REFIID riid,void **ppvObject) {
   1894     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   1895 }
   1896 static FORCEINLINE ULONG IBDA_Topology_AddRef(IBDA_Topology* This) {
   1897     return This->lpVtbl->AddRef(This);
   1898 }
   1899 static FORCEINLINE ULONG IBDA_Topology_Release(IBDA_Topology* This) {
   1900     return This->lpVtbl->Release(This);
   1901 }
   1902 /*** IBDA_Topology methods ***/
   1903 static FORCEINLINE HRESULT IBDA_Topology_GetNodeTypes(IBDA_Topology* This,ULONG *pulcNodeTypes,ULONG ulcNodeTypesMax,ULONG rgulNodeTypes[]) {
   1904     return This->lpVtbl->GetNodeTypes(This,pulcNodeTypes,ulcNodeTypesMax,rgulNodeTypes);
   1905 }
   1906 static 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 }
   1909 static 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 }
   1912 static FORCEINLINE HRESULT IBDA_Topology_GetPinTypes(IBDA_Topology* This,ULONG *pulcPinTypes,ULONG ulcPinTypesMax,ULONG rgulPinTypes[]) {
   1913     return This->lpVtbl->GetPinTypes(This,pulcPinTypes,ulcPinTypesMax,rgulPinTypes);
   1914 }
   1915 static 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 }
   1918 static FORCEINLINE HRESULT IBDA_Topology_CreatePin(IBDA_Topology* This,ULONG ulPinType,ULONG *pulPinId) {
   1919     return This->lpVtbl->CreatePin(This,ulPinType,pulPinId);
   1920 }
   1921 static FORCEINLINE HRESULT IBDA_Topology_DeletePin(IBDA_Topology* This,ULONG ulPinId) {
   1922     return This->lpVtbl->DeletePin(This,ulPinId);
   1923 }
   1924 static FORCEINLINE HRESULT IBDA_Topology_SetMediaType(IBDA_Topology* This,ULONG ulPinId,AM_MEDIA_TYPE *pMediaType) {
   1925     return This->lpVtbl->SetMediaType(This,ulPinId,pMediaType);
   1926 }
   1927 static FORCEINLINE HRESULT IBDA_Topology_SetMedium(IBDA_Topology* This,ULONG ulPinId,REGPINMEDIUM *pMedium) {
   1928     return This->lpVtbl->SetMedium(This,ulPinId,pMedium);
   1929 }
   1930 static FORCEINLINE HRESULT IBDA_Topology_CreateTopology(IBDA_Topology* This,ULONG ulInputPinId,ULONG ulOutputPinId) {
   1931     return This->lpVtbl->CreateTopology(This,ulInputPinId,ulOutputPinId);
   1932 }
   1933 static 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 
   1941 HRESULT STDMETHODCALLTYPE IBDA_Topology_GetNodeTypes_Proxy(
   1942     IBDA_Topology* This,
   1943     ULONG *pulcNodeTypes,
   1944     ULONG ulcNodeTypesMax,
   1945     ULONG rgulNodeTypes[]);
   1946 void __RPC_STUB IBDA_Topology_GetNodeTypes_Stub(
   1947     IRpcStubBuffer* This,
   1948     IRpcChannelBuffer* pRpcChannelBuffer,
   1949     PRPC_MESSAGE pRpcMessage,
   1950     DWORD* pdwStubPhase);
   1951 HRESULT STDMETHODCALLTYPE IBDA_Topology_GetNodeDescriptors_Proxy(
   1952     IBDA_Topology* This,
   1953     ULONG *ulcNodeDescriptors,
   1954     ULONG ulcNodeDescriptorsMax,
   1955     BDANODE_DESCRIPTOR rgNodeDescriptors[]);
   1956 void __RPC_STUB IBDA_Topology_GetNodeDescriptors_Stub(
   1957     IRpcStubBuffer* This,
   1958     IRpcChannelBuffer* pRpcChannelBuffer,
   1959     PRPC_MESSAGE pRpcMessage,
   1960     DWORD* pdwStubPhase);
   1961 HRESULT STDMETHODCALLTYPE IBDA_Topology_GetNodeInterfaces_Proxy(
   1962     IBDA_Topology* This,
   1963     ULONG ulNodeType,
   1964     ULONG *pulcInterfaces,
   1965     ULONG ulcInterfacesMax,
   1966     GUID rgguidInterfaces[]);
   1967 void __RPC_STUB IBDA_Topology_GetNodeInterfaces_Stub(
   1968     IRpcStubBuffer* This,
   1969     IRpcChannelBuffer* pRpcChannelBuffer,
   1970     PRPC_MESSAGE pRpcMessage,
   1971     DWORD* pdwStubPhase);
   1972 HRESULT STDMETHODCALLTYPE IBDA_Topology_GetPinTypes_Proxy(
   1973     IBDA_Topology* This,
   1974     ULONG *pulcPinTypes,
   1975     ULONG ulcPinTypesMax,
   1976     ULONG rgulPinTypes[]);
   1977 void __RPC_STUB IBDA_Topology_GetPinTypes_Stub(
   1978     IRpcStubBuffer* This,
   1979     IRpcChannelBuffer* pRpcChannelBuffer,
   1980     PRPC_MESSAGE pRpcMessage,
   1981     DWORD* pdwStubPhase);
   1982 HRESULT STDMETHODCALLTYPE IBDA_Topology_GetTemplateConnections_Proxy(
   1983     IBDA_Topology* This,
   1984     ULONG *pulcConnections,
   1985     ULONG ulcConnectionsMax,
   1986     BDA_TEMPLATE_CONNECTION rgConnections[]);
   1987 void __RPC_STUB IBDA_Topology_GetTemplateConnections_Stub(
   1988     IRpcStubBuffer* This,
   1989     IRpcChannelBuffer* pRpcChannelBuffer,
   1990     PRPC_MESSAGE pRpcMessage,
   1991     DWORD* pdwStubPhase);
   1992 HRESULT STDMETHODCALLTYPE IBDA_Topology_CreatePin_Proxy(
   1993     IBDA_Topology* This,
   1994     ULONG ulPinType,
   1995     ULONG *pulPinId);
   1996 void __RPC_STUB IBDA_Topology_CreatePin_Stub(
   1997     IRpcStubBuffer* This,
   1998     IRpcChannelBuffer* pRpcChannelBuffer,
   1999     PRPC_MESSAGE pRpcMessage,
   2000     DWORD* pdwStubPhase);
   2001 HRESULT STDMETHODCALLTYPE IBDA_Topology_DeletePin_Proxy(
   2002     IBDA_Topology* This,
   2003     ULONG ulPinId);
   2004 void __RPC_STUB IBDA_Topology_DeletePin_Stub(
   2005     IRpcStubBuffer* This,
   2006     IRpcChannelBuffer* pRpcChannelBuffer,
   2007     PRPC_MESSAGE pRpcMessage,
   2008     DWORD* pdwStubPhase);
   2009 HRESULT STDMETHODCALLTYPE IBDA_Topology_SetMediaType_Proxy(
   2010     IBDA_Topology* This,
   2011     ULONG ulPinId,
   2012     AM_MEDIA_TYPE *pMediaType);
   2013 void __RPC_STUB IBDA_Topology_SetMediaType_Stub(
   2014     IRpcStubBuffer* This,
   2015     IRpcChannelBuffer* pRpcChannelBuffer,
   2016     PRPC_MESSAGE pRpcMessage,
   2017     DWORD* pdwStubPhase);
   2018 HRESULT STDMETHODCALLTYPE IBDA_Topology_SetMedium_Proxy(
   2019     IBDA_Topology* This,
   2020     ULONG ulPinId,
   2021     REGPINMEDIUM *pMedium);
   2022 void __RPC_STUB IBDA_Topology_SetMedium_Stub(
   2023     IRpcStubBuffer* This,
   2024     IRpcChannelBuffer* pRpcChannelBuffer,
   2025     PRPC_MESSAGE pRpcMessage,
   2026     DWORD* pdwStubPhase);
   2027 HRESULT STDMETHODCALLTYPE IBDA_Topology_CreateTopology_Proxy(
   2028     IBDA_Topology* This,
   2029     ULONG ulInputPinId,
   2030     ULONG ulOutputPinId);
   2031 void __RPC_STUB IBDA_Topology_CreateTopology_Stub(
   2032     IRpcStubBuffer* This,
   2033     IRpcChannelBuffer* pRpcChannelBuffer,
   2034     PRPC_MESSAGE pRpcMessage,
   2035     DWORD* pdwStubPhase);
   2036 HRESULT STDMETHODCALLTYPE IBDA_Topology_GetControlNode_Proxy(
   2037     IBDA_Topology* This,
   2038     ULONG ulInputPinId,
   2039     ULONG ulOutputPinId,
   2040     ULONG ulNodeType,
   2041     IUnknown **ppControlNode);
   2042 void __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 
   2056 DEFINE_GUID(IID_IBDA_VoidTransform, 0x71985f46, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
   2057 #if defined(__cplusplus) && !defined(CINTERFACE)
   2058 MIDL_INTERFACE("71985f46-1ca1-11d3-9cc8-00c04f7971e0")
   2059 IBDA_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
   2072 typedef 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;
   2096 interface 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 ***/
   2111 static FORCEINLINE HRESULT IBDA_VoidTransform_QueryInterface(IBDA_VoidTransform* This,REFIID riid,void **ppvObject) {
   2112     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2113 }
   2114 static FORCEINLINE ULONG IBDA_VoidTransform_AddRef(IBDA_VoidTransform* This) {
   2115     return This->lpVtbl->AddRef(This);
   2116 }
   2117 static FORCEINLINE ULONG IBDA_VoidTransform_Release(IBDA_VoidTransform* This) {
   2118     return This->lpVtbl->Release(This);
   2119 }
   2120 /*** IBDA_VoidTransform methods ***/
   2121 static FORCEINLINE HRESULT IBDA_VoidTransform_Start(IBDA_VoidTransform* This) {
   2122     return This->lpVtbl->Start(This);
   2123 }
   2124 static FORCEINLINE HRESULT IBDA_VoidTransform_Stop(IBDA_VoidTransform* This) {
   2125     return This->lpVtbl->Stop(This);
   2126 }
   2127 #endif
   2128 #endif
   2129 
   2130 #endif
   2131 
   2132 HRESULT STDMETHODCALLTYPE IBDA_VoidTransform_Start_Proxy(
   2133     IBDA_VoidTransform* This);
   2134 void __RPC_STUB IBDA_VoidTransform_Start_Stub(
   2135     IRpcStubBuffer* This,
   2136     IRpcChannelBuffer* pRpcChannelBuffer,
   2137     PRPC_MESSAGE pRpcMessage,
   2138     DWORD* pdwStubPhase);
   2139 HRESULT STDMETHODCALLTYPE IBDA_VoidTransform_Stop_Proxy(
   2140     IBDA_VoidTransform* This);
   2141 void __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 
   2155 DEFINE_GUID(IID_IBDA_NullTransform, 0xddf15b0d, 0xbd25, 0x11d2, 0x9c,0xa0, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
   2156 #if defined(__cplusplus) && !defined(CINTERFACE)
   2157 MIDL_INTERFACE("ddf15b0d-bd25-11d2-9ca0-00c04f7971e0")
   2158 IBDA_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
   2171 typedef 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;
   2195 interface 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 ***/
   2210 static FORCEINLINE HRESULT IBDA_NullTransform_QueryInterface(IBDA_NullTransform* This,REFIID riid,void **ppvObject) {
   2211     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2212 }
   2213 static FORCEINLINE ULONG IBDA_NullTransform_AddRef(IBDA_NullTransform* This) {
   2214     return This->lpVtbl->AddRef(This);
   2215 }
   2216 static FORCEINLINE ULONG IBDA_NullTransform_Release(IBDA_NullTransform* This) {
   2217     return This->lpVtbl->Release(This);
   2218 }
   2219 /*** IBDA_NullTransform methods ***/
   2220 static FORCEINLINE HRESULT IBDA_NullTransform_Start(IBDA_NullTransform* This) {
   2221     return This->lpVtbl->Start(This);
   2222 }
   2223 static FORCEINLINE HRESULT IBDA_NullTransform_Stop(IBDA_NullTransform* This) {
   2224     return This->lpVtbl->Stop(This);
   2225 }
   2226 #endif
   2227 #endif
   2228 
   2229 #endif
   2230 
   2231 HRESULT STDMETHODCALLTYPE IBDA_NullTransform_Start_Proxy(
   2232     IBDA_NullTransform* This);
   2233 void __RPC_STUB IBDA_NullTransform_Start_Stub(
   2234     IRpcStubBuffer* This,
   2235     IRpcChannelBuffer* pRpcChannelBuffer,
   2236     PRPC_MESSAGE pRpcMessage,
   2237     DWORD* pdwStubPhase);
   2238 HRESULT STDMETHODCALLTYPE IBDA_NullTransform_Stop_Proxy(
   2239     IBDA_NullTransform* This);
   2240 void __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 
   2254 DEFINE_GUID(IID_IBDA_FrequencyFilter, 0x71985f47, 0x1ca1, 0x11d3, 0x9c,0xc8, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
   2255 #if defined(__cplusplus) && !defined(CINTERFACE)
   2256 MIDL_INTERFACE("71985f47-1ca1-11d3-9cc8-00c04f7971e0")
   2257 IBDA_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
   2300 typedef 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;
   2366 interface 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 ***/
   2391 static FORCEINLINE HRESULT IBDA_FrequencyFilter_QueryInterface(IBDA_FrequencyFilter* This,REFIID riid,void **ppvObject) {
   2392     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2393 }
   2394 static FORCEINLINE ULONG IBDA_FrequencyFilter_AddRef(IBDA_FrequencyFilter* This) {
   2395     return This->lpVtbl->AddRef(This);
   2396 }
   2397 static FORCEINLINE ULONG IBDA_FrequencyFilter_Release(IBDA_FrequencyFilter* This) {
   2398     return This->lpVtbl->Release(This);
   2399 }
   2400 /*** IBDA_FrequencyFilter methods ***/
   2401 static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Autotune(IBDA_FrequencyFilter* This,ULONG ulTransponder) {
   2402     return This->lpVtbl->put_Autotune(This,ulTransponder);
   2403 }
   2404 static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Autotune(IBDA_FrequencyFilter* This,ULONG *pulTransponder) {
   2405     return This->lpVtbl->get_Autotune(This,pulTransponder);
   2406 }
   2407 static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Frequency(IBDA_FrequencyFilter* This,ULONG ulFrequency) {
   2408     return This->lpVtbl->put_Frequency(This,ulFrequency);
   2409 }
   2410 static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Frequency(IBDA_FrequencyFilter* This,ULONG *pulFrequency) {
   2411     return This->lpVtbl->get_Frequency(This,pulFrequency);
   2412 }
   2413 static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Polarity(IBDA_FrequencyFilter* This,Polarisation Polarity) {
   2414     return This->lpVtbl->put_Polarity(This,Polarity);
   2415 }
   2416 static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Polarity(IBDA_FrequencyFilter* This,Polarisation *pPolarity) {
   2417     return This->lpVtbl->get_Polarity(This,pPolarity);
   2418 }
   2419 static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Range(IBDA_FrequencyFilter* This,ULONG ulRange) {
   2420     return This->lpVtbl->put_Range(This,ulRange);
   2421 }
   2422 static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Range(IBDA_FrequencyFilter* This,ULONG *pulRange) {
   2423     return This->lpVtbl->get_Range(This,pulRange);
   2424 }
   2425 static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_Bandwidth(IBDA_FrequencyFilter* This,ULONG ulBandwidth) {
   2426     return This->lpVtbl->put_Bandwidth(This,ulBandwidth);
   2427 }
   2428 static FORCEINLINE HRESULT IBDA_FrequencyFilter_get_Bandwidth(IBDA_FrequencyFilter* This,ULONG *pulBandwidth) {
   2429     return This->lpVtbl->get_Bandwidth(This,pulBandwidth);
   2430 }
   2431 static FORCEINLINE HRESULT IBDA_FrequencyFilter_put_FrequencyMultiplier(IBDA_FrequencyFilter* This,ULONG ulMultiplier) {
   2432     return This->lpVtbl->put_FrequencyMultiplier(This,ulMultiplier);
   2433 }
   2434 static 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 
   2442 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Autotune_Proxy(
   2443     IBDA_FrequencyFilter* This,
   2444     ULONG ulTransponder);
   2445 void __RPC_STUB IBDA_FrequencyFilter_put_Autotune_Stub(
   2446     IRpcStubBuffer* This,
   2447     IRpcChannelBuffer* pRpcChannelBuffer,
   2448     PRPC_MESSAGE pRpcMessage,
   2449     DWORD* pdwStubPhase);
   2450 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Autotune_Proxy(
   2451     IBDA_FrequencyFilter* This,
   2452     ULONG *pulTransponder);
   2453 void __RPC_STUB IBDA_FrequencyFilter_get_Autotune_Stub(
   2454     IRpcStubBuffer* This,
   2455     IRpcChannelBuffer* pRpcChannelBuffer,
   2456     PRPC_MESSAGE pRpcMessage,
   2457     DWORD* pdwStubPhase);
   2458 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Frequency_Proxy(
   2459     IBDA_FrequencyFilter* This,
   2460     ULONG ulFrequency);
   2461 void __RPC_STUB IBDA_FrequencyFilter_put_Frequency_Stub(
   2462     IRpcStubBuffer* This,
   2463     IRpcChannelBuffer* pRpcChannelBuffer,
   2464     PRPC_MESSAGE pRpcMessage,
   2465     DWORD* pdwStubPhase);
   2466 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Frequency_Proxy(
   2467     IBDA_FrequencyFilter* This,
   2468     ULONG *pulFrequency);
   2469 void __RPC_STUB IBDA_FrequencyFilter_get_Frequency_Stub(
   2470     IRpcStubBuffer* This,
   2471     IRpcChannelBuffer* pRpcChannelBuffer,
   2472     PRPC_MESSAGE pRpcMessage,
   2473     DWORD* pdwStubPhase);
   2474 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Polarity_Proxy(
   2475     IBDA_FrequencyFilter* This,
   2476     Polarisation Polarity);
   2477 void __RPC_STUB IBDA_FrequencyFilter_put_Polarity_Stub(
   2478     IRpcStubBuffer* This,
   2479     IRpcChannelBuffer* pRpcChannelBuffer,
   2480     PRPC_MESSAGE pRpcMessage,
   2481     DWORD* pdwStubPhase);
   2482 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Polarity_Proxy(
   2483     IBDA_FrequencyFilter* This,
   2484     Polarisation *pPolarity);
   2485 void __RPC_STUB IBDA_FrequencyFilter_get_Polarity_Stub(
   2486     IRpcStubBuffer* This,
   2487     IRpcChannelBuffer* pRpcChannelBuffer,
   2488     PRPC_MESSAGE pRpcMessage,
   2489     DWORD* pdwStubPhase);
   2490 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Range_Proxy(
   2491     IBDA_FrequencyFilter* This,
   2492     ULONG ulRange);
   2493 void __RPC_STUB IBDA_FrequencyFilter_put_Range_Stub(
   2494     IRpcStubBuffer* This,
   2495     IRpcChannelBuffer* pRpcChannelBuffer,
   2496     PRPC_MESSAGE pRpcMessage,
   2497     DWORD* pdwStubPhase);
   2498 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Range_Proxy(
   2499     IBDA_FrequencyFilter* This,
   2500     ULONG *pulRange);
   2501 void __RPC_STUB IBDA_FrequencyFilter_get_Range_Stub(
   2502     IRpcStubBuffer* This,
   2503     IRpcChannelBuffer* pRpcChannelBuffer,
   2504     PRPC_MESSAGE pRpcMessage,
   2505     DWORD* pdwStubPhase);
   2506 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_Bandwidth_Proxy(
   2507     IBDA_FrequencyFilter* This,
   2508     ULONG ulBandwidth);
   2509 void __RPC_STUB IBDA_FrequencyFilter_put_Bandwidth_Stub(
   2510     IRpcStubBuffer* This,
   2511     IRpcChannelBuffer* pRpcChannelBuffer,
   2512     PRPC_MESSAGE pRpcMessage,
   2513     DWORD* pdwStubPhase);
   2514 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_Bandwidth_Proxy(
   2515     IBDA_FrequencyFilter* This,
   2516     ULONG *pulBandwidth);
   2517 void __RPC_STUB IBDA_FrequencyFilter_get_Bandwidth_Stub(
   2518     IRpcStubBuffer* This,
   2519     IRpcChannelBuffer* pRpcChannelBuffer,
   2520     PRPC_MESSAGE pRpcMessage,
   2521     DWORD* pdwStubPhase);
   2522 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_put_FrequencyMultiplier_Proxy(
   2523     IBDA_FrequencyFilter* This,
   2524     ULONG ulMultiplier);
   2525 void __RPC_STUB IBDA_FrequencyFilter_put_FrequencyMultiplier_Stub(
   2526     IRpcStubBuffer* This,
   2527     IRpcChannelBuffer* pRpcChannelBuffer,
   2528     PRPC_MESSAGE pRpcMessage,
   2529     DWORD* pdwStubPhase);
   2530 HRESULT STDMETHODCALLTYPE IBDA_FrequencyFilter_get_FrequencyMultiplier_Proxy(
   2531     IBDA_FrequencyFilter* This,
   2532     ULONG *pulMultiplier);
   2533 void __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 
   2547 DEFINE_GUID(IID_IBDA_LNBInfo, 0x992cf102, 0x49f9, 0x4719, 0xa6,0x64, 0xc4,0xf2,0x3e,0x24,0x08,0xf4);
   2548 #if defined(__cplusplus) && !defined(CINTERFACE)
   2549 MIDL_INTERFACE("992cf102-49f9-4719-a664-c4f23e2408f4")
   2550 IBDA_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
   2575 typedef 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;
   2617 interface 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 ***/
   2636 static FORCEINLINE HRESULT IBDA_LNBInfo_QueryInterface(IBDA_LNBInfo* This,REFIID riid,void **ppvObject) {
   2637     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2638 }
   2639 static FORCEINLINE ULONG IBDA_LNBInfo_AddRef(IBDA_LNBInfo* This) {
   2640     return This->lpVtbl->AddRef(This);
   2641 }
   2642 static FORCEINLINE ULONG IBDA_LNBInfo_Release(IBDA_LNBInfo* This) {
   2643     return This->lpVtbl->Release(This);
   2644 }
   2645 /*** IBDA_LNBInfo methods ***/
   2646 static FORCEINLINE HRESULT IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand(IBDA_LNBInfo* This,ULONG ulLOFLow) {
   2647     return This->lpVtbl->put_LocalOscilatorFrequencyLowBand(This,ulLOFLow);
   2648 }
   2649 static FORCEINLINE HRESULT IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand(IBDA_LNBInfo* This,ULONG *pulLOFLow) {
   2650     return This->lpVtbl->get_LocalOscilatorFrequencyLowBand(This,pulLOFLow);
   2651 }
   2652 static FORCEINLINE HRESULT IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand(IBDA_LNBInfo* This,ULONG ulLOFHigh) {
   2653     return This->lpVtbl->put_LocalOscilatorFrequencyHighBand(This,ulLOFHigh);
   2654 }
   2655 static FORCEINLINE HRESULT IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand(IBDA_LNBInfo* This,ULONG *pulLOFHigh) {
   2656     return This->lpVtbl->get_LocalOscilatorFrequencyHighBand(This,pulLOFHigh);
   2657 }
   2658 static FORCEINLINE HRESULT IBDA_LNBInfo_put_HighLowSwitchFrequency(IBDA_LNBInfo* This,ULONG ulSwitchFrequency) {
   2659     return This->lpVtbl->put_HighLowSwitchFrequency(This,ulSwitchFrequency);
   2660 }
   2661 static 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 
   2669 HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand_Proxy(
   2670     IBDA_LNBInfo* This,
   2671     ULONG ulLOFLow);
   2672 void __RPC_STUB IBDA_LNBInfo_put_LocalOscilatorFrequencyLowBand_Stub(
   2673     IRpcStubBuffer* This,
   2674     IRpcChannelBuffer* pRpcChannelBuffer,
   2675     PRPC_MESSAGE pRpcMessage,
   2676     DWORD* pdwStubPhase);
   2677 HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand_Proxy(
   2678     IBDA_LNBInfo* This,
   2679     ULONG *pulLOFLow);
   2680 void __RPC_STUB IBDA_LNBInfo_get_LocalOscilatorFrequencyLowBand_Stub(
   2681     IRpcStubBuffer* This,
   2682     IRpcChannelBuffer* pRpcChannelBuffer,
   2683     PRPC_MESSAGE pRpcMessage,
   2684     DWORD* pdwStubPhase);
   2685 HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand_Proxy(
   2686     IBDA_LNBInfo* This,
   2687     ULONG ulLOFHigh);
   2688 void __RPC_STUB IBDA_LNBInfo_put_LocalOscilatorFrequencyHighBand_Stub(
   2689     IRpcStubBuffer* This,
   2690     IRpcChannelBuffer* pRpcChannelBuffer,
   2691     PRPC_MESSAGE pRpcMessage,
   2692     DWORD* pdwStubPhase);
   2693 HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand_Proxy(
   2694     IBDA_LNBInfo* This,
   2695     ULONG *pulLOFHigh);
   2696 void __RPC_STUB IBDA_LNBInfo_get_LocalOscilatorFrequencyHighBand_Stub(
   2697     IRpcStubBuffer* This,
   2698     IRpcChannelBuffer* pRpcChannelBuffer,
   2699     PRPC_MESSAGE pRpcMessage,
   2700     DWORD* pdwStubPhase);
   2701 HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_put_HighLowSwitchFrequency_Proxy(
   2702     IBDA_LNBInfo* This,
   2703     ULONG ulSwitchFrequency);
   2704 void __RPC_STUB IBDA_LNBInfo_put_HighLowSwitchFrequency_Stub(
   2705     IRpcStubBuffer* This,
   2706     IRpcChannelBuffer* pRpcChannelBuffer,
   2707     PRPC_MESSAGE pRpcMessage,
   2708     DWORD* pdwStubPhase);
   2709 HRESULT STDMETHODCALLTYPE IBDA_LNBInfo_get_HighLowSwitchFrequency_Proxy(
   2710     IBDA_LNBInfo* This,
   2711     ULONG *pulSwitchFrequency);
   2712 void __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 
   2726 DEFINE_GUID(IID_IBDA_DiseqCommand, 0xf84e2ab0, 0x3c6b, 0x45e3, 0xa0,0xfc, 0x86,0x69,0xd4,0xb8,0x1f,0x11);
   2727 #if defined(__cplusplus) && !defined(CINTERFACE)
   2728 MIDL_INTERFACE("f84e2ab0-3c6b-45e3-a0fc-8669d4b81f11")
   2729 IBDA_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
   2758 typedef 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;
   2804 interface 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 ***/
   2823 static FORCEINLINE HRESULT IBDA_DiseqCommand_QueryInterface(IBDA_DiseqCommand* This,REFIID riid,void **ppvObject) {
   2824     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2825 }
   2826 static FORCEINLINE ULONG IBDA_DiseqCommand_AddRef(IBDA_DiseqCommand* This) {
   2827     return This->lpVtbl->AddRef(This);
   2828 }
   2829 static FORCEINLINE ULONG IBDA_DiseqCommand_Release(IBDA_DiseqCommand* This) {
   2830     return This->lpVtbl->Release(This);
   2831 }
   2832 /*** IBDA_DiseqCommand methods ***/
   2833 static FORCEINLINE HRESULT IBDA_DiseqCommand_put_EnableDiseqCommands(IBDA_DiseqCommand* This,BOOLEAN bEnable) {
   2834     return This->lpVtbl->put_EnableDiseqCommands(This,bEnable);
   2835 }
   2836 static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqLNBSource(IBDA_DiseqCommand* This,ULONG ulLNBSource) {
   2837     return This->lpVtbl->put_DiseqLNBSource(This,ulLNBSource);
   2838 }
   2839 static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqUseToneBurst(IBDA_DiseqCommand* This,BOOLEAN bUseToneBurst) {
   2840     return This->lpVtbl->put_DiseqUseToneBurst(This,bUseToneBurst);
   2841 }
   2842 static FORCEINLINE HRESULT IBDA_DiseqCommand_put_DiseqRepeats(IBDA_DiseqCommand* This,ULONG ulRepeats) {
   2843     return This->lpVtbl->put_DiseqRepeats(This,ulRepeats);
   2844 }
   2845 static 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 }
   2848 static 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 
   2856 HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_EnableDiseqCommands_Proxy(
   2857     IBDA_DiseqCommand* This,
   2858     BOOLEAN bEnable);
   2859 void __RPC_STUB IBDA_DiseqCommand_put_EnableDiseqCommands_Stub(
   2860     IRpcStubBuffer* This,
   2861     IRpcChannelBuffer* pRpcChannelBuffer,
   2862     PRPC_MESSAGE pRpcMessage,
   2863     DWORD* pdwStubPhase);
   2864 HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqLNBSource_Proxy(
   2865     IBDA_DiseqCommand* This,
   2866     ULONG ulLNBSource);
   2867 void __RPC_STUB IBDA_DiseqCommand_put_DiseqLNBSource_Stub(
   2868     IRpcStubBuffer* This,
   2869     IRpcChannelBuffer* pRpcChannelBuffer,
   2870     PRPC_MESSAGE pRpcMessage,
   2871     DWORD* pdwStubPhase);
   2872 HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqUseToneBurst_Proxy(
   2873     IBDA_DiseqCommand* This,
   2874     BOOLEAN bUseToneBurst);
   2875 void __RPC_STUB IBDA_DiseqCommand_put_DiseqUseToneBurst_Stub(
   2876     IRpcStubBuffer* This,
   2877     IRpcChannelBuffer* pRpcChannelBuffer,
   2878     PRPC_MESSAGE pRpcMessage,
   2879     DWORD* pdwStubPhase);
   2880 HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqRepeats_Proxy(
   2881     IBDA_DiseqCommand* This,
   2882     ULONG ulRepeats);
   2883 void __RPC_STUB IBDA_DiseqCommand_put_DiseqRepeats_Stub(
   2884     IRpcStubBuffer* This,
   2885     IRpcChannelBuffer* pRpcChannelBuffer,
   2886     PRPC_MESSAGE pRpcMessage,
   2887     DWORD* pdwStubPhase);
   2888 HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_put_DiseqSendCommand_Proxy(
   2889     IBDA_DiseqCommand* This,
   2890     ULONG ulRequestId,
   2891     ULONG ulcbCommandLen,
   2892     BYTE *pbCommand);
   2893 void __RPC_STUB IBDA_DiseqCommand_put_DiseqSendCommand_Stub(
   2894     IRpcStubBuffer* This,
   2895     IRpcChannelBuffer* pRpcChannelBuffer,
   2896     PRPC_MESSAGE pRpcMessage,
   2897     DWORD* pdwStubPhase);
   2898 HRESULT STDMETHODCALLTYPE IBDA_DiseqCommand_get_DiseqResponse_Proxy(
   2899     IBDA_DiseqCommand* This,
   2900     ULONG ulRequestId,
   2901     ULONG *pulcbResponseLen,
   2902     BYTE pbResponse[]);
   2903 void __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 
   2917 DEFINE_GUID(IID_IBDA_AutoDemodulate, 0xddf15b12, 0xbd25, 0x11d2, 0x9c,0xa0, 0x00,0xc0,0x4f,0x79,0x71,0xe0);
   2918 #if defined(__cplusplus) && !defined(CINTERFACE)
   2919 MIDL_INTERFACE("ddf15b12-bd25-11d2-9ca0-00c04f7971e0")
   2920 IBDA_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
   2930 typedef 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;
   2951 interface 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 ***/
   2965 static FORCEINLINE HRESULT IBDA_AutoDemodulate_QueryInterface(IBDA_AutoDemodulate* This,REFIID riid,void **ppvObject) {
   2966     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   2967 }
   2968 static FORCEINLINE ULONG IBDA_AutoDemodulate_AddRef(IBDA_AutoDemodulate* This) {
   2969     return This->lpVtbl->AddRef(This);
   2970 }
   2971 static FORCEINLINE ULONG IBDA_AutoDemodulate_Release(IBDA_AutoDemodulate* This) {
   2972     return This->lpVtbl->Release(This);
   2973 }
   2974 /*** IBDA_AutoDemodulate methods ***/
   2975 static 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 
   2983 HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulate_put_AutoDemodulate_Proxy(
   2984     IBDA_AutoDemodulate* This);
   2985 void __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 
   2999 DEFINE_GUID(IID_IBDA_AutoDemodulateEx, 0x34518d13, 0x1182, 0x48e6, 0xb2,0x8f, 0xb2,0x49,0x87,0x78,0x73,0x26);
   3000 #if defined(__cplusplus) && !defined(CINTERFACE)
   3001 MIDL_INTERFACE("34518d13-1182-48e6-b28f-b24987787326")
   3002 IBDA_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
   3022 typedef 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;
   3060 interface 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 ***/
   3078 static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_QueryInterface(IBDA_AutoDemodulateEx* This,REFIID riid,void **ppvObject) {
   3079     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3080 }
   3081 static FORCEINLINE ULONG IBDA_AutoDemodulateEx_AddRef(IBDA_AutoDemodulateEx* This) {
   3082     return This->lpVtbl->AddRef(This);
   3083 }
   3084 static FORCEINLINE ULONG IBDA_AutoDemodulateEx_Release(IBDA_AutoDemodulateEx* This) {
   3085     return This->lpVtbl->Release(This);
   3086 }
   3087 /*** IBDA_AutoDemodulate methods ***/
   3088 static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_put_AutoDemodulate(IBDA_AutoDemodulateEx* This) {
   3089     return This->lpVtbl->put_AutoDemodulate(This);
   3090 }
   3091 /*** IBDA_AutoDemodulateEx methods ***/
   3092 static 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 }
   3095 static FORCEINLINE HRESULT IBDA_AutoDemodulateEx_get_SupportedVideoFormats(IBDA_AutoDemodulateEx* This,ULONG *pulAMTunerModeType,ULONG *pulAnalogVideoStandard) {
   3096     return This->lpVtbl->get_SupportedVideoFormats(This,pulAMTunerModeType,pulAnalogVideoStandard);
   3097 }
   3098 static 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 
   3106 HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulateEx_get_SupportedDeviceNodeTypes_Proxy(
   3107     IBDA_AutoDemodulateEx* This,
   3108     ULONG ulcDeviceNodeTypesMax,
   3109     ULONG *pulcDeviceNodeTypes,
   3110     GUID *pguidDeviceNodeTypes);
   3111 void __RPC_STUB IBDA_AutoDemodulateEx_get_SupportedDeviceNodeTypes_Stub(
   3112     IRpcStubBuffer* This,
   3113     IRpcChannelBuffer* pRpcChannelBuffer,
   3114     PRPC_MESSAGE pRpcMessage,
   3115     DWORD* pdwStubPhase);
   3116 HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulateEx_get_SupportedVideoFormats_Proxy(
   3117     IBDA_AutoDemodulateEx* This,
   3118     ULONG *pulAMTunerModeType,
   3119     ULONG *pulAnalogVideoStandard);
   3120 void __RPC_STUB IBDA_AutoDemodulateEx_get_SupportedVideoFormats_Stub(
   3121     IRpcStubBuffer* This,
   3122     IRpcChannelBuffer* pRpcChannelBuffer,
   3123     PRPC_MESSAGE pRpcMessage,
   3124     DWORD* pdwStubPhase);
   3125 HRESULT STDMETHODCALLTYPE IBDA_AutoDemodulateEx_get_AuxInputCount_Proxy(
   3126     IBDA_AutoDemodulateEx* This,
   3127     ULONG *pulCompositeCount,
   3128     ULONG *pulSvideoCount);
   3129 void __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 
   3143 DEFINE_GUID(IID_IBDA_DigitalDemodulator, 0xef30f379, 0x985b, 0x4d10, 0xb6,0x40, 0xa7,0x9d,0x5e,0x04,0xe1,0xe0);
   3144 #if defined(__cplusplus) && !defined(CINTERFACE)
   3145 MIDL_INTERFACE("ef30f379-985b-4d10-b640-a79d5e04e1e0")
   3146 IBDA_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
   3195 typedef 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;
   3269 interface 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 ***/
   3296 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_QueryInterface(IBDA_DigitalDemodulator* This,REFIID riid,void **ppvObject) {
   3297     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3298 }
   3299 static FORCEINLINE ULONG IBDA_DigitalDemodulator_AddRef(IBDA_DigitalDemodulator* This) {
   3300     return This->lpVtbl->AddRef(This);
   3301 }
   3302 static FORCEINLINE ULONG IBDA_DigitalDemodulator_Release(IBDA_DigitalDemodulator* This) {
   3303     return This->lpVtbl->Release(This);
   3304 }
   3305 /*** IBDA_DigitalDemodulator methods ***/
   3306 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_ModulationType(IBDA_DigitalDemodulator* This,ModulationType *pModulationType) {
   3307     return This->lpVtbl->put_ModulationType(This,pModulationType);
   3308 }
   3309 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_ModulationType(IBDA_DigitalDemodulator* This,ModulationType *pModulationType) {
   3310     return This->lpVtbl->get_ModulationType(This,pModulationType);
   3311 }
   3312 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_InnerFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
   3313     return This->lpVtbl->put_InnerFECMethod(This,pFECMethod);
   3314 }
   3315 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_InnerFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
   3316     return This->lpVtbl->get_InnerFECMethod(This,pFECMethod);
   3317 }
   3318 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_InnerFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
   3319     return This->lpVtbl->put_InnerFECRate(This,pFECRate);
   3320 }
   3321 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_InnerFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
   3322     return This->lpVtbl->get_InnerFECRate(This,pFECRate);
   3323 }
   3324 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_OuterFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
   3325     return This->lpVtbl->put_OuterFECMethod(This,pFECMethod);
   3326 }
   3327 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_OuterFECMethod(IBDA_DigitalDemodulator* This,FECMethod *pFECMethod) {
   3328     return This->lpVtbl->get_OuterFECMethod(This,pFECMethod);
   3329 }
   3330 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_OuterFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
   3331     return This->lpVtbl->put_OuterFECRate(This,pFECRate);
   3332 }
   3333 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_OuterFECRate(IBDA_DigitalDemodulator* This,BinaryConvolutionCodeRate *pFECRate) {
   3334     return This->lpVtbl->get_OuterFECRate(This,pFECRate);
   3335 }
   3336 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_SymbolRate(IBDA_DigitalDemodulator* This,ULONG *pSymbolRate) {
   3337     return This->lpVtbl->put_SymbolRate(This,pSymbolRate);
   3338 }
   3339 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_get_SymbolRate(IBDA_DigitalDemodulator* This,ULONG *pSymbolRate) {
   3340     return This->lpVtbl->get_SymbolRate(This,pSymbolRate);
   3341 }
   3342 static FORCEINLINE HRESULT IBDA_DigitalDemodulator_put_SpectralInversion(IBDA_DigitalDemodulator* This,SpectralInversion *pSpectralInversion) {
   3343     return This->lpVtbl->put_SpectralInversion(This,pSpectralInversion);
   3344 }
   3345 static 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 
   3353 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_ModulationType_Proxy(
   3354     IBDA_DigitalDemodulator* This,
   3355     ModulationType *pModulationType);
   3356 void __RPC_STUB IBDA_DigitalDemodulator_put_ModulationType_Stub(
   3357     IRpcStubBuffer* This,
   3358     IRpcChannelBuffer* pRpcChannelBuffer,
   3359     PRPC_MESSAGE pRpcMessage,
   3360     DWORD* pdwStubPhase);
   3361 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_ModulationType_Proxy(
   3362     IBDA_DigitalDemodulator* This,
   3363     ModulationType *pModulationType);
   3364 void __RPC_STUB IBDA_DigitalDemodulator_get_ModulationType_Stub(
   3365     IRpcStubBuffer* This,
   3366     IRpcChannelBuffer* pRpcChannelBuffer,
   3367     PRPC_MESSAGE pRpcMessage,
   3368     DWORD* pdwStubPhase);
   3369 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_InnerFECMethod_Proxy(
   3370     IBDA_DigitalDemodulator* This,
   3371     FECMethod *pFECMethod);
   3372 void __RPC_STUB IBDA_DigitalDemodulator_put_InnerFECMethod_Stub(
   3373     IRpcStubBuffer* This,
   3374     IRpcChannelBuffer* pRpcChannelBuffer,
   3375     PRPC_MESSAGE pRpcMessage,
   3376     DWORD* pdwStubPhase);
   3377 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_InnerFECMethod_Proxy(
   3378     IBDA_DigitalDemodulator* This,
   3379     FECMethod *pFECMethod);
   3380 void __RPC_STUB IBDA_DigitalDemodulator_get_InnerFECMethod_Stub(
   3381     IRpcStubBuffer* This,
   3382     IRpcChannelBuffer* pRpcChannelBuffer,
   3383     PRPC_MESSAGE pRpcMessage,
   3384     DWORD* pdwStubPhase);
   3385 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_InnerFECRate_Proxy(
   3386     IBDA_DigitalDemodulator* This,
   3387     BinaryConvolutionCodeRate *pFECRate);
   3388 void __RPC_STUB IBDA_DigitalDemodulator_put_InnerFECRate_Stub(
   3389     IRpcStubBuffer* This,
   3390     IRpcChannelBuffer* pRpcChannelBuffer,
   3391     PRPC_MESSAGE pRpcMessage,
   3392     DWORD* pdwStubPhase);
   3393 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_InnerFECRate_Proxy(
   3394     IBDA_DigitalDemodulator* This,
   3395     BinaryConvolutionCodeRate *pFECRate);
   3396 void __RPC_STUB IBDA_DigitalDemodulator_get_InnerFECRate_Stub(
   3397     IRpcStubBuffer* This,
   3398     IRpcChannelBuffer* pRpcChannelBuffer,
   3399     PRPC_MESSAGE pRpcMessage,
   3400     DWORD* pdwStubPhase);
   3401 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_OuterFECMethod_Proxy(
   3402     IBDA_DigitalDemodulator* This,
   3403     FECMethod *pFECMethod);
   3404 void __RPC_STUB IBDA_DigitalDemodulator_put_OuterFECMethod_Stub(
   3405     IRpcStubBuffer* This,
   3406     IRpcChannelBuffer* pRpcChannelBuffer,
   3407     PRPC_MESSAGE pRpcMessage,
   3408     DWORD* pdwStubPhase);
   3409 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_OuterFECMethod_Proxy(
   3410     IBDA_DigitalDemodulator* This,
   3411     FECMethod *pFECMethod);
   3412 void __RPC_STUB IBDA_DigitalDemodulator_get_OuterFECMethod_Stub(
   3413     IRpcStubBuffer* This,
   3414     IRpcChannelBuffer* pRpcChannelBuffer,
   3415     PRPC_MESSAGE pRpcMessage,
   3416     DWORD* pdwStubPhase);
   3417 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_OuterFECRate_Proxy(
   3418     IBDA_DigitalDemodulator* This,
   3419     BinaryConvolutionCodeRate *pFECRate);
   3420 void __RPC_STUB IBDA_DigitalDemodulator_put_OuterFECRate_Stub(
   3421     IRpcStubBuffer* This,
   3422     IRpcChannelBuffer* pRpcChannelBuffer,
   3423     PRPC_MESSAGE pRpcMessage,
   3424     DWORD* pdwStubPhase);
   3425 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_OuterFECRate_Proxy(
   3426     IBDA_DigitalDemodulator* This,
   3427     BinaryConvolutionCodeRate *pFECRate);
   3428 void __RPC_STUB IBDA_DigitalDemodulator_get_OuterFECRate_Stub(
   3429     IRpcStubBuffer* This,
   3430     IRpcChannelBuffer* pRpcChannelBuffer,
   3431     PRPC_MESSAGE pRpcMessage,
   3432     DWORD* pdwStubPhase);
   3433 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_SymbolRate_Proxy(
   3434     IBDA_DigitalDemodulator* This,
   3435     ULONG *pSymbolRate);
   3436 void __RPC_STUB IBDA_DigitalDemodulator_put_SymbolRate_Stub(
   3437     IRpcStubBuffer* This,
   3438     IRpcChannelBuffer* pRpcChannelBuffer,
   3439     PRPC_MESSAGE pRpcMessage,
   3440     DWORD* pdwStubPhase);
   3441 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_SymbolRate_Proxy(
   3442     IBDA_DigitalDemodulator* This,
   3443     ULONG *pSymbolRate);
   3444 void __RPC_STUB IBDA_DigitalDemodulator_get_SymbolRate_Stub(
   3445     IRpcStubBuffer* This,
   3446     IRpcChannelBuffer* pRpcChannelBuffer,
   3447     PRPC_MESSAGE pRpcMessage,
   3448     DWORD* pdwStubPhase);
   3449 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_put_SpectralInversion_Proxy(
   3450     IBDA_DigitalDemodulator* This,
   3451     SpectralInversion *pSpectralInversion);
   3452 void __RPC_STUB IBDA_DigitalDemodulator_put_SpectralInversion_Stub(
   3453     IRpcStubBuffer* This,
   3454     IRpcChannelBuffer* pRpcChannelBuffer,
   3455     PRPC_MESSAGE pRpcMessage,
   3456     DWORD* pdwStubPhase);
   3457 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator_get_SpectralInversion_Proxy(
   3458     IBDA_DigitalDemodulator* This,
   3459     SpectralInversion *pSpectralInversion);
   3460 void __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 
   3474 DEFINE_GUID(IID_IBDA_DigitalDemodulator2, 0x525ed3ee, 0x5cf3, 0x4e1e, 0x9a,0x06, 0x53,0x68,0xa8,0x4f,0x9a,0x6e);
   3475 #if defined(__cplusplus) && !defined(CINTERFACE)
   3476 MIDL_INTERFACE("525ed3ee-5cf3-4e1e-9a06-5368a84f9a6e")
   3477 IBDA_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
   3508 typedef 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;
   3615 interface 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 ***/
   3651 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_QueryInterface(IBDA_DigitalDemodulator2* This,REFIID riid,void **ppvObject) {
   3652     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3653 }
   3654 static FORCEINLINE ULONG IBDA_DigitalDemodulator2_AddRef(IBDA_DigitalDemodulator2* This) {
   3655     return This->lpVtbl->AddRef(This);
   3656 }
   3657 static FORCEINLINE ULONG IBDA_DigitalDemodulator2_Release(IBDA_DigitalDemodulator2* This) {
   3658     return This->lpVtbl->Release(This);
   3659 }
   3660 /*** IBDA_DigitalDemodulator methods ***/
   3661 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_ModulationType(IBDA_DigitalDemodulator2* This,ModulationType *pModulationType) {
   3662     return This->lpVtbl->put_ModulationType(This,pModulationType);
   3663 }
   3664 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_ModulationType(IBDA_DigitalDemodulator2* This,ModulationType *pModulationType) {
   3665     return This->lpVtbl->get_ModulationType(This,pModulationType);
   3666 }
   3667 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_InnerFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
   3668     return This->lpVtbl->put_InnerFECMethod(This,pFECMethod);
   3669 }
   3670 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_InnerFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
   3671     return This->lpVtbl->get_InnerFECMethod(This,pFECMethod);
   3672 }
   3673 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_InnerFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
   3674     return This->lpVtbl->put_InnerFECRate(This,pFECRate);
   3675 }
   3676 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_InnerFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
   3677     return This->lpVtbl->get_InnerFECRate(This,pFECRate);
   3678 }
   3679 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_OuterFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
   3680     return This->lpVtbl->put_OuterFECMethod(This,pFECMethod);
   3681 }
   3682 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_OuterFECMethod(IBDA_DigitalDemodulator2* This,FECMethod *pFECMethod) {
   3683     return This->lpVtbl->get_OuterFECMethod(This,pFECMethod);
   3684 }
   3685 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_OuterFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
   3686     return This->lpVtbl->put_OuterFECRate(This,pFECRate);
   3687 }
   3688 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_OuterFECRate(IBDA_DigitalDemodulator2* This,BinaryConvolutionCodeRate *pFECRate) {
   3689     return This->lpVtbl->get_OuterFECRate(This,pFECRate);
   3690 }
   3691 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_SymbolRate(IBDA_DigitalDemodulator2* This,ULONG *pSymbolRate) {
   3692     return This->lpVtbl->put_SymbolRate(This,pSymbolRate);
   3693 }
   3694 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_SymbolRate(IBDA_DigitalDemodulator2* This,ULONG *pSymbolRate) {
   3695     return This->lpVtbl->get_SymbolRate(This,pSymbolRate);
   3696 }
   3697 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_SpectralInversion(IBDA_DigitalDemodulator2* This,SpectralInversion *pSpectralInversion) {
   3698     return This->lpVtbl->put_SpectralInversion(This,pSpectralInversion);
   3699 }
   3700 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_SpectralInversion(IBDA_DigitalDemodulator2* This,SpectralInversion *pSpectralInversion) {
   3701     return This->lpVtbl->get_SpectralInversion(This,pSpectralInversion);
   3702 }
   3703 /*** IBDA_DigitalDemodulator2 methods ***/
   3704 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_GuardInterval(IBDA_DigitalDemodulator2* This,GuardInterval *pGuardInterval) {
   3705     return This->lpVtbl->put_GuardInterval(This,pGuardInterval);
   3706 }
   3707 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_GuardInterval(IBDA_DigitalDemodulator2* This,GuardInterval *pGuardInterval) {
   3708     return This->lpVtbl->get_GuardInterval(This,pGuardInterval);
   3709 }
   3710 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_TransmissionMode(IBDA_DigitalDemodulator2* This,TransmissionMode *pTransmissionMode) {
   3711     return This->lpVtbl->put_TransmissionMode(This,pTransmissionMode);
   3712 }
   3713 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_TransmissionMode(IBDA_DigitalDemodulator2* This,TransmissionMode *pTransmissionMode) {
   3714     return This->lpVtbl->get_TransmissionMode(This,pTransmissionMode);
   3715 }
   3716 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_RollOff(IBDA_DigitalDemodulator2* This,RollOff *pRollOff) {
   3717     return This->lpVtbl->put_RollOff(This,pRollOff);
   3718 }
   3719 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_get_RollOff(IBDA_DigitalDemodulator2* This,RollOff *pRollOff) {
   3720     return This->lpVtbl->get_RollOff(This,pRollOff);
   3721 }
   3722 static FORCEINLINE HRESULT IBDA_DigitalDemodulator2_put_Pilot(IBDA_DigitalDemodulator2* This,Pilot *pPilot) {
   3723     return This->lpVtbl->put_Pilot(This,pPilot);
   3724 }
   3725 static 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 
   3733 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_GuardInterval_Proxy(
   3734     IBDA_DigitalDemodulator2* This,
   3735     GuardInterval *pGuardInterval);
   3736 void __RPC_STUB IBDA_DigitalDemodulator2_put_GuardInterval_Stub(
   3737     IRpcStubBuffer* This,
   3738     IRpcChannelBuffer* pRpcChannelBuffer,
   3739     PRPC_MESSAGE pRpcMessage,
   3740     DWORD* pdwStubPhase);
   3741 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_GuardInterval_Proxy(
   3742     IBDA_DigitalDemodulator2* This,
   3743     GuardInterval *pGuardInterval);
   3744 void __RPC_STUB IBDA_DigitalDemodulator2_get_GuardInterval_Stub(
   3745     IRpcStubBuffer* This,
   3746     IRpcChannelBuffer* pRpcChannelBuffer,
   3747     PRPC_MESSAGE pRpcMessage,
   3748     DWORD* pdwStubPhase);
   3749 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_TransmissionMode_Proxy(
   3750     IBDA_DigitalDemodulator2* This,
   3751     TransmissionMode *pTransmissionMode);
   3752 void __RPC_STUB IBDA_DigitalDemodulator2_put_TransmissionMode_Stub(
   3753     IRpcStubBuffer* This,
   3754     IRpcChannelBuffer* pRpcChannelBuffer,
   3755     PRPC_MESSAGE pRpcMessage,
   3756     DWORD* pdwStubPhase);
   3757 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_TransmissionMode_Proxy(
   3758     IBDA_DigitalDemodulator2* This,
   3759     TransmissionMode *pTransmissionMode);
   3760 void __RPC_STUB IBDA_DigitalDemodulator2_get_TransmissionMode_Stub(
   3761     IRpcStubBuffer* This,
   3762     IRpcChannelBuffer* pRpcChannelBuffer,
   3763     PRPC_MESSAGE pRpcMessage,
   3764     DWORD* pdwStubPhase);
   3765 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_RollOff_Proxy(
   3766     IBDA_DigitalDemodulator2* This,
   3767     RollOff *pRollOff);
   3768 void __RPC_STUB IBDA_DigitalDemodulator2_put_RollOff_Stub(
   3769     IRpcStubBuffer* This,
   3770     IRpcChannelBuffer* pRpcChannelBuffer,
   3771     PRPC_MESSAGE pRpcMessage,
   3772     DWORD* pdwStubPhase);
   3773 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_RollOff_Proxy(
   3774     IBDA_DigitalDemodulator2* This,
   3775     RollOff *pRollOff);
   3776 void __RPC_STUB IBDA_DigitalDemodulator2_get_RollOff_Stub(
   3777     IRpcStubBuffer* This,
   3778     IRpcChannelBuffer* pRpcChannelBuffer,
   3779     PRPC_MESSAGE pRpcMessage,
   3780     DWORD* pdwStubPhase);
   3781 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_put_Pilot_Proxy(
   3782     IBDA_DigitalDemodulator2* This,
   3783     Pilot *pPilot);
   3784 void __RPC_STUB IBDA_DigitalDemodulator2_put_Pilot_Stub(
   3785     IRpcStubBuffer* This,
   3786     IRpcChannelBuffer* pRpcChannelBuffer,
   3787     PRPC_MESSAGE pRpcMessage,
   3788     DWORD* pdwStubPhase);
   3789 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator2_get_Pilot_Proxy(
   3790     IBDA_DigitalDemodulator2* This,
   3791     Pilot *pPilot);
   3792 void __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 
   3806 DEFINE_GUID(IID_IBDA_DigitalDemodulator3, 0x13f19604, 0x7d32, 0x4359, 0x93,0xa2, 0xa0,0x52,0x05,0xd9,0x0a,0xc9);
   3807 #if defined(__cplusplus) && !defined(CINTERFACE)
   3808 MIDL_INTERFACE("13f19604-7d32-4359-93a2-a05205d90ac9")
   3809 IBDA_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
   3828 typedef 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;
   3952 interface 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 ***/
   3993 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_QueryInterface(IBDA_DigitalDemodulator3* This,REFIID riid,void **ppvObject) {
   3994     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   3995 }
   3996 static FORCEINLINE ULONG IBDA_DigitalDemodulator3_AddRef(IBDA_DigitalDemodulator3* This) {
   3997     return This->lpVtbl->AddRef(This);
   3998 }
   3999 static FORCEINLINE ULONG IBDA_DigitalDemodulator3_Release(IBDA_DigitalDemodulator3* This) {
   4000     return This->lpVtbl->Release(This);
   4001 }
   4002 /*** IBDA_DigitalDemodulator methods ***/
   4003 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_ModulationType(IBDA_DigitalDemodulator3* This,ModulationType *pModulationType) {
   4004     return This->lpVtbl->put_ModulationType(This,pModulationType);
   4005 }
   4006 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_ModulationType(IBDA_DigitalDemodulator3* This,ModulationType *pModulationType) {
   4007     return This->lpVtbl->get_ModulationType(This,pModulationType);
   4008 }
   4009 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_InnerFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
   4010     return This->lpVtbl->put_InnerFECMethod(This,pFECMethod);
   4011 }
   4012 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_InnerFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
   4013     return This->lpVtbl->get_InnerFECMethod(This,pFECMethod);
   4014 }
   4015 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_InnerFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
   4016     return This->lpVtbl->put_InnerFECRate(This,pFECRate);
   4017 }
   4018 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_InnerFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
   4019     return This->lpVtbl->get_InnerFECRate(This,pFECRate);
   4020 }
   4021 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_OuterFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
   4022     return This->lpVtbl->put_OuterFECMethod(This,pFECMethod);
   4023 }
   4024 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_OuterFECMethod(IBDA_DigitalDemodulator3* This,FECMethod *pFECMethod) {
   4025     return This->lpVtbl->get_OuterFECMethod(This,pFECMethod);
   4026 }
   4027 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_OuterFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
   4028     return This->lpVtbl->put_OuterFECRate(This,pFECRate);
   4029 }
   4030 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_OuterFECRate(IBDA_DigitalDemodulator3* This,BinaryConvolutionCodeRate *pFECRate) {
   4031     return This->lpVtbl->get_OuterFECRate(This,pFECRate);
   4032 }
   4033 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_SymbolRate(IBDA_DigitalDemodulator3* This,ULONG *pSymbolRate) {
   4034     return This->lpVtbl->put_SymbolRate(This,pSymbolRate);
   4035 }
   4036 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_SymbolRate(IBDA_DigitalDemodulator3* This,ULONG *pSymbolRate) {
   4037     return This->lpVtbl->get_SymbolRate(This,pSymbolRate);
   4038 }
   4039 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_SpectralInversion(IBDA_DigitalDemodulator3* This,SpectralInversion *pSpectralInversion) {
   4040     return This->lpVtbl->put_SpectralInversion(This,pSpectralInversion);
   4041 }
   4042 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_SpectralInversion(IBDA_DigitalDemodulator3* This,SpectralInversion *pSpectralInversion) {
   4043     return This->lpVtbl->get_SpectralInversion(This,pSpectralInversion);
   4044 }
   4045 /*** IBDA_DigitalDemodulator2 methods ***/
   4046 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_GuardInterval(IBDA_DigitalDemodulator3* This,GuardInterval *pGuardInterval) {
   4047     return This->lpVtbl->put_GuardInterval(This,pGuardInterval);
   4048 }
   4049 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_GuardInterval(IBDA_DigitalDemodulator3* This,GuardInterval *pGuardInterval) {
   4050     return This->lpVtbl->get_GuardInterval(This,pGuardInterval);
   4051 }
   4052 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_TransmissionMode(IBDA_DigitalDemodulator3* This,TransmissionMode *pTransmissionMode) {
   4053     return This->lpVtbl->put_TransmissionMode(This,pTransmissionMode);
   4054 }
   4055 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_TransmissionMode(IBDA_DigitalDemodulator3* This,TransmissionMode *pTransmissionMode) {
   4056     return This->lpVtbl->get_TransmissionMode(This,pTransmissionMode);
   4057 }
   4058 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_RollOff(IBDA_DigitalDemodulator3* This,RollOff *pRollOff) {
   4059     return This->lpVtbl->put_RollOff(This,pRollOff);
   4060 }
   4061 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_RollOff(IBDA_DigitalDemodulator3* This,RollOff *pRollOff) {
   4062     return This->lpVtbl->get_RollOff(This,pRollOff);
   4063 }
   4064 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_Pilot(IBDA_DigitalDemodulator3* This,Pilot *pPilot) {
   4065     return This->lpVtbl->put_Pilot(This,pPilot);
   4066 }
   4067 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_Pilot(IBDA_DigitalDemodulator3* This,Pilot *pPilot) {
   4068     return This->lpVtbl->get_Pilot(This,pPilot);
   4069 }
   4070 /*** IBDA_DigitalDemodulator3 methods ***/
   4071 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_SignalTimeouts(IBDA_DigitalDemodulator3* This,BDA_SIGNAL_TIMEOUTS *pSignalTimeouts) {
   4072     return This->lpVtbl->put_SignalTimeouts(This,pSignalTimeouts);
   4073 }
   4074 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_get_SignalTimeouts(IBDA_DigitalDemodulator3* This,BDA_SIGNAL_TIMEOUTS *pSignalTimeouts) {
   4075     return This->lpVtbl->get_SignalTimeouts(This,pSignalTimeouts);
   4076 }
   4077 static FORCEINLINE HRESULT IBDA_DigitalDemodulator3_put_PLPNumber(IBDA_DigitalDemodulator3* This,ULONG *pPLPNumber) {
   4078     return This->lpVtbl->put_PLPNumber(This,pPLPNumber);
   4079 }
   4080 static 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 
   4088 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_put_SignalTimeouts_Proxy(
   4089     IBDA_DigitalDemodulator3* This,
   4090     BDA_SIGNAL_TIMEOUTS *pSignalTimeouts);
   4091 void __RPC_STUB IBDA_DigitalDemodulator3_put_SignalTimeouts_Stub(
   4092     IRpcStubBuffer* This,
   4093     IRpcChannelBuffer* pRpcChannelBuffer,
   4094     PRPC_MESSAGE pRpcMessage,
   4095     DWORD* pdwStubPhase);
   4096 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_get_SignalTimeouts_Proxy(
   4097     IBDA_DigitalDemodulator3* This,
   4098     BDA_SIGNAL_TIMEOUTS *pSignalTimeouts);
   4099 void __RPC_STUB IBDA_DigitalDemodulator3_get_SignalTimeouts_Stub(
   4100     IRpcStubBuffer* This,
   4101     IRpcChannelBuffer* pRpcChannelBuffer,
   4102     PRPC_MESSAGE pRpcMessage,
   4103     DWORD* pdwStubPhase);
   4104 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_put_PLPNumber_Proxy(
   4105     IBDA_DigitalDemodulator3* This,
   4106     ULONG *pPLPNumber);
   4107 void __RPC_STUB IBDA_DigitalDemodulator3_put_PLPNumber_Stub(
   4108     IRpcStubBuffer* This,
   4109     IRpcChannelBuffer* pRpcChannelBuffer,
   4110     PRPC_MESSAGE pRpcMessage,
   4111     DWORD* pdwStubPhase);
   4112 HRESULT STDMETHODCALLTYPE IBDA_DigitalDemodulator3_get_PLPNumber_Proxy(
   4113     IBDA_DigitalDemodulator3* This,
   4114     ULONG *pPLPNumber);
   4115 void __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 
   4129 DEFINE_GUID(IID_ICCSubStreamFiltering, 0x4b2bd7ea, 0x8347, 0x467b, 0x8d,0xbf, 0x62,0xf7,0x84,0x92,0x9c,0xc3);
   4130 #if defined(__cplusplus) && !defined(CINTERFACE)
   4131 MIDL_INTERFACE("4b2bd7ea-8347-467b-8dbf-62f784929cc3")
   4132 ICCSubStreamFiltering : 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
   4145 typedef 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;
   4171 interface 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 ***/
   4186 static FORCEINLINE HRESULT ICCSubStreamFiltering_QueryInterface(ICCSubStreamFiltering* This,REFIID riid,void **ppvObject) {
   4187     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4188 }
   4189 static FORCEINLINE ULONG ICCSubStreamFiltering_AddRef(ICCSubStreamFiltering* This) {
   4190     return This->lpVtbl->AddRef(This);
   4191 }
   4192 static FORCEINLINE ULONG ICCSubStreamFiltering_Release(ICCSubStreamFiltering* This) {
   4193     return This->lpVtbl->Release(This);
   4194 }
   4195 /*** ICCSubStreamFiltering methods ***/
   4196 static FORCEINLINE HRESULT ICCSubStreamFiltering_get_SubstreamTypes(ICCSubStreamFiltering* This,LONG *pTypes) {
   4197     return This->lpVtbl->get_SubstreamTypes(This,pTypes);
   4198 }
   4199 static 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 
   4207 HRESULT STDMETHODCALLTYPE ICCSubStreamFiltering_get_SubstreamTypes_Proxy(
   4208     ICCSubStreamFiltering* This,
   4209     LONG *pTypes);
   4210 void __RPC_STUB ICCSubStreamFiltering_get_SubstreamTypes_Stub(
   4211     IRpcStubBuffer* This,
   4212     IRpcChannelBuffer* pRpcChannelBuffer,
   4213     PRPC_MESSAGE pRpcMessage,
   4214     DWORD* pdwStubPhase);
   4215 HRESULT STDMETHODCALLTYPE ICCSubStreamFiltering_put_SubstreamTypes_Proxy(
   4216     ICCSubStreamFiltering* This,
   4217     LONG Types);
   4218 void __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 
   4232 DEFINE_GUID(IID_IBDA_IPSinkControl, 0x3f4dc8e2, 0x4050, 0x11d3, 0x8f,0x4b, 0x00,0xc0,0x4f,0x79,0x71,0xe2);
   4233 #if defined(__cplusplus) && !defined(CINTERFACE)
   4234 MIDL_INTERFACE("3f4dc8e2-4050-11d3-8f4b-00c04f7971e2")
   4235 IBDA_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
   4250 typedef 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;
   4278 interface 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 ***/
   4293 static FORCEINLINE HRESULT IBDA_IPSinkControl_QueryInterface(IBDA_IPSinkControl* This,REFIID riid,void **ppvObject) {
   4294     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4295 }
   4296 static FORCEINLINE ULONG IBDA_IPSinkControl_AddRef(IBDA_IPSinkControl* This) {
   4297     return This->lpVtbl->AddRef(This);
   4298 }
   4299 static FORCEINLINE ULONG IBDA_IPSinkControl_Release(IBDA_IPSinkControl* This) {
   4300     return This->lpVtbl->Release(This);
   4301 }
   4302 /*** IBDA_IPSinkControl methods ***/
   4303 static FORCEINLINE HRESULT IBDA_IPSinkControl_GetMulticastList(IBDA_IPSinkControl* This,ULONG *pulcbSize,BYTE **pbBuffer) {
   4304     return This->lpVtbl->GetMulticastList(This,pulcbSize,pbBuffer);
   4305 }
   4306 static 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 
   4314 HRESULT STDMETHODCALLTYPE IBDA_IPSinkControl_GetMulticastList_Proxy(
   4315     IBDA_IPSinkControl* This,
   4316     ULONG *pulcbSize,
   4317     BYTE **pbBuffer);
   4318 void __RPC_STUB IBDA_IPSinkControl_GetMulticastList_Stub(
   4319     IRpcStubBuffer* This,
   4320     IRpcChannelBuffer* pRpcChannelBuffer,
   4321     PRPC_MESSAGE pRpcMessage,
   4322     DWORD* pdwStubPhase);
   4323 HRESULT STDMETHODCALLTYPE IBDA_IPSinkControl_GetAdapterIPAddress_Proxy(
   4324     IBDA_IPSinkControl* This,
   4325     ULONG *pulcbSize,
   4326     BYTE **pbBuffer);
   4327 void __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 
   4341 DEFINE_GUID(IID_IBDA_IPSinkInfo, 0xa750108f, 0x492e, 0x4d51, 0x95,0xf7, 0x64,0x9b,0x23,0xff,0x7a,0xd7);
   4342 #if defined(__cplusplus) && !defined(CINTERFACE)
   4343 MIDL_INTERFACE("a750108f-492e-4d51-95f7-649b23ff7ad7")
   4344 IBDA_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
   4361 typedef 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;
   4392 interface 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 ***/
   4408 static FORCEINLINE HRESULT IBDA_IPSinkInfo_QueryInterface(IBDA_IPSinkInfo* This,REFIID riid,void **ppvObject) {
   4409     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4410 }
   4411 static FORCEINLINE ULONG IBDA_IPSinkInfo_AddRef(IBDA_IPSinkInfo* This) {
   4412     return This->lpVtbl->AddRef(This);
   4413 }
   4414 static FORCEINLINE ULONG IBDA_IPSinkInfo_Release(IBDA_IPSinkInfo* This) {
   4415     return This->lpVtbl->Release(This);
   4416 }
   4417 /*** IBDA_IPSinkInfo methods ***/
   4418 static FORCEINLINE HRESULT IBDA_IPSinkInfo_get_MulticastList(IBDA_IPSinkInfo* This,ULONG *pulcbAddresses,BYTE **ppbAddressList) {
   4419     return This->lpVtbl->get_MulticastList(This,pulcbAddresses,ppbAddressList);
   4420 }
   4421 static FORCEINLINE HRESULT IBDA_IPSinkInfo_get_AdapterIPAddress(IBDA_IPSinkInfo* This,BSTR *pbstrBuffer) {
   4422     return This->lpVtbl->get_AdapterIPAddress(This,pbstrBuffer);
   4423 }
   4424 static 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 
   4432 HRESULT STDMETHODCALLTYPE IBDA_IPSinkInfo_get_MulticastList_Proxy(
   4433     IBDA_IPSinkInfo* This,
   4434     ULONG *pulcbAddresses,
   4435     BYTE **ppbAddressList);
   4436 void __RPC_STUB IBDA_IPSinkInfo_get_MulticastList_Stub(
   4437     IRpcStubBuffer* This,
   4438     IRpcChannelBuffer* pRpcChannelBuffer,
   4439     PRPC_MESSAGE pRpcMessage,
   4440     DWORD* pdwStubPhase);
   4441 HRESULT STDMETHODCALLTYPE IBDA_IPSinkInfo_get_AdapterIPAddress_Proxy(
   4442     IBDA_IPSinkInfo* This,
   4443     BSTR *pbstrBuffer);
   4444 void __RPC_STUB IBDA_IPSinkInfo_get_AdapterIPAddress_Stub(
   4445     IRpcStubBuffer* This,
   4446     IRpcChannelBuffer* pRpcChannelBuffer,
   4447     PRPC_MESSAGE pRpcMessage,
   4448     DWORD* pdwStubPhase);
   4449 HRESULT STDMETHODCALLTYPE IBDA_IPSinkInfo_get_AdapterDescription_Proxy(
   4450     IBDA_IPSinkInfo* This,
   4451     BSTR *pbstrBuffer);
   4452 void __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 
   4466 DEFINE_GUID(IID_IEnumPIDMap, 0xafb6c2a2, 0x2c41, 0x11d3, 0x8a,0x60, 0x00,0x00,0xf8,0x1e,0x0e,0x4a);
   4467 #if defined(__cplusplus) && !defined(CINTERFACE)
   4468 MIDL_INTERFACE("afb6c2a2-2c41-11d3-8a60-0000f81e0e4a")
   4469 IEnumPIDMap : 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
   4490 typedef 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;
   4525 interface 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 ***/
   4542 static FORCEINLINE HRESULT IEnumPIDMap_QueryInterface(IEnumPIDMap* This,REFIID riid,void **ppvObject) {
   4543     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4544 }
   4545 static FORCEINLINE ULONG IEnumPIDMap_AddRef(IEnumPIDMap* This) {
   4546     return This->lpVtbl->AddRef(This);
   4547 }
   4548 static FORCEINLINE ULONG IEnumPIDMap_Release(IEnumPIDMap* This) {
   4549     return This->lpVtbl->Release(This);
   4550 }
   4551 /*** IEnumPIDMap methods ***/
   4552 static FORCEINLINE HRESULT IEnumPIDMap_Next(IEnumPIDMap* This,ULONG cRequest,PID_MAP *pPIDMap,ULONG *pcReceived) {
   4553     return This->lpVtbl->Next(This,cRequest,pPIDMap,pcReceived);
   4554 }
   4555 static FORCEINLINE HRESULT IEnumPIDMap_Skip(IEnumPIDMap* This,ULONG cRecords) {
   4556     return This->lpVtbl->Skip(This,cRecords);
   4557 }
   4558 static FORCEINLINE HRESULT IEnumPIDMap_Reset(IEnumPIDMap* This) {
   4559     return This->lpVtbl->Reset(This);
   4560 }
   4561 static FORCEINLINE HRESULT IEnumPIDMap_Clone(IEnumPIDMap* This,IEnumPIDMap **ppIEnumPIDMap) {
   4562     return This->lpVtbl->Clone(This,ppIEnumPIDMap);
   4563 }
   4564 #endif
   4565 #endif
   4566 
   4567 #endif
   4568 
   4569 HRESULT STDMETHODCALLTYPE IEnumPIDMap_Next_Proxy(
   4570     IEnumPIDMap* This,
   4571     ULONG cRequest,
   4572     PID_MAP *pPIDMap,
   4573     ULONG *pcReceived);
   4574 void __RPC_STUB IEnumPIDMap_Next_Stub(
   4575     IRpcStubBuffer* This,
   4576     IRpcChannelBuffer* pRpcChannelBuffer,
   4577     PRPC_MESSAGE pRpcMessage,
   4578     DWORD* pdwStubPhase);
   4579 HRESULT STDMETHODCALLTYPE IEnumPIDMap_Skip_Proxy(
   4580     IEnumPIDMap* This,
   4581     ULONG cRecords);
   4582 void __RPC_STUB IEnumPIDMap_Skip_Stub(
   4583     IRpcStubBuffer* This,
   4584     IRpcChannelBuffer* pRpcChannelBuffer,
   4585     PRPC_MESSAGE pRpcMessage,
   4586     DWORD* pdwStubPhase);
   4587 HRESULT STDMETHODCALLTYPE IEnumPIDMap_Reset_Proxy(
   4588     IEnumPIDMap* This);
   4589 void __RPC_STUB IEnumPIDMap_Reset_Stub(
   4590     IRpcStubBuffer* This,
   4591     IRpcChannelBuffer* pRpcChannelBuffer,
   4592     PRPC_MESSAGE pRpcMessage,
   4593     DWORD* pdwStubPhase);
   4594 HRESULT STDMETHODCALLTYPE IEnumPIDMap_Clone_Proxy(
   4595     IEnumPIDMap* This,
   4596     IEnumPIDMap **ppIEnumPIDMap);
   4597 void __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 
   4611 DEFINE_GUID(IID_IMPEG2PIDMap, 0xafb6c2a1, 0x2c41, 0x11d3, 0x8a,0x60, 0x00,0x00,0xf8,0x1e,0x0e,0x4a);
   4612 #if defined(__cplusplus) && !defined(CINTERFACE)
   4613 MIDL_INTERFACE("afb6c2a1-2c41-11d3-8a60-0000f81e0e4a")
   4614 IMPEG2PIDMap : 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
   4633 typedef 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;
   4666 interface 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 ***/
   4682 static FORCEINLINE HRESULT IMPEG2PIDMap_QueryInterface(IMPEG2PIDMap* This,REFIID riid,void **ppvObject) {
   4683     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4684 }
   4685 static FORCEINLINE ULONG IMPEG2PIDMap_AddRef(IMPEG2PIDMap* This) {
   4686     return This->lpVtbl->AddRef(This);
   4687 }
   4688 static FORCEINLINE ULONG IMPEG2PIDMap_Release(IMPEG2PIDMap* This) {
   4689     return This->lpVtbl->Release(This);
   4690 }
   4691 /*** IMPEG2PIDMap methods ***/
   4692 static FORCEINLINE HRESULT IMPEG2PIDMap_MapPID(IMPEG2PIDMap* This,ULONG culPID,ULONG *pulPID,MEDIA_SAMPLE_CONTENT MediaSampleContent) {
   4693     return This->lpVtbl->MapPID(This,culPID,pulPID,MediaSampleContent);
   4694 }
   4695 static FORCEINLINE HRESULT IMPEG2PIDMap_UnmapPID(IMPEG2PIDMap* This,ULONG culPID,ULONG *pulPID) {
   4696     return This->lpVtbl->UnmapPID(This,culPID,pulPID);
   4697 }
   4698 static FORCEINLINE HRESULT IMPEG2PIDMap_EnumPIDMap(IMPEG2PIDMap* This,IEnumPIDMap **pIEnumPIDMap) {
   4699     return This->lpVtbl->EnumPIDMap(This,pIEnumPIDMap);
   4700 }
   4701 #endif
   4702 #endif
   4703 
   4704 #endif
   4705 
   4706 HRESULT STDMETHODCALLTYPE IMPEG2PIDMap_MapPID_Proxy(
   4707     IMPEG2PIDMap* This,
   4708     ULONG culPID,
   4709     ULONG *pulPID,
   4710     MEDIA_SAMPLE_CONTENT MediaSampleContent);
   4711 void __RPC_STUB IMPEG2PIDMap_MapPID_Stub(
   4712     IRpcStubBuffer* This,
   4713     IRpcChannelBuffer* pRpcChannelBuffer,
   4714     PRPC_MESSAGE pRpcMessage,
   4715     DWORD* pdwStubPhase);
   4716 HRESULT STDMETHODCALLTYPE IMPEG2PIDMap_UnmapPID_Proxy(
   4717     IMPEG2PIDMap* This,
   4718     ULONG culPID,
   4719     ULONG *pulPID);
   4720 void __RPC_STUB IMPEG2PIDMap_UnmapPID_Stub(
   4721     IRpcStubBuffer* This,
   4722     IRpcChannelBuffer* pRpcChannelBuffer,
   4723     PRPC_MESSAGE pRpcMessage,
   4724     DWORD* pdwStubPhase);
   4725 HRESULT STDMETHODCALLTYPE IMPEG2PIDMap_EnumPIDMap_Proxy(
   4726     IMPEG2PIDMap* This,
   4727     IEnumPIDMap **pIEnumPIDMap);
   4728 void __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 
   4742 DEFINE_GUID(IID_IFrequencyMap, 0x06fb45c1, 0x693c, 0x4ea7, 0xb7,0x9f, 0x7a,0x6a,0x54,0xd8,0xde,0xf2);
   4743 #if defined(__cplusplus) && !defined(CINTERFACE)
   4744 MIDL_INTERFACE("06fb45c1-693c-4ea7-b79f-7a6a54d8def2")
   4745 IFrequencyMap : 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
   4775 typedef 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;
   4822 interface 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 ***/
   4841 static FORCEINLINE HRESULT IFrequencyMap_QueryInterface(IFrequencyMap* This,REFIID riid,void **ppvObject) {
   4842     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4843 }
   4844 static FORCEINLINE ULONG IFrequencyMap_AddRef(IFrequencyMap* This) {
   4845     return This->lpVtbl->AddRef(This);
   4846 }
   4847 static FORCEINLINE ULONG IFrequencyMap_Release(IFrequencyMap* This) {
   4848     return This->lpVtbl->Release(This);
   4849 }
   4850 /*** IFrequencyMap methods ***/
   4851 static FORCEINLINE HRESULT IFrequencyMap_get_FrequencyMapping(IFrequencyMap* This,ULONG *ulCount,ULONG **ppulList) {
   4852     return This->lpVtbl->get_FrequencyMapping(This,ulCount,ppulList);
   4853 }
   4854 static FORCEINLINE HRESULT IFrequencyMap_put_FrequencyMapping(IFrequencyMap* This,ULONG ulCount,ULONG pList[]) {
   4855     return This->lpVtbl->put_FrequencyMapping(This,ulCount,pList);
   4856 }
   4857 static FORCEINLINE HRESULT IFrequencyMap_get_CountryCode(IFrequencyMap* This,ULONG *pulCountryCode) {
   4858     return This->lpVtbl->get_CountryCode(This,pulCountryCode);
   4859 }
   4860 static FORCEINLINE HRESULT IFrequencyMap_put_CountryCode(IFrequencyMap* This,ULONG ulCountryCode) {
   4861     return This->lpVtbl->put_CountryCode(This,ulCountryCode);
   4862 }
   4863 static FORCEINLINE HRESULT IFrequencyMap_get_DefaultFrequencyMapping(IFrequencyMap* This,ULONG ulCountryCode,ULONG *pulCount,ULONG **ppulList) {
   4864     return This->lpVtbl->get_DefaultFrequencyMapping(This,ulCountryCode,pulCount,ppulList);
   4865 }
   4866 static 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 
   4874 HRESULT STDMETHODCALLTYPE IFrequencyMap_get_FrequencyMapping_Proxy(
   4875     IFrequencyMap* This,
   4876     ULONG *ulCount,
   4877     ULONG **ppulList);
   4878 void __RPC_STUB IFrequencyMap_get_FrequencyMapping_Stub(
   4879     IRpcStubBuffer* This,
   4880     IRpcChannelBuffer* pRpcChannelBuffer,
   4881     PRPC_MESSAGE pRpcMessage,
   4882     DWORD* pdwStubPhase);
   4883 HRESULT STDMETHODCALLTYPE IFrequencyMap_put_FrequencyMapping_Proxy(
   4884     IFrequencyMap* This,
   4885     ULONG ulCount,
   4886     ULONG pList[]);
   4887 void __RPC_STUB IFrequencyMap_put_FrequencyMapping_Stub(
   4888     IRpcStubBuffer* This,
   4889     IRpcChannelBuffer* pRpcChannelBuffer,
   4890     PRPC_MESSAGE pRpcMessage,
   4891     DWORD* pdwStubPhase);
   4892 HRESULT STDMETHODCALLTYPE IFrequencyMap_get_CountryCode_Proxy(
   4893     IFrequencyMap* This,
   4894     ULONG *pulCountryCode);
   4895 void __RPC_STUB IFrequencyMap_get_CountryCode_Stub(
   4896     IRpcStubBuffer* This,
   4897     IRpcChannelBuffer* pRpcChannelBuffer,
   4898     PRPC_MESSAGE pRpcMessage,
   4899     DWORD* pdwStubPhase);
   4900 HRESULT STDMETHODCALLTYPE IFrequencyMap_put_CountryCode_Proxy(
   4901     IFrequencyMap* This,
   4902     ULONG ulCountryCode);
   4903 void __RPC_STUB IFrequencyMap_put_CountryCode_Stub(
   4904     IRpcStubBuffer* This,
   4905     IRpcChannelBuffer* pRpcChannelBuffer,
   4906     PRPC_MESSAGE pRpcMessage,
   4907     DWORD* pdwStubPhase);
   4908 HRESULT STDMETHODCALLTYPE IFrequencyMap_get_DefaultFrequencyMapping_Proxy(
   4909     IFrequencyMap* This,
   4910     ULONG ulCountryCode,
   4911     ULONG *pulCount,
   4912     ULONG **ppulList);
   4913 void __RPC_STUB IFrequencyMap_get_DefaultFrequencyMapping_Stub(
   4914     IRpcStubBuffer* This,
   4915     IRpcChannelBuffer* pRpcChannelBuffer,
   4916     PRPC_MESSAGE pRpcMessage,
   4917     DWORD* pdwStubPhase);
   4918 HRESULT STDMETHODCALLTYPE IFrequencyMap_get_CountryCodeList_Proxy(
   4919     IFrequencyMap* This,
   4920     ULONG *pulCount,
   4921     ULONG **ppulList);
   4922 void __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 
   4936 DEFINE_GUID(IID_IBDA_EasMessage, 0xd806973d, 0x3ebe, 0x46de, 0x8f,0xbb, 0x63,0x58,0xfe,0x78,0x42,0x08);
   4937 #if defined(__cplusplus) && !defined(CINTERFACE)
   4938 MIDL_INTERFACE("d806973d-3ebe-46de-8fbb-6358fe784208")
   4939 IBDA_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
   4950 typedef 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;
   4973 interface 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 ***/
   4987 static FORCEINLINE HRESULT IBDA_EasMessage_QueryInterface(IBDA_EasMessage* This,REFIID riid,void **ppvObject) {
   4988     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   4989 }
   4990 static FORCEINLINE ULONG IBDA_EasMessage_AddRef(IBDA_EasMessage* This) {
   4991     return This->lpVtbl->AddRef(This);
   4992 }
   4993 static FORCEINLINE ULONG IBDA_EasMessage_Release(IBDA_EasMessage* This) {
   4994     return This->lpVtbl->Release(This);
   4995 }
   4996 /*** IBDA_EasMessage methods ***/
   4997 static 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 
   5005 HRESULT STDMETHODCALLTYPE IBDA_EasMessage_get_EasMessage_Proxy(
   5006     IBDA_EasMessage* This,
   5007     ULONG ulEventID,
   5008     IUnknown **ppEASObject);
   5009 void __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 
   5023 DEFINE_GUID(IID_IBDA_TransportStreamInfo, 0x8e882535, 0x5f86, 0x47ab, 0x86,0xcf, 0xc2,0x81,0xa7,0x2a,0x05,0x49);
   5024 #if defined(__cplusplus) && !defined(CINTERFACE)
   5025 MIDL_INTERFACE("8e882535-5f86-47ab-86cf-c281a72a0549")
   5026 IBDA_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
   5036 typedef 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;
   5058 interface 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 ***/
   5072 static FORCEINLINE HRESULT IBDA_TransportStreamInfo_QueryInterface(IBDA_TransportStreamInfo* This,REFIID riid,void **ppvObject) {
   5073     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5074 }
   5075 static FORCEINLINE ULONG IBDA_TransportStreamInfo_AddRef(IBDA_TransportStreamInfo* This) {
   5076     return This->lpVtbl->AddRef(This);
   5077 }
   5078 static FORCEINLINE ULONG IBDA_TransportStreamInfo_Release(IBDA_TransportStreamInfo* This) {
   5079     return This->lpVtbl->Release(This);
   5080 }
   5081 /*** IBDA_TransportStreamInfo methods ***/
   5082 static 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 
   5090 HRESULT STDMETHODCALLTYPE IBDA_TransportStreamInfo_get_PatTableTickCount_Proxy(
   5091     IBDA_TransportStreamInfo* This,
   5092     ULONG *pPatTickCount);
   5093 void __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 
   5107 DEFINE_GUID(IID_IBDA_ConditionalAccess, 0xcd51f1e0, 0x7be9, 0x4123, 0x84,0x82, 0xa2,0xa7,0x96,0xc0,0xa6,0xb0);
   5108 #if defined(__cplusplus) && !defined(CINTERFACE)
   5109 MIDL_INTERFACE("cd51f1e0-7be9-4123-8482-a2a796c0a6b0")
   5110 IBDA_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
   5161 typedef 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;
   5233 interface 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 ***/
   5256 static FORCEINLINE HRESULT IBDA_ConditionalAccess_QueryInterface(IBDA_ConditionalAccess* This,REFIID riid,void **ppvObject) {
   5257     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5258 }
   5259 static FORCEINLINE ULONG IBDA_ConditionalAccess_AddRef(IBDA_ConditionalAccess* This) {
   5260     return This->lpVtbl->AddRef(This);
   5261 }
   5262 static FORCEINLINE ULONG IBDA_ConditionalAccess_Release(IBDA_ConditionalAccess* This) {
   5263     return This->lpVtbl->Release(This);
   5264 }
   5265 /*** IBDA_ConditionalAccess methods ***/
   5266 static 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 }
   5269 static 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 }
   5272 static 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 }
   5275 static FORCEINLINE HRESULT IBDA_ConditionalAccess_get_Entitlement(IBDA_ConditionalAccess* This,USHORT usVirtualChannel,EntitlementType *pEntitlement) {
   5276     return This->lpVtbl->get_Entitlement(This,usVirtualChannel,pEntitlement);
   5277 }
   5278 static FORCEINLINE HRESULT IBDA_ConditionalAccess_TuneByChannel(IBDA_ConditionalAccess* This,USHORT usVirtualChannel) {
   5279     return This->lpVtbl->TuneByChannel(This,usVirtualChannel);
   5280 }
   5281 static FORCEINLINE HRESULT IBDA_ConditionalAccess_SetProgram(IBDA_ConditionalAccess* This,USHORT usProgramNumber) {
   5282     return This->lpVtbl->SetProgram(This,usProgramNumber);
   5283 }
   5284 static FORCEINLINE HRESULT IBDA_ConditionalAccess_AddProgram(IBDA_ConditionalAccess* This,USHORT usProgramNumber) {
   5285     return This->lpVtbl->AddProgram(This,usProgramNumber);
   5286 }
   5287 static FORCEINLINE HRESULT IBDA_ConditionalAccess_RemoveProgram(IBDA_ConditionalAccess* This,USHORT usProgramNumber) {
   5288     return This->lpVtbl->RemoveProgram(This,usProgramNumber);
   5289 }
   5290 static FORCEINLINE HRESULT IBDA_ConditionalAccess_GetModuleUI(IBDA_ConditionalAccess* This,BYTE byDialogNumber,BSTR *pbstrURL) {
   5291     return This->lpVtbl->GetModuleUI(This,byDialogNumber,pbstrURL);
   5292 }
   5293 static 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 
   5301 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_SmartCardStatus_Proxy(
   5302     IBDA_ConditionalAccess* This,
   5303     SmartCardStatusType *pCardStatus,
   5304     SmartCardAssociationType *pCardAssociation,
   5305     BSTR *pbstrCardError,
   5306     VARIANT_BOOL *pfOOBLocked);
   5307 void __RPC_STUB IBDA_ConditionalAccess_get_SmartCardStatus_Stub(
   5308     IRpcStubBuffer* This,
   5309     IRpcChannelBuffer* pRpcChannelBuffer,
   5310     PRPC_MESSAGE pRpcMessage,
   5311     DWORD* pdwStubPhase);
   5312 HRESULT 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);
   5321 void __RPC_STUB IBDA_ConditionalAccess_get_SmartCardInfo_Stub(
   5322     IRpcStubBuffer* This,
   5323     IRpcChannelBuffer* pRpcChannelBuffer,
   5324     PRPC_MESSAGE pRpcMessage,
   5325     DWORD* pdwStubPhase);
   5326 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_SmartCardApplications_Proxy(
   5327     IBDA_ConditionalAccess* This,
   5328     ULONG *pulcApplications,
   5329     ULONG ulcApplicationsMax,
   5330     SmartCardApplication rgApplications[]);
   5331 void __RPC_STUB IBDA_ConditionalAccess_get_SmartCardApplications_Stub(
   5332     IRpcStubBuffer* This,
   5333     IRpcChannelBuffer* pRpcChannelBuffer,
   5334     PRPC_MESSAGE pRpcMessage,
   5335     DWORD* pdwStubPhase);
   5336 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_get_Entitlement_Proxy(
   5337     IBDA_ConditionalAccess* This,
   5338     USHORT usVirtualChannel,
   5339     EntitlementType *pEntitlement);
   5340 void __RPC_STUB IBDA_ConditionalAccess_get_Entitlement_Stub(
   5341     IRpcStubBuffer* This,
   5342     IRpcChannelBuffer* pRpcChannelBuffer,
   5343     PRPC_MESSAGE pRpcMessage,
   5344     DWORD* pdwStubPhase);
   5345 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_TuneByChannel_Proxy(
   5346     IBDA_ConditionalAccess* This,
   5347     USHORT usVirtualChannel);
   5348 void __RPC_STUB IBDA_ConditionalAccess_TuneByChannel_Stub(
   5349     IRpcStubBuffer* This,
   5350     IRpcChannelBuffer* pRpcChannelBuffer,
   5351     PRPC_MESSAGE pRpcMessage,
   5352     DWORD* pdwStubPhase);
   5353 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_SetProgram_Proxy(
   5354     IBDA_ConditionalAccess* This,
   5355     USHORT usProgramNumber);
   5356 void __RPC_STUB IBDA_ConditionalAccess_SetProgram_Stub(
   5357     IRpcStubBuffer* This,
   5358     IRpcChannelBuffer* pRpcChannelBuffer,
   5359     PRPC_MESSAGE pRpcMessage,
   5360     DWORD* pdwStubPhase);
   5361 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_AddProgram_Proxy(
   5362     IBDA_ConditionalAccess* This,
   5363     USHORT usProgramNumber);
   5364 void __RPC_STUB IBDA_ConditionalAccess_AddProgram_Stub(
   5365     IRpcStubBuffer* This,
   5366     IRpcChannelBuffer* pRpcChannelBuffer,
   5367     PRPC_MESSAGE pRpcMessage,
   5368     DWORD* pdwStubPhase);
   5369 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_RemoveProgram_Proxy(
   5370     IBDA_ConditionalAccess* This,
   5371     USHORT usProgramNumber);
   5372 void __RPC_STUB IBDA_ConditionalAccess_RemoveProgram_Stub(
   5373     IRpcStubBuffer* This,
   5374     IRpcChannelBuffer* pRpcChannelBuffer,
   5375     PRPC_MESSAGE pRpcMessage,
   5376     DWORD* pdwStubPhase);
   5377 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_GetModuleUI_Proxy(
   5378     IBDA_ConditionalAccess* This,
   5379     BYTE byDialogNumber,
   5380     BSTR *pbstrURL);
   5381 void __RPC_STUB IBDA_ConditionalAccess_GetModuleUI_Stub(
   5382     IRpcStubBuffer* This,
   5383     IRpcChannelBuffer* pRpcChannelBuffer,
   5384     PRPC_MESSAGE pRpcMessage,
   5385     DWORD* pdwStubPhase);
   5386 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccess_InformUIClosed_Proxy(
   5387     IBDA_ConditionalAccess* This,
   5388     BYTE byDialogNumber,
   5389     UICloseReasonType CloseReason);
   5390 void __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 
   5404 DEFINE_GUID(IID_IBDA_DiagnosticProperties, 0x20e80cb5, 0xc543, 0x4c1b, 0x8e,0xb3, 0x49,0xe7,0x19,0xee,0xe7,0xd4);
   5405 #if defined(__cplusplus) && !defined(CINTERFACE)
   5406 MIDL_INTERFACE("20e80cb5-c543-4c1b-8eb3-49e719eee7d4")
   5407 IBDA_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
   5414 typedef 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;
   5443 interface 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 ***/
   5458 static FORCEINLINE HRESULT IBDA_DiagnosticProperties_QueryInterface(IBDA_DiagnosticProperties* This,REFIID riid,void **ppvObject) {
   5459     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5460 }
   5461 static FORCEINLINE ULONG IBDA_DiagnosticProperties_AddRef(IBDA_DiagnosticProperties* This) {
   5462     return This->lpVtbl->AddRef(This);
   5463 }
   5464 static FORCEINLINE ULONG IBDA_DiagnosticProperties_Release(IBDA_DiagnosticProperties* This) {
   5465     return This->lpVtbl->Release(This);
   5466 }
   5467 /*** IPropertyBag methods ***/
   5468 static FORCEINLINE HRESULT IBDA_DiagnosticProperties_Read(IBDA_DiagnosticProperties* This,LPCOLESTR pszPropName,VARIANT *pVar,IErrorLog *pErrorLog) {
   5469     return This->lpVtbl->Read(This,pszPropName,pVar,pErrorLog);
   5470 }
   5471 static 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 
   5488 DEFINE_GUID(IID_IBDA_DRM, 0xf98d88b0, 0x1992, 0x4cd6, 0xa6,0xd9, 0xb9,0xaf,0xab,0x99,0x33,0x0d);
   5489 #if defined(__cplusplus) && !defined(CINTERFACE)
   5490 MIDL_INTERFACE("f98d88b0-1992-4cd6-a6d9-b9afab99330d")
   5491 IBDA_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
   5505 typedef 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;
   5532 interface 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 ***/
   5547 static FORCEINLINE HRESULT IBDA_DRM_QueryInterface(IBDA_DRM* This,REFIID riid,void **ppvObject) {
   5548     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5549 }
   5550 static FORCEINLINE ULONG IBDA_DRM_AddRef(IBDA_DRM* This) {
   5551     return This->lpVtbl->AddRef(This);
   5552 }
   5553 static FORCEINLINE ULONG IBDA_DRM_Release(IBDA_DRM* This) {
   5554     return This->lpVtbl->Release(This);
   5555 }
   5556 /*** IBDA_DRM methods ***/
   5557 static FORCEINLINE HRESULT IBDA_DRM_GetDRMPairingStatus(IBDA_DRM* This,DWORD *pdwStatus,HRESULT *phError) {
   5558     return This->lpVtbl->GetDRMPairingStatus(This,pdwStatus,phError);
   5559 }
   5560 static 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 
   5568 HRESULT STDMETHODCALLTYPE IBDA_DRM_GetDRMPairingStatus_Proxy(
   5569     IBDA_DRM* This,
   5570     DWORD *pdwStatus,
   5571     HRESULT *phError);
   5572 void __RPC_STUB IBDA_DRM_GetDRMPairingStatus_Stub(
   5573     IRpcStubBuffer* This,
   5574     IRpcChannelBuffer* pRpcChannelBuffer,
   5575     PRPC_MESSAGE pRpcMessage,
   5576     DWORD* pdwStubPhase);
   5577 HRESULT STDMETHODCALLTYPE IBDA_DRM_PerformDRMPairing_Proxy(
   5578     IBDA_DRM* This,
   5579     WINBOOL fSync);
   5580 void __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 
   5594 DEFINE_GUID(IID_IBDA_NameValueService, 0x7f0b3150, 0x7b81, 0x4ad4, 0x98,0xe3, 0x7e,0x90,0x97,0x09,0x43,0x01);
   5595 #if defined(__cplusplus) && !defined(CINTERFACE)
   5596 MIDL_INTERFACE("7f0b3150-7b81-4ad4-98e3-7e9097094301")
   5597 IBDA_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
   5620 typedef 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;
   5657 interface 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 ***/
   5673 static FORCEINLINE HRESULT IBDA_NameValueService_QueryInterface(IBDA_NameValueService* This,REFIID riid,void **ppvObject) {
   5674     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5675 }
   5676 static FORCEINLINE ULONG IBDA_NameValueService_AddRef(IBDA_NameValueService* This) {
   5677     return This->lpVtbl->AddRef(This);
   5678 }
   5679 static FORCEINLINE ULONG IBDA_NameValueService_Release(IBDA_NameValueService* This) {
   5680     return This->lpVtbl->Release(This);
   5681 }
   5682 /*** IBDA_NameValueService methods ***/
   5683 static FORCEINLINE HRESULT IBDA_NameValueService_GetValueNameByIndex(IBDA_NameValueService* This,ULONG ulIndex,BSTR *pbstrName) {
   5684     return This->lpVtbl->GetValueNameByIndex(This,ulIndex,pbstrName);
   5685 }
   5686 static FORCEINLINE HRESULT IBDA_NameValueService_GetValue(IBDA_NameValueService* This,BSTR bstrName,BSTR bstrLanguage,BSTR *pbstrValue) {
   5687     return This->lpVtbl->GetValue(This,bstrName,bstrLanguage,pbstrValue);
   5688 }
   5689 static 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 
   5697 HRESULT STDMETHODCALLTYPE IBDA_NameValueService_GetValueNameByIndex_Proxy(
   5698     IBDA_NameValueService* This,
   5699     ULONG ulIndex,
   5700     BSTR *pbstrName);
   5701 void __RPC_STUB IBDA_NameValueService_GetValueNameByIndex_Stub(
   5702     IRpcStubBuffer* This,
   5703     IRpcChannelBuffer* pRpcChannelBuffer,
   5704     PRPC_MESSAGE pRpcMessage,
   5705     DWORD* pdwStubPhase);
   5706 HRESULT STDMETHODCALLTYPE IBDA_NameValueService_GetValue_Proxy(
   5707     IBDA_NameValueService* This,
   5708     BSTR bstrName,
   5709     BSTR bstrLanguage,
   5710     BSTR *pbstrValue);
   5711 void __RPC_STUB IBDA_NameValueService_GetValue_Stub(
   5712     IRpcStubBuffer* This,
   5713     IRpcChannelBuffer* pRpcChannelBuffer,
   5714     PRPC_MESSAGE pRpcMessage,
   5715     DWORD* pdwStubPhase);
   5716 HRESULT STDMETHODCALLTYPE IBDA_NameValueService_SetValue_Proxy(
   5717     IBDA_NameValueService* This,
   5718     ULONG ulDialogRequest,
   5719     BSTR bstrLanguage,
   5720     BSTR bstrName,
   5721     BSTR bstrValue,
   5722     ULONG ulReserved);
   5723 void __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 
   5737 DEFINE_GUID(IID_IBDA_ConditionalAccessEx, 0x497c3418, 0x23cb, 0x44ba, 0xbb,0x62, 0x76,0x9f,0x50,0x6f,0xce,0xa7);
   5738 #if defined(__cplusplus) && !defined(CINTERFACE)
   5739 MIDL_INTERFACE("497c3418-23cb-44ba-bb62-769f506fcea7")
   5740 IBDA_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
   5774 typedef 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;
   5824 interface 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 ***/
   5842 static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_QueryInterface(IBDA_ConditionalAccessEx* This,REFIID riid,void **ppvObject) {
   5843     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5844 }
   5845 static FORCEINLINE ULONG IBDA_ConditionalAccessEx_AddRef(IBDA_ConditionalAccessEx* This) {
   5846     return This->lpVtbl->AddRef(This);
   5847 }
   5848 static FORCEINLINE ULONG IBDA_ConditionalAccessEx_Release(IBDA_ConditionalAccessEx* This) {
   5849     return This->lpVtbl->Release(This);
   5850 }
   5851 /*** IBDA_ConditionalAccessEx methods ***/
   5852 static 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 }
   5855 static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_SetCaptureToken(IBDA_ConditionalAccessEx* This,ULONG ulcbCaptureTokenLen,BYTE *pbCaptureToken) {
   5856     return This->lpVtbl->SetCaptureToken(This,ulcbCaptureTokenLen,pbCaptureToken);
   5857 }
   5858 static FORCEINLINE HRESULT IBDA_ConditionalAccessEx_OpenBroadcastMmi(IBDA_ConditionalAccessEx* This,ULONG ulDialogRequest,BSTR bstrLanguage,ULONG EventId) {
   5859     return This->lpVtbl->OpenBroadcastMmi(This,ulDialogRequest,bstrLanguage,EventId);
   5860 }
   5861 static 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 }
   5864 static 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 
   5872 HRESULT 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);
   5880 void __RPC_STUB IBDA_ConditionalAccessEx_CheckEntitlementToken_Stub(
   5881     IRpcStubBuffer* This,
   5882     IRpcChannelBuffer* pRpcChannelBuffer,
   5883     PRPC_MESSAGE pRpcMessage,
   5884     DWORD* pdwStubPhase);
   5885 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_SetCaptureToken_Proxy(
   5886     IBDA_ConditionalAccessEx* This,
   5887     ULONG ulcbCaptureTokenLen,
   5888     BYTE *pbCaptureToken);
   5889 void __RPC_STUB IBDA_ConditionalAccessEx_SetCaptureToken_Stub(
   5890     IRpcStubBuffer* This,
   5891     IRpcChannelBuffer* pRpcChannelBuffer,
   5892     PRPC_MESSAGE pRpcMessage,
   5893     DWORD* pdwStubPhase);
   5894 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_OpenBroadcastMmi_Proxy(
   5895     IBDA_ConditionalAccessEx* This,
   5896     ULONG ulDialogRequest,
   5897     BSTR bstrLanguage,
   5898     ULONG EventId);
   5899 void __RPC_STUB IBDA_ConditionalAccessEx_OpenBroadcastMmi_Stub(
   5900     IRpcStubBuffer* This,
   5901     IRpcChannelBuffer* pRpcChannelBuffer,
   5902     PRPC_MESSAGE pRpcMessage,
   5903     DWORD* pdwStubPhase);
   5904 HRESULT 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);
   5911 void __RPC_STUB IBDA_ConditionalAccessEx_CloseMmiDialog_Stub(
   5912     IRpcStubBuffer* This,
   5913     IRpcChannelBuffer* pRpcChannelBuffer,
   5914     PRPC_MESSAGE pRpcMessage,
   5915     DWORD* pdwStubPhase);
   5916 HRESULT STDMETHODCALLTYPE IBDA_ConditionalAccessEx_CreateDialogRequestNumber_Proxy(
   5917     IBDA_ConditionalAccessEx* This,
   5918     ULONG *pulDialogRequestNumber);
   5919 void __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 
   5933 DEFINE_GUID(IID_IBDA_ISDBConditionalAccess, 0x5e68c627, 0x16c2, 0x4e6c, 0xb1,0xe2, 0xd0,0x01,0x70,0xcd,0xaa,0x0f);
   5934 #if defined(__cplusplus) && !defined(CINTERFACE)
   5935 MIDL_INTERFACE("5e68c627-16c2-4e6c-b1e2-d00170cdaa0f")
   5936 IBDA_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
   5948 typedef 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;
   5972 interface 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 ***/
   5986 static FORCEINLINE HRESULT IBDA_ISDBConditionalAccess_QueryInterface(IBDA_ISDBConditionalAccess* This,REFIID riid,void **ppvObject) {
   5987     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   5988 }
   5989 static FORCEINLINE ULONG IBDA_ISDBConditionalAccess_AddRef(IBDA_ISDBConditionalAccess* This) {
   5990     return This->lpVtbl->AddRef(This);
   5991 }
   5992 static FORCEINLINE ULONG IBDA_ISDBConditionalAccess_Release(IBDA_ISDBConditionalAccess* This) {
   5993     return This->lpVtbl->Release(This);
   5994 }
   5995 /*** IBDA_ISDBConditionalAccess methods ***/
   5996 static 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 
   6004 HRESULT STDMETHODCALLTYPE IBDA_ISDBConditionalAccess_SetIsdbCasRequest_Proxy(
   6005     IBDA_ISDBConditionalAccess* This,
   6006     ULONG ulRequestId,
   6007     ULONG ulcbRequestBufferLen,
   6008     BYTE *pbRequestBuffer);
   6009 void __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 
   6023 DEFINE_GUID(IID_IBDA_EventingService, 0x207c413f, 0x00dc, 0x4c61, 0xba,0xd6, 0x6f,0xee,0x1f,0xf0,0x70,0x64);
   6024 #if defined(__cplusplus) && !defined(CINTERFACE)
   6025 MIDL_INTERFACE("207c413f-00dc-4c61-bad6-6fee1ff07064")
   6026 IBDA_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
   6037 typedef 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;
   6060 interface 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 ***/
   6074 static FORCEINLINE HRESULT IBDA_EventingService_QueryInterface(IBDA_EventingService* This,REFIID riid,void **ppvObject) {
   6075     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6076 }
   6077 static FORCEINLINE ULONG IBDA_EventingService_AddRef(IBDA_EventingService* This) {
   6078     return This->lpVtbl->AddRef(This);
   6079 }
   6080 static FORCEINLINE ULONG IBDA_EventingService_Release(IBDA_EventingService* This) {
   6081     return This->lpVtbl->Release(This);
   6082 }
   6083 /*** IBDA_EventingService methods ***/
   6084 static 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 
   6092 HRESULT STDMETHODCALLTYPE IBDA_EventingService_CompleteEvent_Proxy(
   6093     IBDA_EventingService* This,
   6094     ULONG ulEventID,
   6095     ULONG ulEventResult);
   6096 void __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 
   6110 DEFINE_GUID(IID_IBDA_AUX, 0x7def4c09, 0x6e66, 0x4567, 0xa8,0x19, 0xf0,0xe1,0x7f,0x4a,0x81,0xab);
   6111 #if defined(__cplusplus) && !defined(CINTERFACE)
   6112 MIDL_INTERFACE("7def4c09-6e66-4567-a819-f0e17f4a81ab")
   6113 IBDA_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
   6131 typedef 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;
   6162 interface 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 ***/
   6177 static FORCEINLINE HRESULT IBDA_AUX_QueryInterface(IBDA_AUX* This,REFIID riid,void **ppvObject) {
   6178     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6179 }
   6180 static FORCEINLINE ULONG IBDA_AUX_AddRef(IBDA_AUX* This) {
   6181     return This->lpVtbl->AddRef(This);
   6182 }
   6183 static FORCEINLINE ULONG IBDA_AUX_Release(IBDA_AUX* This) {
   6184     return This->lpVtbl->Release(This);
   6185 }
   6186 /*** IBDA_AUX methods ***/
   6187 static FORCEINLINE HRESULT IBDA_AUX_QueryCapabilities(IBDA_AUX* This,DWORD *pdwNumAuxInputsBSTR) {
   6188     return This->lpVtbl->QueryCapabilities(This,pdwNumAuxInputsBSTR);
   6189 }
   6190 static 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 
   6198 HRESULT STDMETHODCALLTYPE IBDA_AUX_QueryCapabilities_Proxy(
   6199     IBDA_AUX* This,
   6200     DWORD *pdwNumAuxInputsBSTR);
   6201 void __RPC_STUB IBDA_AUX_QueryCapabilities_Stub(
   6202     IRpcStubBuffer* This,
   6203     IRpcChannelBuffer* pRpcChannelBuffer,
   6204     PRPC_MESSAGE pRpcMessage,
   6205     DWORD* pdwStubPhase);
   6206 HRESULT 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);
   6214 void __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 
   6228 DEFINE_GUID(IID_IBDA_Encoder, 0x3a8bad59, 0x59fe, 0x4559, 0xa0,0xba, 0x39,0x6c,0xfa,0xa9,0x8a,0xe3);
   6229 #if defined(__cplusplus) && !defined(CINTERFACE)
   6230 MIDL_INTERFACE("3a8bad59-59fe-4559-a0ba-396cfaa98ae3")
   6231 IBDA_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
   6290 typedef 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;
   6365 interface 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 ***/
   6383 static FORCEINLINE HRESULT IBDA_Encoder_QueryInterface(IBDA_Encoder* This,REFIID riid,void **ppvObject) {
   6384     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6385 }
   6386 static FORCEINLINE ULONG IBDA_Encoder_AddRef(IBDA_Encoder* This) {
   6387     return This->lpVtbl->AddRef(This);
   6388 }
   6389 static FORCEINLINE ULONG IBDA_Encoder_Release(IBDA_Encoder* This) {
   6390     return This->lpVtbl->Release(This);
   6391 }
   6392 /*** IBDA_Encoder methods ***/
   6393 static FORCEINLINE HRESULT IBDA_Encoder_QueryCapabilities(IBDA_Encoder* This,DWORD *NumAudioFmts,DWORD *NumVideoFmts) {
   6394     return This->lpVtbl->QueryCapabilities(This,NumAudioFmts,NumVideoFmts);
   6395 }
   6396 static 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 }
   6399 static 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 }
   6402 static 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 }
   6405 static 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 
   6413 HRESULT STDMETHODCALLTYPE IBDA_Encoder_QueryCapabilities_Proxy(
   6414     IBDA_Encoder* This,
   6415     DWORD *NumAudioFmts,
   6416     DWORD *NumVideoFmts);
   6417 void __RPC_STUB IBDA_Encoder_QueryCapabilities_Stub(
   6418     IRpcStubBuffer* This,
   6419     IRpcChannelBuffer* pRpcChannelBuffer,
   6420     PRPC_MESSAGE pRpcMessage,
   6421     DWORD* pdwStubPhase);
   6422 HRESULT 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);
   6430 void __RPC_STUB IBDA_Encoder_EnumAudioCapability_Stub(
   6431     IRpcStubBuffer* This,
   6432     IRpcChannelBuffer* pRpcChannelBuffer,
   6433     PRPC_MESSAGE pRpcMessage,
   6434     DWORD* pdwStubPhase);
   6435 HRESULT 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);
   6445 void __RPC_STUB IBDA_Encoder_EnumVideoCapability_Stub(
   6446     IRpcStubBuffer* This,
   6447     IRpcChannelBuffer* pRpcChannelBuffer,
   6448     PRPC_MESSAGE pRpcMessage,
   6449     DWORD* pdwStubPhase);
   6450 HRESULT 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);
   6459 void __RPC_STUB IBDA_Encoder_SetParameters_Stub(
   6460     IRpcStubBuffer* This,
   6461     IRpcChannelBuffer* pRpcChannelBuffer,
   6462     PRPC_MESSAGE pRpcMessage,
   6463     DWORD* pdwStubPhase);
   6464 HRESULT 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);
   6485 void __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 
   6499 DEFINE_GUID(IID_IBDA_FDC, 0x138adc7e, 0x58ae, 0x437f, 0xb0,0xb4, 0xc9,0xfe,0x19,0xd5,0xb4,0xac);
   6500 #if defined(__cplusplus) && !defined(CINTERFACE)
   6501 MIDL_INTERFACE("138adc7e-58ae-437f-b0b4-c9fe19d5b4ac")
   6502 IBDA_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
   6541 typedef 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;
   6598 interface 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 ***/
   6618 static FORCEINLINE HRESULT IBDA_FDC_QueryInterface(IBDA_FDC* This,REFIID riid,void **ppvObject) {
   6619     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6620 }
   6621 static FORCEINLINE ULONG IBDA_FDC_AddRef(IBDA_FDC* This) {
   6622     return This->lpVtbl->AddRef(This);
   6623 }
   6624 static FORCEINLINE ULONG IBDA_FDC_Release(IBDA_FDC* This) {
   6625     return This->lpVtbl->Release(This);
   6626 }
   6627 /*** IBDA_FDC methods ***/
   6628 static 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 }
   6631 static FORCEINLINE HRESULT IBDA_FDC_RequestTables(IBDA_FDC* This,BSTR TableIDs) {
   6632     return This->lpVtbl->RequestTables(This,TableIDs);
   6633 }
   6634 static FORCEINLINE HRESULT IBDA_FDC_AddPid(IBDA_FDC* This,BSTR PidsToAdd,DWORD *RemainingFilterEntries) {
   6635     return This->lpVtbl->AddPid(This,PidsToAdd,RemainingFilterEntries);
   6636 }
   6637 static FORCEINLINE HRESULT IBDA_FDC_RemovePid(IBDA_FDC* This,BSTR PidsToRemove) {
   6638     return This->lpVtbl->RemovePid(This,PidsToRemove);
   6639 }
   6640 static FORCEINLINE HRESULT IBDA_FDC_AddTid(IBDA_FDC* This,BSTR TidsToAdd,BSTR *CurrentTidList) {
   6641     return This->lpVtbl->AddTid(This,TidsToAdd,CurrentTidList);
   6642 }
   6643 static FORCEINLINE HRESULT IBDA_FDC_RemoveTid(IBDA_FDC* This,BSTR TidsToRemove) {
   6644     return This->lpVtbl->RemoveTid(This,TidsToRemove);
   6645 }
   6646 static 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 
   6654 HRESULT 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);
   6663 void __RPC_STUB IBDA_FDC_GetStatus_Stub(
   6664     IRpcStubBuffer* This,
   6665     IRpcChannelBuffer* pRpcChannelBuffer,
   6666     PRPC_MESSAGE pRpcMessage,
   6667     DWORD* pdwStubPhase);
   6668 HRESULT STDMETHODCALLTYPE IBDA_FDC_RequestTables_Proxy(
   6669     IBDA_FDC* This,
   6670     BSTR TableIDs);
   6671 void __RPC_STUB IBDA_FDC_RequestTables_Stub(
   6672     IRpcStubBuffer* This,
   6673     IRpcChannelBuffer* pRpcChannelBuffer,
   6674     PRPC_MESSAGE pRpcMessage,
   6675     DWORD* pdwStubPhase);
   6676 HRESULT STDMETHODCALLTYPE IBDA_FDC_AddPid_Proxy(
   6677     IBDA_FDC* This,
   6678     BSTR PidsToAdd,
   6679     DWORD *RemainingFilterEntries);
   6680 void __RPC_STUB IBDA_FDC_AddPid_Stub(
   6681     IRpcStubBuffer* This,
   6682     IRpcChannelBuffer* pRpcChannelBuffer,
   6683     PRPC_MESSAGE pRpcMessage,
   6684     DWORD* pdwStubPhase);
   6685 HRESULT STDMETHODCALLTYPE IBDA_FDC_RemovePid_Proxy(
   6686     IBDA_FDC* This,
   6687     BSTR PidsToRemove);
   6688 void __RPC_STUB IBDA_FDC_RemovePid_Stub(
   6689     IRpcStubBuffer* This,
   6690     IRpcChannelBuffer* pRpcChannelBuffer,
   6691     PRPC_MESSAGE pRpcMessage,
   6692     DWORD* pdwStubPhase);
   6693 HRESULT STDMETHODCALLTYPE IBDA_FDC_AddTid_Proxy(
   6694     IBDA_FDC* This,
   6695     BSTR TidsToAdd,
   6696     BSTR *CurrentTidList);
   6697 void __RPC_STUB IBDA_FDC_AddTid_Stub(
   6698     IRpcStubBuffer* This,
   6699     IRpcChannelBuffer* pRpcChannelBuffer,
   6700     PRPC_MESSAGE pRpcMessage,
   6701     DWORD* pdwStubPhase);
   6702 HRESULT STDMETHODCALLTYPE IBDA_FDC_RemoveTid_Proxy(
   6703     IBDA_FDC* This,
   6704     BSTR TidsToRemove);
   6705 void __RPC_STUB IBDA_FDC_RemoveTid_Stub(
   6706     IRpcStubBuffer* This,
   6707     IRpcChannelBuffer* pRpcChannelBuffer,
   6708     PRPC_MESSAGE pRpcMessage,
   6709     DWORD* pdwStubPhase);
   6710 HRESULT STDMETHODCALLTYPE IBDA_FDC_GetTableSection_Proxy(
   6711     IBDA_FDC* This,
   6712     DWORD *Pid,
   6713     DWORD MaxBufferSize,
   6714     DWORD *ActualSize,
   6715     BYTE *SecBuffer);
   6716 void __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 
   6730 DEFINE_GUID(IID_IBDA_GuideDataDeliveryService, 0xc0afcb73, 0x23e7, 0x4bc6, 0xba,0xfa, 0xfd,0xc1,0x67,0xb4,0x71,0x9f);
   6731 #if defined(__cplusplus) && !defined(CINTERFACE)
   6732 MIDL_INTERFACE("c0afcb73-23e7-4bc6-bafa-fdc167b4719f")
   6733 IBDA_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
   6763 typedef 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;
   6809 interface 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 ***/
   6828 static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_QueryInterface(IBDA_GuideDataDeliveryService* This,REFIID riid,void **ppvObject) {
   6829     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6830 }
   6831 static FORCEINLINE ULONG IBDA_GuideDataDeliveryService_AddRef(IBDA_GuideDataDeliveryService* This) {
   6832     return This->lpVtbl->AddRef(This);
   6833 }
   6834 static FORCEINLINE ULONG IBDA_GuideDataDeliveryService_Release(IBDA_GuideDataDeliveryService* This) {
   6835     return This->lpVtbl->Release(This);
   6836 }
   6837 /*** IBDA_GuideDataDeliveryService methods ***/
   6838 static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetGuideDataType(IBDA_GuideDataDeliveryService* This,GUID *pguidDataType) {
   6839     return This->lpVtbl->GetGuideDataType(This,pguidDataType);
   6840 }
   6841 static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetGuideData(IBDA_GuideDataDeliveryService* This,ULONG *pulcbBufferLen,BYTE *pbBuffer,ULONG *pulGuideDataPercentageProgress) {
   6842     return This->lpVtbl->GetGuideData(This,pulcbBufferLen,pbBuffer,pulGuideDataPercentageProgress);
   6843 }
   6844 static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_RequestGuideDataUpdate(IBDA_GuideDataDeliveryService* This) {
   6845     return This->lpVtbl->RequestGuideDataUpdate(This);
   6846 }
   6847 static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx(IBDA_GuideDataDeliveryService* This,ULONG64 ul64ServiceIdx,BSTR *pbstrTuneXml) {
   6848     return This->lpVtbl->GetTuneXmlFromServiceIdx(This,ul64ServiceIdx,pbstrTuneXml);
   6849 }
   6850 static FORCEINLINE HRESULT IBDA_GuideDataDeliveryService_GetServices(IBDA_GuideDataDeliveryService* This,ULONG *pulcbBufferLen,BYTE *pbBuffer) {
   6851     return This->lpVtbl->GetServices(This,pulcbBufferLen,pbBuffer);
   6852 }
   6853 static 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 
   6861 HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetGuideDataType_Proxy(
   6862     IBDA_GuideDataDeliveryService* This,
   6863     GUID *pguidDataType);
   6864 void __RPC_STUB IBDA_GuideDataDeliveryService_GetGuideDataType_Stub(
   6865     IRpcStubBuffer* This,
   6866     IRpcChannelBuffer* pRpcChannelBuffer,
   6867     PRPC_MESSAGE pRpcMessage,
   6868     DWORD* pdwStubPhase);
   6869 HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetGuideData_Proxy(
   6870     IBDA_GuideDataDeliveryService* This,
   6871     ULONG *pulcbBufferLen,
   6872     BYTE *pbBuffer,
   6873     ULONG *pulGuideDataPercentageProgress);
   6874 void __RPC_STUB IBDA_GuideDataDeliveryService_GetGuideData_Stub(
   6875     IRpcStubBuffer* This,
   6876     IRpcChannelBuffer* pRpcChannelBuffer,
   6877     PRPC_MESSAGE pRpcMessage,
   6878     DWORD* pdwStubPhase);
   6879 HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_RequestGuideDataUpdate_Proxy(
   6880     IBDA_GuideDataDeliveryService* This);
   6881 void __RPC_STUB IBDA_GuideDataDeliveryService_RequestGuideDataUpdate_Stub(
   6882     IRpcStubBuffer* This,
   6883     IRpcChannelBuffer* pRpcChannelBuffer,
   6884     PRPC_MESSAGE pRpcMessage,
   6885     DWORD* pdwStubPhase);
   6886 HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx_Proxy(
   6887     IBDA_GuideDataDeliveryService* This,
   6888     ULONG64 ul64ServiceIdx,
   6889     BSTR *pbstrTuneXml);
   6890 void __RPC_STUB IBDA_GuideDataDeliveryService_GetTuneXmlFromServiceIdx_Stub(
   6891     IRpcStubBuffer* This,
   6892     IRpcChannelBuffer* pRpcChannelBuffer,
   6893     PRPC_MESSAGE pRpcMessage,
   6894     DWORD* pdwStubPhase);
   6895 HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetServices_Proxy(
   6896     IBDA_GuideDataDeliveryService* This,
   6897     ULONG *pulcbBufferLen,
   6898     BYTE *pbBuffer);
   6899 void __RPC_STUB IBDA_GuideDataDeliveryService_GetServices_Stub(
   6900     IRpcStubBuffer* This,
   6901     IRpcChannelBuffer* pRpcChannelBuffer,
   6902     PRPC_MESSAGE pRpcMessage,
   6903     DWORD* pdwStubPhase);
   6904 HRESULT STDMETHODCALLTYPE IBDA_GuideDataDeliveryService_GetServiceInfoFromTuneXml_Proxy(
   6905     IBDA_GuideDataDeliveryService* This,
   6906     BSTR bstrTuneXml,
   6907     BSTR *pbstrServiceDescription);
   6908 void __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 
   6922 DEFINE_GUID(IID_IBDA_DRMService, 0xbff6b5bb, 0xb0ae, 0x484c, 0x9d,0xca, 0x73,0x52,0x8f,0xb0,0xb4,0x6e);
   6923 #if defined(__cplusplus) && !defined(CINTERFACE)
   6924 MIDL_INTERFACE("bff6b5bb-b0ae-484c-9dca-73528fb0b46e")
   6925 IBDA_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
   6939 typedef 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;
   6966 interface 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 ***/
   6981 static FORCEINLINE HRESULT IBDA_DRMService_QueryInterface(IBDA_DRMService* This,REFIID riid,void **ppvObject) {
   6982     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   6983 }
   6984 static FORCEINLINE ULONG IBDA_DRMService_AddRef(IBDA_DRMService* This) {
   6985     return This->lpVtbl->AddRef(This);
   6986 }
   6987 static FORCEINLINE ULONG IBDA_DRMService_Release(IBDA_DRMService* This) {
   6988     return This->lpVtbl->Release(This);
   6989 }
   6990 /*** IBDA_DRMService methods ***/
   6991 static FORCEINLINE HRESULT IBDA_DRMService_SetDRM(IBDA_DRMService* This,GUID *puuidNewDrm) {
   6992     return This->lpVtbl->SetDRM(This,puuidNewDrm);
   6993 }
   6994 static 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 
   7002 HRESULT STDMETHODCALLTYPE IBDA_DRMService_SetDRM_Proxy(
   7003     IBDA_DRMService* This,
   7004     GUID *puuidNewDrm);
   7005 void __RPC_STUB IBDA_DRMService_SetDRM_Stub(
   7006     IRpcStubBuffer* This,
   7007     IRpcChannelBuffer* pRpcChannelBuffer,
   7008     PRPC_MESSAGE pRpcMessage,
   7009     DWORD* pdwStubPhase);
   7010 HRESULT STDMETHODCALLTYPE IBDA_DRMService_GetDRMStatus_Proxy(
   7011     IBDA_DRMService* This,
   7012     BSTR *pbstrDrmUuidList,
   7013     GUID *DrmUuid);
   7014 void __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 
   7028 DEFINE_GUID(IID_IBDA_WMDRMSession, 0x4be6fa3d, 0x07cd, 0x4139, 0x8b,0x80, 0x8c,0x18,0xba,0x3a,0xec,0x88);
   7029 #if defined(__cplusplus) && !defined(CINTERFACE)
   7030 MIDL_INTERFACE("4be6fa3d-07cd-4139-8b80-8c18ba3aec88")
   7031 IBDA_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
   7084 typedef 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;
   7156 interface 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 ***/
   7177 static FORCEINLINE HRESULT IBDA_WMDRMSession_QueryInterface(IBDA_WMDRMSession* This,REFIID riid,void **ppvObject) {
   7178     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   7179 }
   7180 static FORCEINLINE ULONG IBDA_WMDRMSession_AddRef(IBDA_WMDRMSession* This) {
   7181     return This->lpVtbl->AddRef(This);
   7182 }
   7183 static FORCEINLINE ULONG IBDA_WMDRMSession_Release(IBDA_WMDRMSession* This) {
   7184     return This->lpVtbl->Release(This);
   7185 }
   7186 /*** IBDA_WMDRMSession methods ***/
   7187 static 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 }
   7190 static FORCEINLINE HRESULT IBDA_WMDRMSession_SetRevInfo(IBDA_WMDRMSession* This,ULONG ulRevInfoLen,BYTE *pbRevInfo) {
   7191     return This->lpVtbl->SetRevInfo(This,ulRevInfoLen,pbRevInfo);
   7192 }
   7193 static FORCEINLINE HRESULT IBDA_WMDRMSession_SetCrl(IBDA_WMDRMSession* This,ULONG ulCrlLen,BYTE *pbCrlLen) {
   7194     return This->lpVtbl->SetCrl(This,ulCrlLen,pbCrlLen);
   7195 }
   7196 static 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 }
   7199 static FORCEINLINE HRESULT IBDA_WMDRMSession_GetLicense(IBDA_WMDRMSession* This,GUID *uuidKey,ULONG *pulPackageLen,BYTE *pbPackage) {
   7200     return This->lpVtbl->GetLicense(This,uuidKey,pulPackageLen,pbPackage);
   7201 }
   7202 static FORCEINLINE HRESULT IBDA_WMDRMSession_ReissueLicense(IBDA_WMDRMSession* This,GUID *uuidKey) {
   7203     return This->lpVtbl->ReissueLicense(This,uuidKey);
   7204 }
   7205 static 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 }
   7208 static 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 
   7216 HRESULT 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);
   7227 void __RPC_STUB IBDA_WMDRMSession_GetStatus_Stub(
   7228     IRpcStubBuffer* This,
   7229     IRpcChannelBuffer* pRpcChannelBuffer,
   7230     PRPC_MESSAGE pRpcMessage,
   7231     DWORD* pdwStubPhase);
   7232 HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_SetRevInfo_Proxy(
   7233     IBDA_WMDRMSession* This,
   7234     ULONG ulRevInfoLen,
   7235     BYTE *pbRevInfo);
   7236 void __RPC_STUB IBDA_WMDRMSession_SetRevInfo_Stub(
   7237     IRpcStubBuffer* This,
   7238     IRpcChannelBuffer* pRpcChannelBuffer,
   7239     PRPC_MESSAGE pRpcMessage,
   7240     DWORD* pdwStubPhase);
   7241 HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_SetCrl_Proxy(
   7242     IBDA_WMDRMSession* This,
   7243     ULONG ulCrlLen,
   7244     BYTE *pbCrlLen);
   7245 void __RPC_STUB IBDA_WMDRMSession_SetCrl_Stub(
   7246     IRpcStubBuffer* This,
   7247     IRpcChannelBuffer* pRpcChannelBuffer,
   7248     PRPC_MESSAGE pRpcMessage,
   7249     DWORD* pdwStubPhase);
   7250 HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_TransactMessage_Proxy(
   7251     IBDA_WMDRMSession* This,
   7252     ULONG ulcbRequest,
   7253     BYTE *pbRequest,
   7254     ULONG *pulcbResponse,
   7255     BYTE *pbResponse);
   7256 void __RPC_STUB IBDA_WMDRMSession_TransactMessage_Stub(
   7257     IRpcStubBuffer* This,
   7258     IRpcChannelBuffer* pRpcChannelBuffer,
   7259     PRPC_MESSAGE pRpcMessage,
   7260     DWORD* pdwStubPhase);
   7261 HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_GetLicense_Proxy(
   7262     IBDA_WMDRMSession* This,
   7263     GUID *uuidKey,
   7264     ULONG *pulPackageLen,
   7265     BYTE *pbPackage);
   7266 void __RPC_STUB IBDA_WMDRMSession_GetLicense_Stub(
   7267     IRpcStubBuffer* This,
   7268     IRpcChannelBuffer* pRpcChannelBuffer,
   7269     PRPC_MESSAGE pRpcMessage,
   7270     DWORD* pdwStubPhase);
   7271 HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_ReissueLicense_Proxy(
   7272     IBDA_WMDRMSession* This,
   7273     GUID *uuidKey);
   7274 void __RPC_STUB IBDA_WMDRMSession_ReissueLicense_Stub(
   7275     IRpcStubBuffer* This,
   7276     IRpcChannelBuffer* pRpcChannelBuffer,
   7277     PRPC_MESSAGE pRpcMessage,
   7278     DWORD* pdwStubPhase);
   7279 HRESULT 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);
   7288 void __RPC_STUB IBDA_WMDRMSession_RenewLicense_Stub(
   7289     IRpcStubBuffer* This,
   7290     IRpcChannelBuffer* pRpcChannelBuffer,
   7291     PRPC_MESSAGE pRpcMessage,
   7292     DWORD* pdwStubPhase);
   7293 HRESULT STDMETHODCALLTYPE IBDA_WMDRMSession_GetKeyInfo_Proxy(
   7294     IBDA_WMDRMSession* This,
   7295     ULONG *pulKeyInfoLen,
   7296     BYTE *pbKeyInfo);
   7297 void __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 
   7311 DEFINE_GUID(IID_IBDA_WMDRMTuner, 0x86d979cf, 0xa8a7, 0x4f94, 0xb5,0xfb, 0x14,0xc0,0xac,0xa6,0x8f,0xe6);
   7312 #if defined(__cplusplus) && !defined(CINTERFACE)
   7313 MIDL_INTERFACE("86d979cf-a8a7-4f94-b5fb-14c0aca68fe6")
   7314 IBDA_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
   7349 typedef 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;
   7401 interface 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 ***/
   7420 static FORCEINLINE HRESULT IBDA_WMDRMTuner_QueryInterface(IBDA_WMDRMTuner* This,REFIID riid,void **ppvObject) {
   7421     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   7422 }
   7423 static FORCEINLINE ULONG IBDA_WMDRMTuner_AddRef(IBDA_WMDRMTuner* This) {
   7424     return This->lpVtbl->AddRef(This);
   7425 }
   7426 static FORCEINLINE ULONG IBDA_WMDRMTuner_Release(IBDA_WMDRMTuner* This) {
   7427     return This->lpVtbl->Release(This);
   7428 }
   7429 /*** IBDA_WMDRMTuner methods ***/
   7430 static 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 }
   7433 static FORCEINLINE HRESULT IBDA_WMDRMTuner_CancelCaptureToken(IBDA_WMDRMTuner* This,ULONG ulCaptureTokenLen,BYTE *pbCaptureToken) {
   7434     return This->lpVtbl->CancelCaptureToken(This,ulCaptureTokenLen,pbCaptureToken);
   7435 }
   7436 static FORCEINLINE HRESULT IBDA_WMDRMTuner_SetPidProtection(IBDA_WMDRMTuner* This,ULONG ulPid,GUID *uuidKey) {
   7437     return This->lpVtbl->SetPidProtection(This,ulPid,uuidKey);
   7438 }
   7439 static FORCEINLINE HRESULT IBDA_WMDRMTuner_GetPidProtection(IBDA_WMDRMTuner* This,ULONG pulPid,GUID *uuidKey) {
   7440     return This->lpVtbl->GetPidProtection(This,pulPid,uuidKey);
   7441 }
   7442 static FORCEINLINE HRESULT IBDA_WMDRMTuner_SetSyncValue(IBDA_WMDRMTuner* This,ULONG ulSyncValue) {
   7443     return This->lpVtbl->SetSyncValue(This,ulSyncValue);
   7444 }
   7445 static 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 
   7453 HRESULT 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);
   7462 void __RPC_STUB IBDA_WMDRMTuner_PurchaseEntitlement_Stub(
   7463     IRpcStubBuffer* This,
   7464     IRpcChannelBuffer* pRpcChannelBuffer,
   7465     PRPC_MESSAGE pRpcMessage,
   7466     DWORD* pdwStubPhase);
   7467 HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_CancelCaptureToken_Proxy(
   7468     IBDA_WMDRMTuner* This,
   7469     ULONG ulCaptureTokenLen,
   7470     BYTE *pbCaptureToken);
   7471 void __RPC_STUB IBDA_WMDRMTuner_CancelCaptureToken_Stub(
   7472     IRpcStubBuffer* This,
   7473     IRpcChannelBuffer* pRpcChannelBuffer,
   7474     PRPC_MESSAGE pRpcMessage,
   7475     DWORD* pdwStubPhase);
   7476 HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_SetPidProtection_Proxy(
   7477     IBDA_WMDRMTuner* This,
   7478     ULONG ulPid,
   7479     GUID *uuidKey);
   7480 void __RPC_STUB IBDA_WMDRMTuner_SetPidProtection_Stub(
   7481     IRpcStubBuffer* This,
   7482     IRpcChannelBuffer* pRpcChannelBuffer,
   7483     PRPC_MESSAGE pRpcMessage,
   7484     DWORD* pdwStubPhase);
   7485 HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_GetPidProtection_Proxy(
   7486     IBDA_WMDRMTuner* This,
   7487     ULONG pulPid,
   7488     GUID *uuidKey);
   7489 void __RPC_STUB IBDA_WMDRMTuner_GetPidProtection_Stub(
   7490     IRpcStubBuffer* This,
   7491     IRpcChannelBuffer* pRpcChannelBuffer,
   7492     PRPC_MESSAGE pRpcMessage,
   7493     DWORD* pdwStubPhase);
   7494 HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_SetSyncValue_Proxy(
   7495     IBDA_WMDRMTuner* This,
   7496     ULONG ulSyncValue);
   7497 void __RPC_STUB IBDA_WMDRMTuner_SetSyncValue_Stub(
   7498     IRpcStubBuffer* This,
   7499     IRpcChannelBuffer* pRpcChannelBuffer,
   7500     PRPC_MESSAGE pRpcMessage,
   7501     DWORD* pdwStubPhase);
   7502 HRESULT STDMETHODCALLTYPE IBDA_WMDRMTuner_GetStartCodeProfile_Proxy(
   7503     IBDA_WMDRMTuner* This,
   7504     ULONG *pulStartCodeProfileLen,
   7505     BYTE *pbStartCodeProfile);
   7506 void __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 
   7520 DEFINE_GUID(IID_IBDA_DRIDRMService, 0x1f9bc2a5, 0x44a3, 0x4c52, 0xaa,0xb1, 0x0b,0xbc,0xe5,0xa1,0x38,0x1d);
   7521 #if defined(__cplusplus) && !defined(CINTERFACE)
   7522 MIDL_INTERFACE("1f9bc2a5-44a3-4c52-aab1-0bbce5a1381d")
   7523 IBDA_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
   7540 typedef 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;
   7571 interface 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 ***/
   7587 static FORCEINLINE HRESULT IBDA_DRIDRMService_QueryInterface(IBDA_DRIDRMService* This,REFIID riid,void **ppvObject) {
   7588     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   7589 }
   7590 static FORCEINLINE ULONG IBDA_DRIDRMService_AddRef(IBDA_DRIDRMService* This) {
   7591     return This->lpVtbl->AddRef(This);
   7592 }
   7593 static FORCEINLINE ULONG IBDA_DRIDRMService_Release(IBDA_DRIDRMService* This) {
   7594     return This->lpVtbl->Release(This);
   7595 }
   7596 /*** IBDA_DRIDRMService methods ***/
   7597 static FORCEINLINE HRESULT IBDA_DRIDRMService_SetDRM(IBDA_DRIDRMService* This,BSTR bstrNewDrm) {
   7598     return This->lpVtbl->SetDRM(This,bstrNewDrm);
   7599 }
   7600 static FORCEINLINE HRESULT IBDA_DRIDRMService_GetDRMStatus(IBDA_DRIDRMService* This,BSTR *pbstrDrmUuidList,GUID *DrmUuid) {
   7601     return This->lpVtbl->GetDRMStatus(This,pbstrDrmUuidList,DrmUuid);
   7602 }
   7603 static 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 
   7611 HRESULT STDMETHODCALLTYPE IBDA_DRIDRMService_SetDRM_Proxy(
   7612     IBDA_DRIDRMService* This,
   7613     BSTR bstrNewDrm);
   7614 void __RPC_STUB IBDA_DRIDRMService_SetDRM_Stub(
   7615     IRpcStubBuffer* This,
   7616     IRpcChannelBuffer* pRpcChannelBuffer,
   7617     PRPC_MESSAGE pRpcMessage,
   7618     DWORD* pdwStubPhase);
   7619 HRESULT STDMETHODCALLTYPE IBDA_DRIDRMService_GetDRMStatus_Proxy(
   7620     IBDA_DRIDRMService* This,
   7621     BSTR *pbstrDrmUuidList,
   7622     GUID *DrmUuid);
   7623 void __RPC_STUB IBDA_DRIDRMService_GetDRMStatus_Stub(
   7624     IRpcStubBuffer* This,
   7625     IRpcChannelBuffer* pRpcChannelBuffer,
   7626     PRPC_MESSAGE pRpcMessage,
   7627     DWORD* pdwStubPhase);
   7628 HRESULT STDMETHODCALLTYPE IBDA_DRIDRMService_GetPairingStatus_Proxy(
   7629     IBDA_DRIDRMService* This,
   7630     BDA_DrmPairingError *penumPairingStatus);
   7631 void __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 
   7645 DEFINE_GUID(IID_IBDA_DRIWMDRMSession, 0x05c690f8, 0x56db, 0x4bb2, 0xb0,0x53, 0x79,0xc1,0x20,0x98,0xbb,0x26);
   7646 #if defined(__cplusplus) && !defined(CINTERFACE)
   7647 MIDL_INTERFACE("05c690f8-56db-4bb2-b053-79c12098bb26")
   7648 IBDA_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
   7686 typedef 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;
   7741 interface 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 ***/
   7761 static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_QueryInterface(IBDA_DRIWMDRMSession* This,REFIID riid,void **ppvObject) {
   7762     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   7763 }
   7764 static FORCEINLINE ULONG IBDA_DRIWMDRMSession_AddRef(IBDA_DRIWMDRMSession* This) {
   7765     return This->lpVtbl->AddRef(This);
   7766 }
   7767 static FORCEINLINE ULONG IBDA_DRIWMDRMSession_Release(IBDA_DRIWMDRMSession* This) {
   7768     return This->lpVtbl->Release(This);
   7769 }
   7770 /*** IBDA_DRIWMDRMSession methods ***/
   7771 static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_AcknowledgeLicense(IBDA_DRIWMDRMSession* This,HRESULT hrLicenseAck) {
   7772     return This->lpVtbl->AcknowledgeLicense(This,hrLicenseAck);
   7773 }
   7774 static 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 }
   7777 static 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 }
   7780 static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_SetRevInfo(IBDA_DRIWMDRMSession* This,DWORD dwRevInfoLen,BYTE *pbRevInfo,DWORD *pdwResponse) {
   7781     return This->lpVtbl->SetRevInfo(This,dwRevInfoLen,pbRevInfo,pdwResponse);
   7782 }
   7783 static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_SetCrl(IBDA_DRIWMDRMSession* This,DWORD dwCrlLen,BYTE *pbCrlLen,DWORD *pdwResponse) {
   7784     return This->lpVtbl->SetCrl(This,dwCrlLen,pbCrlLen,pdwResponse);
   7785 }
   7786 static FORCEINLINE HRESULT IBDA_DRIWMDRMSession_GetHMSAssociationData(IBDA_DRIWMDRMSession* This) {
   7787     return This->lpVtbl->GetHMSAssociationData(This);
   7788 }
   7789 static 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 
   7797 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_AcknowledgeLicense_Proxy(
   7798     IBDA_DRIWMDRMSession* This,
   7799     HRESULT hrLicenseAck);
   7800 void __RPC_STUB IBDA_DRIWMDRMSession_AcknowledgeLicense_Stub(
   7801     IRpcStubBuffer* This,
   7802     IRpcChannelBuffer* pRpcChannelBuffer,
   7803     PRPC_MESSAGE pRpcMessage,
   7804     DWORD* pdwStubPhase);
   7805 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_ProcessLicenseChallenge_Proxy(
   7806     IBDA_DRIWMDRMSession* This,
   7807     DWORD dwcbLicenseMessage,
   7808     BYTE *pbLicenseMessage,
   7809     DWORD *pdwcbLicenseResponse,
   7810     BYTE **ppbLicenseResponse);
   7811 void __RPC_STUB IBDA_DRIWMDRMSession_ProcessLicenseChallenge_Stub(
   7812     IRpcStubBuffer* This,
   7813     IRpcChannelBuffer* pRpcChannelBuffer,
   7814     PRPC_MESSAGE pRpcMessage,
   7815     DWORD* pdwStubPhase);
   7816 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_ProcessRegistrationChallenge_Proxy(
   7817     IBDA_DRIWMDRMSession* This,
   7818     DWORD dwcbRegistrationMessage,
   7819     BYTE *pbRegistrationMessage,
   7820     DWORD *pdwcbRegistrationResponse,
   7821     BYTE **ppbRegistrationResponse);
   7822 void __RPC_STUB IBDA_DRIWMDRMSession_ProcessRegistrationChallenge_Stub(
   7823     IRpcStubBuffer* This,
   7824     IRpcChannelBuffer* pRpcChannelBuffer,
   7825     PRPC_MESSAGE pRpcMessage,
   7826     DWORD* pdwStubPhase);
   7827 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_SetRevInfo_Proxy(
   7828     IBDA_DRIWMDRMSession* This,
   7829     DWORD dwRevInfoLen,
   7830     BYTE *pbRevInfo,
   7831     DWORD *pdwResponse);
   7832 void __RPC_STUB IBDA_DRIWMDRMSession_SetRevInfo_Stub(
   7833     IRpcStubBuffer* This,
   7834     IRpcChannelBuffer* pRpcChannelBuffer,
   7835     PRPC_MESSAGE pRpcMessage,
   7836     DWORD* pdwStubPhase);
   7837 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_SetCrl_Proxy(
   7838     IBDA_DRIWMDRMSession* This,
   7839     DWORD dwCrlLen,
   7840     BYTE *pbCrlLen,
   7841     DWORD *pdwResponse);
   7842 void __RPC_STUB IBDA_DRIWMDRMSession_SetCrl_Stub(
   7843     IRpcStubBuffer* This,
   7844     IRpcChannelBuffer* pRpcChannelBuffer,
   7845     PRPC_MESSAGE pRpcMessage,
   7846     DWORD* pdwStubPhase);
   7847 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_GetHMSAssociationData_Proxy(
   7848     IBDA_DRIWMDRMSession* This);
   7849 void __RPC_STUB IBDA_DRIWMDRMSession_GetHMSAssociationData_Stub(
   7850     IRpcStubBuffer* This,
   7851     IRpcChannelBuffer* pRpcChannelBuffer,
   7852     PRPC_MESSAGE pRpcMessage,
   7853     DWORD* pdwStubPhase);
   7854 HRESULT STDMETHODCALLTYPE IBDA_DRIWMDRMSession_GetLastCardeaError_Proxy(
   7855     IBDA_DRIWMDRMSession* This,
   7856     DWORD *pdwError);
   7857 void __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 
   7871 DEFINE_GUID(IID_IBDA_MUX, 0x942aafec, 0x4c05, 0x4c74, 0xb8,0xeb, 0x87,0x06,0xc2,0xa4,0x94,0x3f);
   7872 #if defined(__cplusplus) && !defined(CINTERFACE)
   7873 MIDL_INTERFACE("942aafec-4c05-4c74-b8eb-8706c2a4943f")
   7874 IBDA_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
   7889 typedef 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;
   7917 interface 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 ***/
   7932 static FORCEINLINE HRESULT IBDA_MUX_QueryInterface(IBDA_MUX* This,REFIID riid,void **ppvObject) {
   7933     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   7934 }
   7935 static FORCEINLINE ULONG IBDA_MUX_AddRef(IBDA_MUX* This) {
   7936     return This->lpVtbl->AddRef(This);
   7937 }
   7938 static FORCEINLINE ULONG IBDA_MUX_Release(IBDA_MUX* This) {
   7939     return This->lpVtbl->Release(This);
   7940 }
   7941 /*** IBDA_MUX methods ***/
   7942 static FORCEINLINE HRESULT IBDA_MUX_SetPidList(IBDA_MUX* This,ULONG ulPidListCount,BDA_MUX_PIDLISTITEM *pbPidListBuffer) {
   7943     return This->lpVtbl->SetPidList(This,ulPidListCount,pbPidListBuffer);
   7944 }
   7945 static 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 
   7953 HRESULT STDMETHODCALLTYPE IBDA_MUX_SetPidList_Proxy(
   7954     IBDA_MUX* This,
   7955     ULONG ulPidListCount,
   7956     BDA_MUX_PIDLISTITEM *pbPidListBuffer);
   7957 void __RPC_STUB IBDA_MUX_SetPidList_Stub(
   7958     IRpcStubBuffer* This,
   7959     IRpcChannelBuffer* pRpcChannelBuffer,
   7960     PRPC_MESSAGE pRpcMessage,
   7961     DWORD* pdwStubPhase);
   7962 HRESULT STDMETHODCALLTYPE IBDA_MUX_GetPidList_Proxy(
   7963     IBDA_MUX* This,
   7964     ULONG *pulPidListCount,
   7965     BDA_MUX_PIDLISTITEM *pbPidListBuffer);
   7966 void __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 
   7980 DEFINE_GUID(IID_IBDA_TransportStreamSelector, 0x1dcfafe9, 0xb45e, 0x41b3, 0xbb,0x2a, 0x56,0x1e,0xb1,0x29,0xae,0x98);
   7981 #if defined(__cplusplus) && !defined(CINTERFACE)
   7982 MIDL_INTERFACE("1dcfafe9-b45e-41b3-bb2a-561eb129ae98")
   7983 IBDA_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
   7997 typedef 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;
   8024 interface 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 ***/
   8039 static FORCEINLINE HRESULT IBDA_TransportStreamSelector_QueryInterface(IBDA_TransportStreamSelector* This,REFIID riid,void **ppvObject) {
   8040     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   8041 }
   8042 static FORCEINLINE ULONG IBDA_TransportStreamSelector_AddRef(IBDA_TransportStreamSelector* This) {
   8043     return This->lpVtbl->AddRef(This);
   8044 }
   8045 static FORCEINLINE ULONG IBDA_TransportStreamSelector_Release(IBDA_TransportStreamSelector* This) {
   8046     return This->lpVtbl->Release(This);
   8047 }
   8048 /*** IBDA_TransportStreamSelector methods ***/
   8049 static FORCEINLINE HRESULT IBDA_TransportStreamSelector_SetTSID(IBDA_TransportStreamSelector* This,USHORT usTSID) {
   8050     return This->lpVtbl->SetTSID(This,usTSID);
   8051 }
   8052 static 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 
   8060 HRESULT STDMETHODCALLTYPE IBDA_TransportStreamSelector_SetTSID_Proxy(
   8061     IBDA_TransportStreamSelector* This,
   8062     USHORT usTSID);
   8063 void __RPC_STUB IBDA_TransportStreamSelector_SetTSID_Stub(
   8064     IRpcStubBuffer* This,
   8065     IRpcChannelBuffer* pRpcChannelBuffer,
   8066     PRPC_MESSAGE pRpcMessage,
   8067     DWORD* pdwStubPhase);
   8068 HRESULT STDMETHODCALLTYPE IBDA_TransportStreamSelector_GetTSInformation_Proxy(
   8069     IBDA_TransportStreamSelector* This,
   8070     ULONG *pulTSInformationBufferLen,
   8071     BYTE *pbTSInformationBuffer);
   8072 void __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 
   8086 DEFINE_GUID(IID_IBDA_UserActivityService, 0x53b14189, 0xe478, 0x4b7a, 0xa1,0xff, 0x50,0x6d,0xb4,0xb9,0x9d,0xfe);
   8087 #if defined(__cplusplus) && !defined(CINTERFACE)
   8088 MIDL_INTERFACE("53b14189-e478-4b7a-a1ff-506db4b99dfe")
   8089 IBDA_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
   8105 typedef 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;
   8134 interface 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 ***/
   8150 static FORCEINLINE HRESULT IBDA_UserActivityService_QueryInterface(IBDA_UserActivityService* This,REFIID riid,void **ppvObject) {
   8151     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
   8152 }
   8153 static FORCEINLINE ULONG IBDA_UserActivityService_AddRef(IBDA_UserActivityService* This) {
   8154     return This->lpVtbl->AddRef(This);
   8155 }
   8156 static FORCEINLINE ULONG IBDA_UserActivityService_Release(IBDA_UserActivityService* This) {
   8157     return This->lpVtbl->Release(This);
   8158 }
   8159 /*** IBDA_UserActivityService methods ***/
   8160 static FORCEINLINE HRESULT IBDA_UserActivityService_SetCurrentTunerUseReason(IBDA_UserActivityService* This,DWORD dwUseReason) {
   8161     return This->lpVtbl->SetCurrentTunerUseReason(This,dwUseReason);
   8162 }
   8163 static FORCEINLINE HRESULT IBDA_UserActivityService_GetUserActivityInterval(IBDA_UserActivityService* This,DWORD *pdwActivityInterval) {
   8164     return This->lpVtbl->GetUserActivityInterval(This,pdwActivityInterval);
   8165 }
   8166 static FORCEINLINE HRESULT IBDA_UserActivityService_UserActivityDetected(IBDA_UserActivityService* This) {
   8167     return This->lpVtbl->UserActivityDetected(This);
   8168 }
   8169 #endif
   8170 #endif
   8171 
   8172 #endif
   8173 
   8174 HRESULT STDMETHODCALLTYPE IBDA_UserActivityService_SetCurrentTunerUseReason_Proxy(
   8175     IBDA_UserActivityService* This,
   8176     DWORD dwUseReason);
   8177 void __RPC_STUB IBDA_UserActivityService_SetCurrentTunerUseReason_Stub(
   8178     IRpcStubBuffer* This,
   8179     IRpcChannelBuffer* pRpcChannelBuffer,
   8180     PRPC_MESSAGE pRpcMessage,
   8181     DWORD* pdwStubPhase);
   8182 HRESULT STDMETHODCALLTYPE IBDA_UserActivityService_GetUserActivityInterval_Proxy(
   8183     IBDA_UserActivityService* This,
   8184     DWORD *pdwActivityInterval);
   8185 void __RPC_STUB IBDA_UserActivityService_GetUserActivityInterval_Stub(
   8186     IRpcStubBuffer* This,
   8187     IRpcChannelBuffer* pRpcChannelBuffer,
   8188     PRPC_MESSAGE pRpcMessage,
   8189     DWORD* pdwStubPhase);
   8190 HRESULT STDMETHODCALLTYPE IBDA_UserActivityService_UserActivityDetected_Proxy(
   8191     IBDA_UserActivityService* This);
   8192 void __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 
   8222 DEFINE_GUID(CLSID_PBDA_Encoder_DATA_TYPE, 0x728fd6bc, 0x5546, 0x4716, 0xb1, 0x03, 0xf8, 0x99, 0xf5, 0xa1, 0xfa, 0x68);
   8223 DEFINE_GUID(CLSID_PBDA_FDC_DATA_TYPE, 0xe7dbf9a0, 0x22ab, 0x4047, 0x8e, 0x67, 0xef, 0x9a, 0xd5, 0x4, 0xe7, 0x29);
   8224 DEFINE_GUID(CLSID_PBDA_GDDS_DATA_TYPE, 0xC80C0DF3, 0x6052, 0x4c16, 0x9F, 0x56, 0xC4, 0x4C, 0x21, 0xF7, 0x3C, 0x45);
   8225 DEFINE_GUID(PBDA_AUX_CONNECTOR_TYPE_SVideo, 0xa0e905f4,0x24c9,0x4a54, 0xb7, 0x61, 0x21, 0x33, 0x55, 0xef, 0xc1, 0x3A);
   8226 DEFINE_GUID(PBDA_AUX_CONNECTOR_TYPE_Composite, 0xf6298b4c,0xc725,0x4d42, 0x84, 0x9b, 0x41, 0x0b, 0xbb, 0x14, 0xea, 0x62);
   8227 DEFINE_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 
   8231 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
   8232 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
   8233 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
   8234 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
   8235 
   8236 /* End additional prototypes */
   8237 
   8238 #ifdef __cplusplus
   8239 }
   8240 #endif
   8241 
   8242 #endif /* __bdaiface_h__ */
   8243