ReactOS 0.4.17-dev-934-g091855f
dmstyle_private.h File Reference
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include "windef.h"
#include "winbase.h"
#include "winnt.h"
#include "wingdi.h"
#include "winuser.h"
#include "wine/debug.h"
#include "wine/list.h"
#include "winreg.h"
#include "objbase.h"
#include "dmusici.h"
#include "dmusicf.h"
#include "dmusics.h"
#include "dmutils.h"
Include dependency graph for dmstyle_private.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _DMUS_PRIVATE_COMMAND
 

Macros

#define COBJMACROS
 

Typedefs

typedef struct _DMUS_PRIVATE_COMMAND DMUS_PRIVATE_COMMAND
 
typedef struct _DMUS_PRIVATE_COMMAND * LPDMUS_PRIVATE_COMMAND
 

Functions

HRESULT create_dmstyle (REFIID riid, void **ret_iface)
 
HRESULT create_dmauditiontrack (REFIID riid, void **ret_iface)
 
HRESULT create_dmchordtrack (REFIID riid, void **ret_iface)
 
HRESULT create_dmcommandtrack (REFIID riid, void **ret_iface)
 
HRESULT create_dmmotiftrack (REFIID riid, void **ret_iface)
 
HRESULT create_dmmutetrack (REFIID riid, void **ret_iface)
 
HRESULT create_dmstyletrack (REFIID riid, void **ret_iface)
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 27 of file dmstyle_private.h.

Typedef Documentation

◆ DMUS_PRIVATE_COMMAND

◆ LPDMUS_PRIVATE_COMMAND

Function Documentation

◆ create_dmauditiontrack()

HRESULT create_dmauditiontrack ( REFIID  riid,
void **  ret_iface 
)

Definition at line 316 of file auditiontrack.c.

