1c041511dScube#ifndef __layerutil_h__ 2c041511dScube#define __layerutil_h__ 3c041511dScube 4c041511dScube/* Copyright (c) Mark J. Kilgard, 1993, 1994. */ 5c041511dScube 6c041511dScube/* This program is freely distributable without licensing fees 7c041511dScube and is provided without guarantee or warrantee expressed or 8c041511dScube implied. This program is -not- in the public domain. */ 9c041511dScube 10c041511dScube/* Based on XLayerUtil.h: Revision: 1.3 */ 11c041511dScube 12c041511dScube#ifdef __VMS 13c041511dScube#include <GL/vms_x_fix.h> 14c041511dScube#endif 15c041511dScube 16c041511dScube#if !defined(_WIN32) 17c041511dScube#include <X11/Xlib.h> 18c041511dScube#include <X11/Xutil.h> 19c041511dScube#include <X11/Xmd.h> 20c041511dScube#endif /* !_WIN32 */ 21c041511dScube 22c041511dScube/* Transparent type values */ 23c041511dScube/* None 0 */ 24c041511dScube#define TransparentPixel 1 25c041511dScube#define TransparentMask 2 26c041511dScube 27c041511dScube/* layered visual info template flags */ 28c041511dScube#define VisualLayerMask 0x200 29c041511dScube#define VisualTransparentType 0x400 30c041511dScube#define VisualTransparentValue 0x800 31c041511dScube#define VisualAllLayerMask 0xFFF 32c041511dScube 33c041511dScube/* layered visual info structure */ 34c041511dScubetypedef struct _XLayerVisualInfo { 35c041511dScube XVisualInfo vinfo; 36c041511dScube long layer; 37c041511dScube long type; 38c041511dScube unsigned long value; 39c041511dScube} XLayerVisualInfo; 40c041511dScube 41c041511dScube/* SERVER_OVERLAY_VISUALS property element */ 42c041511dScubetypedef struct _OverlayInfo { 43c041511dScube /* Avoid 64-bit portability problems by being careful to use 44c041511dScube longs due to the way XGetWindowProperty is specified. Note 45c041511dScube that these parameters are passed as CARD32s over X 46c041511dScube protocol. */ 47c041511dScube long overlay_visual; 48c041511dScube long transparent_type; 49c041511dScube long value; 50c041511dScube long layer; 51c041511dScube} OverlayInfo; 52c041511dScube 53c041511dScubeextern int __glutGetTransparentPixel(Display *, XVisualInfo *); 54c041511dScubeextern XLayerVisualInfo *__glutXGetLayerVisualInfo(Display *, 55c041511dScube long, XLayerVisualInfo *, int *); 56c041511dScubeextern Status __glutXMatchLayerVisualInfo(Display *, 57c041511dScube int, int, int, int, XLayerVisualInfo *); 58c041511dScube 59c041511dScube#endif /* __layerutil_h__ */ 60