[PATCH 1/2] dsound: Move buffer property sets to buffer.c
Maarten Lankhorst
m.b.lankhorst at gmail.com
Fri Dec 4 07:09:32 CST 2009
---
dlls/dsound/buffer.c | 187 +++++++++++++++++++++++++++++++++++++++++++++++++
dlls/dsound/propset.c | 185 ------------------------------------------------
2 files changed, 187 insertions(+), 185 deletions(-)
diff --git a/dlls/dsound/buffer.c b/dlls/dsound/buffer.c
index 2a25d50..0e9096a 100644
--- a/dlls/dsound/buffer.c
+++ b/dlls/dsound/buffer.c
@@ -28,10 +28,12 @@
#include "winuser.h"
#include "mmsystem.h"
#include "winternl.h"
+#include "vfwmsgs.h"
#include "wine/debug.h"
#include "dsound.h"
#include "dsdriver.h"
#include "dsound_private.h"
+#include "dsconf.h"
WINE_DEFAULT_DEBUG_CHANNEL(dsound);
@@ -1538,3 +1540,188 @@ static HRESULT SecondaryBufferImpl_Destroy(
return S_OK;
}
+
+/*******************************************************************************
+ * IKsBufferPropertySet
+ */
+
+/* IUnknown methods */
+static HRESULT WINAPI IKsBufferPropertySetImpl_QueryInterface(
+ LPKSPROPERTYSET iface,
+ REFIID riid,
+ LPVOID *ppobj )
+{
+ IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
+ TRACE("(%p,%s,%p)\n",This,debugstr_guid(riid),ppobj);
+
+ return IDirectSoundBuffer_QueryInterface((LPDIRECTSOUNDBUFFER8)This->dsb, riid, ppobj);
+}
+
+static ULONG WINAPI IKsBufferPropertySetImpl_AddRef(LPKSPROPERTYSET iface)
+{
+ IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
+ ULONG ref = InterlockedIncrement(&(This->ref));
+ TRACE("(%p) ref was %d\n", This, ref - 1);
+ return ref;
+}
+
+static ULONG WINAPI IKsBufferPropertySetImpl_Release(LPKSPROPERTYSET iface)
+{
+ IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
+ ULONG ref = InterlockedDecrement(&(This->ref));
+ TRACE("(%p) ref was %d\n", This, ref + 1);
+
+ if (!ref) {
+ This->dsb->iks = 0;
+ IDirectSoundBuffer_Release((LPDIRECTSOUND3DBUFFER)This->dsb);
+ HeapFree(GetProcessHeap(), 0, This);
+ TRACE("(%p) released\n", This);
+ }
+ return ref;
+}
+
+static HRESULT WINAPI IKsBufferPropertySetImpl_Get(
+ LPKSPROPERTYSET iface,
+ REFGUID guidPropSet,
+ ULONG dwPropID,
+ LPVOID pInstanceData,
+ ULONG cbInstanceData,
+ LPVOID pPropData,
+ ULONG cbPropData,
+ PULONG pcbReturned )
+{
+ IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
+ PIDSDRIVERPROPERTYSET ps;
+ TRACE("(iface=%p,guidPropSet=%s,dwPropID=%d,pInstanceData=%p,cbInstanceData=%d,pPropData=%p,cbPropData=%d,pcbReturned=%p)\n",
+ This,debugstr_guid(guidPropSet),dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData,pcbReturned);
+
+ if (This->dsb->hwbuf) {
+ IDsDriver_QueryInterface(This->dsb->hwbuf, &IID_IDsDriverPropertySet, (void **)&ps);
+
+ if (ps) {
+ DSPROPERTY prop;
+ HRESULT hres;
+
+ prop.s.Set = *guidPropSet;
+ prop.s.Id = dwPropID;
+ prop.s.Flags = 0; /* unused */
+ prop.s.InstanceId = (ULONG)This->dsb->device;
+
+
+ hres = IDsDriverPropertySet_Get(ps, &prop, pInstanceData, cbInstanceData, pPropData, cbPropData, pcbReturned);
+
+ IDsDriverPropertySet_Release(ps);
+
+ return hres;
+ }
+ }
+
+ return E_PROP_ID_UNSUPPORTED;
+}
+
+static HRESULT WINAPI IKsBufferPropertySetImpl_Set(
+ LPKSPROPERTYSET iface,
+ REFGUID guidPropSet,
+ ULONG dwPropID,
+ LPVOID pInstanceData,
+ ULONG cbInstanceData,
+ LPVOID pPropData,
+ ULONG cbPropData )
+{
+ IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
+ PIDSDRIVERPROPERTYSET ps;
+ TRACE("(%p,%s,%d,%p,%d,%p,%d)\n",This,debugstr_guid(guidPropSet),dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData);
+
+ if (This->dsb->hwbuf) {
+ IDsDriver_QueryInterface(This->dsb->hwbuf, &IID_IDsDriverPropertySet, (void **)&ps);
+
+ if (ps) {
+ DSPROPERTY prop;
+ HRESULT hres;
+
+ prop.s.Set = *guidPropSet;
+ prop.s.Id = dwPropID;
+ prop.s.Flags = 0; /* unused */
+ prop.s.InstanceId = (ULONG)This->dsb->device;
+ hres = IDsDriverPropertySet_Set(ps,&prop,pInstanceData,cbInstanceData,pPropData,cbPropData);
+
+ IDsDriverPropertySet_Release(ps);
+
+ return hres;
+ }
+ }
+
+ return E_PROP_ID_UNSUPPORTED;
+}
+
+static HRESULT WINAPI IKsBufferPropertySetImpl_QuerySupport(
+ LPKSPROPERTYSET iface,
+ REFGUID guidPropSet,
+ ULONG dwPropID,
+ PULONG pTypeSupport )
+{
+ IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
+ PIDSDRIVERPROPERTYSET ps;
+ TRACE("(%p,%s,%d,%p)\n",This,debugstr_guid(guidPropSet),dwPropID,pTypeSupport);
+
+ if (This->dsb->hwbuf) {
+ IDsDriver_QueryInterface(This->dsb->hwbuf, &IID_IDsDriverPropertySet, (void **)&ps);
+
+ if (ps) {
+ HRESULT hres;
+
+ hres = IDsDriverPropertySet_QuerySupport(ps,guidPropSet, dwPropID,pTypeSupport);
+
+ IDsDriverPropertySet_Release(ps);
+
+ return hres;
+ }
+ }
+
+ return E_PROP_ID_UNSUPPORTED;
+}
+
+static const IKsPropertySetVtbl iksbvt = {
+ IKsBufferPropertySetImpl_QueryInterface,
+ IKsBufferPropertySetImpl_AddRef,
+ IKsBufferPropertySetImpl_Release,
+ IKsBufferPropertySetImpl_Get,
+ IKsBufferPropertySetImpl_Set,
+ IKsBufferPropertySetImpl_QuerySupport
+};
+
+HRESULT IKsBufferPropertySetImpl_Create(
+ IDirectSoundBufferImpl *dsb,
+ IKsBufferPropertySetImpl **piks)
+{
+ IKsBufferPropertySetImpl *iks;
+ TRACE("(%p,%p)\n",dsb,piks);
+ *piks = NULL;
+
+ iks = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(*iks));
+ if (iks == 0) {
+ WARN("out of memory\n");
+ *piks = NULL;
+ return DSERR_OUTOFMEMORY;
+ }
+
+ iks->ref = 0;
+ iks->dsb = dsb;
+ dsb->iks = iks;
+ iks->lpVtbl = &iksbvt;
+
+ IDirectSoundBuffer_AddRef((LPDIRECTSOUNDBUFFER)dsb);
+
+ *piks = iks;
+ return S_OK;
+}
+
+HRESULT IKsBufferPropertySetImpl_Destroy(
+ IKsBufferPropertySetImpl *piks)
+{
+ TRACE("(%p)\n",piks);
+
+ while (IKsBufferPropertySetImpl_Release((LPKSPROPERTYSET)piks) > 0);
+
+ return S_OK;
+}
diff --git a/dlls/dsound/propset.c b/dlls/dsound/propset.c
index 85bbbae..3cf65e5 100644
--- a/dlls/dsound/propset.c
+++ b/dlls/dsound/propset.c
@@ -44,191 +44,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(dsound);
-
-/*******************************************************************************
- * IKsBufferPropertySet
- */
-
-/* IUnknown methods */
-static HRESULT WINAPI IKsBufferPropertySetImpl_QueryInterface(
- LPKSPROPERTYSET iface,
- REFIID riid,
- LPVOID *ppobj )
-{
- IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
- TRACE("(%p,%s,%p)\n",This,debugstr_guid(riid),ppobj);
-
- return IDirectSoundBuffer_QueryInterface((LPDIRECTSOUNDBUFFER8)This->dsb, riid, ppobj);
-}
-
-static ULONG WINAPI IKsBufferPropertySetImpl_AddRef(LPKSPROPERTYSET iface)
-{
- IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
- ULONG ref = InterlockedIncrement(&(This->ref));
- TRACE("(%p) ref was %d\n", This, ref - 1);
- return ref;
-}
-
-static ULONG WINAPI IKsBufferPropertySetImpl_Release(LPKSPROPERTYSET iface)
-{
- IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
- ULONG ref = InterlockedDecrement(&(This->ref));
- TRACE("(%p) ref was %d\n", This, ref + 1);
-
- if (!ref) {
- This->dsb->iks = 0;
- IDirectSoundBuffer_Release((LPDIRECTSOUND3DBUFFER)This->dsb);
- HeapFree(GetProcessHeap(), 0, This);
- TRACE("(%p) released\n", This);
- }
- return ref;
-}
-
-static HRESULT WINAPI IKsBufferPropertySetImpl_Get(
- LPKSPROPERTYSET iface,
- REFGUID guidPropSet,
- ULONG dwPropID,
- LPVOID pInstanceData,
- ULONG cbInstanceData,
- LPVOID pPropData,
- ULONG cbPropData,
- PULONG pcbReturned )
-{
- IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
- PIDSDRIVERPROPERTYSET ps;
- TRACE("(iface=%p,guidPropSet=%s,dwPropID=%d,pInstanceData=%p,cbInstanceData=%d,pPropData=%p,cbPropData=%d,pcbReturned=%p)\n",
- This,debugstr_guid(guidPropSet),dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData,pcbReturned);
-
- if (This->dsb->hwbuf) {
- IDsDriver_QueryInterface(This->dsb->hwbuf, &IID_IDsDriverPropertySet, (void **)&ps);
-
- if (ps) {
- DSPROPERTY prop;
- HRESULT hres;
-
- S(prop).Set = *guidPropSet;
- S(prop).Id = dwPropID;
- S(prop).Flags = 0; /* unused */
- S(prop).InstanceId = (ULONG)This->dsb->device;
-
- hres = IDsDriverPropertySet_Get(ps, &prop, pInstanceData, cbInstanceData, pPropData, cbPropData, pcbReturned);
-
- IDsDriverPropertySet_Release(ps);
-
- return hres;
- }
- }
-
- return E_PROP_ID_UNSUPPORTED;
-}
-
-static HRESULT WINAPI IKsBufferPropertySetImpl_Set(
- LPKSPROPERTYSET iface,
- REFGUID guidPropSet,
- ULONG dwPropID,
- LPVOID pInstanceData,
- ULONG cbInstanceData,
- LPVOID pPropData,
- ULONG cbPropData )
-{
- IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
- PIDSDRIVERPROPERTYSET ps;
- TRACE("(%p,%s,%d,%p,%d,%p,%d)\n",This,debugstr_guid(guidPropSet),dwPropID,pInstanceData,cbInstanceData,pPropData,cbPropData);
-
- if (This->dsb->hwbuf) {
- IDsDriver_QueryInterface(This->dsb->hwbuf, &IID_IDsDriverPropertySet, (void **)&ps);
-
- if (ps) {
- DSPROPERTY prop;
- HRESULT hres;
-
- S(prop).Set = *guidPropSet;
- S(prop).Id = dwPropID;
- S(prop).Flags = 0; /* unused */
- S(prop).InstanceId = (ULONG)This->dsb->device;
- hres = IDsDriverPropertySet_Set(ps,&prop,pInstanceData,cbInstanceData,pPropData,cbPropData);
-
- IDsDriverPropertySet_Release(ps);
-
- return hres;
- }
- }
-
- return E_PROP_ID_UNSUPPORTED;
-}
-
-static HRESULT WINAPI IKsBufferPropertySetImpl_QuerySupport(
- LPKSPROPERTYSET iface,
- REFGUID guidPropSet,
- ULONG dwPropID,
- PULONG pTypeSupport )
-{
- IKsBufferPropertySetImpl *This = (IKsBufferPropertySetImpl *)iface;
- PIDSDRIVERPROPERTYSET ps;
- TRACE("(%p,%s,%d,%p)\n",This,debugstr_guid(guidPropSet),dwPropID,pTypeSupport);
-
- if (This->dsb->hwbuf) {
- IDsDriver_QueryInterface(This->dsb->hwbuf, &IID_IDsDriverPropertySet, (void **)&ps);
-
- if (ps) {
- HRESULT hres;
-
- hres = IDsDriverPropertySet_QuerySupport(ps,guidPropSet, dwPropID,pTypeSupport);
-
- IDsDriverPropertySet_Release(ps);
-
- return hres;
- }
- }
-
- return E_PROP_ID_UNSUPPORTED;
-}
-
-static const IKsPropertySetVtbl iksbvt = {
- IKsBufferPropertySetImpl_QueryInterface,
- IKsBufferPropertySetImpl_AddRef,
- IKsBufferPropertySetImpl_Release,
- IKsBufferPropertySetImpl_Get,
- IKsBufferPropertySetImpl_Set,
- IKsBufferPropertySetImpl_QuerySupport
-};
-
-HRESULT IKsBufferPropertySetImpl_Create(
- IDirectSoundBufferImpl *dsb,
- IKsBufferPropertySetImpl **piks)
-{
- IKsBufferPropertySetImpl *iks;
- TRACE("(%p,%p)\n",dsb,piks);
- *piks = NULL;
-
- iks = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(*iks));
- if (iks == 0) {
- WARN("out of memory\n");
- *piks = NULL;
- return DSERR_OUTOFMEMORY;
- }
-
- iks->ref = 0;
- iks->dsb = dsb;
- dsb->iks = iks;
- iks->lpVtbl = &iksbvt;
-
- IDirectSoundBuffer_AddRef((LPDIRECTSOUNDBUFFER)dsb);
-
- *piks = iks;
- return S_OK;
-}
-
-HRESULT IKsBufferPropertySetImpl_Destroy(
- IKsBufferPropertySetImpl *piks)
-{
- TRACE("(%p)\n",piks);
-
- while (IKsBufferPropertySetImpl_Release((LPKSPROPERTYSET)piks) > 0);
-
- return S_OK;
-}
-
/*******************************************************************************
* IKsPrivatePropertySet
*/
--
1.6.5.3
More information about the wine-patches
mailing list