317{
319 HRESULT hr;
320
321 *ppobj = NULL;
322 if (!(track = calloc(1, sizeof(*track)))) return E_OUTOFMEMORY;
324 track->ref = 1;
325 dmobject_init(&track->dmobj, &CLSID_DirectMusicAuditionTrack,
327 track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
328
331
332 return hr;
333}
static const IPersistStreamVtbl persiststream_vtbl
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
HRESULT hr
Definition: delayimp.cpp:582
#define NULL
Definition: types.h:112
void dmobject_init(struct dmobject *dmobj, const GUID *class, IUnknown *outer_unk)
Definition: dmobject.c:749
#define IDirectMusicTrack8_Release(p)
Definition: dmplugin.h:275
#define IDirectMusicTrack8_QueryInterface(p, a, b)
Definition: dmplugin.h:273
#define calloc
Definition: rosglue.h:14
IDirectMusicTrack8 IDirectMusicTrack8_iface
Definition: auditiontrack.c:29

◆ create_dmchordtrack()

HRESULT create_dmchordtrack ( REFIID  riid,
void **  ret_iface 
)

Definition at line 415 of file chordtrack.c.

416{
418 HRESULT hr;
419
420 *ppobj = NULL;
421 if (!(track = calloc(1, sizeof(*track)))) return E_OUTOFMEMORY;
423 track->ref = 1;
424 dmobject_init(&track->dmobj, &CLSID_DirectMusicChordTrack,
426 track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
427
430
431 return hr;
432}
static const IPersistStreamVtbl persiststream_vtbl
Definition: chordtrack.c:403
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
Definition: chordtrack.c:245
struct dmobject dmobj
Definition: chordtrack.c:32
IDirectMusicTrack8 IDirectMusicTrack8_iface
Definition: chordtrack.c:31

◆ create_dmcommandtrack()

HRESULT create_dmcommandtrack ( REFIID  riid,
void **  ret_iface 
)

Definition at line 368 of file commandtrack.c.

369{
371 HRESULT hr;
372
373 *ppobj = NULL;
374 if (!(track = calloc(1, sizeof(*track)))) return E_OUTOFMEMORY;
376 track->ref = 1;
377 dmobject_init(&track->dmobj, &CLSID_DirectMusicCommandTrack,
379 track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
380 list_init (&track->Commands);
381
383 lpcGUID, ppobj);
385
386 return hr;
387}
static void list_init(struct list_entry *head)
Definition: list.h:51
static const IPersistStreamVtbl persiststream_vtbl
Definition: commandtrack.c:356
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
Definition: commandtrack.c:255
IDirectMusicTrack8 IDirectMusicTrack8_iface
Definition: commandtrack.c:30
struct dmobject dmobj
Definition: commandtrack.c:31

◆ create_dmmotiftrack()

HRESULT create_dmmotiftrack ( REFIID  riid,
void **  ret_iface 
)

Definition at line 288 of file motiftrack.c.

289{
291 HRESULT hr;
292
293 *ppobj = NULL;
294 if (!(track = calloc(1, sizeof(*track)))) return E_OUTOFMEMORY;
296 track->ref = 1;
297 dmobject_init(&track->dmobj, &CLSID_DirectMusicMotifTrack,
299 track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
300
303
304 return hr;
305}
static const IPersistStreamVtbl persiststream_vtbl
Definition: motiftrack.c:276
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
Definition: motiftrack.c:249
struct dmobject dmobj
Definition: motiftrack.c:30
IDirectMusicTrack8 IDirectMusicTrack8_iface
Definition: motiftrack.c:29

◆ create_dmmutetrack()

HRESULT create_dmmutetrack ( REFIID  riid,
void **  ret_iface 
)

Definition at line 297 of file mutetrack.c.

298{
300 HRESULT hr;
301
302 *ppobj = NULL;
303 if (!(track = calloc(1, sizeof(*track)))) return E_OUTOFMEMORY;
305 track->ref = 1;
306 dmobject_init(&track->dmobj, &CLSID_DirectMusicMuteTrack,
308 track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
309
312
313 return hr;
314}
static const IPersistStreamVtbl persiststream_vtbl
Definition: mutetrack.c:285
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
Definition: mutetrack.c:240
IDirectMusicTrack8 IDirectMusicTrack8_iface
Definition: mutetrack.c:29
struct dmobject dmobj
Definition: mutetrack.c:30

◆ create_dmstyle()

HRESULT create_dmstyle ( REFIID  riid,
void **  ret_iface 
)

Definition at line 814 of file style.c.

815{
816 struct style *obj;
817 HRESULT hr;
818
819 *ppobj = NULL;
820 if (!(obj = calloc(1, sizeof(*obj)))) return E_OUTOFMEMORY;
821 obj->IDirectMusicStyle8_iface.lpVtbl = &dmstyle8_vtbl;
822 obj->ref = 1;
823 dmobject_init(&obj->dmobj, &CLSID_DirectMusicStyle, (IUnknown *)&obj->IDirectMusicStyle8_iface);
824 obj->dmobj.IDirectMusicObject_iface.lpVtbl = &dmobject_vtbl;
825 obj->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
826 list_init(&obj->parts);
827 list_init(&obj->bands);
828 list_init(&obj->patterns);
829
830 hr = IDirectMusicStyle8_QueryInterface(&obj->IDirectMusicStyle8_iface, lpcGUID, ppobj);
831 IDirectMusicStyle8_Release(&obj->IDirectMusicStyle8_iface);
832
833 return hr;
834}
static const IDirectMusicObjectVtbl dmobject_vtbl
Definition: style.c:382
static const IPersistStreamVtbl persiststream_vtbl
Definition: style.c:803
static const IDirectMusicStyle8Vtbl dmstyle8_vtbl
Definition: style.c:333
#define IDirectMusicStyle8_QueryInterface(p, a, b)
Definition: dmusici.h:1555
#define IDirectMusicStyle8_Release(p)
Definition: dmusici.h:1557
Definition: style.c:91

◆ create_dmstyletrack()

HRESULT create_dmstyletrack ( REFIID  riid,
void **  ret_iface 
)

Definition at line 386 of file styletrack.c.

387{
389 HRESULT hr;
390
391 *ppobj = NULL;
392 if (!(track = calloc(1, sizeof(*track)))) return E_OUTOFMEMORY;
394 track->ref = 1;
395 dmobject_init(&track->dmobj, &CLSID_DirectMusicStyleTrack,
397 track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;
398 list_init (&track->Items);
399
402
403 return hr;
404}
IDirectMusicTrack8 IDirectMusicTrack8_iface
Definition: styletrack.c:35
struct dmobject dmobj
Definition: styletrack.c:36
static const IPersistStreamVtbl persiststream_vtbl
Definition: styletrack.c:374
static const IDirectMusicTrack8Vtbl dmtrack8_vtbl
Definition: styletrack.c:281