mirror of https://github.com/UMSKT/xpmgr.git
1253 lines
37 KiB
C++
1253 lines
37 KiB
C++
|
|
|
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
|
|
|
|
|
/* File created by MIDL compiler version 7.00.0555 */
|
|
/* Compiler settings for mpeg2psiparser.idl:
|
|
Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
|
|
protocol : dce , ms_ext, c_ext, robust
|
|
error checks: allocation ref bounds_check enum stub_data
|
|
VC __declspec() decoration level:
|
|
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
|
DECLSPEC_UUID(), MIDL_INTERFACE()
|
|
*/
|
|
/* @@MIDL_FILE_HEADING( ) */
|
|
|
|
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
|
|
|
|
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
|
#define __REQUIRED_RPCNDR_H_VERSION__ 500
|
|
#endif
|
|
|
|
/* verify that the <rpcsal.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCSAL_H_VERSION__
|
|
#define __REQUIRED_RPCSAL_H_VERSION__ 100
|
|
#endif
|
|
|
|
#include "rpc.h"
|
|
#include "rpcndr.h"
|
|
|
|
#ifndef __RPCNDR_H_VERSION__
|
|
#error this stub requires an updated version of <rpcndr.h>
|
|
#endif // __RPCNDR_H_VERSION__
|
|
|
|
#ifndef COM_NO_WINDOWS_H
|
|
#include "windows.h"
|
|
#include "ole2.h"
|
|
#endif /*COM_NO_WINDOWS_H*/
|
|
|
|
#ifndef __mpeg2psiparser_h__
|
|
#define __mpeg2psiparser_h__
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
/* Forward Declarations */
|
|
|
|
#ifndef __IGenericDescriptor_FWD_DEFINED__
|
|
#define __IGenericDescriptor_FWD_DEFINED__
|
|
typedef interface IGenericDescriptor IGenericDescriptor;
|
|
#endif /* __IGenericDescriptor_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IGenericDescriptor2_FWD_DEFINED__
|
|
#define __IGenericDescriptor2_FWD_DEFINED__
|
|
typedef interface IGenericDescriptor2 IGenericDescriptor2;
|
|
#endif /* __IGenericDescriptor2_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IPAT_FWD_DEFINED__
|
|
#define __IPAT_FWD_DEFINED__
|
|
typedef interface IPAT IPAT;
|
|
#endif /* __IPAT_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __ICAT_FWD_DEFINED__
|
|
#define __ICAT_FWD_DEFINED__
|
|
typedef interface ICAT ICAT;
|
|
#endif /* __ICAT_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IPMT_FWD_DEFINED__
|
|
#define __IPMT_FWD_DEFINED__
|
|
typedef interface IPMT IPMT;
|
|
#endif /* __IPMT_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __ITSDT_FWD_DEFINED__
|
|
#define __ITSDT_FWD_DEFINED__
|
|
typedef interface ITSDT ITSDT;
|
|
#endif /* __ITSDT_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IPSITables_FWD_DEFINED__
|
|
#define __IPSITables_FWD_DEFINED__
|
|
typedef interface IPSITables IPSITables;
|
|
#endif /* __IPSITables_FWD_DEFINED__ */
|
|
|
|
|
|
/* header files for imported files */
|
|
#include "oaidl.h"
|
|
#include "ocidl.h"
|
|
#include "mpeg2structs.h"
|
|
#include "mpeg2data.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
|
|
/* interface __MIDL_itf_mpeg2psiparser_0000_0000 */
|
|
/* [local] */
|
|
|
|
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mpeg2psiparser_0000_0000_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mpeg2psiparser_0000_0000_v0_0_s_ifspec;
|
|
|
|
#ifndef __IGenericDescriptor_INTERFACE_DEFINED__
|
|
#define __IGenericDescriptor_INTERFACE_DEFINED__
|
|
|
|
/* interface IGenericDescriptor */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IGenericDescriptor;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("6A5918F8-A77A-4f61-AED0-5702BDCDA3E6")
|
|
IGenericDescriptor : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ BYTE *pbDesc,
|
|
/* [in] */ INT bCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTag(
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetLength(
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBody(
|
|
/* [out] */ BYTE **ppbVal) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IGenericDescriptorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IGenericDescriptor * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IGenericDescriptor * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IGenericDescriptor * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
IGenericDescriptor * This,
|
|
/* [in] */ BYTE *pbDesc,
|
|
/* [in] */ INT bCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTag )(
|
|
IGenericDescriptor * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLength )(
|
|
IGenericDescriptor * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBody )(
|
|
IGenericDescriptor * This,
|
|
/* [out] */ BYTE **ppbVal);
|
|
|
|
END_INTERFACE
|
|
} IGenericDescriptorVtbl;
|
|
|
|
interface IGenericDescriptor
|
|
{
|
|
CONST_VTBL struct IGenericDescriptorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IGenericDescriptor_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IGenericDescriptor_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IGenericDescriptor_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IGenericDescriptor_Initialize(This,pbDesc,bCount) \
|
|
( (This)->lpVtbl -> Initialize(This,pbDesc,bCount) )
|
|
|
|
#define IGenericDescriptor_GetTag(This,pbVal) \
|
|
( (This)->lpVtbl -> GetTag(This,pbVal) )
|
|
|
|
#define IGenericDescriptor_GetLength(This,pbVal) \
|
|
( (This)->lpVtbl -> GetLength(This,pbVal) )
|
|
|
|
#define IGenericDescriptor_GetBody(This,ppbVal) \
|
|
( (This)->lpVtbl -> GetBody(This,ppbVal) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IGenericDescriptor_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IGenericDescriptor2_INTERFACE_DEFINED__
|
|
#define __IGenericDescriptor2_INTERFACE_DEFINED__
|
|
|
|
/* interface IGenericDescriptor2 */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IGenericDescriptor2;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("BF02FB7E-9792-4e10-A68D-033A2CC246A5")
|
|
IGenericDescriptor2 : public IGenericDescriptor
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ BYTE *pbDesc,
|
|
/* [in] */ WORD wCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetLength(
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IGenericDescriptor2Vtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IGenericDescriptor2 * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IGenericDescriptor2 * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IGenericDescriptor2 * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
IGenericDescriptor2 * This,
|
|
/* [in] */ BYTE *pbDesc,
|
|
/* [in] */ INT bCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTag )(
|
|
IGenericDescriptor2 * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLength )(
|
|
IGenericDescriptor2 * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBody )(
|
|
IGenericDescriptor2 * This,
|
|
/* [out] */ BYTE **ppbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
IGenericDescriptor2 * This,
|
|
/* [in] */ BYTE *pbDesc,
|
|
/* [in] */ WORD wCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLength )(
|
|
IGenericDescriptor2 * This,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
END_INTERFACE
|
|
} IGenericDescriptor2Vtbl;
|
|
|
|
interface IGenericDescriptor2
|
|
{
|
|
CONST_VTBL struct IGenericDescriptor2Vtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IGenericDescriptor2_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IGenericDescriptor2_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IGenericDescriptor2_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IGenericDescriptor2_Initialize(This,pbDesc,bCount) \
|
|
( (This)->lpVtbl -> Initialize(This,pbDesc,bCount) )
|
|
|
|
#define IGenericDescriptor2_GetTag(This,pbVal) \
|
|
( (This)->lpVtbl -> GetTag(This,pbVal) )
|
|
|
|
#define IGenericDescriptor2_GetLength(This,pbVal) \
|
|
( (This)->lpVtbl -> GetLength(This,pbVal) )
|
|
|
|
#define IGenericDescriptor2_GetBody(This,ppbVal) \
|
|
( (This)->lpVtbl -> GetBody(This,ppbVal) )
|
|
|
|
|
|
#define IGenericDescriptor2_Initialize(This,pbDesc,wCount) \
|
|
( (This)->lpVtbl -> Initialize(This,pbDesc,wCount) )
|
|
|
|
#define IGenericDescriptor2_GetLength(This,pwVal) \
|
|
( (This)->lpVtbl -> GetLength(This,pwVal) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IGenericDescriptor2_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IPAT_INTERFACE_DEFINED__
|
|
#define __IPAT_INTERFACE_DEFINED__
|
|
|
|
/* interface IPAT */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
typedef /* [public] */ struct __MIDL_IPAT_0001
|
|
{
|
|
WORD wProgramNumber;
|
|
WORD wProgramMapPID;
|
|
} ProgramElement;
|
|
|
|
|
|
EXTERN_C const IID IID_IPAT;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("6623B511-4B5F-43c3-9A01-E8FF84188060")
|
|
IPAT : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTransportStreamId(
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVersionNumber(
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCountOfRecords(
|
|
/* [out] */ DWORD *pdwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordProgramNumber(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordProgramMapPid(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FindRecordProgramMapPid(
|
|
/* [in] */ WORD wProgramNumber,
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForNextTable(
|
|
/* [in] */ HANDLE hNextTableAvailable) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetNextTable(
|
|
/* [out] */ IPAT **ppPAT) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForWhenCurrent(
|
|
/* [in] */ HANDLE hNextTableIsCurrent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertNextToCurrent( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IPATVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IPAT * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IPAT * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IPAT * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
IPAT * This,
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTransportStreamId )(
|
|
IPAT * This,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVersionNumber )(
|
|
IPAT * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCountOfRecords )(
|
|
IPAT * This,
|
|
/* [out] */ DWORD *pdwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordProgramNumber )(
|
|
IPAT * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordProgramMapPid )(
|
|
IPAT * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FindRecordProgramMapPid )(
|
|
IPAT * This,
|
|
/* [in] */ WORD wProgramNumber,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForNextTable )(
|
|
IPAT * This,
|
|
/* [in] */ HANDLE hNextTableAvailable);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNextTable )(
|
|
IPAT * This,
|
|
/* [out] */ IPAT **ppPAT);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForWhenCurrent )(
|
|
IPAT * This,
|
|
/* [in] */ HANDLE hNextTableIsCurrent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertNextToCurrent )(
|
|
IPAT * This);
|
|
|
|
END_INTERFACE
|
|
} IPATVtbl;
|
|
|
|
interface IPAT
|
|
{
|
|
CONST_VTBL struct IPATVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IPAT_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IPAT_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IPAT_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IPAT_Initialize(This,pSectionList,pMPEGData) \
|
|
( (This)->lpVtbl -> Initialize(This,pSectionList,pMPEGData) )
|
|
|
|
#define IPAT_GetTransportStreamId(This,pwVal) \
|
|
( (This)->lpVtbl -> GetTransportStreamId(This,pwVal) )
|
|
|
|
#define IPAT_GetVersionNumber(This,pbVal) \
|
|
( (This)->lpVtbl -> GetVersionNumber(This,pbVal) )
|
|
|
|
#define IPAT_GetCountOfRecords(This,pdwVal) \
|
|
( (This)->lpVtbl -> GetCountOfRecords(This,pdwVal) )
|
|
|
|
#define IPAT_GetRecordProgramNumber(This,dwIndex,pwVal) \
|
|
( (This)->lpVtbl -> GetRecordProgramNumber(This,dwIndex,pwVal) )
|
|
|
|
#define IPAT_GetRecordProgramMapPid(This,dwIndex,pwVal) \
|
|
( (This)->lpVtbl -> GetRecordProgramMapPid(This,dwIndex,pwVal) )
|
|
|
|
#define IPAT_FindRecordProgramMapPid(This,wProgramNumber,pwVal) \
|
|
( (This)->lpVtbl -> FindRecordProgramMapPid(This,wProgramNumber,pwVal) )
|
|
|
|
#define IPAT_RegisterForNextTable(This,hNextTableAvailable) \
|
|
( (This)->lpVtbl -> RegisterForNextTable(This,hNextTableAvailable) )
|
|
|
|
#define IPAT_GetNextTable(This,ppPAT) \
|
|
( (This)->lpVtbl -> GetNextTable(This,ppPAT) )
|
|
|
|
#define IPAT_RegisterForWhenCurrent(This,hNextTableIsCurrent) \
|
|
( (This)->lpVtbl -> RegisterForWhenCurrent(This,hNextTableIsCurrent) )
|
|
|
|
#define IPAT_ConvertNextToCurrent(This) \
|
|
( (This)->lpVtbl -> ConvertNextToCurrent(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IPAT_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __ICAT_INTERFACE_DEFINED__
|
|
#define __ICAT_INTERFACE_DEFINED__
|
|
|
|
/* interface ICAT */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_ICAT;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("7C6995FB-2A31-4bd7-953E-B1AD7FB7D31C")
|
|
ICAT : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVersionNumber(
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCountOfTableDescriptors(
|
|
/* [out] */ DWORD *pdwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTableDescriptorByIndex(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTableDescriptorByTag(
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForNextTable(
|
|
/* [in] */ HANDLE hNextTableAvailable) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetNextTable(
|
|
/* [in] */ DWORD dwTimeout,
|
|
/* [out] */ ICAT **ppCAT) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForWhenCurrent(
|
|
/* [in] */ HANDLE hNextTableIsCurrent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertNextToCurrent( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct ICATVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
ICAT * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
ICAT * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
ICAT * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
ICAT * This,
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVersionNumber )(
|
|
ICAT * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCountOfTableDescriptors )(
|
|
ICAT * This,
|
|
/* [out] */ DWORD *pdwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTableDescriptorByIndex )(
|
|
ICAT * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTableDescriptorByTag )(
|
|
ICAT * This,
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForNextTable )(
|
|
ICAT * This,
|
|
/* [in] */ HANDLE hNextTableAvailable);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNextTable )(
|
|
ICAT * This,
|
|
/* [in] */ DWORD dwTimeout,
|
|
/* [out] */ ICAT **ppCAT);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForWhenCurrent )(
|
|
ICAT * This,
|
|
/* [in] */ HANDLE hNextTableIsCurrent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertNextToCurrent )(
|
|
ICAT * This);
|
|
|
|
END_INTERFACE
|
|
} ICATVtbl;
|
|
|
|
interface ICAT
|
|
{
|
|
CONST_VTBL struct ICATVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define ICAT_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define ICAT_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define ICAT_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define ICAT_Initialize(This,pSectionList,pMPEGData) \
|
|
( (This)->lpVtbl -> Initialize(This,pSectionList,pMPEGData) )
|
|
|
|
#define ICAT_GetVersionNumber(This,pbVal) \
|
|
( (This)->lpVtbl -> GetVersionNumber(This,pbVal) )
|
|
|
|
#define ICAT_GetCountOfTableDescriptors(This,pdwVal) \
|
|
( (This)->lpVtbl -> GetCountOfTableDescriptors(This,pdwVal) )
|
|
|
|
#define ICAT_GetTableDescriptorByIndex(This,dwIndex,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetTableDescriptorByIndex(This,dwIndex,ppDescriptor) )
|
|
|
|
#define ICAT_GetTableDescriptorByTag(This,bTag,pdwCookie,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetTableDescriptorByTag(This,bTag,pdwCookie,ppDescriptor) )
|
|
|
|
#define ICAT_RegisterForNextTable(This,hNextTableAvailable) \
|
|
( (This)->lpVtbl -> RegisterForNextTable(This,hNextTableAvailable) )
|
|
|
|
#define ICAT_GetNextTable(This,dwTimeout,ppCAT) \
|
|
( (This)->lpVtbl -> GetNextTable(This,dwTimeout,ppCAT) )
|
|
|
|
#define ICAT_RegisterForWhenCurrent(This,hNextTableIsCurrent) \
|
|
( (This)->lpVtbl -> RegisterForWhenCurrent(This,hNextTableIsCurrent) )
|
|
|
|
#define ICAT_ConvertNextToCurrent(This) \
|
|
( (This)->lpVtbl -> ConvertNextToCurrent(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __ICAT_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IPMT_INTERFACE_DEFINED__
|
|
#define __IPMT_INTERFACE_DEFINED__
|
|
|
|
/* interface IPMT */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IPMT;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("01F3B398-9527-4736-94DB-5195878E97A8")
|
|
IPMT : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetProgramNumber(
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVersionNumber(
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPcrPid(
|
|
/* [out] */ PID *pPidVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCountOfTableDescriptors(
|
|
/* [out] */ DWORD *pdwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTableDescriptorByIndex(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTableDescriptorByTag(
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCountOfRecords(
|
|
/* [out] */ WORD *pwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordStreamType(
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordElementaryPid(
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [out] */ PID *pPidVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordCountOfDescriptors(
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [out] */ DWORD *pdwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordDescriptorByIndex(
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [in] */ DWORD dwDescIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRecordDescriptorByTag(
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueryServiceGatewayInfo(
|
|
/* [out] */ DSMCC_ELEMENT **ppDSMCCList,
|
|
/* [out] */ UINT *puiCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueryMPEInfo(
|
|
/* [out] */ MPE_ELEMENT **ppMPEList,
|
|
/* [out] */ UINT *puiCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForNextTable(
|
|
/* [in] */ HANDLE hNextTableAvailable) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetNextTable(
|
|
/* [out] */ IPMT **ppPMT) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForWhenCurrent(
|
|
/* [in] */ HANDLE hNextTableIsCurrent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertNextToCurrent( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IPMTVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IPMT * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IPMT * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IPMT * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
IPMT * This,
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetProgramNumber )(
|
|
IPMT * This,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVersionNumber )(
|
|
IPMT * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPcrPid )(
|
|
IPMT * This,
|
|
/* [out] */ PID *pPidVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCountOfTableDescriptors )(
|
|
IPMT * This,
|
|
/* [out] */ DWORD *pdwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTableDescriptorByIndex )(
|
|
IPMT * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTableDescriptorByTag )(
|
|
IPMT * This,
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCountOfRecords )(
|
|
IPMT * This,
|
|
/* [out] */ WORD *pwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordStreamType )(
|
|
IPMT * This,
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordElementaryPid )(
|
|
IPMT * This,
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [out] */ PID *pPidVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordCountOfDescriptors )(
|
|
IPMT * This,
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [out] */ DWORD *pdwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordDescriptorByIndex )(
|
|
IPMT * This,
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [in] */ DWORD dwDescIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRecordDescriptorByTag )(
|
|
IPMT * This,
|
|
/* [in] */ DWORD dwRecordIndex,
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryServiceGatewayInfo )(
|
|
IPMT * This,
|
|
/* [out] */ DSMCC_ELEMENT **ppDSMCCList,
|
|
/* [out] */ UINT *puiCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryMPEInfo )(
|
|
IPMT * This,
|
|
/* [out] */ MPE_ELEMENT **ppMPEList,
|
|
/* [out] */ UINT *puiCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForNextTable )(
|
|
IPMT * This,
|
|
/* [in] */ HANDLE hNextTableAvailable);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNextTable )(
|
|
IPMT * This,
|
|
/* [out] */ IPMT **ppPMT);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForWhenCurrent )(
|
|
IPMT * This,
|
|
/* [in] */ HANDLE hNextTableIsCurrent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertNextToCurrent )(
|
|
IPMT * This);
|
|
|
|
END_INTERFACE
|
|
} IPMTVtbl;
|
|
|
|
interface IPMT
|
|
{
|
|
CONST_VTBL struct IPMTVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IPMT_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IPMT_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IPMT_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IPMT_Initialize(This,pSectionList,pMPEGData) \
|
|
( (This)->lpVtbl -> Initialize(This,pSectionList,pMPEGData) )
|
|
|
|
#define IPMT_GetProgramNumber(This,pwVal) \
|
|
( (This)->lpVtbl -> GetProgramNumber(This,pwVal) )
|
|
|
|
#define IPMT_GetVersionNumber(This,pbVal) \
|
|
( (This)->lpVtbl -> GetVersionNumber(This,pbVal) )
|
|
|
|
#define IPMT_GetPcrPid(This,pPidVal) \
|
|
( (This)->lpVtbl -> GetPcrPid(This,pPidVal) )
|
|
|
|
#define IPMT_GetCountOfTableDescriptors(This,pdwVal) \
|
|
( (This)->lpVtbl -> GetCountOfTableDescriptors(This,pdwVal) )
|
|
|
|
#define IPMT_GetTableDescriptorByIndex(This,dwIndex,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetTableDescriptorByIndex(This,dwIndex,ppDescriptor) )
|
|
|
|
#define IPMT_GetTableDescriptorByTag(This,bTag,pdwCookie,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetTableDescriptorByTag(This,bTag,pdwCookie,ppDescriptor) )
|
|
|
|
#define IPMT_GetCountOfRecords(This,pwVal) \
|
|
( (This)->lpVtbl -> GetCountOfRecords(This,pwVal) )
|
|
|
|
#define IPMT_GetRecordStreamType(This,dwRecordIndex,pbVal) \
|
|
( (This)->lpVtbl -> GetRecordStreamType(This,dwRecordIndex,pbVal) )
|
|
|
|
#define IPMT_GetRecordElementaryPid(This,dwRecordIndex,pPidVal) \
|
|
( (This)->lpVtbl -> GetRecordElementaryPid(This,dwRecordIndex,pPidVal) )
|
|
|
|
#define IPMT_GetRecordCountOfDescriptors(This,dwRecordIndex,pdwVal) \
|
|
( (This)->lpVtbl -> GetRecordCountOfDescriptors(This,dwRecordIndex,pdwVal) )
|
|
|
|
#define IPMT_GetRecordDescriptorByIndex(This,dwRecordIndex,dwDescIndex,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetRecordDescriptorByIndex(This,dwRecordIndex,dwDescIndex,ppDescriptor) )
|
|
|
|
#define IPMT_GetRecordDescriptorByTag(This,dwRecordIndex,bTag,pdwCookie,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetRecordDescriptorByTag(This,dwRecordIndex,bTag,pdwCookie,ppDescriptor) )
|
|
|
|
#define IPMT_QueryServiceGatewayInfo(This,ppDSMCCList,puiCount) \
|
|
( (This)->lpVtbl -> QueryServiceGatewayInfo(This,ppDSMCCList,puiCount) )
|
|
|
|
#define IPMT_QueryMPEInfo(This,ppMPEList,puiCount) \
|
|
( (This)->lpVtbl -> QueryMPEInfo(This,ppMPEList,puiCount) )
|
|
|
|
#define IPMT_RegisterForNextTable(This,hNextTableAvailable) \
|
|
( (This)->lpVtbl -> RegisterForNextTable(This,hNextTableAvailable) )
|
|
|
|
#define IPMT_GetNextTable(This,ppPMT) \
|
|
( (This)->lpVtbl -> GetNextTable(This,ppPMT) )
|
|
|
|
#define IPMT_RegisterForWhenCurrent(This,hNextTableIsCurrent) \
|
|
( (This)->lpVtbl -> RegisterForWhenCurrent(This,hNextTableIsCurrent) )
|
|
|
|
#define IPMT_ConvertNextToCurrent(This) \
|
|
( (This)->lpVtbl -> ConvertNextToCurrent(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IPMT_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __ITSDT_INTERFACE_DEFINED__
|
|
#define __ITSDT_INTERFACE_DEFINED__
|
|
|
|
/* interface ITSDT */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_ITSDT;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("D19BDB43-405B-4a7c-A791-C89110C33165")
|
|
ITSDT : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVersionNumber(
|
|
/* [out] */ BYTE *pbVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCountOfTableDescriptors(
|
|
/* [out] */ DWORD *pdwVal) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTableDescriptorByIndex(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTableDescriptorByTag(
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForNextTable(
|
|
/* [in] */ HANDLE hNextTableAvailable) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetNextTable(
|
|
/* [out] */ ITSDT **ppTSDT) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RegisterForWhenCurrent(
|
|
/* [in] */ HANDLE hNextTableIsCurrent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertNextToCurrent( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct ITSDTVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
ITSDT * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
ITSDT * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
ITSDT * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
ITSDT * This,
|
|
/* [in] */ ISectionList *pSectionList,
|
|
/* [in] */ IMpeg2Data *pMPEGData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVersionNumber )(
|
|
ITSDT * This,
|
|
/* [out] */ BYTE *pbVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCountOfTableDescriptors )(
|
|
ITSDT * This,
|
|
/* [out] */ DWORD *pdwVal);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTableDescriptorByIndex )(
|
|
ITSDT * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTableDescriptorByTag )(
|
|
ITSDT * This,
|
|
/* [in] */ BYTE bTag,
|
|
/* [out][in] */ DWORD *pdwCookie,
|
|
/* [out] */ IGenericDescriptor **ppDescriptor);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForNextTable )(
|
|
ITSDT * This,
|
|
/* [in] */ HANDLE hNextTableAvailable);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetNextTable )(
|
|
ITSDT * This,
|
|
/* [out] */ ITSDT **ppTSDT);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RegisterForWhenCurrent )(
|
|
ITSDT * This,
|
|
/* [in] */ HANDLE hNextTableIsCurrent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertNextToCurrent )(
|
|
ITSDT * This);
|
|
|
|
END_INTERFACE
|
|
} ITSDTVtbl;
|
|
|
|
interface ITSDT
|
|
{
|
|
CONST_VTBL struct ITSDTVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define ITSDT_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define ITSDT_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define ITSDT_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define ITSDT_Initialize(This,pSectionList,pMPEGData) \
|
|
( (This)->lpVtbl -> Initialize(This,pSectionList,pMPEGData) )
|
|
|
|
#define ITSDT_GetVersionNumber(This,pbVal) \
|
|
( (This)->lpVtbl -> GetVersionNumber(This,pbVal) )
|
|
|
|
#define ITSDT_GetCountOfTableDescriptors(This,pdwVal) \
|
|
( (This)->lpVtbl -> GetCountOfTableDescriptors(This,pdwVal) )
|
|
|
|
#define ITSDT_GetTableDescriptorByIndex(This,dwIndex,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetTableDescriptorByIndex(This,dwIndex,ppDescriptor) )
|
|
|
|
#define ITSDT_GetTableDescriptorByTag(This,bTag,pdwCookie,ppDescriptor) \
|
|
( (This)->lpVtbl -> GetTableDescriptorByTag(This,bTag,pdwCookie,ppDescriptor) )
|
|
|
|
#define ITSDT_RegisterForNextTable(This,hNextTableAvailable) \
|
|
( (This)->lpVtbl -> RegisterForNextTable(This,hNextTableAvailable) )
|
|
|
|
#define ITSDT_GetNextTable(This,ppTSDT) \
|
|
( (This)->lpVtbl -> GetNextTable(This,ppTSDT) )
|
|
|
|
#define ITSDT_RegisterForWhenCurrent(This,hNextTableIsCurrent) \
|
|
( (This)->lpVtbl -> RegisterForWhenCurrent(This,hNextTableIsCurrent) )
|
|
|
|
#define ITSDT_ConvertNextToCurrent(This) \
|
|
( (This)->lpVtbl -> ConvertNextToCurrent(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __ITSDT_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IPSITables_INTERFACE_DEFINED__
|
|
#define __IPSITables_INTERFACE_DEFINED__
|
|
|
|
/* interface IPSITables */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IPSITables;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("919F24C5-7B14-42ac-A4B0-2AE08DAF00AC")
|
|
IPSITables : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetTable(
|
|
/* [in] */ DWORD dwTSID,
|
|
/* [in] */ DWORD dwTID_PID,
|
|
/* [in] */ DWORD dwHashedVer,
|
|
/* [in] */ DWORD dwPara4,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppIUnknown) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IPSITablesVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IPSITables * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IPSITables * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IPSITables * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTable )(
|
|
__RPC__in IPSITables * This,
|
|
/* [in] */ DWORD dwTSID,
|
|
/* [in] */ DWORD dwTID_PID,
|
|
/* [in] */ DWORD dwHashedVer,
|
|
/* [in] */ DWORD dwPara4,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppIUnknown);
|
|
|
|
END_INTERFACE
|
|
} IPSITablesVtbl;
|
|
|
|
interface IPSITables
|
|
{
|
|
CONST_VTBL struct IPSITablesVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IPSITables_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IPSITables_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IPSITables_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IPSITables_GetTable(This,dwTSID,dwTID_PID,dwHashedVer,dwPara4,ppIUnknown) \
|
|
( (This)->lpVtbl -> GetTable(This,dwTSID,dwTID_PID,dwHashedVer,dwPara4,ppIUnknown) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IPSITables_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* Additional Prototypes for ALL interfaces */
|
|
|
|
/* end of Additional Prototypes */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|