3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) 2002 Lionel Ulmer
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) 2004 Alexandre Julliard
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is free software; you can redistribute it and/or
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * modify it under the terms of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License as published by the Free Software Foundation; either
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * version 2.1 of the License, or (at your option) any later version.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is distributed in the hope that it will be useful,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lesser General Public License for more details.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * You should have received a copy of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License along with this library; if not, write to the Free Software
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * a choice of LGPL license versions is made available with the language indicating
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * of the LGPL is applied is otherwise unspecified.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsyncimport "oaidl.idl";
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IMediaControl interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetState( [in] LONG msTimeout, [out] OAFilterState *pfs );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT AddSourceFilter( [in] BSTR strFilename, [out] IDispatch **ppUnk );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT FilterCollection( [out] IDispatch **ppUnk );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT RegFilterCollection( [out] IDispatch **ppUnk );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IBasicAudio interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT Balance( [out] LONG *plBalance );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IVideoWindow interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT Caption( [out] BSTR *strCaption );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT WindowStyle( [in] LONG WindowStyle );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT WindowStyle( [out] LONG *WindowStyle );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT WindowStyleEx( [in] LONG WindowStyleEx );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT WindowStyleEx( [out] LONG *WindowStyleEx );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT AutoShow( [out] LONG *AutoShow );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT WindowState( [in] LONG WindowState );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT WindowState( [out] LONG *WindowState );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT BackgroundPalette( [in] LONG BackgroundPalette );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT BackgroundPalette( [out] LONG *pBackgroundPalette );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT MessageDrain( [in] OAHWND Drain );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT MessageDrain( [out] OAHWND *Drain );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT BorderColor( [out] LONG *Color );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT FullScreenMode( [out] LONG *FullScreenMode );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT FullScreenMode( [in] LONG FullScreenMode );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT NotifyOwnerMessage( [in] OAHWND hwnd, [in] LONG uMsg, [in] LONG_PTR wParam, [in] LONG_PTR lParam );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetWindowPosition( [in] LONG Left, [in] LONG Top, [in] LONG Width, [in] LONG Height );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetWindowPosition( [out] LONG *pLeft, [out] LONG *pTop, [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetMinIdealImageSize( [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetMaxIdealImageSize( [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetRestorePosition( [out] LONG *pLeft, [out] LONG *pTop, [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT IsCursorHidden( [out] LONG *CursorHidden );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IBasicVideo interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT AvgTimePerFrame( [out] REFTIME *pAvgTimePerFrame );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT BitErrorRate( [out] LONG *pBitErrorRate );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT VideoWidth( [out] LONG *pVideoWidth );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT VideoHeight( [out] LONG *pVideoHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT SourceLeft( [in] LONG SourceLeft );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT SourceLeft( [out] LONG *pSourceLeft );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT SourceWidth( [in] LONG SourceWidth );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT SourceWidth( [out] LONG *pSourceWidth );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT SourceTop( [in] LONG SourceTop );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT SourceTop( [out] LONG *pSourceTop );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT SourceHeight( [in] LONG SourceHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT SourceHeight( [out] LONG *pSourceHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT DestinationLeft( [in] LONG DestinationLeft );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT DestinationLeft( [out] LONG *pDestinationLeft );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT DestinationWidth( [in] LONG DestinationWidth );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT DestinationWidth( [out] LONG *pDestinationWidth );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT DestinationTop( [in] LONG DestinationTop );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT DestinationTop( [out] LONG *pDestinationTop );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propput] HRESULT DestinationHeight( [in] LONG DestinationHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [propget] HRESULT DestinationHeight( [out] LONG *pDestinationHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetSourcePosition( [in] LONG Left, [in] LONG Top, [in] LONG Width, [in] LONG Height );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetSourcePosition( [out] LONG *pLeft, [out] LONG *pTop, [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetDestinationPosition( [in] LONG Left, [in] LONG Top, [in] LONG Width, [in] LONG Height );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetDestinationPosition( [out] LONG *pLeft, [out] LONG *pTop, [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetVideoSize( [out] LONG *pWidth, [out] LONG *pHeight );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetVideoPaletteEntries( [in] LONG StartIndex,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(Entries), length_is(*pRetrieved)] LONG *pPalette );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetCurrentImage( [in, out] LONG *pBufferSize,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync [out, size_is(*pBufferSize), length_is(*pBufferSize)] LONG *pDIBImage );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetPreferredAspectRatio([out] LONG *plAspectX, [out] LONG *plAspectY);
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IMediaEvent interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetEvent( [out] LONG *lEventCode, [out] LONG_PTR *lParam1, [out] LONG_PTR *lParam2, [in] LONG msTimeout );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT WaitForCompletion( [in] LONG msTimeout, [out] LONG *pEvCode );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT CancelDefaultHandling( [in] LONG lEvCode );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT RestoreDefaultHandling( [in] LONG lEvCode );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT FreeEventParams( [in] LONG lEvCode, [in] LONG_PTR lParam1, [in] LONG_PTR lParam2 );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IMediaEventEx interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNotifyWindow( [in] OAHWND hwnd, [in] LONG lMsg, [in] LONG_PTR lInstanceData );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT SetNotifyFlags( [in] LONG lNoNotifyFlags );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT GetNotifyFlags( [out] LONG *lplNoNotifyFlags );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /***************************************************************************
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * IMediaPosition interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT put_CurrentPosition( [in] REFTIME llTime );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT get_CurrentPosition( [out] REFTIME *pllTime );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT CanSeekForward( [out] LONG *pCanSeekForward );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync HRESULT CanSeekBackward( [out] LONG *pCanSeekBackward );
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync} /* library QuartzTypeLib */