Click or drag to resize

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;
Parameters
lIncrement

[in] Number of elements by which the destination offset is incremented.

Return Value

Returns S_OK if successful, otherwise a failure HRESULT.

Remarks

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.

Example

The following example demonstrates use of the SetDestinationIncrement function.

C++
// 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;
}
See Also

Download a complete CHM version of this documentation here.