Share via


ISectionList::Initialize Method

The Initialize method initializes the object. This method should be called once, immediately after creating the object. The IMpeg2Data::GetSection and IMpeg2Data::GetTable methods call this method internally, so typically an application will not call it.

Syntax

HRESULT Initialize(
  [in]  MPEG_REQUEST_TYPE requestType,
  [in]  IMpeg2Data *pMpeg2Data,
  [in]  PMPEG_CONTEXT pContext,
  [in]  PID pid,
  [in]  TID tid,
  [in]  PMPEG2_FILTER pFilter,
  [in]  DWORD timeout,
  [in]  HANDLE hDoneEvent
);

Parameters

  • requestType [in]
    Specifies the request type, as an MPEG_REQUEST_TYPE value.

  • pMpeg2Data [in]
    Pointer to the IMpeg2Data interface of the MPEG-2 Sections and Tables filter.

  • pContext [in]
    Pointer to an MPEG_CONTEXT structure. This structure indicates the MPEG-2 source.

  • pid [in]
    Specifies a packet identifier (PID), indicating which packets in the transport stream are requested.

  • tid [in]
    Specifies a table identifier (TID), indicating which table sections to retrieve.

  • pFilter [in]
    Optional pointer to an MPEG2_FILTER structure. The caller can use this parameter to exclude packets based on additional MPEG-2 header fields. This parameter can be NULL.

  • timeout [in]
    Specifies the maximum length of time that a synchronous request should wait before it times out.

  • hDoneEvent [in]
    Specifies a handle to an event. The object signals the event when the request completes. This parameter is optional; it should be specified for asynchronous requests.

Return Value

The method returns an HRESULT. Possible values include those in the following table.

Return code Description

E_INVALIDARG

Invalid argument.

E_OUTOFMEMORY

Insufficient memory.

MPEG2_E_ALREADY_INITIALIZED

The object has already been initialized.

S_OK

The method succeeded.

Remarks

This method is either synchronous or asynchronous, depending on the request type defined in the requestType parameter. When the method is asynchronous, it returns immediately and signals the event specified in hDoneEvent. When the method is synchronous, it blocks until the request completes or until the time out specified in the timeout parameter expires.

Requirements

Header Declared in Mpeg2data.h.

See Also

ISectionList Interface

Send comments about this topic to Microsoft

Build date: 12/4/2008