57 *ret_iface = &
This->dmobj.IPersistStream_iface;
63 IUnknown_AddRef((
IUnknown*)*ret_iface);
94 FIXME(
"(%p, %p): stub\n",
This, pSegment);
99 IDirectMusicSegmentState *pSegmentState, IDirectMusicPerformance *pPerformance,
103 FIXME(
"(%p, %p, %p, %p, %ld, %ld): stub\n",
This, pSegmentState, pPerformance, ppStateData, dwVirtualTrack8ID,
dwFlags);
110 FIXME(
"(%p, %p): stub\n",
This, pStateData);
116 IDirectMusicPerformance *pPerf, IDirectMusicSegmentState *pSegSt,
DWORD dwVirtualID)
119 FIXME(
"(%p, %p, %ld, %ld, %ld, %ld, %p, %p, %ld): stub\n",
This, pStateData, mtStart, mtEnd, mtOffset,
dwFlags, pPerf, pSegSt, dwVirtualID);
167 MUSIC_TIME mtEnd, IDirectMusicTrack **ppTrack)
170 FIXME(
"(%p, %ld, %ld, %p): stub\n",
This, mtStart, mtEnd, ppTrack);
176 IDirectMusicPerformance *pPerf, IDirectMusicSegmentState *pSegSt,
DWORD dwVirtualID)
179 FIXME(
"(%p, %p, 0x%s, 0x%s, 0x%s, %ld, %p, %p, %ld): stub\n",
This, pStateData,
wine_dbgstr_longlong(rtStart),
204 DWORD trackgroup, IDirectMusicTrack **track)
208 TRACE(
"(%p, %p, %ld, %p): method not implemented\n",
This,
context, trackgroup, track);
216 TRACE(
"(%p, %p, %ld, %p, %ld, %p): method not implemented\n",
This, newtrack,
join,
context,
217 trackgroup, resulttrack);
267 TRACE(
"Found DMUS_IO_LYRICSTRACK_EVENTHEADER\n");
269 TRACE(
" - dwTimingFlags %#lx\n",
header.dwTimingFlags);
270 TRACE(
" - lTimeLogical %ld\n",
header.lTimeLogical);
271 TRACE(
" - lTimePhysical %ld\n",
header.lTimePhysical);
284 TRACE(
"Found DMUS_FOURCC_LYRICSTRACKEVENTTEXT_CHUNK\n");
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static __inline const char * wine_dbgstr_longlong(ULONGLONG ll)
#define DMUS_E_GET_UNSUPPORTED
#define DMUS_E_UNSUPPORTED_STREAM
#define DMUS_E_TYPE_UNSUPPORTED
#define DMUS_E_SET_UNSUPPORTED
void dmobject_init(struct dmobject *dmobj, const GUID *class, IUnknown *outer_unk)
HRESULT stream_chunk_get_data(IStream *stream, const struct chunk_entry *chunk, void *data, ULONG size)
HRESULT stream_next_chunk(IStream *stream, struct chunk_entry *chunk)
ULONG WINAPI dmobj_IPersistStream_Release(IPersistStream *iface)
HRESULT WINAPI unimpl_IPersistStream_GetSizeMax(IPersistStream *iface, ULARGE_INTEGER *size)
const char * debugstr_chunk(const struct chunk_entry *chunk)
HRESULT WINAPI dmobj_IPersistStream_GetClassID(IPersistStream *iface, CLSID *class)
ULONG WINAPI dmobj_IPersistStream_AddRef(IPersistStream *iface)
const char * debugstr_dmguid(const GUID *id)
HRESULT WINAPI dmobj_IPersistStream_QueryInterface(IPersistStream *iface, REFIID riid, void **ret_iface)
HRESULT stream_get_chunk(IStream *stream, struct chunk_entry *chunk)
HRESULT WINAPI unimpl_IPersistStream_IsDirty(IPersistStream *iface)
HRESULT WINAPI unimpl_IPersistStream_Save(IPersistStream *iface, IStream *stream, BOOL clear_dirty)
#define IDirectMusicTrack8_Release(p)
#define IDirectMusicTrack8_QueryInterface(p, a, b)
#define DMUS_FOURCC_LYRICSTRACKEVENTTEXT_CHUNK
#define DMUS_FOURCC_LYRICSTRACKEVENTS_LIST
#define DMUS_FOURCC_LYRICSTRACKEVENTHEADER_CHUNK
#define DMUS_FOURCC_LYRICSTRACKEVENT_LIST
#define DMUS_FOURCC_LYRICSTRACK_LIST
GLuint GLuint GLsizei GLenum type
static HRESULT WINAPI lyrics_track_GetParam(IDirectMusicTrack8 *iface, REFGUID type, MUSIC_TIME time, MUSIC_TIME *next, void *param)
static HRESULT WINAPI lyrics_track_AddNotificationType(IDirectMusicTrack8 *iface, REFGUID notiftype)
HRESULT create_dmlyricstrack(REFIID lpcGUID, void **ppobj)
static ULONG WINAPI lyrics_track_AddRef(IDirectMusicTrack8 *iface)
static HRESULT parse_lyrics_track_events(IDirectMusicLyricsTrack *This, IStream *stream, struct chunk_entry *lyric)
static HRESULT WINAPI lyrics_track_SetParam(IDirectMusicTrack8 *iface, REFGUID type, MUSIC_TIME time, void *param)
static HRESULT WINAPI lyrics_track_Join(IDirectMusicTrack8 *iface, IDirectMusicTrack *newtrack, MUSIC_TIME join, IUnknown *context, DWORD trackgroup, IDirectMusicTrack **resulttrack)
static HRESULT WINAPI lyrics_track_PlayEx(IDirectMusicTrack8 *iface, void *pStateData, REFERENCE_TIME rtStart, REFERENCE_TIME rtEnd, REFERENCE_TIME rtOffset, DWORD dwFlags, IDirectMusicPerformance *pPerf, IDirectMusicSegmentState *pSegSt, DWORD dwVirtualID)
static HRESULT WINAPI lyrics_track_IsParamSupported(IDirectMusicTrack8 *iface, REFGUID type)
static HRESULT WINAPI lyrics_track_Compose(IDirectMusicTrack8 *iface, IUnknown *context, DWORD trackgroup, IDirectMusicTrack **track)
static HRESULT WINAPI lyrics_track_Play(IDirectMusicTrack8 *iface, void *pStateData, MUSIC_TIME mtStart, MUSIC_TIME mtEnd, MUSIC_TIME mtOffset, DWORD dwFlags, IDirectMusicPerformance *pPerf, IDirectMusicSegmentState *pSegSt, DWORD dwVirtualID)
static HRESULT WINAPI lyrics_track_InitPlay(IDirectMusicTrack8 *iface, IDirectMusicSegmentState *pSegmentState, IDirectMusicPerformance *pPerformance, void **ppStateData, DWORD dwVirtualTrack8ID, DWORD dwFlags)
static HRESULT WINAPI lyrics_track_Init(IDirectMusicTrack8 *iface, IDirectMusicSegment *pSegment)
static const IPersistStreamVtbl persiststream_vtbl
static HRESULT WINAPI lyrics_track_GetParamEx(IDirectMusicTrack8 *iface, REFGUID rguidType, REFERENCE_TIME rtTime, REFERENCE_TIME *prtNext, void *pParam, void *pStateData, DWORD dwFlags)
static IDirectMusicLyricsTrack * impl_from_IPersistStream(IPersistStream *iface)
static HRESULT WINAPI lyrics_track_QueryInterface(IDirectMusicTrack8 *iface, REFIID riid, void **ret_iface)
static HRESULT WINAPI lyrics_track_EndPlay(IDirectMusicTrack8 *iface, void *pStateData)
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
static HRESULT WINAPI lyrics_track_RemoveNotificationType(IDirectMusicTrack8 *iface, REFGUID notiftype)
static HRESULT parse_lyricstrack_list(IDirectMusicLyricsTrack *This, IStream *stream, struct chunk_entry *lyric)
static HRESULT WINAPI lyrics_track_Clone(IDirectMusicTrack8 *iface, MUSIC_TIME mtStart, MUSIC_TIME mtEnd, IDirectMusicTrack **ppTrack)
static IDirectMusicLyricsTrack * impl_from_IDirectMusicTrack8(IDirectMusicTrack8 *iface)
static HRESULT WINAPI lyrics_IPersistStream_Load(IPersistStream *iface, IStream *stream)
static HRESULT WINAPI lyrics_track_SetParamEx(IDirectMusicTrack8 *iface, REFGUID rguidType, REFERENCE_TIME rtTime, void *pParam, void *pStateData, DWORD dwFlags)
static ULONG WINAPI lyrics_track_Release(IDirectMusicTrack8 *iface)
_In_ LPWSTR _In_ DWORD _In_ DWORD _In_ DWORD dwFlags
const GUID IID_IPersistStream
#define IsEqualIID(riid1, riid2)
static unsigned __int64 next
IDirectMusicTrack8 IDirectMusicTrack8_iface
#define CONTAINING_RECORD(address, type, field)