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 |
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.