Microsoft DirectX 9.0

IQueueCommand Interface

The IQueueCommand interface queues a command for processing at a designated time. The Filter Graph Manager exposes this interface. Applications can use it to queue graph-control commands in advance.

The methods in IQueueCommand are modeled after the IDispatch::InvokeAt method. The application specifies an interface, a method on the interface, parameters to the method, and a reference time. The Filter Graph Manager queues this information and then invokes the method at the specified time. The requested interface must inherit IDispatch and must be exposed by the Filter Graph Manager. Examples include IMediaControl, IMediaEventEx, and IMediaPosition.

When the command is queued, the filter graph manager returns a pointer to the IDeferredCommand interface. The application can use this interface to cancel or modify the command.

Note   The two methods in IQueueCommand refer to stream time and presentation time, respectively. In the context of the Filter Graph Manager, stream time and presentation time are identical, so there is no functional difference between the two methods. Other objects could implement IQueueCommand differently. For more information about stream time and presentation time, see Time and Clocks in DirectShow.

In addition to the methods inherited from IUnknown, the IQueueCommand interface exposes the following methods.

Method Description
InvokeAtPresentationTime Queues a method to be invoked at the specified presentation time.
InvokeAtStreamTime Queues a method to be invoked at the specified stream time.