Beispiel #1
0
static ULONG WINAPI IDirectMusicSegmentState8Impl_AddRef (LPDIRECTMUSICSEGMENTSTATE8 iface) {
	IDirectMusicSegmentState8Impl *This = (IDirectMusicSegmentState8Impl *)iface;
        ULONG ref = InterlockedIncrement(&This->ref);

	TRACE("(%p): AddRef from %ld\n", This, ref - 1);

	DMIME_LockModule();

	return ref;
}
Beispiel #2
0
static ULONG WINAPI IDirectMusicSysExTrack_IUnknown_AddRef (LPUNKNOWN iface) {
	ICOM_THIS_MULTI(IDirectMusicSysExTrack, UnknownVtbl, iface);
        ULONG ref = InterlockedIncrement(&This->ref);

	TRACE("(%p): AddRef from %d\n", This, ref - 1);

	DMIME_LockModule();

	return ref;
}
Beispiel #3
0
static HRESULT WINAPI WaveTrackCF_LockServer(LPCLASSFACTORY iface,BOOL dolock) {
	TRACE("(%d)\n", dolock);

	if (dolock)
		DMIME_LockModule();
	else
		DMIME_UnlockModule();
	
	return S_OK;
}
Beispiel #4
0
static ULONG WINAPI IDirectMusicPerformance8Impl_AddRef (LPDIRECTMUSICPERFORMANCE8 iface) {
  IDirectMusicPerformance8Impl *This = (IDirectMusicPerformance8Impl *)iface;
  ULONG ref = InterlockedIncrement(&This->ref);

  TRACE("(%p): AddRef from %d\n", This, ref - 1);

  DMIME_LockModule();

  return ref;
}
Beispiel #5
0
static ULONG WINAPI DirectMusicSegmentState8_AddRef(IDirectMusicSegmentState8 *iface)
{
    IDirectMusicSegmentState8Impl *This = impl_from_IDirectMusicSegmentState8(iface);
    ULONG ref = InterlockedIncrement(&This->ref);

    TRACE("(%p): %d\n", This, ref);

    DMIME_LockModule();

    return ref;
}
Beispiel #6
0
static ULONG WINAPI IDirectMusicPerformance8Impl_AddRef(IDirectMusicPerformance8 *iface)
{
  IDirectMusicPerformance8Impl *This = impl_from_IDirectMusicPerformance8(iface);
  ULONG ref = InterlockedIncrement(&This->ref);

  TRACE("(%p): AddRef from %d\n", This, ref - 1);

  DMIME_LockModule();

  return ref;
}
Beispiel #7
0
/* for ClassFactory */
HRESULT WINAPI create_dmtimesigtrack(REFIID lpcGUID, void **ppobj)
{
    IDirectMusicTimeSigTrack *track;
    HRESULT hr;

    track = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*track));
    if (!track) {
        *ppobj = NULL;
        return E_OUTOFMEMORY;
    }
    track->IDirectMusicTrack_iface.lpVtbl = &dmtack_vtbl;
    track->ref = 1;
    dmobject_init(&track->dmobj, &CLSID_DirectMusicTimeSigTrack,
                  (IUnknown *)&track->IDirectMusicTrack_iface);
    track->dmobj.IPersistStream_iface.lpVtbl = &persiststream_vtbl;

    DMIME_LockModule();
    hr = IDirectMusicTrack_QueryInterface(&track->IDirectMusicTrack_iface, lpcGUID, ppobj);
    IDirectMusicTrack_Release(&track->IDirectMusicTrack_iface);

    return hr;
}
Beispiel #8
0
static ULONG WINAPI SegmentCF_AddRef(LPCLASSFACTORY iface) {
	DMIME_LockModule();

	return 2; /* non-heap based object */
}
Beispiel #9
0
static ULONG WINAPI ParamControlTrackCF_AddRef(LPCLASSFACTORY iface) {
	DMIME_LockModule();

	return 2; /* non-heap based object */
}