SetDestinationIncrement |
Specifies by how many elements the source offset is to be incremented after every OutXX or MoveOutXX transfer.
virtual HRESULT SetDestinationIncrement(long lIncrement) abstract;
[in] Number of elements by which the destination offset is incremented.
Returns S_OK if successful, otherwise a failure HRESULT.
The default value increment is 1 -- that is, the destination address will be incremented by 1 after each transfer, and the MoveOutXX operations move into consecutive elements. If this attribute is set to 0, the MoveOutXX operations will always write to the same element, essentially treating the destination as a FIFO register.
The following example demonstrates use of the SetDestinationIncrement function.
// CoAcme4321.cpp STDMETHODIMP Acme4321::IAcme4321_Write(SAFEARRAY* psaData) { // Increment by two elements after MoveOut16 hr = io.SetDestinationIncrement(2); hr = io.Memory.MoveOut16(VisaA16Space, 0x10, ppsaData); return hr; }