IDirectMusicSegment

The IDirectMusicSegment interface represents a segment, a chunk of music made up of multiple tracks. Because almost all of the information that defines a segment is stored in the tracks, and because tracks can be just about anything, the segment itself is a relatively simple object. There are methods to access data in tracks, even though the segment object has no knowledge of the nature of the data.

Segments are usually loaded by calling IDirectMusicLoader::GetObject. They can also be assembled by using the CoCreateInstance function and the IDirectMusicSegment::InsertTrack method.

The DirectMusicSegment object also supports the IDirectMusicObject and IPersistStream interfaces for loading its data.

The methods of the IDirectMusicSegment interface can be grouped as follows:

Timing and looping GetDefaultResolution
  GetLength
GetLoopPoints
GetRepeats
GetStartPoint
SetDefaultResolution
SetLength
SetLoopPoints
SetRepeats
SetStartPoint
Tracks GetTrack
  GetTrackGroup
InsertTrack
RemoveTrack
Notification AddNotificationType
  RemoveNotificationType
Parameters GetParam
  SetParam
Tools GetGraph
  SetGraph
Miscellaneous Clone
  InitPlay
SetPChannelsUsed

All COM interfaces inherit the IUnknown interface methods. This interface supports the following three methods:

IUnknown AddRef
  QueryInterface
Release

QuickInfo

  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

Segments