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