IDmaChannelSlave interface (portcls.h)
The IDmaChannelSlave
interface provides methods for monitoring and controlling a DMA channel for a subordinate device (as described in Introduction to Adapter Objects). A WaveCyclic port driver implements this interface and exposes it to the WaveCyclic miniport driver. The miniport driver obtains a reference to the port driver's implementation of an IDmaChannelSlave
object by calling the port driver's IPortWaveCyclic::NewSlaveDmaChannel method. A miniport driver also has the option of implementing its own IDmaChannelSlave
interface if it requires capabilities that are not in the port driver's default implementation (for more information, see Wave Filters). When the port driver calls the miniport driver's NewStream method (for example, IMiniportWaveCyclic::NewStream), the method outputs the miniport driver's IDmaChannelSlave
object to the port driver. IDmaChannelSlave
inherits from the IDmaChannel interface.
For more information, see DMA Channel Objects.
In addition to the methods that are inherited from IUnknown interface, IDmaChannelSlave
also inherits from IDmaChannel.
Inheritance
The IDmaChannelSlave interface inherits from the IDmaChannel interface.
Methods
The IDmaChannelSlave interface has these methods.
IDmaChannelSlave::ReadCounter The ReadCounter method reads the counter of a subordinate DMA object. |
IDmaChannelSlave::Start The Start method starts a subordinate DMA object. |
IDmaChannelSlave::Stop The Stop method stops a subordinate DMA object that was started by a previous call to IDmaChannelSlave::Start |
IDmaChannelSlave::WaitForTC The WaitForTC method waits for the DMA-transfer terminal count to complete, or it times out if the time-out interval expires. |
Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | portcls.h |