/* IBaseFilter */ static HRESULT WINAPI SampleGrabber_IBaseFilter_QueryFilterInfo(IBaseFilter *iface, FILTER_INFO *info) { SG_Impl *This = impl_from_IBaseFilter(iface); TRACE("(%p)->(%p)\n", This, info); if (!info) return E_POINTER; if (This->info.pGraph) IFilterGraph_AddRef(This->info.pGraph); *info = This->info; return S_OK; }
HRESULT WINAPI BaseFilterImpl_QueryFilterInfo(IBaseFilter * iface, FILTER_INFO *pInfo) { BaseFilter *This = (BaseFilter*)iface; TRACE("(%p)->(%p)\n", This, pInfo); strcpyW(pInfo->achName, This->filterInfo.achName); pInfo->pGraph = This->filterInfo.pGraph; if (pInfo->pGraph) IFilterGraph_AddRef(pInfo->pGraph); return S_OK; }
static HRESULT WINAPI NullRenderer_QueryFilterInfo(IBaseFilter * iface, FILTER_INFO *pInfo) { NullRendererImpl *This = (NullRendererImpl *)iface; TRACE("(%p/%p)->(%p)\n", This, iface, pInfo); strcpyW(pInfo->achName, This->filterInfo.achName); pInfo->pGraph = This->filterInfo.pGraph; if (pInfo->pGraph) IFilterGraph_AddRef(pInfo->pGraph); return S_OK; }