CBaseControlVideo.IsDefaultTargetRect method
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
The IsDefaultTargetRect
method determines if the renderer is using the default target rectangle (pure virtual).
Syntax
virtual HRESULT IsDefaultTargetRect() = 0;
Parameters
This method has no parameters.
Return value
Returns S_OK if the renderer is using the default target; otherwise, returns S_FALSE.
Remarks
This member function must be implemented in the derived class. It is called by the CBaseControlVideo::IsUsingDefaultDestination member function.
The following example demonstrates an implementation of this function in a derived class.
// Return S_OK if using the default target; otherwise, S_FALSE.
HRESULT CVideoText::IsDefaultTargetRect()
{
RECT TargetRect;
VIDEOINFO *pVideoInfo = (VIDEOINFO *) m_pRenderer->m_mtIn.Format();
BITMAPINFOHEADER *pHeader = HEADER(pVideoInfo);
m_pRenderer->m_DrawImage.GetTargetRect(&TargetRect);
// Check the destination that matches the initial client area.
if (TargetRect.left != 0 || TargetRect.top != 0 ||
TargetRect.right != m_Size.cx ||
TargetRect.bottom != m_Size.cy) {
return S_FALSE;
}
return S_OK;
}
In this example, CVideoText is a class derived from CBaseControlVideo, m_pRenderer holds an object of a class derived from CBaseVideoRenderer, and the m_DrawImage data member, defined in the derived class, holds a CDrawImage object. The m_mtIn data member, also defined in the derived class, holds a CMediaType object with media type of the input pin.
Requirements
Requirement | Value |
---|---|
Header |
|
Library |
|