IDirectMusicBuffer8::PackStructured
Warning: This technology is deprecated as is all of DirectMusic. Deprecated components are considered obsolete. While these components are still supported, they may be removed in the future. When writing new applications, you should avoid using these deprecated components. When modifying existing applications, you are strongly encouraged to remove any dependency on these components.
Deprecated.
The PackStructured method inserts fixed-length data (typically a MIDI channel message), along with timing and routing information, into the buffer.
Syntax
HRESULT PackStructured(
REFERENCE_TIME rt,
DWORD dwChannelGroup,
DWORD dwChannelMessage
);
Parameters
rt
Absolute time of the message. (See Remarks.)
dwChannelGroup
Channel group to which the data belongs.
dwChannelMessage
Data (MIDI message) to pack.
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_INVALID_EVENT |
E_OUTOFMEMORY |
Remarks
At least 32 bytes (the size of DMUS_EVENTHEADER plus dwChannelMessage) must be free in the buffer.
The rt parameter must contain the absolute time at which the data is to be sent to the port. To play a message immediately, retrieve the time from the latency clock, and use this as rt. See IDirectMusicPort8::GetLatencyClock.
Messages stamped with the same time do not necessarily play in the same order in which they were placed in the buffer.
Requirements
** Minimum Supported Client:** Windows 2000.
** Minimum Supported Server:** Windows 2000 Server.
** Header:** Dmusicc.h
See Also