示例#1
0
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;
}
示例#2
0
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;
}