Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
5bc4c159
Commit
5bc4c159
authored
Apr 03, 2012
by
Aric Stewart
Committed by
Alexandre Julliard
Apr 04, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
quartz: COM cleanup for DSoundRenderImpl.
parent
51e3834b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
67 additions
and
51 deletions
+67
-51
dsoundrender.c
dlls/quartz/dsoundrender.c
+67
-51
No files found.
dlls/quartz/dsoundrender.c
View file @
5bc4c159
...
...
@@ -54,10 +54,10 @@ typedef struct DSoundRenderImpl
{
BaseRenderer
renderer
;
const
IBasicAudioVtbl
*
IBasicAudio_vtbl
;
const
IReferenceClockVtbl
*
IReferenceClock_vtbl
;
const
IAMDirectSoundVtbl
*
IAMDirectSound_vtbl
;
const
IAMFilterMiscFlagsVtbl
*
IAMFilterMiscFlags_vtbl
;
IBasicAudio
IBasicAudio_iface
;
IReferenceClock
IReferenceClock_iface
;
IAMDirectSound
IAMDirectSound_iface
;
IAMFilterMiscFlags
IAMFilterMiscFlags_iface
;
IDirectSound8
*
dsound
;
LPDIRECTSOUNDBUFFER
dsbuffer
;
...
...
@@ -86,6 +86,26 @@ static inline DSoundRenderImpl *impl_from_IBaseFilter(IBaseFilter *iface)
return
CONTAINING_RECORD
(
iface
,
DSoundRenderImpl
,
renderer
.
filter
.
IBaseFilter_iface
);
}
static
inline
DSoundRenderImpl
*
impl_from_IBasicAudio
(
IBasicAudio
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
DSoundRenderImpl
,
IBasicAudio_iface
);
}
static
inline
DSoundRenderImpl
*
impl_from_IReferenceClock
(
IReferenceClock
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
DSoundRenderImpl
,
IReferenceClock_iface
);
}
static
inline
DSoundRenderImpl
*
impl_from_IAMDirectSound
(
IAMDirectSound
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
DSoundRenderImpl
,
IAMDirectSound_iface
);
}
static
inline
DSoundRenderImpl
*
impl_from_IAMFilterMiscFlags
(
IAMFilterMiscFlags
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
DSoundRenderImpl
,
IAMFilterMiscFlags_iface
);
}
static
REFERENCE_TIME
time_from_pos
(
DSoundRenderImpl
*
This
,
DWORD
pos
)
{
WAVEFORMATEX
*
wfx
=
(
WAVEFORMATEX
*
)
This
->
renderer
.
pInputPin
->
pin
.
mtCurrent
.
pbFormat
;
REFERENCE_TIME
ret
=
10000000
;
...
...
@@ -149,7 +169,7 @@ static HRESULT DSoundRender_GetWritePos(DSoundRenderImpl *This, DWORD *ret_write
DSoundRender_UpdatePositions
(
This
,
&
writepos
,
&
min_writepos
);
playpos
=
This
->
last_playpos
;
if
(
This
->
renderer
.
filter
.
pClock
==
(
IReferenceClock
*
)
&
This
->
IReferenceClock_vtbl
)
{
if
(
This
->
renderer
.
filter
.
pClock
==
&
This
->
IReferenceClock_iface
)
{
max_lag
=
min_lag
;
cur
=
This
->
play_time
+
time_from_pos
(
This
,
playpos
);
cur
-=
This
->
renderer
.
filter
.
rtStreamStart
;
...
...
@@ -646,10 +666,10 @@ HRESULT DSoundRender_create(IUnknown * pUnkOuter, LPVOID * ppv)
hr
=
BaseRenderer_Init
(
&
pDSoundRender
->
renderer
,
&
DSoundRender_Vtbl
,
(
IUnknown
*
)
pDSoundRender
,
&
CLSID_DSoundRender
,
(
DWORD_PTR
)(
__FILE__
": DSoundRenderImpl.csFilter"
),
&
BaseFuncTable
);
pDSoundRender
->
IBasicAudio_
v
tbl
=
&
IBasicAudio_Vtbl
;
pDSoundRender
->
IReferenceClock_
v
tbl
=
&
IReferenceClock_Vtbl
;
pDSoundRender
->
IAMDirectSound_
v
tbl
=
&
IAMDirectSound_Vtbl
;
pDSoundRender
->
IAMFilterMiscFlags_
v
tbl
=
&
IAMFilterMiscFlags_Vtbl
;
pDSoundRender
->
IBasicAudio_
iface
.
lpV
tbl
=
&
IBasicAudio_Vtbl
;
pDSoundRender
->
IReferenceClock_
iface
.
lpV
tbl
=
&
IReferenceClock_Vtbl
;
pDSoundRender
->
IAMDirectSound_
iface
.
lpV
tbl
=
&
IAMDirectSound_Vtbl
;
pDSoundRender
->
IAMFilterMiscFlags_
iface
.
lpV
tbl
=
&
IAMFilterMiscFlags_Vtbl
;
if
(
SUCCEEDED
(
hr
))
{
...
...
@@ -702,13 +722,13 @@ static HRESULT WINAPI DSoundRender_QueryInterface(IBaseFilter * iface, REFIID ri
*
ppv
=
NULL
;
if
(
IsEqualIID
(
riid
,
&
IID_IBasicAudio
))
*
ppv
=
&
This
->
IBasicAudio_
vtbl
;
*
ppv
=
&
This
->
IBasicAudio_
iface
;
else
if
(
IsEqualIID
(
riid
,
&
IID_IReferenceClock
))
*
ppv
=
&
This
->
IReferenceClock_
vtbl
;
*
ppv
=
&
This
->
IReferenceClock_
iface
;
else
if
(
IsEqualIID
(
riid
,
&
IID_IAMDirectSound
))
*
ppv
=
&
This
->
IAMDirectSound_
vtbl
;
*
ppv
=
&
This
->
IAMDirectSound_
iface
;
else
if
(
IsEqualIID
(
riid
,
&
IID_IAMFilterMiscFlags
))
*
ppv
=
&
This
->
IAMFilterMiscFlags_
vtbl
;
*
ppv
=
&
This
->
IAMFilterMiscFlags_
iface
;
else
{
HRESULT
hr
;
...
...
@@ -751,7 +771,7 @@ static ULONG WINAPI DSoundRender_Release(IBaseFilter * iface)
IDirectSound_Release
(
This
->
dsound
);
This
->
dsound
=
NULL
;
This
->
IBasicAudio_
v
tbl
=
NULL
;
This
->
IBasicAudio_
iface
.
lpV
tbl
=
NULL
;
CloseHandle
(
This
->
blocked
);
...
...
@@ -787,7 +807,7 @@ static const IBaseFilterVtbl DSoundRender_Vtbl =
static
HRESULT
WINAPI
Basicaudio_QueryInterface
(
IBasicAudio
*
iface
,
REFIID
riid
,
LPVOID
*
ppvObj
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%s (%p), %p)
\n
"
,
This
,
iface
,
debugstr_guid
(
riid
),
riid
,
ppvObj
);
...
...
@@ -795,7 +815,7 @@ static HRESULT WINAPI Basicaudio_QueryInterface(IBasicAudio *iface,
}
static
ULONG
WINAPI
Basicaudio_AddRef
(
IBasicAudio
*
iface
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
...
...
@@ -803,7 +823,7 @@ static ULONG WINAPI Basicaudio_AddRef(IBasicAudio *iface) {
}
static
ULONG
WINAPI
Basicaudio_Release
(
IBasicAudio
*
iface
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
...
...
@@ -813,7 +833,7 @@ static ULONG WINAPI Basicaudio_Release(IBasicAudio *iface) {
/*** IDispatch methods ***/
static
HRESULT
WINAPI
Basicaudio_GetTypeInfoCount
(
IBasicAudio
*
iface
,
UINT
*
pctinfo
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%p): stub !!!
\n
"
,
This
,
iface
,
pctinfo
);
...
...
@@ -824,7 +844,7 @@ static HRESULT WINAPI Basicaudio_GetTypeInfo(IBasicAudio *iface,
UINT
iTInfo
,
LCID
lcid
,
ITypeInfo
**
ppTInfo
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%d, %d, %p): stub !!!
\n
"
,
This
,
iface
,
iTInfo
,
lcid
,
ppTInfo
);
...
...
@@ -837,7 +857,7 @@ static HRESULT WINAPI Basicaudio_GetIDsOfNames(IBasicAudio *iface,
UINT
cNames
,
LCID
lcid
,
DISPID
*
rgDispId
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%s (%p), %p, %d, %d, %p): stub !!!
\n
"
,
This
,
iface
,
debugstr_guid
(
riid
),
riid
,
rgszNames
,
cNames
,
lcid
,
rgDispId
);
...
...
@@ -853,7 +873,7 @@ static HRESULT WINAPI Basicaudio_Invoke(IBasicAudio *iface,
VARIANT
*
pVarResult
,
EXCEPINFO
*
pExepInfo
,
UINT
*
puArgErr
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%d, %s (%p), %d, %04x, %p, %p, %p, %p): stub !!!
\n
"
,
This
,
iface
,
dispIdMember
,
debugstr_guid
(
riid
),
riid
,
lcid
,
wFlags
,
pDispParams
,
pVarResult
,
pExepInfo
,
puArgErr
);
...
...
@@ -863,7 +883,7 @@ static HRESULT WINAPI Basicaudio_Invoke(IBasicAudio *iface,
/*** IBasicAudio methods ***/
static
HRESULT
WINAPI
Basicaudio_put_Volume
(
IBasicAudio
*
iface
,
LONG
lVolume
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%d)
\n
"
,
This
,
iface
,
lVolume
);
...
...
@@ -881,7 +901,7 @@ static HRESULT WINAPI Basicaudio_put_Volume(IBasicAudio *iface,
static
HRESULT
WINAPI
Basicaudio_get_Volume
(
IBasicAudio
*
iface
,
LONG
*
plVolume
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%p)
\n
"
,
This
,
iface
,
plVolume
);
...
...
@@ -894,7 +914,7 @@ static HRESULT WINAPI Basicaudio_get_Volume(IBasicAudio *iface,
static
HRESULT
WINAPI
Basicaudio_put_Balance
(
IBasicAudio
*
iface
,
LONG
lBalance
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%d)
\n
"
,
This
,
iface
,
lBalance
);
...
...
@@ -912,7 +932,7 @@ static HRESULT WINAPI Basicaudio_put_Balance(IBasicAudio *iface,
static
HRESULT
WINAPI
Basicaudio_get_Balance
(
IBasicAudio
*
iface
,
LONG
*
plBalance
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IBasicAudio_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IBasicAudio
(
iface
);
TRACE
(
"(%p/%p)->(%p)
\n
"
,
This
,
iface
,
plBalance
);
...
...
@@ -964,7 +984,7 @@ static DWORD WINAPI DSoundAdviseThread(LPVOID lpParam) {
BOOL
ret
;
struct
dsoundrender_timer
*
prev
=
&
head
,
*
cur
;
hr
=
IReferenceClock_GetTime
(
(
IReferenceClock
*
)
&
This
->
IReferenceClock_vtbl
,
&
curtime
);
hr
=
IReferenceClock_GetTime
(
&
This
->
IReferenceClock_iface
,
&
curtime
);
if
(
FAILED
(
hr
))
{
FIXME
(
"Could not get time: %08x
\n
"
,
hr
);
continue
;
...
...
@@ -1033,7 +1053,7 @@ static HRESULT WINAPI ReferenceClock_QueryInterface(IReferenceClock *iface,
REFIID
riid
,
LPVOID
*
ppvObj
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
TRACE
(
"(%p/%p)->(%s (%p), %p)
\n
"
,
This
,
iface
,
debugstr_guid
(
riid
),
riid
,
ppvObj
);
...
...
@@ -1042,7 +1062,7 @@ static HRESULT WINAPI ReferenceClock_QueryInterface(IReferenceClock *iface,
static
ULONG
WINAPI
ReferenceClock_AddRef
(
IReferenceClock
*
iface
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
...
...
@@ -1051,7 +1071,7 @@ static ULONG WINAPI ReferenceClock_AddRef(IReferenceClock *iface)
static
ULONG
WINAPI
ReferenceClock_Release
(
IReferenceClock
*
iface
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
...
...
@@ -1062,7 +1082,7 @@ static ULONG WINAPI ReferenceClock_Release(IReferenceClock *iface)
static
HRESULT
WINAPI
ReferenceClock_GetTime
(
IReferenceClock
*
iface
,
REFERENCE_TIME
*
pTime
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
HRESULT
hr
=
E_FAIL
;
TRACE
(
"(%p/%p)->(%p)
\n
"
,
This
,
iface
,
pTime
);
...
...
@@ -1089,7 +1109,7 @@ static HRESULT WINAPI ReferenceClock_AdviseTime(IReferenceClock *iface,
HEVENT
hEvent
,
DWORD_PTR
*
pdwAdviseCookie
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
REFERENCE_TIME
when
=
rtBaseTime
+
rtStreamTime
;
REFERENCE_TIME
future
;
TRACE
(
"(%p/%p)->(%s, %s, %p, %p)
\n
"
,
This
,
iface
,
wine_dbgstr_longlong
(
rtBaseTime
),
wine_dbgstr_longlong
(
rtStreamTime
),
(
void
*
)
hEvent
,
pdwAdviseCookie
);
...
...
@@ -1133,7 +1153,7 @@ static HRESULT WINAPI ReferenceClock_AdvisePeriodic(IReferenceClock *iface,
HSEMAPHORE
hSemaphore
,
DWORD_PTR
*
pdwAdviseCookie
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
struct
dsoundrender_timer
*
t
;
TRACE
(
"(%p/%p)->(%s, %s, %p, %p)
\n
"
,
This
,
iface
,
wine_dbgstr_longlong
(
rtStartTime
),
wine_dbgstr_longlong
(
rtPeriodTime
),
(
void
*
)
hSemaphore
,
pdwAdviseCookie
);
...
...
@@ -1168,7 +1188,7 @@ static HRESULT WINAPI ReferenceClock_AdvisePeriodic(IReferenceClock *iface,
static
HRESULT
WINAPI
ReferenceClock_Unadvise
(
IReferenceClock
*
iface
,
DWORD_PTR
dwAdviseCookie
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IReferenceClock_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IReferenceClock
(
iface
);
TRACE
(
"(%p/%p)->(%p)
\n
"
,
This
,
iface
,
(
void
*
)
dwAdviseCookie
);
if
(
!
This
->
advisethread
||
!
dwAdviseCookie
)
...
...
@@ -1193,7 +1213,7 @@ static HRESULT WINAPI AMDirectSound_QueryInterface(IAMDirectSound *iface,
REFIID
riid
,
LPVOID
*
ppvObj
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
TRACE
(
"(%p/%p)->(%s (%p), %p)
\n
"
,
This
,
iface
,
debugstr_guid
(
riid
),
riid
,
ppvObj
);
...
...
@@ -1202,7 +1222,7 @@ static HRESULT WINAPI AMDirectSound_QueryInterface(IAMDirectSound *iface,
static
ULONG
WINAPI
AMDirectSound_AddRef
(
IAMDirectSound
*
iface
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
...
...
@@ -1211,7 +1231,7 @@ static ULONG WINAPI AMDirectSound_AddRef(IAMDirectSound *iface)
static
ULONG
WINAPI
AMDirectSound_Release
(
IAMDirectSound
*
iface
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
...
...
@@ -1221,7 +1241,7 @@ static ULONG WINAPI AMDirectSound_Release(IAMDirectSound *iface)
/*** IAMDirectSound methods ***/
static
HRESULT
WINAPI
AMDirectSound_GetDirectSoundInterface
(
IAMDirectSound
*
iface
,
IDirectSound
**
ds
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
ds
);
...
...
@@ -1230,7 +1250,7 @@ static HRESULT WINAPI AMDirectSound_GetDirectSoundInterface(IAMDirectSound *ifac
static
HRESULT
WINAPI
AMDirectSound_GetPrimaryBufferInterface
(
IAMDirectSound
*
iface
,
IDirectSoundBuffer
**
buf
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
buf
);
...
...
@@ -1239,7 +1259,7 @@ static HRESULT WINAPI AMDirectSound_GetPrimaryBufferInterface(IAMDirectSound *if
static
HRESULT
WINAPI
AMDirectSound_GetSecondaryBufferInterface
(
IAMDirectSound
*
iface
,
IDirectSoundBuffer
**
buf
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
buf
);
...
...
@@ -1248,7 +1268,7 @@ static HRESULT WINAPI AMDirectSound_GetSecondaryBufferInterface(IAMDirectSound *
static
HRESULT
WINAPI
AMDirectSound_ReleaseDirectSoundInterface
(
IAMDirectSound
*
iface
,
IDirectSound
*
ds
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
ds
);
...
...
@@ -1257,7 +1277,7 @@ static HRESULT WINAPI AMDirectSound_ReleaseDirectSoundInterface(IAMDirectSound *
static
HRESULT
WINAPI
AMDirectSound_ReleasePrimaryBufferInterface
(
IAMDirectSound
*
iface
,
IDirectSoundBuffer
*
buf
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
buf
);
...
...
@@ -1266,7 +1286,7 @@ static HRESULT WINAPI AMDirectSound_ReleasePrimaryBufferInterface(IAMDirectSound
static
HRESULT
WINAPI
AMDirectSound_ReleaseSecondaryBufferInterface
(
IAMDirectSound
*
iface
,
IDirectSoundBuffer
*
buf
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
buf
);
...
...
@@ -1275,7 +1295,7 @@ static HRESULT WINAPI AMDirectSound_ReleaseSecondaryBufferInterface(IAMDirectSou
static
HRESULT
WINAPI
AMDirectSound_SetFocusWindow
(
IAMDirectSound
*
iface
,
HWND
hwnd
,
BOOL
bgsilent
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p,%d): stub
\n
"
,
This
,
iface
,
hwnd
,
bgsilent
);
...
...
@@ -1284,7 +1304,7 @@ static HRESULT WINAPI AMDirectSound_SetFocusWindow(IAMDirectSound *iface, HWND h
static
HRESULT
WINAPI
AMDirectSound_GetFocusWindow
(
IAMDirectSound
*
iface
,
HWND
hwnd
)
{
ICOM_THIS_MULTI
(
DSoundRenderImpl
,
IAMDirectSound_vtbl
,
iface
);
DSoundRenderImpl
*
This
=
impl_from_IAMDirectSound
(
iface
);
FIXME
(
"(%p/%p)->(%p): stub
\n
"
,
This
,
iface
,
hwnd
);
...
...
@@ -1306,22 +1326,18 @@ static const IAMDirectSoundVtbl IAMDirectSound_Vtbl =
AMDirectSound_GetFocusWindow
};
static
DSoundRenderImpl
*
from_IAMFilterMiscFlags
(
IAMFilterMiscFlags
*
iface
)
{
return
(
DSoundRenderImpl
*
)((
char
*
)
iface
-
offsetof
(
DSoundRenderImpl
,
IAMFilterMiscFlags_vtbl
));
}
static
HRESULT
WINAPI
AMFilterMiscFlags_QueryInterface
(
IAMFilterMiscFlags
*
iface
,
REFIID
riid
,
void
**
ppv
)
{
DSoundRenderImpl
*
This
=
from_IAMFilterMiscFlags
(
iface
);
DSoundRenderImpl
*
This
=
impl_
from_IAMFilterMiscFlags
(
iface
);
return
IUnknown_QueryInterface
((
IUnknown
*
)
This
,
riid
,
ppv
);
}
static
ULONG
WINAPI
AMFilterMiscFlags_AddRef
(
IAMFilterMiscFlags
*
iface
)
{
DSoundRenderImpl
*
This
=
from_IAMFilterMiscFlags
(
iface
);
DSoundRenderImpl
*
This
=
impl_
from_IAMFilterMiscFlags
(
iface
);
return
IUnknown_AddRef
((
IUnknown
*
)
This
);
}
static
ULONG
WINAPI
AMFilterMiscFlags_Release
(
IAMFilterMiscFlags
*
iface
)
{
DSoundRenderImpl
*
This
=
from_IAMFilterMiscFlags
(
iface
);
DSoundRenderImpl
*
This
=
impl_
from_IAMFilterMiscFlags
(
iface
);
return
IUnknown_Release
((
IUnknown
*
)
This
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment