HRESULT CSampleSenderInPin::GetMediaType( int iPosition, CMediaType * pMediaType ) { if (iPosition < 0) { return E_INVALIDARG; } if (iPosition > 0) { return VFW_S_NO_MORE_ITEMS; } *pMediaType = CMediaType( ); pMediaType->SetType( ((CSampleSender*)m_pFilter)->m_mtAccept.Type( ) ); return S_OK; }
HRESULT CSampleSender::SetAcceptedMediaType( const CMediaType * pmt ) { CAutoLock lock( &m_Lock ); if( !pmt ) { m_mtAccept = CMediaType( ); return NOERROR; } HRESULT hr; hr = CopyMediaType( &m_mtAccept, pmt ); return hr; }
HRESULT CDXFilterInPin::GetMediaType( int iPosition, CMediaType * pMediaType ) { CheckPointer(pMediaType,E_POINTER); if (iPosition < 0) { return E_INVALIDARG; } if (iPosition > 0) { return VFW_S_NO_MORE_ITEMS; } *pMediaType = CMediaType( ); pMediaType->SetType( ((CDXFilter*)m_pFilter)->m_mtAccept.Type( ) ); return S_OK; }
STDMETHODIMP CDXFilter::SetAcceptedMediaType( const CMediaType * pmt ) { CAutoLock lock( &m_Lock ); if( !pmt ) { m_mtAccept = CMediaType( ); return NOERROR; } HRESULT hr; #if !defined(_WIN32_WCE) hr = CopyMediaType( &m_mtAccept, pmt ); #else hr=S_OK; CopyMediaType( &m_mtAccept, pmt ); #endif return hr; }