Microsoft DirectX 8.1 (C++)

IDirectMusicPerformance8::SetParam

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

Syntax

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 Standard Track Parameters.

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, or DMUS_SEG_ALLTRACKS to set the parameter on all tracks in the group that contain the parameter.

mtTime

Time at which to set the data. Unlike IDirectMusicSegment8::SetParam, this time is in performance time. The start time of the segment is subtracted from this time, and the result is passed to IDirectMusicSegment8::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 error values shown in the following table.

Return code
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

  Header: Declared in dmusici.h.

See Also