25static const GUID IID_IDirectMusicInstrumentPRIVATE = { 0xbcb20080, 0xa40c, 0x11d1, { 0x86, 0xbc, 0x00, 0xc0, 0x4f, 0xbf, 0x8f, 0xef } };
46 FIXME(
"*sigh*... requested private/unspecified interface\n");
63 TRACE(
"(%p)->(): new ref = %u\n", iface,
ref);
73 TRACE(
"(%p)->(): new ref = %u\n", iface,
ref);
80 for (
i = 0;
i <
This->nb_articulations;
i++)
106 TRACE(
"(%p)->(%d): stub\n",
This, dwPatch);
128 if (
NULL == dminst) {
150 TRACE(
"IStream_Read failed: %08x\n",
hr);
153 if (bytes_read <
size) {
154 TRACE(
"Didn't read full chunk: %u < %u\n", bytes_read,
size);
164 TRACE(
"Apparent mismatch in chunk lengths? %u bytes remaining, %u bytes read\n",
len,
bytes);
179 WARN(
"IStream_Seek failed: %08x\n",
ret);
202 TRACE(
"RGNH chunk (region header): %u bytes\n",
chunk.dwSize);
212 TRACE(
"WSMP chunk (wave sample): %u bytes\n",
chunk.dwSize);
230 TRACE(
"WLNK chunk (wave link): %u bytes\n",
chunk.dwSize);
259 if (!
This->articulations)
263 if (!
This->articulations)
266 articulation = &
This->articulations[
This->nb_articulations];
285 This->nb_articulations++;
304 hr = IStream_Seek(
stream,
This->liInstrumentPosition, STREAM_SEEK_SET,
NULL);
307 WARN(
"IStream_Seek failed: %08x\n",
hr);
339 TRACE(
"LIST chunk: %u bytes\n",
chunk.dwSize);
350 TRACE(
"LRGN chunk (regions list): %u bytes\n",
size);
370 TRACE(
"RGN chunk (region): %u bytes\n",
chunk.dwSize);
386 TRACE(
"LART chunk (articulations list): %u bytes\n",
size);
396 TRACE(
"ART1 chunk (level 1 articulation): %u bytes\n",
chunk.dwSize);
static unsigned char bytes[4]
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static __inline const char * wine_dbgstr_longlong(ULONGLONG ll)
#define HeapFree(x, y, z)
#define DMUS_E_UNSUPPORTED_STREAM
void Patch2MIDILOCALE(DWORD dwPatch, LPMIDILOCALE pLocale)
DWORD MIDILOCALE2Patch(const MIDILOCALE *pLocale)
const char * debugstr_dmguid(const GUID *id)
static void DMUSIC_UnlockModule(void)
static IDirectMusicInstrumentImpl * impl_from_IDirectMusicInstrument(IDirectMusicInstrument *iface)
static void DMUSIC_LockModule(void)
#define IDirectMusicInstrument_AddRef(p)
#define IDirectMusicInstrument_QueryInterface(p, a, b)
struct IDirectMusicInstrument * LPDIRECTMUSICINSTRUMENT
#define IDirectMusicInstrument_Release(p)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLuint GLsizei GLsizei * length
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static DWORD subtract_bytes(DWORD len, DWORD bytes)
static ULONG WINAPI IDirectMusicInstrumentImpl_AddRef(LPDIRECTMUSICINSTRUMENT iface)
static HRESULT advance_stream(IStream *stream, ULONG bytes)
HRESULT IDirectMusicInstrumentImpl_CustomLoad(IDirectMusicInstrument *iface, IStream *stream)
static ULONG WINAPI IDirectMusicInstrumentImpl_Release(LPDIRECTMUSICINSTRUMENT iface)
HRESULT DMUSIC_CreateDirectMusicInstrumentImpl(LPCGUID lpcGUID, LPVOID *ppobj, LPUNKNOWN pUnkOuter)
static HRESULT WINAPI IDirectMusicInstrumentImpl_SetPatch(LPDIRECTMUSICINSTRUMENT iface, DWORD dwPatch)
static const IDirectMusicInstrumentVtbl DirectMusicInstrument_Vtbl
static HRESULT load_articulation(IDirectMusicInstrumentImpl *This, IStream *stream, ULONG length)
static HRESULT WINAPI IDirectMusicInstrumentImpl_GetPatch(LPDIRECTMUSICINSTRUMENT iface, DWORD *pdwPatch)
static HRESULT load_region(IDirectMusicInstrumentImpl *This, IStream *stream, instrument_region *region, ULONG length)
static const GUID IID_IDirectMusicInstrumentPRIVATE
static HRESULT read_from_stream(IStream *stream, void *data, ULONG size)
static HRESULT WINAPI IDirectMusicInstrumentImpl_QueryInterface(LPDIRECTMUSICINSTRUMENT iface, REFIID riid, LPVOID *ret_iface)
static const char * debugstr_fourcc(DWORD fourcc)
#define IsEqualIID(riid1, riid2)
IDirectMusicInstrument IDirectMusicInstrument_iface
CONNECTIONLIST connections_list