DirectX SDK

IDirectMusicPerformance::SetParam

The IDirectMusicPerformance::SetParam method sets data on a track inside the control segment.

HRESULT SetParam(
  REFGUID rguidType,
  DWORD dwGroupBits,
  DWORD dwIndex,
  MUSIC_TIME mtTime,
  void* pParam
);

Parameters

rguidType
Reference to (C++) or address of (C) the identifier of the type of data to set. See Track Parameter Types.
dwGroupBits
Group that the desired track is in.
dwIndex
Index of the track in the group identified by dwGroupBits in which data is to be set.
mtTime
Time at which to set the data. Unlike IDirectMusicSegment::SetParam, this time is in performance time. The start time of the segment is subtracted from this time, and the result is passed to IDirectMusicSegment::SetParam.
pParam
Address of a structure containing the data. This structure must be of the appropriate kind and size for the data type identified by rguidType.

Return Values

If the method succeeds, the return value is S_OK.

If it fails, the method can return one of the following error values:

DMUS_E_NO_MASTER_CLOCK
DMUS_E_SET_UNSUPPORTED
DMUS_E_TRACK_NOT_FOUND
E_POINTER

Remarks

Normally the primary segment is the control segment. However, a secondary segment can be designated as the control segment when it is played. See DMUS_SEGF_FLAGS.

For an explanation of dwGroupBits and dwIndex, see Identifying the Track.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dmusici.h.

See Also

IDirectMusicPerformance::GetParam, IDirectMusicPerformance::SetGlobalParam, IDirectMusicSegment::SetParam, IDirectMusicTrack::SetParam, IDirectMusicPerformance::GetTime, Music Parameters