58 TRACE(
"(%p)->(): new ref = %u\n", iface,
ref);
68 TRACE(
"(%p)->(): new ref = %u\n", iface,
ref);
84 TRACE(
"(%p)->()\n", iface);
108 if (new_write_pos >
This->size)
113 if (!(channel_message & 0x80))
119 if (!
This->write_pos)
120 This->start_time = ref_time;
124 header->dwChannelGroup = channel_group;
125 header->rtDelta = ref_time -
This->start_time;
129 This->write_pos = new_write_pos;
143 if (new_write_pos >
This->size)
146 if (!
This->write_pos)
147 This->start_time = ref_time;
151 header->dwChannelGroup = channel_group;
152 header->rtDelta = ref_time -
This->start_time;
156 This->write_pos = new_write_pos;
174 FIXME(
"(%p, %p, %p, %p, %p): stub\n",
This, prt, pdwChannelGroup, pdwLength,
ppData);
197 TRACE(
"(%p)->(%p)\n", iface, ref_time);
201 if (!
This->write_pos)
204 *ref_time =
This->start_time;
213 TRACE(
"(%p)->(%p)\n", iface, used_bytes);
218 *used_bytes =
This->write_pos;
227 TRACE(
"(%p)->(%p)\n", iface, max_bytes);
232 *max_bytes =
This->size;
256 This->start_time = ref_time;
265 TRACE(
"(%p)->(%u)\n", iface, used_bytes);
267 if (used_bytes >
This->size)
270 This->write_pos = used_bytes;
313 dmbuffer->
size = (
desc->cbBuffer + 3) & ~3;
316 if (!dmbuffer->
data) {
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static HRESULT WINAPI IDirectMusicBufferImpl_PackUnstructured(IDirectMusicBuffer *iface, REFERENCE_TIME ref_time, DWORD channel_group, DWORD len, BYTE *data)
static HRESULT WINAPI IDirectMusicBufferImpl_GetNextEvent(LPDIRECTMUSICBUFFER iface, LPREFERENCE_TIME prt, LPDWORD pdwChannelGroup, LPDWORD pdwLength, LPBYTE *ppData)
static HRESULT WINAPI IDirectMusicBufferImpl_Flush(LPDIRECTMUSICBUFFER iface)
static HRESULT WINAPI IDirectMusicBufferImpl_SetUsedBytes(LPDIRECTMUSICBUFFER iface, DWORD used_bytes)
static ULONG WINAPI IDirectMusicBufferImpl_Release(LPDIRECTMUSICBUFFER iface)
HRESULT DMUSIC_CreateDirectMusicBufferImpl(LPDMUS_BUFFERDESC desc, LPVOID *ret_iface)
static HRESULT WINAPI IDirectMusicBufferImpl_GetUsedBytes(LPDIRECTMUSICBUFFER iface, LPDWORD used_bytes)
static HRESULT WINAPI IDirectMusicBufferImpl_QueryInterface(LPDIRECTMUSICBUFFER iface, REFIID riid, LPVOID *ret_iface)
static HRESULT WINAPI IDirectMusicBufferImpl_GetStartTime(LPDIRECTMUSICBUFFER iface, LPREFERENCE_TIME ref_time)
static HRESULT WINAPI IDirectMusicBufferImpl_SetStartTime(LPDIRECTMUSICBUFFER iface, REFERENCE_TIME ref_time)
static IDirectMusicBufferImpl * impl_from_IDirectMusicBuffer(IDirectMusicBuffer *iface)
static HRESULT WINAPI IDirectMusicBufferImpl_GetRawBufferPtr(LPDIRECTMUSICBUFFER iface, LPBYTE *data)
static ULONG WINAPI IDirectMusicBufferImpl_AddRef(LPDIRECTMUSICBUFFER iface)
static HRESULT WINAPI IDirectMusicBufferImpl_PackStructured(LPDIRECTMUSICBUFFER iface, REFERENCE_TIME ref_time, DWORD channel_group, DWORD channel_message)
static HRESULT WINAPI IDirectMusicBufferImpl_GetMaxBytes(LPDIRECTMUSICBUFFER iface, LPDWORD max_bytes)
static HRESULT WINAPI IDirectMusicBufferImpl_TotalTime(LPDIRECTMUSICBUFFER iface, LPREFERENCE_TIME prtTime)
static HRESULT WINAPI IDirectMusicBufferImpl_ResetReadPtr(LPDIRECTMUSICBUFFER iface)
static const IDirectMusicBufferVtbl DirectMusicBuffer_Vtbl
static HRESULT WINAPI IDirectMusicBufferImpl_GetBufferFormat(LPDIRECTMUSICBUFFER iface, LPGUID format)
static __inline const char * wine_dbgstr_longlong(ULONGLONG ll)
#define HeapFree(x, y, z)
REFERENCE_TIME * LPREFERENCE_TIME
#define DMUS_E_BUFFER_FULL
#define DMUS_E_BUFFER_EMPTY
#define DMUS_E_INVALID_EVENT
#define DMUS_EVENT_STRUCTURED
#define DMUS_EVENT_SIZE(cb)
const char * debugstr_dmguid(const GUID *id)
static void DMUSIC_UnlockModule(void)
static void DMUSIC_LockModule(void)
#define IDirectMusicBuffer_AddRef(p)
struct IDirectMusicBuffer * LPDIRECTMUSICBUFFER
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
#define memcpy(s1, s2, n)
PSDBQUERYRESULT_VISTA PVOID * ppData
static const WCHAR desc[]
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
IDirectMusicBuffer IDirectMusicBuffer_iface
#define CONTAINING_RECORD(address, type, field)