{
return m_pIo->EndFlush();
}
STDMETHODIMP
CAsyncOutputPin::Connect(
IPin * pReceivePin,
const AM_MEDIA_TYPE *pmt // optional media type
)
{
return m_pReader->Connect(pReceivePin, pmt);
}
// --- CAsyncReader implementation ---
#pragma warning(disable:4355)
CAsyncReader::CAsyncReader(
TCHAR *pName,
LPUNKNOWN pUnk,
CAsyncStream *pStream,
HRESULT *phr)
: CBaseFilter(
pName,
pUnk,
&m_csFilter,
CLSID_AsyncSample,
NULL
),
m_OutputPin(
phr,
this,
&m_Io,
&m_csFilter),
m_Io(pStream)
{
}
CAsyncReader::~CAsyncReader()
{
}
int CAsyncReader::GetPinCount()
{
return 1;
}
CBasePin * CAsyncReader::GetPin(int n)
{
if((GetPinCount() > 0) && (n == 0))
{
return &m_OutputPin;
}
else
{
return NULL;
}
}
{
return m_pIo->EndFlush();
}
STDMETHODIMP
CAsyncOutputPin::Connect(
IPin * pReceivePin,
const AM_MEDIA_TYPE *pmt // optional media type
)
{
return m_pReader->Connect(pReceivePin, pmt);
}
// --- CAsyncReader implementation ---
#pragma warning(disable:4355)
CAsyncReader::CAsyncReader(
TCHAR *pName,
LPUNKNOWN pUnk,
CAsyncStream *pStream,
HRESULT *phr)
: CBaseFilter(
pName,
pUnk,
&m_csFilter,
CLSID_AsyncSample,
NULL
),
m_OutputPin(
phr,
this,
&m_Io,
&m_csFilter),
m_Io(pStream)
{
}
CAsyncReader::~CAsyncReader()
{
}
int CAsyncReader::GetPinCount()
{
return 1;
}
CBasePin * CAsyncReader::GetPin(int n)
{
if((GetPinCount() > 0) && (n == 0))
{
return &m_OutputPin;
}
else
{
return NULL;
}
}