Microsoft DirectX 8.0

IEnumPIDMap Interface

This interface is implemented on a standard COM collection of Packet ID (PID) maps that have been created by a call to the IMPEG2PIDMap::MapPID method on an output pin of the MPEG-2 Demultiplexer. To obtain a pointer to this interface, use the IMPEG2PIDMap::EnumPIDMap method. Typically, output pins for audio and video streams will only have a single PID mapped at any given time. This collection represents a snapshot of the PIDs mapped at the time the collection is created. The collection is not updated automatically.

MethodNameDescription
Clone Creates a new copy of the collection and all its sub-objects.
NextRetrieves the next n elements in the collection.
ResetMoves the iterator to the beginning of the collection.
SkipSkips over the specified element in the collection.

IEnumPIDMap::Clone

IEnumPIDMap Interface

Copy the collection.

Syntax

HRESULT Clone(
    IEnumPIDMap** ppIEnumPIDMap
    );

Parameters

ppIEnumPIDMap
[out] Address of an IEnumPIDMap interface pointer that will be set to the returned collection object.

Return Value

Returns S_OK if successful. If the method fails, error information can be retrieved using the standard COM IErrorInfo interface.

IEnumPIDMap::Next

IEnumPIDMap Interface

Retrieves the next n elements in the collection.

Syntax

HRESULT Next(
    ULONG cRequest,
    PID_MAP* pPIDMap,
    ULONG* pcReceived
    );

Parameters

cRequest
[in] The number of elements to retrieve.
pPIDMap
[in, out, size_is (cRequest)] Address of a caller-allocated array containing cRequest elements that will receive the retrieved PID_MAP structures.
pcReceived
[out] Pointer to a variable of type ULONG that receives the number of elements actually retrieved.

Return Value

Returns S_OK if successful. If the method fails, error information can be retrieved using the standard COM IErrorInfo interface.

Return Value

If cRequest> = 0 and pcReceived is not NULL, upon return pcReceived contains the number of PID maps remaining in the collection.

IEnumPIDMap::Reset

IEnumPIDMap Interface

Moves the iterator to the beginning of the collection.

Syntax

HRESULT Reset();

Return Value

Returns S_OK if successful. If the method fails, error information can be retrieved using the standard COM IErrorInfo interface.

IEnumPIDMap::Skip

IEnumPIDMap Interface

Skip the element at the specified index.

Syntax

HRESULT Skip(
    ULONG cRecords
    );

Parameters

cRecords
[in] Index of the element to skip.

Return Value

Returns S_OK if successful. If the method fails, error information can be retrieved using the standard COM IErrorInfo interface.