Microsoft DirectX 9.0 |
To expose the filter's new interfaces to clients, do the following:
public:
DECLARE_IUNKNOWN;
STDMETHODIMP CGrayFilter::NonDelegatingQueryInterface(REFIID riid,
void **ppv)
{
if (riid == IID_ISpecifyPropertyPages)
{
return GetInterface(static_cast<ISpecifyPropertyPages*>(this),
ppv);
}
if (riid == IID_ISaturation)
{
return GetInterface(static_cast<IYuvGray*>(this), ppv);
}
return CBaseFilter::NonDelegatingQueryInterface(riid, ppv);
}
See Also