CBaseControlWindow Class

NOT SUPPORTED IN DXPAK 1.0

This class implements the IVideoWindow interface and controls external access to its associated filter. You must synchronize the CBaseControlWindow object with the filter by passing it a pointer to a critical section synchronization object. For more information about critical section synchronization objects, see the Windows SDK. The CBaseControlWindow class provides a number of methods that return property settings without dealing with this critical section. For example, calling CBaseControlWindow::get_AutoShow to retrieve the value of the m_bAutoShow data member locks the critical section. The filter might already have a locked internal critical section, however, which could violate the filter's lock hierarchy. Instead, calling the CBaseControlWindow::IsAutoShowEnabled member function returns the required value without affecting the critical section.

All CBaseControlWindow implemented IVideoWindow methods require that the filter be connected correctly with its upstream filter. For this reason, class objects require a synchronization pin, which you set by calling the CBaseControlWindow::SetControlWindowPin method. Whenever you call an IVideoWindow method, the CBaseControlWindow object checks that the pin is still connected.

Protected Data Members

Member Description
m_bAutoShow Result when the state changes.
m_bCursorHidden Determination of whether the cursor is displayed or hidden.
m_BorderColour Color of the current window border.
m_hwndDrain Window handle to which messages received are posted.
m_hwndOwner Owning window.
m_pFilter Pointer to the owning media filter.
m_pInterfaceLock Externally defined critical section.
m_pPin Control of the media types for connection.

Member Functions

Member function Description
CBaseControlWindow Constructs a CBaseControlWindow object.
DoGetWindowStyle Retrieves either the typical or extended window styles.
DoSetWindowStyle Sets the typical or extended window styles.
GetBorderColour Retrieves the current border color. This is a helper member function.
GetOwnerWindow Retrieves the owning window. This is a helper member function.
IsAutoShowEnabled Retrieves information about whether the video window automatically appears when the rendering filter pauses or runs.
IsCursorHidden Retrieves the current state of the m_bCursorHidden data member without locking the critical section. This is a helper member function.
PossiblyEatMessage Distributes messages to the parent window.
SetControlWindowPin Notifies the object of the pin to which it applies.

Implemented IVideoWindow Methods

Method Description
get_AutoShow Retrieves the current AutoShow flag setting.
get_BackgroundPalette Retrieves the realized palette in the background flag.
get_BorderColor Retrieves the current border color.
get_Caption Retrieves the current window caption.
get_FullScreenMode Retrieves the current full-screen mode.
get_Height Retrieves the current window height.
get_Left Retrieves the current left window coordinate.
GetMaxIdealImageSize Retrieves the maximum size of the ideal image.
get_MessageDrain Retrieves the current message drain.
GetMinIdealImageSize Retrieves the minimum size of the ideal image.
get_Owner Retrieves the Win32 parent window handle.
GetRestorePosition Retrieves the position to which the window will be restored when maximized or minimized.
get_Top Retrieves the y-coordinate for the top of the window.
get_Visible Retrieves the current visibility setting of the window.
get_Width Retrieves the width of the window.
GetWindowPosition Retrieves the current window coordinates.
get_WindowState Retrieves the current state of the window.
get_WindowStyle Retrieves the standard window styles.
get_WindowStyleEx Retrieves the extended window styles.
HideCursor Hides or displays the cursor.
IsCursorHidden Retrieves the current state of the m_bCursorHidden data member.
NotifyOwnerMessage Passes on messages that are sent to owning windows.
put_AutoShow Sets the AutoShow property.
put_BackgroundPalette Sets a flag to realize the palette in the background.
put_BorderColor Sets the current border color.
put_Caption Sets the current window caption.
put_FullScreenMode Sets the full-screen mode.
put_Height Sets the current window height.
put_Left Sets the left coordinate for the window.
put_MessageDrain Sets the message drain window.
put_Owner Sets the Win32 parent window handle.
put_Top Sets the position for the top of the window.
put_Visible Hides or shows the window.
put_Width Sets the width of the window.
put_WindowState Sets the state of the window.
put_WindowStyle Sets the standard window styles.
put_WindowStyleEx Sets the extended window styles.
SetWindowForeground Sets the window in the foreground.
SetWindowPosition Sets the window position.

Requirements

DirectShow applications and DirectShow filters have different include file and link library requirements. See Setting Up the Build Environment for more information.

OS Versions: Windows CE 3.0 and later.
Header:

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.