[PATCH 3/4] strmbase: Get rid of the BaseInputPinFuncTable typedef.
Zebediah Figura
z.figura12 at gmail.com
Tue Nov 19 20:18:02 CST 2019
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/qcap/avico.c | 4 ++--
dlls/qcap/avimux.c | 5 ++---
dlls/qcap/smartteefilter.c | 5 ++---
dlls/strmbase/pin.c | 2 +-
dlls/strmbase/renderer.c | 4 ++--
dlls/strmbase/transform.c | 4 ++--
include/wine/strmbase.h | 9 +++++----
7 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/dlls/qcap/avico.c b/dlls/qcap/avico.c
index 9b32ddb336..1cbeb70f03 100644
--- a/dlls/qcap/avico.c
+++ b/dlls/qcap/avico.c
@@ -499,7 +499,7 @@ static HRESULT WINAPI AVICompressorIn_Receive(struct strmbase_sink *base, IMedia
return hres;
}
-static const BaseInputPinFuncTable AVICompressorBaseInputPinVtbl =
+static const struct strmbase_sink_ops sink_ops =
{
.base.pin_query_accept = sink_query_accept,
.base.pin_get_media_type = strmbase_pin_get_media_type,
@@ -597,7 +597,7 @@ IUnknown* WINAPI QCAP_createAVICompressor(IUnknown *outer, HRESULT *phr)
compressor->IPersistPropertyBag_iface.lpVtbl = &PersistPropertyBagVtbl;
strmbase_sink_init(&compressor->sink, &AVICompressorInputPinVtbl,
- &compressor->filter, sink_name, &AVICompressorBaseInputPinVtbl, NULL);
+ &compressor->filter, sink_name, &sink_ops, NULL);
strmbase_source_init(&compressor->source, &AVICompressorOutputPinVtbl,
&compressor->filter, source_name, &source_ops);
diff --git a/dlls/qcap/avimux.c b/dlls/qcap/avimux.c
index 0e162dfcde..51a1a503af 100644
--- a/dlls/qcap/avimux.c
+++ b/dlls/qcap/avimux.c
@@ -1483,7 +1483,7 @@ static HRESULT WINAPI AviMuxIn_Receive(struct strmbase_sink *base, IMediaSample
return hr;
}
-static const BaseInputPinFuncTable AviMuxIn_BaseInputFuncTable =
+static const struct strmbase_sink_ops sink_ops =
{
.base.pin_query_accept = sink_query_accept,
.base.pin_get_media_type = strmbase_pin_get_media_type,
@@ -1944,8 +1944,7 @@ static HRESULT create_input_pin(AviMux *avimux)
if (!(object = heap_alloc_zero(sizeof(*object))))
return E_OUTOFMEMORY;
- strmbase_sink_init(&object->pin, &AviMuxIn_PinVtbl, &avimux->filter, name,
- &AviMuxIn_BaseInputFuncTable, NULL);
+ strmbase_sink_init(&object->pin, &AviMuxIn_PinVtbl, &avimux->filter, name, &sink_ops, NULL);
object->pin.IMemInputPin_iface.lpVtbl = &AviMuxIn_MemInputPinVtbl;
object->IAMStreamControl_iface.lpVtbl = &AviMuxIn_AMStreamControlVtbl;
object->IPropertyBag_iface.lpVtbl = &AviMuxIn_PropertyBagVtbl;
diff --git a/dlls/qcap/smartteefilter.c b/dlls/qcap/smartteefilter.c
index be19fd5c09..e3740bed13 100644
--- a/dlls/qcap/smartteefilter.c
+++ b/dlls/qcap/smartteefilter.c
@@ -285,7 +285,7 @@ static HRESULT WINAPI SmartTeeFilterInput_Receive(struct strmbase_sink *base, IM
return hrPreview;
}
-static const BaseInputPinFuncTable SmartTeeFilterInputFuncs =
+static const struct strmbase_sink_ops sink_ops =
{
.base.pin_query_accept = sink_query_accept,
.base.pin_get_media_type = sink_get_media_type,
@@ -418,8 +418,7 @@ IUnknown* WINAPI QCAP_createSmartTeeFilter(IUnknown *outer, HRESULT *phr)
memset(object, 0, sizeof(*object));
strmbase_filter_init(&object->filter, &SmartTeeFilterVtbl, outer, &CLSID_SmartTee, &filter_ops);
- strmbase_sink_init(&object->sink, &SmartTeeFilterInputVtbl, &object->filter,
- inputW, &SmartTeeFilterInputFuncs, NULL);
+ strmbase_sink_init(&object->sink, &SmartTeeFilterInputVtbl, &object->filter, inputW, &sink_ops, NULL);
hr = CoCreateInstance(&CLSID_MemoryAllocator, NULL, CLSCTX_INPROC_SERVER,
&IID_IMemAllocator, (void **)&object->sink.pAllocator);
if (FAILED(hr))
diff --git a/dlls/strmbase/pin.c b/dlls/strmbase/pin.c
index 39512c066b..92a2fe55b9 100644
--- a/dlls/strmbase/pin.c
+++ b/dlls/strmbase/pin.c
@@ -1001,7 +1001,7 @@ static const IMemInputPinVtbl MemInputPin_Vtbl =
};
void strmbase_sink_init(struct strmbase_sink *pin, const IPinVtbl *vtbl, struct strmbase_filter *filter,
- const WCHAR *name, const BaseInputPinFuncTable *func_table, IMemAllocator *allocator)
+ const WCHAR *name, const struct strmbase_sink_ops *func_table, IMemAllocator *allocator)
{
memset(pin, 0, sizeof(*pin));
pin->pin.IPin_iface.lpVtbl = vtbl;
diff --git a/dlls/strmbase/renderer.c b/dlls/strmbase/renderer.c
index 2e8566b064..0c33b5ea84 100644
--- a/dlls/strmbase/renderer.c
+++ b/dlls/strmbase/renderer.c
@@ -302,7 +302,7 @@ static HRESULT WINAPI BaseRenderer_Receive(struct strmbase_sink *pin, IMediaSamp
return BaseRendererImpl_Receive(filter, sample);
}
-static const BaseInputPinFuncTable input_BaseInputFuncTable =
+static const struct strmbase_sink_ops sink_ops =
{
.base.pin_query_accept = sink_query_accept,
.base.pin_query_interface = sink_query_interface,
@@ -511,7 +511,7 @@ HRESULT WINAPI strmbase_renderer_init(struct strmbase_renderer *filter, IUnknown
filter->pFuncsTable = ops;
strmbase_sink_init(&filter->sink, &BaseRenderer_InputPin_Vtbl, &filter->filter,
- sink_name, &input_BaseInputFuncTable, NULL);
+ sink_name, &sink_ops, NULL);
hr = CreatePosPassThru(outer ? outer : (IUnknown *)&filter->filter.IBaseFilter_iface,
TRUE, &filter->sink.pin.IPin_iface, &filter->pPosition);
diff --git a/dlls/strmbase/transform.c b/dlls/strmbase/transform.c
index 3811569da1..e567804ba3 100644
--- a/dlls/strmbase/transform.c
+++ b/dlls/strmbase/transform.c
@@ -210,7 +210,7 @@ static HRESULT sink_query_interface(struct strmbase_pin *iface, REFIID iid, void
return S_OK;
}
-static const BaseInputPinFuncTable tf_input_BaseInputFuncTable =
+static const struct strmbase_sink_ops sink_ops =
{
.base.pin_query_accept = sink_query_accept,
.base.pin_get_media_type = strmbase_pin_get_media_type,
@@ -353,7 +353,7 @@ static HRESULT strmbase_transform_init(IUnknown *outer, const CLSID *clsid,
ZeroMemory(&filter->pmt, sizeof(filter->pmt));
strmbase_sink_init(&filter->sink, &TransformFilter_InputPin_Vtbl, &filter->filter,
- wcsInputPinName, &tf_input_BaseInputFuncTable, NULL);
+ wcsInputPinName, &sink_ops, NULL);
strmbase_source_init(&filter->source, &TransformFilter_OutputPin_Vtbl, &filter->filter,
wcsOutputPinName, &source_ops);
diff --git a/include/wine/strmbase.h b/include/wine/strmbase.h
index 99c579f8df..fd79e9726d 100644
--- a/include/wine/strmbase.h
+++ b/include/wine/strmbase.h
@@ -84,16 +84,17 @@ struct strmbase_sink
BOOL flushing, end_of_stream;
IMemAllocator *preferred_allocator;
- const struct BaseInputPinFuncTable *pFuncsTable;
+ const struct strmbase_sink_ops *pFuncsTable;
};
typedef HRESULT (WINAPI *BaseInputPin_Receive)(struct strmbase_sink *This, IMediaSample *pSample);
-typedef struct BaseInputPinFuncTable {
+struct strmbase_sink_ops
+{
BasePinFuncTable base;
/* Optional */
BaseInputPin_Receive pfnReceive;
-} BaseInputPinFuncTable;
+};
/* Base Pin */
HRESULT strmbase_pin_get_media_type(struct strmbase_pin *pin, unsigned int index, AM_MEDIA_TYPE *mt);
@@ -143,7 +144,7 @@ HRESULT WINAPI BaseInputPinImpl_EndFlush(IPin * iface);
HRESULT WINAPI BaseInputPinImpl_NewSegment(IPin * iface, REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate);
void strmbase_sink_init(struct strmbase_sink *pin, const IPinVtbl *vtbl, struct strmbase_filter *filter,
- const WCHAR *name, const BaseInputPinFuncTable *func_table, IMemAllocator *allocator);
+ const WCHAR *name, const struct strmbase_sink_ops *ops, IMemAllocator *allocator);
void strmbase_sink_cleanup(struct strmbase_sink *pin);
struct strmbase_filter
--
2.24.0
More information about the wine-devel
mailing list