WODM_GETPOS

The WODM_GETPOS message requests a waveform output driver to return the current input position within a waveform. The input position is relative to the beginning of the waveform.

Parameters
uDeviceId
Device identifier (0, 1, 2, and so on) for the target device.
uMsg
WODM_GETPOS
dwUser
Device instance identifier.
dwParam1
Pointer to an MMTIME structure, which is described in the Win32 SDK.
dwParam2
Size of the MMTIME structure in bytes.
Return Value

The driver should return MMSYSERR_NOERROR if the operation succeeds. Otherwise it should return one of the MMSYSERR or WAVERR error codes defined in mmsystem.h. See waveOutGetPos return values in the Win32 SDK.

Comments

A client sends the WODM_GETPOS message by calling the user-mode driver’s wodMessage entry point, passing the specified parameters.

The wType member of the MMTIME structure indicates the time format requested by the client. If the driver cannot support the requested format, it should return the position in a format that it does support, and change the wType member accordingly.

The position should be reset to zero when the driver receives a WODM_OPEN or WODM_RESET message.

Typically, the user-mode driver calls DeviceIoControl to send the kernel-mode driver an IOCTL_WAVE_GET_POSITION control code.