Microsoft DirectX 9.0 |
The CBaseControlWindow 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 Platform 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
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
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
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 Microsoft® 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 Microsoft 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. |