105b261ecSmrg 205b261ecSmrg/* 305b261ecSmrg * Copyright (c) 2003 by The XFree86 Project, Inc. 405b261ecSmrg * 505b261ecSmrg * Permission is hereby granted, free of charge, to any person obtaining a 605b261ecSmrg * copy of this software and associated documentation files (the "Software"), 705b261ecSmrg * to deal in the Software without restriction, including without limitation 805b261ecSmrg * the rights to use, copy, modify, merge, publish, distribute, sublicense, 905b261ecSmrg * and/or sell copies of the Software, and to permit persons to whom the 1005b261ecSmrg * Software is furnished to do so, subject to the following conditions: 1105b261ecSmrg * 1205b261ecSmrg * The above copyright notice and this permission notice shall be included in 1305b261ecSmrg * all copies or substantial portions of the Software. 1405b261ecSmrg * 1505b261ecSmrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1605b261ecSmrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 1705b261ecSmrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 1805b261ecSmrg * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 1905b261ecSmrg * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 2005b261ecSmrg * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 2105b261ecSmrg * OTHER DEALINGS IN THE SOFTWARE. 2205b261ecSmrg * 2305b261ecSmrg * Except as contained in this notice, the name of the copyright holder(s) 2405b261ecSmrg * and author(s) shall not be used in advertising or otherwise to promote 2505b261ecSmrg * the sale, use or other dealings in this Software without prior written 2605b261ecSmrg * authorization from the copyright holder(s) and author(s). 2705b261ecSmrg */ 2805b261ecSmrg 2905b261ecSmrg#ifndef _XF86XVPRIV_H_ 3005b261ecSmrg#define _XF86XVPRIV_H_ 3105b261ecSmrg 3205b261ecSmrg#include "xf86xv.h" 334642e01fSmrg#include "privates.h" 3405b261ecSmrg 3505b261ecSmrg/*** These are DDX layer privates ***/ 3605b261ecSmrg 376747b715Smrgextern _X_EXPORT DevPrivateKey XF86XvScreenKey; 3805b261ecSmrg 3905b261ecSmrgtypedef struct { 4035c4bbdfSmrg DestroyWindowProcPtr DestroyWindow; 4135c4bbdfSmrg ClipNotifyProcPtr ClipNotify; 4235c4bbdfSmrg WindowExposuresProcPtr WindowExposures; 4335c4bbdfSmrg PostValidateTreeProcPtr PostValidateTree; 4435c4bbdfSmrg void (*AdjustFrame) (ScrnInfoPtr, int, int); 4535c4bbdfSmrg Bool (*EnterVT) (ScrnInfoPtr); 4635c4bbdfSmrg void (*LeaveVT) (ScrnInfoPtr); 4735c4bbdfSmrg xf86ModeSetProc *ModeSet; 4835c4bbdfSmrg CloseScreenProcPtr CloseScreen; 4905b261ecSmrg} XF86XVScreenRec, *XF86XVScreenPtr; 5005b261ecSmrg 5105b261ecSmrgtypedef struct { 5235c4bbdfSmrg int flags; 5335c4bbdfSmrg PutVideoFuncPtr PutVideo; 5435c4bbdfSmrg PutStillFuncPtr PutStill; 5535c4bbdfSmrg GetVideoFuncPtr GetVideo; 5635c4bbdfSmrg GetStillFuncPtr GetStill; 5735c4bbdfSmrg StopVideoFuncPtr StopVideo; 5835c4bbdfSmrg SetPortAttributeFuncPtr SetPortAttribute; 5935c4bbdfSmrg GetPortAttributeFuncPtr GetPortAttribute; 6035c4bbdfSmrg QueryBestSizeFuncPtr QueryBestSize; 6135c4bbdfSmrg PutImageFuncPtr PutImage; 6235c4bbdfSmrg ReputImageFuncPtr ReputImage; 6335c4bbdfSmrg QueryImageAttributesFuncPtr QueryImageAttributes; 6405b261ecSmrg} XvAdaptorRecPrivate, *XvAdaptorRecPrivatePtr; 6505b261ecSmrg 6605b261ecSmrgtypedef struct { 6735c4bbdfSmrg ScrnInfoPtr pScrn; 6835c4bbdfSmrg DrawablePtr pDraw; 6935c4bbdfSmrg unsigned char type; 7035c4bbdfSmrg unsigned int subWindowMode; 7135c4bbdfSmrg RegionPtr clientClip; 7235c4bbdfSmrg RegionPtr ckeyFilled; 7335c4bbdfSmrg RegionPtr pCompositeClip; 7435c4bbdfSmrg Bool FreeCompositeClip; 7535c4bbdfSmrg XvAdaptorRecPrivatePtr AdaptorRec; 7635c4bbdfSmrg XvStatus isOn; 7735c4bbdfSmrg Bool clipChanged; 7835c4bbdfSmrg int vid_x, vid_y, vid_w, vid_h; 7935c4bbdfSmrg int drw_x, drw_y, drw_w, drw_h; 8035c4bbdfSmrg DevUnion DevPriv; 8105b261ecSmrg} XvPortRecPrivate, *XvPortRecPrivatePtr; 8205b261ecSmrg 8335c4bbdfSmrgtypedef struct _XF86XVWindowRec { 8435c4bbdfSmrg XvPortRecPrivatePtr PortRec; 8535c4bbdfSmrg struct _XF86XVWindowRec *next; 8605b261ecSmrg} XF86XVWindowRec, *XF86XVWindowPtr; 8705b261ecSmrg 8835c4bbdfSmrg#endif /* _XF86XVPRIV_H_ */ 89