IDMAChannel
Other versions of this page are also available for the following:
8/28/2008
This interface represents a single channel of data transfer to the media driver. It exposes elementary DMA programming operations representing a generic scatter-gather DMA model with a fixed size DMA transfer queue and low-water notification. Data addresses used at this level are physical; the underlying implementation could use cross-process memory-mapped programmed I/O (PIO), as well. An IDMAChannel interface is usually implemented by the media driver object and accessed through its primary interface, IBitstreamProcessor:IUnknown.
You can obtain a pointer to an IDMAChannel interface by calling the IUnknown::QueryInterface method of a DVD-Video object and specifying the IID_IDMACHANNEL reference identifier.
The IDMAChannel interface exposes the following methods.
Method | Description |
---|---|
Gets the textual label for the DMA channel and a globally unique identifier (GUID) for a vendor-specific labeling schema. |
|
Returns the maximum number of outstanding DMA entries that the channel can hold along with the maximum transfer size. |
|
Returns the current number of incomplete DMA transfers including any that are in progress. |
|
Sets up a low-water threshold for signaling when the number of pending transfer requests drops to a certain point. |
|
Sets the threshold callback. |
|
Sets up the DMA transfer of a contiguous memory segment with a given physical address and length. |
|
Aborts the DMA transfer in progress and flushes the transfer queue. |
|
This method is to be called between series of DMA transfers if the user-level transfer intends to notify the driver of any discontinuity in the data stream. |
The IDMAChannel interface, like all COM interfaces, inherits the IUnknown interface methods. The IUnknown interface supports the following three methods:
Requirements
Header | dvddrvr.idl |
Windows Embedded CE | Windows CE .NET 4.0 and later |