| 1 | /*** Autogenerated by WIDL 11.6 from include/mpeg2data.idl - Do not edit ***/ |
| 2 | |
| 3 | #ifdef _WIN32 |
| 4 | #ifndef __REQUIRED_RPCNDR_H_VERSION__ |
| 5 | #define __REQUIRED_RPCNDR_H_VERSION__ 475 |
| 6 | #endif |
| 7 | #include <rpc.h> |
| 8 | #include <rpcndr.h> |
| 9 | #endif |
| 10 | |
| 11 | #ifndef COM_NO_WINDOWS_H |
| 12 | #include <windows.h> |
| 13 | #include <ole2.h> |
| 14 | #endif |
| 15 | |
| 16 | #ifndef __mpeg2data_h__ |
| 17 | #define __mpeg2data_h__ |
| 18 | |
| 19 | /* Forward declarations */ |
| 20 | |
| 21 | #ifndef __IMpeg2TableFilter_FWD_DEFINED__ |
| 22 | #define __IMpeg2TableFilter_FWD_DEFINED__ |
| 23 | typedef interface IMpeg2TableFilter IMpeg2TableFilter; |
| 24 | #ifdef __cplusplus |
| 25 | interface IMpeg2TableFilter; |
| 26 | #endif /* __cplusplus */ |
| 27 | #endif |
| 28 | |
| 29 | #ifndef __Mpeg2TableFilter_FWD_DEFINED__ |
| 30 | #define __Mpeg2TableFilter_FWD_DEFINED__ |
| 31 | #ifdef __cplusplus |
| 32 | typedef class Mpeg2TableFilter Mpeg2TableFilter; |
| 33 | #else |
| 34 | typedef struct Mpeg2TableFilter Mpeg2TableFilter; |
| 35 | #endif /* defined __cplusplus */ |
| 36 | #endif /* defined __Mpeg2TableFilter_FWD_DEFINED__ */ |
| 37 | |
| 38 | #ifndef __IMpeg2Data_FWD_DEFINED__ |
| 39 | #define __IMpeg2Data_FWD_DEFINED__ |
| 40 | typedef interface IMpeg2Data IMpeg2Data; |
| 41 | #ifdef __cplusplus |
| 42 | interface IMpeg2Data; |
| 43 | #endif /* __cplusplus */ |
| 44 | #endif |
| 45 | |
| 46 | #ifndef __ISectionList_FWD_DEFINED__ |
| 47 | #define __ISectionList_FWD_DEFINED__ |
| 48 | typedef interface ISectionList ISectionList; |
| 49 | #ifdef __cplusplus |
| 50 | interface ISectionList; |
| 51 | #endif /* __cplusplus */ |
| 52 | #endif |
| 53 | |
| 54 | #ifndef __IMpeg2Stream_FWD_DEFINED__ |
| 55 | #define __IMpeg2Stream_FWD_DEFINED__ |
| 56 | typedef interface IMpeg2Stream IMpeg2Stream; |
| 57 | #ifdef __cplusplus |
| 58 | interface IMpeg2Stream; |
| 59 | #endif /* __cplusplus */ |
| 60 | #endif |
| 61 | |
| 62 | #ifndef __SectionList_FWD_DEFINED__ |
| 63 | #define __SectionList_FWD_DEFINED__ |
| 64 | #ifdef __cplusplus |
| 65 | typedef class SectionList SectionList; |
| 66 | #else |
| 67 | typedef struct SectionList SectionList; |
| 68 | #endif /* defined __cplusplus */ |
| 69 | #endif /* defined __SectionList_FWD_DEFINED__ */ |
| 70 | |
| 71 | #ifndef __Mpeg2Stream_FWD_DEFINED__ |
| 72 | #define __Mpeg2Stream_FWD_DEFINED__ |
| 73 | #ifdef __cplusplus |
| 74 | typedef class Mpeg2Stream Mpeg2Stream; |
| 75 | #else |
| 76 | typedef struct Mpeg2Stream Mpeg2Stream; |
| 77 | #endif /* defined __cplusplus */ |
| 78 | #endif /* defined __Mpeg2Stream_FWD_DEFINED__ */ |
| 79 | |
| 80 | #ifndef __Mpeg2Data_FWD_DEFINED__ |
| 81 | #define __Mpeg2Data_FWD_DEFINED__ |
| 82 | #ifdef __cplusplus |
| 83 | typedef class Mpeg2Data Mpeg2Data; |
| 84 | #else |
| 85 | typedef struct Mpeg2Data Mpeg2Data; |
| 86 | #endif /* defined __cplusplus */ |
| 87 | #endif /* defined __Mpeg2Data_FWD_DEFINED__ */ |
| 88 | |
| 89 | /* Headers for imported files */ |
| 90 | |
| 91 | #include <oaidl.h> |
| 92 | #include <ocidl.h> |
| 93 | #include <bdaiface.h> |
| 94 | #include <mpeg2structs.h> |
| 95 | |
| 96 | #ifdef __cplusplus |
| 97 | extern "C" { |
| 98 | #endif |
| 99 | |
| 100 | #ifndef __ISectionList_FWD_DEFINED__ |
| 101 | #define __ISectionList_FWD_DEFINED__ |
| 102 | typedef interface ISectionList ISectionList; |
| 103 | #ifdef __cplusplus |
| 104 | interface ISectionList; |
| 105 | #endif /* __cplusplus */ |
| 106 | #endif |
| 107 | |
| 108 | #ifndef __IMpeg2Stream_FWD_DEFINED__ |
| 109 | #define __IMpeg2Stream_FWD_DEFINED__ |
| 110 | typedef interface IMpeg2Stream IMpeg2Stream; |
| 111 | #ifdef __cplusplus |
| 112 | interface IMpeg2Stream; |
| 113 | #endif /* __cplusplus */ |
| 114 | #endif |
| 115 | |
| 116 | #define MPEG_PAT_PID 0x0000 |
| 117 | #define MPEG_PAT_TID 0x00 |
| 118 | #define MPEG_CAT_PID 0x0001 |
| 119 | #define MPEG_CAT_TID 0x01 |
| 120 | #define MPEG_PMT_TID 0x02 |
| 121 | #define MPEG_TSDT_PID 0x0002 |
| 122 | #define MPEG_TSDT_TID 0x03 |
| 123 | #define ATSC_MGT_PID 0x1ffb |
| 124 | #define ATSC_MGT_TID 0xc7 |
| 125 | #define ATSC_VCT_PID 0x1ffb |
| 126 | #define ATSC_VCT_TERR_TID 0xc8 |
| 127 | #define ATSC_VCT_CABL_TID 0xc9 |
| 128 | #define ATSC_EIT_TID 0xcb |
| 129 | #define ATSC_ETT_TID 0xcc |
| 130 | #define ATSC_RRT_TID 0xca |
| 131 | #define ATSC_RRT_PID 0x1ffb |
| 132 | #define ATSC_STT_PID 0x1ffb |
| 133 | #define ATSC_STT_TID 0xcd |
| 134 | #define ATSC_PIT_TID 0xd0 |
| 135 | #define DVB_NIT_PID 0x0010 |
| 136 | #define DVB_NIT_ACTUAL_TID 0x40 |
| 137 | #define DVB_NIT_OTHER_TID 0x41 |
| 138 | #define DVB_SDT_PID 0x0011 |
| 139 | #define DVB_SDT_ACTUAL_TID 0x42 |
| 140 | #define DVB_SDT_OTHER_TID 0x46 |
| 141 | #define DVB_BAT_PID 0x0011 |
| 142 | #define DVB_BAT_TID 0x4a |
| 143 | #define DVB_EIT_PID 0x0012 |
| 144 | #define DVB_EIT_ACTUAL_TID 0x4e |
| 145 | #define DVB_EIT_OTHER_TID 0x4f |
| 146 | #define DVB_RST_PID 0x0013 |
| 147 | #define DVB_RST_TID 0x71 |
| 148 | #define DVB_TDT_PID 0x0014 |
| 149 | #define DVB_TDT_TID 0x70 |
| 150 | #define DVB_ST_PID_16 0x0010 |
| 151 | #define DVB_ST_PID_17 0x0011 |
| 152 | #define DVB_ST_PID_18 0x0012 |
| 153 | #define DVB_ST_PID_19 0x0013 |
| 154 | #define DVB_ST_PID_20 0x0014 |
| 155 | #define DVB_ST_TID 0x72 |
| 156 | #define ISDB_ST_TID 0x72 |
| 157 | #define DVB_TOT_PID 0x0014 |
| 158 | #define DVB_TOT_TID 0x73 |
| 159 | #define DVB_DIT_PID 0x001e |
| 160 | #define DVB_DIT_TID 0x7e |
| 161 | #define DVB_SIT_PID 0x001f |
| 162 | #define DVB_SIT_TID 0x7f |
| 163 | #define ISDB_EMM_TID 0x85 |
| 164 | #define ISDB_BIT_PID 0x0024 |
| 165 | #define ISDB_BIT_TID 0xc4 |
| 166 | #define ISDB_NBIT_PID 0x0025 |
| 167 | #define ISDB_NBIT_MSG_TID 0xc5 |
| 168 | #define ISDB_NBIT_REF_TID 0xc6 |
| 169 | #define ISDB_LDT_PID 0x0025 |
| 170 | #define ISDB_LDT_TID 0xc7 |
| 171 | #define ISDB_SDTT_PID 0x0023 |
| 172 | #define ISDB_SDTT_ALT_PID 0x0028 |
| 173 | #define ISDB_SDTT_TID 0xc3 |
| 174 | #define ISDB_CDT_PID 0x0029 |
| 175 | #define ISDB_CDT_TID 0xc8 |
| 176 | #define SCTE_EAS_TID 0xd8 |
| 177 | #define SCTE_EAS_IB_PID 0x1ffb |
| 178 | #define SCTE_EAS_OOB_PID 0x1ffc |
| 179 | /***************************************************************************** |
| 180 | * IMpeg2TableFilter interface |
| 181 | */ |
| 182 | #ifndef __IMpeg2TableFilter_INTERFACE_DEFINED__ |
| 183 | #define __IMpeg2TableFilter_INTERFACE_DEFINED__ |
| 184 | |
| 185 | DEFINE_GUID(IID_IMpeg2TableFilter, 0xbdcdd913, 0x9ecd, 0x4fb2, 0x81,0xae, 0xad,0xf7,0x47,0xea,0x75,0xa5); |
| 186 | #if defined(__cplusplus) && !defined(CINTERFACE) |
| 187 | MIDL_INTERFACE("bdcdd913-9ecd-4fb2-81ae-adf747ea75a5") |
| 188 | IMpeg2TableFilter : public IUnknown |
| 189 | { |
| 190 | virtual HRESULT STDMETHODCALLTYPE AddPID( |
| 191 | PID p) = 0; |
| 192 | |
| 193 | virtual HRESULT STDMETHODCALLTYPE AddTable( |
| 194 | PID p, |
| 195 | TID t) = 0; |
| 196 | |
| 197 | virtual HRESULT STDMETHODCALLTYPE AddExtension( |
| 198 | PID p, |
| 199 | TID t, |
| 200 | TEID e) = 0; |
| 201 | |
| 202 | virtual HRESULT STDMETHODCALLTYPE RemovePID( |
| 203 | PID p) = 0; |
| 204 | |
| 205 | virtual HRESULT STDMETHODCALLTYPE RemoveTable( |
| 206 | PID p, |
| 207 | TID t) = 0; |
| 208 | |
| 209 | virtual HRESULT STDMETHODCALLTYPE RemoveExtension( |
| 210 | PID p, |
| 211 | TID t, |
| 212 | TEID e) = 0; |
| 213 | |
| 214 | }; |
| 215 | #ifdef __CRT_UUID_DECL |
| 216 | __CRT_UUID_DECL(IMpeg2TableFilter, 0xbdcdd913, 0x9ecd, 0x4fb2, 0x81,0xae, 0xad,0xf7,0x47,0xea,0x75,0xa5) |
| 217 | #endif |
| 218 | #else |
| 219 | typedef struct IMpeg2TableFilterVtbl { |
| 220 | BEGIN_INTERFACE |
| 221 | |
| 222 | /*** IUnknown methods ***/ |
| 223 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( |
| 224 | IMpeg2TableFilter *This, |
| 225 | REFIID riid, |
| 226 | void **ppvObject); |
| 227 | |
| 228 | ULONG (STDMETHODCALLTYPE *AddRef)( |
| 229 | IMpeg2TableFilter *This); |
| 230 | |
| 231 | ULONG (STDMETHODCALLTYPE *Release)( |
| 232 | IMpeg2TableFilter *This); |
| 233 | |
| 234 | /*** IMpeg2TableFilter methods ***/ |
| 235 | HRESULT (STDMETHODCALLTYPE *AddPID)( |
| 236 | IMpeg2TableFilter *This, |
| 237 | PID p); |
| 238 | |
| 239 | HRESULT (STDMETHODCALLTYPE *AddTable)( |
| 240 | IMpeg2TableFilter *This, |
| 241 | PID p, |
| 242 | TID t); |
| 243 | |
| 244 | HRESULT (STDMETHODCALLTYPE *AddExtension)( |
| 245 | IMpeg2TableFilter *This, |
| 246 | PID p, |
| 247 | TID t, |
| 248 | TEID e); |
| 249 | |
| 250 | HRESULT (STDMETHODCALLTYPE *RemovePID)( |
| 251 | IMpeg2TableFilter *This, |
| 252 | PID p); |
| 253 | |
| 254 | HRESULT (STDMETHODCALLTYPE *RemoveTable)( |
| 255 | IMpeg2TableFilter *This, |
| 256 | PID p, |
| 257 | TID t); |
| 258 | |
| 259 | HRESULT (STDMETHODCALLTYPE *RemoveExtension)( |
| 260 | IMpeg2TableFilter *This, |
| 261 | PID p, |
| 262 | TID t, |
| 263 | TEID e); |
| 264 | |
| 265 | END_INTERFACE |
| 266 | } IMpeg2TableFilterVtbl; |
| 267 | |
| 268 | interface IMpeg2TableFilter { |
| 269 | CONST_VTBL IMpeg2TableFilterVtbl* lpVtbl; |
| 270 | }; |
| 271 | |
| 272 | #ifdef COBJMACROS |
| 273 | #ifndef WIDL_C_INLINE_WRAPPERS |
| 274 | /*** IUnknown methods ***/ |
| 275 | #define IMpeg2TableFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) |
| 276 | #define IMpeg2TableFilter_AddRef(This) (This)->lpVtbl->AddRef(This) |
| 277 | #define IMpeg2TableFilter_Release(This) (This)->lpVtbl->Release(This) |
| 278 | /*** IMpeg2TableFilter methods ***/ |
| 279 | #define IMpeg2TableFilter_AddPID(This,p) (This)->lpVtbl->AddPID(This,p) |
| 280 | #define IMpeg2TableFilter_AddTable(This,p,t) (This)->lpVtbl->AddTable(This,p,t) |
| 281 | #define IMpeg2TableFilter_AddExtension(This,p,t,e) (This)->lpVtbl->AddExtension(This,p,t,e) |
| 282 | #define IMpeg2TableFilter_RemovePID(This,p) (This)->lpVtbl->RemovePID(This,p) |
| 283 | #define IMpeg2TableFilter_RemoveTable(This,p,t) (This)->lpVtbl->RemoveTable(This,p,t) |
| 284 | #define IMpeg2TableFilter_RemoveExtension(This,p,t,e) (This)->lpVtbl->RemoveExtension(This,p,t,e) |
| 285 | #else |
| 286 | /*** IUnknown methods ***/ |
| 287 | static inline HRESULT IMpeg2TableFilter_QueryInterface(IMpeg2TableFilter* This,REFIID riid,void **ppvObject) { |
| 288 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); |
| 289 | } |
| 290 | static inline ULONG IMpeg2TableFilter_AddRef(IMpeg2TableFilter* This) { |
| 291 | return This->lpVtbl->AddRef(This); |
| 292 | } |
| 293 | static inline ULONG IMpeg2TableFilter_Release(IMpeg2TableFilter* This) { |
| 294 | return This->lpVtbl->Release(This); |
| 295 | } |
| 296 | /*** IMpeg2TableFilter methods ***/ |
| 297 | static inline HRESULT IMpeg2TableFilter_AddPID(IMpeg2TableFilter* This,PID p) { |
| 298 | return This->lpVtbl->AddPID(This,p); |
| 299 | } |
| 300 | static inline HRESULT IMpeg2TableFilter_AddTable(IMpeg2TableFilter* This,PID p,TID t) { |
| 301 | return This->lpVtbl->AddTable(This,p,t); |
| 302 | } |
| 303 | static inline HRESULT IMpeg2TableFilter_AddExtension(IMpeg2TableFilter* This,PID p,TID t,TEID e) { |
| 304 | return This->lpVtbl->AddExtension(This,p,t,e); |
| 305 | } |
| 306 | static inline HRESULT IMpeg2TableFilter_RemovePID(IMpeg2TableFilter* This,PID p) { |
| 307 | return This->lpVtbl->RemovePID(This,p); |
| 308 | } |
| 309 | static inline HRESULT IMpeg2TableFilter_RemoveTable(IMpeg2TableFilter* This,PID p,TID t) { |
| 310 | return This->lpVtbl->RemoveTable(This,p,t); |
| 311 | } |
| 312 | static inline HRESULT IMpeg2TableFilter_RemoveExtension(IMpeg2TableFilter* This,PID p,TID t,TEID e) { |
| 313 | return This->lpVtbl->RemoveExtension(This,p,t,e); |
| 314 | } |
| 315 | #endif |
| 316 | #endif |
| 317 | |
| 318 | #endif |
| 319 | |
| 320 | |
| 321 | #endif /* __IMpeg2TableFilter_INTERFACE_DEFINED__ */ |
| 322 | |
| 323 | /***************************************************************************** |
| 324 | * Mpeg2TableFilter coclass |
| 325 | */ |
| 326 | |
| 327 | DEFINE_GUID(CLSID_Mpeg2TableFilter, 0x752845f1, 0x758f, 0x4c83, 0xa0,0x43, 0x42,0x70,0xc5,0x93,0x30,0x8e); |
| 328 | |
| 329 | #ifdef __cplusplus |
| 330 | class DECLSPEC_UUID("752845f1-758f-4c83-a043-4270c593308e") Mpeg2TableFilter; |
| 331 | #ifdef __CRT_UUID_DECL |
| 332 | __CRT_UUID_DECL(Mpeg2TableFilter, 0x752845f1, 0x758f, 0x4c83, 0xa0,0x43, 0x42,0x70,0xc5,0x93,0x30,0x8e) |
| 333 | #endif |
| 334 | #endif |
| 335 | |
| 336 | typedef struct Mpeg2TableSampleHdr { |
| 337 | BYTE SectionCount; |
| 338 | BYTE Reserved[3]; |
| 339 | LONG SectionOffsets[1]; |
| 340 | } Mpeg2TableSampleHdr; |
| 341 | #ifndef __Mpeg2DataLib_LIBRARY_DEFINED__ |
| 342 | #define __Mpeg2DataLib_LIBRARY_DEFINED__ |
| 343 | |
| 344 | DEFINE_GUID(LIBID_Mpeg2DataLib, 0xdbaf6c1b, 0xb6a4, 0x4898, 0xae,0x65, 0x20,0x4f,0x0d,0x95,0x09,0xa1); |
| 345 | |
| 346 | /***************************************************************************** |
| 347 | * IMpeg2Data interface |
| 348 | */ |
| 349 | #ifndef __IMpeg2Data_INTERFACE_DEFINED__ |
| 350 | #define __IMpeg2Data_INTERFACE_DEFINED__ |
| 351 | |
| 352 | DEFINE_GUID(IID_IMpeg2Data, 0x9b396d40, 0xf380, 0x4e3c, 0xa5,0x14, 0x1a,0x82,0xbf,0x6e,0xbf,0xe6); |
| 353 | #if defined(__cplusplus) && !defined(CINTERFACE) |
| 354 | MIDL_INTERFACE("9b396d40-f380-4e3c-a514-1a82bf6ebfe6") |
| 355 | IMpeg2Data : public IUnknown |
| 356 | { |
| 357 | virtual HRESULT STDMETHODCALLTYPE GetSection( |
| 358 | PID pid, |
| 359 | TID tid, |
| 360 | PMPEG2_FILTER filter, |
| 361 | DWORD timeout, |
| 362 | ISectionList **section_list) = 0; |
| 363 | |
| 364 | virtual HRESULT STDMETHODCALLTYPE GetTable( |
| 365 | PID pid, |
| 366 | TID tid, |
| 367 | PMPEG2_FILTER filter, |
| 368 | DWORD timeout, |
| 369 | ISectionList **section_list) = 0; |
| 370 | |
| 371 | virtual HRESULT STDMETHODCALLTYPE GetStreamOfSections( |
| 372 | PID pid, |
| 373 | TID tid, |
| 374 | PMPEG2_FILTER filter, |
| 375 | HANDLE data_ready_event, |
| 376 | IMpeg2Stream **mpeg_stream) = 0; |
| 377 | |
| 378 | }; |
| 379 | #ifdef __CRT_UUID_DECL |
| 380 | __CRT_UUID_DECL(IMpeg2Data, 0x9b396d40, 0xf380, 0x4e3c, 0xa5,0x14, 0x1a,0x82,0xbf,0x6e,0xbf,0xe6) |
| 381 | #endif |
| 382 | #else |
| 383 | typedef struct IMpeg2DataVtbl { |
| 384 | BEGIN_INTERFACE |
| 385 | |
| 386 | /*** IUnknown methods ***/ |
| 387 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( |
| 388 | IMpeg2Data *This, |
| 389 | REFIID riid, |
| 390 | void **ppvObject); |
| 391 | |
| 392 | ULONG (STDMETHODCALLTYPE *AddRef)( |
| 393 | IMpeg2Data *This); |
| 394 | |
| 395 | ULONG (STDMETHODCALLTYPE *Release)( |
| 396 | IMpeg2Data *This); |
| 397 | |
| 398 | /*** IMpeg2Data methods ***/ |
| 399 | HRESULT (STDMETHODCALLTYPE *GetSection)( |
| 400 | IMpeg2Data *This, |
| 401 | PID pid, |
| 402 | TID tid, |
| 403 | PMPEG2_FILTER filter, |
| 404 | DWORD timeout, |
| 405 | ISectionList **section_list); |
| 406 | |
| 407 | HRESULT (STDMETHODCALLTYPE *GetTable)( |
| 408 | IMpeg2Data *This, |
| 409 | PID pid, |
| 410 | TID tid, |
| 411 | PMPEG2_FILTER filter, |
| 412 | DWORD timeout, |
| 413 | ISectionList **section_list); |
| 414 | |
| 415 | HRESULT (STDMETHODCALLTYPE *GetStreamOfSections)( |
| 416 | IMpeg2Data *This, |
| 417 | PID pid, |
| 418 | TID tid, |
| 419 | PMPEG2_FILTER filter, |
| 420 | HANDLE data_ready_event, |
| 421 | IMpeg2Stream **mpeg_stream); |
| 422 | |
| 423 | END_INTERFACE |
| 424 | } IMpeg2DataVtbl; |
| 425 | |
| 426 | interface IMpeg2Data { |
| 427 | CONST_VTBL IMpeg2DataVtbl* lpVtbl; |
| 428 | }; |
| 429 | |
| 430 | #ifdef COBJMACROS |
| 431 | #ifndef WIDL_C_INLINE_WRAPPERS |
| 432 | /*** IUnknown methods ***/ |
| 433 | #define IMpeg2Data_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) |
| 434 | #define IMpeg2Data_AddRef(This) (This)->lpVtbl->AddRef(This) |
| 435 | #define IMpeg2Data_Release(This) (This)->lpVtbl->Release(This) |
| 436 | /*** IMpeg2Data methods ***/ |
| 437 | #define IMpeg2Data_GetSection(This,pid,tid,filter,timeout,section_list) (This)->lpVtbl->GetSection(This,pid,tid,filter,timeout,section_list) |
| 438 | #define IMpeg2Data_GetTable(This,pid,tid,filter,timeout,section_list) (This)->lpVtbl->GetTable(This,pid,tid,filter,timeout,section_list) |
| 439 | #define IMpeg2Data_GetStreamOfSections(This,pid,tid,filter,data_ready_event,mpeg_stream) (This)->lpVtbl->GetStreamOfSections(This,pid,tid,filter,data_ready_event,mpeg_stream) |
| 440 | #else |
| 441 | /*** IUnknown methods ***/ |
| 442 | static inline HRESULT IMpeg2Data_QueryInterface(IMpeg2Data* This,REFIID riid,void **ppvObject) { |
| 443 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); |
| 444 | } |
| 445 | static inline ULONG IMpeg2Data_AddRef(IMpeg2Data* This) { |
| 446 | return This->lpVtbl->AddRef(This); |
| 447 | } |
| 448 | static inline ULONG IMpeg2Data_Release(IMpeg2Data* This) { |
| 449 | return This->lpVtbl->Release(This); |
| 450 | } |
| 451 | /*** IMpeg2Data methods ***/ |
| 452 | static inline HRESULT IMpeg2Data_GetSection(IMpeg2Data* This,PID pid,TID tid,PMPEG2_FILTER filter,DWORD timeout,ISectionList **section_list) { |
| 453 | return This->lpVtbl->GetSection(This,pid,tid,filter,timeout,section_list); |
| 454 | } |
| 455 | static inline HRESULT IMpeg2Data_GetTable(IMpeg2Data* This,PID pid,TID tid,PMPEG2_FILTER filter,DWORD timeout,ISectionList **section_list) { |
| 456 | return This->lpVtbl->GetTable(This,pid,tid,filter,timeout,section_list); |
| 457 | } |
| 458 | static inline HRESULT IMpeg2Data_GetStreamOfSections(IMpeg2Data* This,PID pid,TID tid,PMPEG2_FILTER filter,HANDLE data_ready_event,IMpeg2Stream **mpeg_stream) { |
| 459 | return This->lpVtbl->GetStreamOfSections(This,pid,tid,filter,data_ready_event,mpeg_stream); |
| 460 | } |
| 461 | #endif |
| 462 | #endif |
| 463 | |
| 464 | #endif |
| 465 | |
| 466 | |
| 467 | #endif /* __IMpeg2Data_INTERFACE_DEFINED__ */ |
| 468 | |
| 469 | /***************************************************************************** |
| 470 | * ISectionList interface |
| 471 | */ |
| 472 | #ifndef __ISectionList_INTERFACE_DEFINED__ |
| 473 | #define __ISectionList_INTERFACE_DEFINED__ |
| 474 | |
| 475 | DEFINE_GUID(IID_ISectionList, 0xafec1eb5, 0x2a64, 0x46c6, 0xbf,0x4b, 0xae,0x3c,0xcb,0x6a,0xfd,0xb0); |
| 476 | #if defined(__cplusplus) && !defined(CINTERFACE) |
| 477 | MIDL_INTERFACE("afec1eb5-2a64-46c6-bf4b-ae3ccb6afdb0") |
| 478 | ISectionList : public IUnknown |
| 479 | { |
| 480 | virtual HRESULT STDMETHODCALLTYPE Initialize( |
| 481 | MPEG_REQUEST_TYPE request_type, |
| 482 | IMpeg2Data *mpeg2_data, |
| 483 | PMPEG_CONTEXT context, |
| 484 | PID pid, |
| 485 | TID tid, |
| 486 | PMPEG2_FILTER filter, |
| 487 | DWORD timeout, |
| 488 | HANDLE done_event) = 0; |
| 489 | |
| 490 | virtual HRESULT STDMETHODCALLTYPE InitializeWithRawSections( |
| 491 | PMPEG_PACKET_LIST mpl_sections) = 0; |
| 492 | |
| 493 | virtual HRESULT STDMETHODCALLTYPE CancelPendingRequest( |
| 494 | ) = 0; |
| 495 | |
| 496 | virtual HRESULT STDMETHODCALLTYPE GetNumberOfSections( |
| 497 | WORD *count) = 0; |
| 498 | |
| 499 | virtual HRESULT STDMETHODCALLTYPE GetSectionData( |
| 500 | WORD section_number, |
| 501 | DWORD *raw_packet_length, |
| 502 | PSECTION *section) = 0; |
| 503 | |
| 504 | virtual HRESULT STDMETHODCALLTYPE GetProgramIdentifier( |
| 505 | PID *pid) = 0; |
| 506 | |
| 507 | virtual HRESULT STDMETHODCALLTYPE GetTableIdentifier( |
| 508 | TID *tid) = 0; |
| 509 | |
| 510 | }; |
| 511 | #ifdef __CRT_UUID_DECL |
| 512 | __CRT_UUID_DECL(ISectionList, 0xafec1eb5, 0x2a64, 0x46c6, 0xbf,0x4b, 0xae,0x3c,0xcb,0x6a,0xfd,0xb0) |
| 513 | #endif |
| 514 | #else |
| 515 | typedef struct ISectionListVtbl { |
| 516 | BEGIN_INTERFACE |
| 517 | |
| 518 | /*** IUnknown methods ***/ |
| 519 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( |
| 520 | ISectionList *This, |
| 521 | REFIID riid, |
| 522 | void **ppvObject); |
| 523 | |
| 524 | ULONG (STDMETHODCALLTYPE *AddRef)( |
| 525 | ISectionList *This); |
| 526 | |
| 527 | ULONG (STDMETHODCALLTYPE *Release)( |
| 528 | ISectionList *This); |
| 529 | |
| 530 | /*** ISectionList methods ***/ |
| 531 | HRESULT (STDMETHODCALLTYPE *Initialize)( |
| 532 | ISectionList *This, |
| 533 | MPEG_REQUEST_TYPE request_type, |
| 534 | IMpeg2Data *mpeg2_data, |
| 535 | PMPEG_CONTEXT context, |
| 536 | PID pid, |
| 537 | TID tid, |
| 538 | PMPEG2_FILTER filter, |
| 539 | DWORD timeout, |
| 540 | HANDLE done_event); |
| 541 | |
| 542 | HRESULT (STDMETHODCALLTYPE *InitializeWithRawSections)( |
| 543 | ISectionList *This, |
| 544 | PMPEG_PACKET_LIST mpl_sections); |
| 545 | |
| 546 | HRESULT (STDMETHODCALLTYPE *CancelPendingRequest)( |
| 547 | ISectionList *This); |
| 548 | |
| 549 | HRESULT (STDMETHODCALLTYPE *GetNumberOfSections)( |
| 550 | ISectionList *This, |
| 551 | WORD *count); |
| 552 | |
| 553 | HRESULT (STDMETHODCALLTYPE *GetSectionData)( |
| 554 | ISectionList *This, |
| 555 | WORD section_number, |
| 556 | DWORD *raw_packet_length, |
| 557 | PSECTION *section); |
| 558 | |
| 559 | HRESULT (STDMETHODCALLTYPE *GetProgramIdentifier)( |
| 560 | ISectionList *This, |
| 561 | PID *pid); |
| 562 | |
| 563 | HRESULT (STDMETHODCALLTYPE *GetTableIdentifier)( |
| 564 | ISectionList *This, |
| 565 | TID *tid); |
| 566 | |
| 567 | END_INTERFACE |
| 568 | } ISectionListVtbl; |
| 569 | |
| 570 | interface ISectionList { |
| 571 | CONST_VTBL ISectionListVtbl* lpVtbl; |
| 572 | }; |
| 573 | |
| 574 | #ifdef COBJMACROS |
| 575 | #ifndef WIDL_C_INLINE_WRAPPERS |
| 576 | /*** IUnknown methods ***/ |
| 577 | #define ISectionList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) |
| 578 | #define ISectionList_AddRef(This) (This)->lpVtbl->AddRef(This) |
| 579 | #define ISectionList_Release(This) (This)->lpVtbl->Release(This) |
| 580 | /*** ISectionList methods ***/ |
| 581 | #define ISectionList_Initialize(This,request_type,mpeg2_data,context,pid,tid,filter,timeout,done_event) (This)->lpVtbl->Initialize(This,request_type,mpeg2_data,context,pid,tid,filter,timeout,done_event) |
| 582 | #define ISectionList_InitializeWithRawSections(This,mpl_sections) (This)->lpVtbl->InitializeWithRawSections(This,mpl_sections) |
| 583 | #define ISectionList_CancelPendingRequest(This) (This)->lpVtbl->CancelPendingRequest(This) |
| 584 | #define ISectionList_GetNumberOfSections(This,count) (This)->lpVtbl->GetNumberOfSections(This,count) |
| 585 | #define ISectionList_GetSectionData(This,section_number,raw_packet_length,section) (This)->lpVtbl->GetSectionData(This,section_number,raw_packet_length,section) |
| 586 | #define ISectionList_GetProgramIdentifier(This,pid) (This)->lpVtbl->GetProgramIdentifier(This,pid) |
| 587 | #define ISectionList_GetTableIdentifier(This,tid) (This)->lpVtbl->GetTableIdentifier(This,tid) |
| 588 | #else |
| 589 | /*** IUnknown methods ***/ |
| 590 | static inline HRESULT ISectionList_QueryInterface(ISectionList* This,REFIID riid,void **ppvObject) { |
| 591 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); |
| 592 | } |
| 593 | static inline ULONG ISectionList_AddRef(ISectionList* This) { |
| 594 | return This->lpVtbl->AddRef(This); |
| 595 | } |
| 596 | static inline ULONG ISectionList_Release(ISectionList* This) { |
| 597 | return This->lpVtbl->Release(This); |
| 598 | } |
| 599 | /*** ISectionList methods ***/ |
| 600 | static inline HRESULT ISectionList_Initialize(ISectionList* This,MPEG_REQUEST_TYPE request_type,IMpeg2Data *mpeg2_data,PMPEG_CONTEXT context,PID pid,TID tid,PMPEG2_FILTER filter,DWORD timeout,HANDLE done_event) { |
| 601 | return This->lpVtbl->Initialize(This,request_type,mpeg2_data,context,pid,tid,filter,timeout,done_event); |
| 602 | } |
| 603 | static inline HRESULT ISectionList_InitializeWithRawSections(ISectionList* This,PMPEG_PACKET_LIST mpl_sections) { |
| 604 | return This->lpVtbl->InitializeWithRawSections(This,mpl_sections); |
| 605 | } |
| 606 | static inline HRESULT ISectionList_CancelPendingRequest(ISectionList* This) { |
| 607 | return This->lpVtbl->CancelPendingRequest(This); |
| 608 | } |
| 609 | static inline HRESULT ISectionList_GetNumberOfSections(ISectionList* This,WORD *count) { |
| 610 | return This->lpVtbl->GetNumberOfSections(This,count); |
| 611 | } |
| 612 | static inline HRESULT ISectionList_GetSectionData(ISectionList* This,WORD section_number,DWORD *raw_packet_length,PSECTION *section) { |
| 613 | return This->lpVtbl->GetSectionData(This,section_number,raw_packet_length,section); |
| 614 | } |
| 615 | static inline HRESULT ISectionList_GetProgramIdentifier(ISectionList* This,PID *pid) { |
| 616 | return This->lpVtbl->GetProgramIdentifier(This,pid); |
| 617 | } |
| 618 | static inline HRESULT ISectionList_GetTableIdentifier(ISectionList* This,TID *tid) { |
| 619 | return This->lpVtbl->GetTableIdentifier(This,tid); |
| 620 | } |
| 621 | #endif |
| 622 | #endif |
| 623 | |
| 624 | #endif |
| 625 | |
| 626 | |
| 627 | #endif /* __ISectionList_INTERFACE_DEFINED__ */ |
| 628 | |
| 629 | /***************************************************************************** |
| 630 | * IMpeg2Stream interface |
| 631 | */ |
| 632 | #ifndef __IMpeg2Stream_INTERFACE_DEFINED__ |
| 633 | #define __IMpeg2Stream_INTERFACE_DEFINED__ |
| 634 | |
| 635 | DEFINE_GUID(IID_IMpeg2Stream, 0x400cc286, 0x32a0, 0x4ce4, 0x90,0x41, 0x39,0x57,0x11,0x25,0xa6,0x35); |
| 636 | #if defined(__cplusplus) && !defined(CINTERFACE) |
| 637 | MIDL_INTERFACE("400cc286-32a0-4ce4-9041-39571125a635") |
| 638 | IMpeg2Stream : public IUnknown |
| 639 | { |
| 640 | virtual HRESULT STDMETHODCALLTYPE Initialize( |
| 641 | MPEG_REQUEST_TYPE request_type, |
| 642 | IMpeg2Data *mpeg2_data, |
| 643 | PMPEG_CONTEXT context, |
| 644 | PID pid, |
| 645 | TID tid, |
| 646 | PMPEG2_FILTER filter, |
| 647 | HANDLE data_ready_event) = 0; |
| 648 | |
| 649 | virtual HRESULT STDMETHODCALLTYPE SupplyDataBuffer( |
| 650 | PMPEG_STREAM_BUFFER stream_buffer) = 0; |
| 651 | |
| 652 | }; |
| 653 | #ifdef __CRT_UUID_DECL |
| 654 | __CRT_UUID_DECL(IMpeg2Stream, 0x400cc286, 0x32a0, 0x4ce4, 0x90,0x41, 0x39,0x57,0x11,0x25,0xa6,0x35) |
| 655 | #endif |
| 656 | #else |
| 657 | typedef struct IMpeg2StreamVtbl { |
| 658 | BEGIN_INTERFACE |
| 659 | |
| 660 | /*** IUnknown methods ***/ |
| 661 | HRESULT (STDMETHODCALLTYPE *QueryInterface)( |
| 662 | IMpeg2Stream *This, |
| 663 | REFIID riid, |
| 664 | void **ppvObject); |
| 665 | |
| 666 | ULONG (STDMETHODCALLTYPE *AddRef)( |
| 667 | IMpeg2Stream *This); |
| 668 | |
| 669 | ULONG (STDMETHODCALLTYPE *Release)( |
| 670 | IMpeg2Stream *This); |
| 671 | |
| 672 | /*** IMpeg2Stream methods ***/ |
| 673 | HRESULT (STDMETHODCALLTYPE *Initialize)( |
| 674 | IMpeg2Stream *This, |
| 675 | MPEG_REQUEST_TYPE request_type, |
| 676 | IMpeg2Data *mpeg2_data, |
| 677 | PMPEG_CONTEXT context, |
| 678 | PID pid, |
| 679 | TID tid, |
| 680 | PMPEG2_FILTER filter, |
| 681 | HANDLE data_ready_event); |
| 682 | |
| 683 | HRESULT (STDMETHODCALLTYPE *SupplyDataBuffer)( |
| 684 | IMpeg2Stream *This, |
| 685 | PMPEG_STREAM_BUFFER stream_buffer); |
| 686 | |
| 687 | END_INTERFACE |
| 688 | } IMpeg2StreamVtbl; |
| 689 | |
| 690 | interface IMpeg2Stream { |
| 691 | CONST_VTBL IMpeg2StreamVtbl* lpVtbl; |
| 692 | }; |
| 693 | |
| 694 | #ifdef COBJMACROS |
| 695 | #ifndef WIDL_C_INLINE_WRAPPERS |
| 696 | /*** IUnknown methods ***/ |
| 697 | #define IMpeg2Stream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) |
| 698 | #define IMpeg2Stream_AddRef(This) (This)->lpVtbl->AddRef(This) |
| 699 | #define IMpeg2Stream_Release(This) (This)->lpVtbl->Release(This) |
| 700 | /*** IMpeg2Stream methods ***/ |
| 701 | #define IMpeg2Stream_Initialize(This,request_type,mpeg2_data,context,pid,tid,filter,data_ready_event) (This)->lpVtbl->Initialize(This,request_type,mpeg2_data,context,pid,tid,filter,data_ready_event) |
| 702 | #define IMpeg2Stream_SupplyDataBuffer(This,stream_buffer) (This)->lpVtbl->SupplyDataBuffer(This,stream_buffer) |
| 703 | #else |
| 704 | /*** IUnknown methods ***/ |
| 705 | static inline HRESULT IMpeg2Stream_QueryInterface(IMpeg2Stream* This,REFIID riid,void **ppvObject) { |
| 706 | return This->lpVtbl->QueryInterface(This,riid,ppvObject); |
| 707 | } |
| 708 | static inline ULONG IMpeg2Stream_AddRef(IMpeg2Stream* This) { |
| 709 | return This->lpVtbl->AddRef(This); |
| 710 | } |
| 711 | static inline ULONG IMpeg2Stream_Release(IMpeg2Stream* This) { |
| 712 | return This->lpVtbl->Release(This); |
| 713 | } |
| 714 | /*** IMpeg2Stream methods ***/ |
| 715 | static inline HRESULT IMpeg2Stream_Initialize(IMpeg2Stream* This,MPEG_REQUEST_TYPE request_type,IMpeg2Data *mpeg2_data,PMPEG_CONTEXT context,PID pid,TID tid,PMPEG2_FILTER filter,HANDLE data_ready_event) { |
| 716 | return This->lpVtbl->Initialize(This,request_type,mpeg2_data,context,pid,tid,filter,data_ready_event); |
| 717 | } |
| 718 | static inline HRESULT IMpeg2Stream_SupplyDataBuffer(IMpeg2Stream* This,PMPEG_STREAM_BUFFER stream_buffer) { |
| 719 | return This->lpVtbl->SupplyDataBuffer(This,stream_buffer); |
| 720 | } |
| 721 | #endif |
| 722 | #endif |
| 723 | |
| 724 | #endif |
| 725 | |
| 726 | |
| 727 | #endif /* __IMpeg2Stream_INTERFACE_DEFINED__ */ |
| 728 | |
| 729 | /***************************************************************************** |
| 730 | * SectionList coclass |
| 731 | */ |
| 732 | |
| 733 | DEFINE_GUID(CLSID_SectionList, 0x73da5d04, 0x4347, 0x45d3, 0xa9,0xdc, 0xfa,0xe9,0xdd,0xbe,0x55,0x8d); |
| 734 | |
| 735 | #ifdef __cplusplus |
| 736 | class DECLSPEC_UUID("73da5d04-4347-45d3-a9dc-fae9ddbe558d") SectionList; |
| 737 | #ifdef __CRT_UUID_DECL |
| 738 | __CRT_UUID_DECL(SectionList, 0x73da5d04, 0x4347, 0x45d3, 0xa9,0xdc, 0xfa,0xe9,0xdd,0xbe,0x55,0x8d) |
| 739 | #endif |
| 740 | #endif |
| 741 | |
| 742 | /***************************************************************************** |
| 743 | * Mpeg2Stream coclass |
| 744 | */ |
| 745 | |
| 746 | DEFINE_GUID(CLSID_Mpeg2Stream, 0xf91d96c7, 0x8509, 0x4d0b, 0xab,0x26, 0xa0,0xdd,0x10,0x90,0x4b,0xb7); |
| 747 | |
| 748 | #ifdef __cplusplus |
| 749 | class DECLSPEC_UUID("f91d96c7-8509-4d0b-ab26-a0dd10904bb7") Mpeg2Stream; |
| 750 | #ifdef __CRT_UUID_DECL |
| 751 | __CRT_UUID_DECL(Mpeg2Stream, 0xf91d96c7, 0x8509, 0x4d0b, 0xab,0x26, 0xa0,0xdd,0x10,0x90,0x4b,0xb7) |
| 752 | #endif |
| 753 | #endif |
| 754 | |
| 755 | /***************************************************************************** |
| 756 | * Mpeg2Data coclass |
| 757 | */ |
| 758 | |
| 759 | DEFINE_GUID(CLSID_Mpeg2Data, 0xc666e115, 0xbb62, 0x4027, 0xa1,0x13, 0x82,0xd6,0x43,0xfe,0x2d,0x99); |
| 760 | |
| 761 | #ifdef __cplusplus |
| 762 | class DECLSPEC_UUID("c666e115-bb62-4027-a113-82d643fe2d99") Mpeg2Data; |
| 763 | #ifdef __CRT_UUID_DECL |
| 764 | __CRT_UUID_DECL(Mpeg2Data, 0xc666e115, 0xbb62, 0x4027, 0xa1,0x13, 0x82,0xd6,0x43,0xfe,0x2d,0x99) |
| 765 | #endif |
| 766 | #endif |
| 767 | |
| 768 | #endif /* __Mpeg2DataLib_LIBRARY_DEFINED__ */ |
| 769 | /* Begin additional prototypes for all interfaces */ |
| 770 | |
| 771 | |
| 772 | /* End additional prototypes */ |
| 773 | |
| 774 | #ifdef __cplusplus |
| 775 | } |
| 776 | #endif |
| 777 | |
| 778 | #endif /* __mpeg2data_h__ */ |