943N/A/* Copyright (c) 1993, 1997, Oracle and/or its affiliates. All rights reserved. 830N/A * Permission is hereby granted, free of charge, to any person obtaining a 919N/A * copy of this software and associated documentation files (the "Software"), 919N/A * to deal in the Software without restriction, including without limitation 919N/A * the rights to use, copy, modify, merge, publish, distribute, sublicense, 919N/A * and/or sell copies of the Software, and to permit persons to whom the 919N/A * Software is furnished to do so, subject to the following conditions: 919N/A * The above copyright notice and this permission notice (including the next 919N/A * paragraph) shall be included in all copies or substantial portions of the 919N/A * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 919N/A * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 919N/A * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 919N/A * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 919N/A * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 919N/A * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 919N/A * DEALINGS IN THE SOFTWARE. 830N/A/* Note that _Dga_window, _Dga_cmap, _Dga_pixmap are all internal declarations 830N/A * for the externally visible Dga_window, Dga_cmap and Dga_pixmap ( no leading 830N/A * underscore). In the externally visible include file, these are all declared 830N/A * as void * and thus quite opaque. 830N/A * Note: there is a DGA_FAST_DRAW_LOCK() macro that also access the 830N/A * fields in struct dga_window and dga_pixmap but is not currently in dga.h. 830N/A * Consider this macro before modifying fields. 830N/A/* used only to get at the drawable type. After that, we vector off 830N/A to either a window or pixmap routine */ 830N/A /* cursor grabber info */ 830N/A /* Ancillay Buffer info */ 830N/A /* double buffering info */ 830N/A /* retained window grabber info */ 830N/A ** New fields for drawable grabber. 830N/A /* notification functions */ 830N/A /* real lock subject - the win/mbuf currently locked by the client */ 830N/A /* effective lock subject - the actual lock subject. This will be used by 830N/A the DGA state inquiry functions called by the client. If the 830N/A win/mbuf is not aliased, eLockSubj will be the same as rLockSubj */ 830N/A /* previous effective lock subject - the lock subject for which a 830N/A change was last signalled to the client. It is assumed that the 830N/A client synchronized its state to this lock subject. This is always 830N/A true for well-behaved DGA clients */ 830N/A /* mbChgReason is the reason for an mbufset change. prevWasMbuffered 830N/A is used to help us figure this out. It is set during the update 830N/A phase and may be used during the inquiry phase */ 830N/A /* used during update phase to indicate what state changed */ 830N/A /* reason for any site change */ 830N/A /* Has the window been previously locked? */ 830N/A * If the window is an overlay, the isOverlay flag will be set to 830N/A * true and the s_ovlstate_p pointer will point to the ovlstate 830N/A * flag on the shared page and the s_ovlshapevalid_p pointer will 830N/A * point to the w_ovl_shape_valid flag. 830N/A /* For the threaded case, this stores the real change counts while 830N/A * c_wm_chngcnt[] is used to force the update function to be called. 830N/A * (if not framebuffer) */ 830N/A SunWindows default cmap window */ 830N/A SunWindows installed cmap window */ 830N/A* When the pixmap interface is made public, this declaration should be 830N/A* Also the lock routiens currently in pix_grab,c should be made into 830N/A/* TODO: Why are the next two entries in here? It's not clear to me why 830N/A * the client side cares if the shpx_dir changes. The only time a pixmap 830N/A * is removed from the directory structure is when it is destroyed and 830N/A * then the obsolete flag is set. */ 830N/A /* used during update phase to indicate what state changed */ 830N/A /* reason for any site change */ 830N/A /* For the threaded case, this stores the real change counts while 830N/A * c_chngcnt[] is used to force the update function to be called. 830N/A/* Pixmap grabber routines - these are not Public yet */ 830N/A/* These are always going to be private routines to be backward 830N/A** Internal mbuf grab routine 830N/A** Internal mbufset member update routines 830N/A** Internal window update routines 830N/A** Internal multibuffer update routines 830N/A** Internal multibuffer set routines 830N/A** Internal mbufset member inquiry routines 830N/A** Internal pixmap inquiry routines 830N/A/* TODO: dhuff: must supply */ 830N/A#
endif /* _DGA_INTERNAL_H */