DirectShow Classes (Windows CE 5.0)

Send Feedback

This section contains reference entries for all the Microsoft® DirectShow® C++ classes, their data members, and their methods.

Programming element Description
CAggDirectDraw Aggregates an IDirectDraw interface.
CAggDrawSurface Aggregates an IDirectDrawSurface interface.
CAMEvent An event object that can be set and waited on to provide inter-thread synchronization.
CAMMsgEvent A wrapper for event objects that do message processing.
CAMSchedule Relieves clocks from the burden of managing the advise requests.
CAMThread An abstract class, which is a worker thread class that provides creation, synchronization, and communication with a worker thread.
CAutoLock Holds a critical section for the scope of a block or function.
CBaseAllocator An abstract base class that implements the basic mechanisms for an allocator with a fixed number of fixed-size buffers.
CBaseBasicVideo Handles the IDispatch component of the IBasicVideo interface and leaves the properties and methods as a pure virtual function.
CBaseControlVideo Implements the IBasicVideo dual interface and controls the video properties of a generic video window.
CBaseDispatch A base class that implements the IDispatch interface for use in a dual interface.
CBaseFilter An abstract base class from which all filters are derived.
CBaseInputPin An abstract base class derived from CBasePin that adds support for IMemInputPin in addition to the IPin interface support provided by CBasePin.
CBaseList Represents a list of pointers to objects. No storage management or copying is done on the objects that are pointed to.
CBaseMediaFilter An abstract base class that provides support for the IMediaFilter interface.

The CBaseMediaFilter class handles State_Stopped, State_Paused, and State_Running state transitions.

CBaseObject An abstract base class that is the basis for all component objects.
CBaseOutputPin An abstract base class derived from the CBasePin class that provides support for the common memory transport.
CBasePin An abstract base class from which all pins are derived.
CBasePropertyPage An abstract class for implementing a property page.
CBaseReferenceClock Implements the IReferenceClock interface.
CBaseRenderer The base renderer class for writing renderers. This class handles a single input pin, all state changes, and synchronization.
CBaseStreamControl Implements the IAMStreamControl interface on input and output pins in a filter graph.

This class provides control of the starting and stopping of various components of the stream.

CBaseVideoRenderer Used for building video renderer filters.
CBaseWindow Creates a window and a worker thread.

The worker thread pulls messages from the window's input queue and dispatches them as appropriate.

CBasicAudio Handles the IDispatch interface component of the IBasicAudio interface and leaves the properties and methods of IBasicAudio as a pure virtual function to be implemented by a derived filter class.
CCritSec Provides intra-process synchronization.
CDisp Provides methods for displaying a number of data types for debugging.
CDispBasic An internal class used to implement the CDisp class.
CEnumMediaTypes Provides the mechanism for enumerating the pin's preferred media types.
CEnumPins Supports the IEnumPins enumeration interface by calling CBaseFilter methods.
CFactoryTemplate Provides a template used by the default class factory code.
CGenericList A template class that allows for a type-specific implementation of a list.
CGuidNameList This class implements an array of globally unique identifier (GUID) names based on the predefined names of GUIDs that come with DirectShow.
CLoadDirectDraw Manages loading and unloading the Microsoft DirectDraw® library and creating the initial IDirectDraw interface.
CMediaControl Provides base class handling of the IDispatch methods of the dual-interface IMediaControl.
CMediaEvent The CMediaEvent class provides base class implementation of the IDispatch methods of the dual-interface IMediaEvent.

It leaves the properties and methods of the IMediaEvent interface as a pure virtual function.

CMediaPosition A base class that handles the IDispatch methods of the dual-interface IMediaPosition.
CMediaSample Represents a buffer object that supports the IMediaSample interface.
CMediaType Helps negotiate a media type between two connected filters.
CMemAllocator Provides support for IMemAllocator by using the new operator to allocate memory.
CMsg The CMsgThread class provides a worker thread to which any number of requests can be posted.

The requests, in the form of a CMsg object, are queued and executed in order, asynchronously.

CMsgThread A worker thread class that queues requests to the queuing thread for completion asynchronously.
COARefTime Converts between the Automation-compatible REFTIME type and the REFERENCE_TIME type used within and between filters.
COutputQueue Output pins use COutputQueue to send samples to another filter by using the local memory-based transport (that is, to input pins that support the IMemInputPin interface).
CPersistStream The base class for persistent properties of filters (that is, filter properties in saved graphs).
CPosPassThru A utility class that handles the IMediaPosition and IMediaSeeking interfaces for single-input pin renderers and transform filters.
CPullPin The CPullPin class is provided to allow a filter downstream from the source to create a thread and pull a media stream from an asynchronous source filter that supports the IAsyncReader interface.
CQueue Implements a simple queue abstract data type.

The queue contains a finite number of objects, and a semaphore controls access to these objects.

CRefTime Used to manage reference times.
CRendererInputPin Channels calls to the rendering filter.
CRendererPosPassThru This class, which is implemented on the video renderer, sets indexed frames to reference times. It assists the IMediaSeeking interface.
CSource This class and its corresponding class, CSourceStream, simplify the construction of source filters that produce continuous streams of data comparable to the way the CTransformFilter class assists in the creation of transform filters.
CSourcePosition An abstract class that assists source filters with the implementation of IMediaPosition methods.
CSourceSeeking An abstract class that assists source filters with the implementation of IMediaSeeking interface methods.

This class enables a source filter to handle calls that change the start and stop positions in the media stream and the playback rate.

CSourceStream Derives from this class to provide a class that creates the data stream from one of the output pins.
CSystemClock Implements a system clock that provides time information and timing signals to an application.
CTransformFilter An abstract base class that supports a simple transform filter with a single input and a single output.
CTransformInputPin Implements the input pin of a simple transform filter.
CTransformOutputPin Implements the output pin of a simple transform filter.
CTransInPlaceFilter An abstract base class that provides support for a simple transform filter with a single input and a single output.
CTransInPlaceInputPin Implements the input pin to transform data in place rather than making a copy of it.
CTransInPlaceOutputPin Implements the output pin of a simple transform-inplace filter, CTransInPlaceFilter.
CUnknown All DirectShow Component Object Model (COM) objects derive from the CUnknown abstract base class.

This class facilitates the creation of simple COM objects that you can combine with other COM objects to support multiple interfaces.

CVideoTransformFilter Primarily a base class for AVI decompressor filters.

It is based on a copying transform class and assumes that the output buffer will likely be a video buffer or DirectDraw buffer, although this could be used as a base class for other types of transform filters.

FOURCCMap This class provides conversion between GUID media subtypes and old-style FOURCC 32-bit media tags.

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.