CEnumMediaTypes Class (Windows CE 5.0)

Send Feedback

Aa451490.filter04(en-us,MSDN.10).gif

This class provides the mechanism for enumerating the pin's preferred media types.

Its constructor must be passed to an object from a class derived from CBasePin.

It uses the virtual member function GetMediaType to retrieve each of the media types in turn.

It also uses the pin's CBasePin::GetMediaTypeVersion member function to determine if the number or type of media types has changed.

The base pin class does not support dynamic media type changes. CBaseFilter::GetPinVersion always returns the same value, for example.

The media type enumerator must fill in a list of pointers to media type structures.

The memory for those media type structures must be released by the callers when they have finished with it.

The memory must not be allocated from any language-specific heap; otherwise, problems might occur between a filter written in C and another written in C++. For this reason, the base classes provide generic functions (not member functions of a class) to create and delete media types: CreateMediaType and DeleteMediaType. These manage memory allocation from the task allocator.

All member functions in this class that return HRESULT and accept a pointer as a parameter return E_POINTER when passed a null pointer.

Member Functions

Member function Description
CEnumMediaTypes Constructs a CEnumMediaTypes object.

Implemented IUnknown Methods

Method Description
AddRef Increments the reference count.
QueryInterface Retrieves pointers to supported interfaces.
Release Decrements the reference count.

Implemented IEnumMediaTypes Methods

Method Description
Clone Creates a duplicate CEnumMediaTypes object with the same state.
Next Returns the next media type after the current position.
Reset Sets the current position back to the beginning.
Skip Skips over one or more entries in the enumerator.

Requirements

DirectShow applications and DirectShow filters have different include file and link library requirements.

For more information, see Setting Up the Build Environment.

OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
Header:

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.