03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/*****************************************************************
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncCopyright (c) 1991, 1997 Digital Equipment Corporation, Maynard, Massachusetts.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncPermission is hereby granted, free of charge, to any person obtaining a copy
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncof this software and associated documentation files (the "Software"), to deal
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncin the Software without restriction, including without limitation the rights
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncto use, copy, modify, merge, publish, distribute, sublicense, and/or sell
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynccopies of the Software.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncThe above copyright notice and this permission notice shall be included in
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncall copies or substantial portions of the Software.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncDIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncBUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncIN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncExcept as contained in this notice, the name of Digital Equipment Corporation
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncshall not be used in advertising or otherwise to promote the sale, use or other
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncdealings in this Software without prior written authorization from Digital
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncEquipment Corporation.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync******************************************************************/
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/* THIS IS NOT AN X PROJECT TEAM SPECIFICATION */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/*
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * PanoramiX definitions
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#ifdef HAVE_DIX_CONFIG_H
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include <dix-config.h>
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#endif
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#ifndef _PANORAMIX_H_
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define _PANORAMIX_H_
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define _PANORAMIX_SERVER
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include <X11/extensions/panoramiXproto.h>
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#undef _PANORAMIX_SERVER
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include "gcstruct.h"
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include "dixstruct.h"
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef struct _PanoramiXInfo {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XID id;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync} PanoramiXInfo;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef struct {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync PanoramiXInfo info[MAXSCREENS];
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync RESTYPE type;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync union {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync struct {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char visibility;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char class;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char root;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync } win;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync struct {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool shared;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync } pix;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync struct {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool root;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync } pict;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync char raw_data[4];
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync } u;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync} PanoramiXRes;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define FOR_NSCREENS_FORWARD(j) for(j = 0; j < PanoramiXNumScreens; j++)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define FOR_NSCREENS_FORWARD_SKIP(j) for(j = 1; j < PanoramiXNumScreens; j++)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define FOR_NSCREENS_BACKWARD(j) for(j = PanoramiXNumScreens - 1; j >= 0; j--)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define FOR_NSCREENS(j) FOR_NSCREENS_FORWARD(j)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define IS_SHARED_PIXMAP(r) (((r)->type == XRT_PIXMAP) && (r)->u.pix.shared)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define IS_ROOT_DRAWABLE(d) (((d)->type == XRT_WINDOW) && (d)->u.win.root)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#endif /* _PANORAMIX_H_ */