Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

glut_overlay.c File Reference

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xatom.h>
#include <X11/Xmu/StdCmap.h>
#include "glutint.h"
#include "layerutil.h"

Include dependency graph for glut_overlay.c:

Go to the source code of this file.

Functions

static int checkOverlayAcceptability (XVisualInfo *vi, unsigned int mode)
static XVisualInfo * getOverlayVisualInfoCI (unsigned int mode)
static XVisualInfo * getOverlayVisualInfoRGB (unsigned int mode)
static XVisualInfo * getOverlayVisualInfo (unsigned int mode)
static void addStaleWindow (GLUTwindow *window, Window win)
void __glutFreeOverlay (GLUToverlay *overlay)
static XVisualInfo * determineOverlayVisual (int *treatAsSingle, Bool *visAlloced, void **fbc)
void APIENTRY glutEstablishOverlay (void)
void APIENTRY glutRemoveOverlay (void)
void APIENTRY glutUseLayer (GLenum layer)
void APIENTRY glutPostOverlayRedisplay (void)
void APIENTRY glutPostWindowOverlayRedisplay (int win)
void APIENTRY glutOverlayDisplayFunc (GLUTdisplayCB displayFunc)
void APIENTRY glutHideOverlay (void)
void APIENTRY glutShowOverlay (void)
int APIENTRY glutLayerGet (GLenum param)

Variables

static Criterion requiredOverlayCriteria []
static int numRequiredOverlayCriteria = sizeof(requiredOverlayCriteria) / sizeof(Criterion)
static int requiredOverlayCriteriaMask


Function Documentation

void __glutFreeOverlay GLUToverlay overlay  ) 
 

Definition at line 300 of file glut_overlay.c.

References __glutDisplay, __glutFreeColormap(), _GLUToverlay::colormap, _GLUToverlay::ctx, glXDestroyContext(), _GLUToverlay::vis, _GLUToverlay::visAlloced, and _GLUToverlay::win.

Referenced by glutEstablishOverlay(), and glutRemoveOverlay().

static void addStaleWindow GLUTwindow window,
Window  win
[static]
 

Definition at line 284 of file glut_overlay.c.

References __glutFatalError(), __glutStaleWindowList, _GLUTstale::next, _GLUTstale::win, and _GLUTstale::window.

Referenced by glutEstablishOverlay(), and glutRemoveOverlay().

static int checkOverlayAcceptability XVisualInfo *  vi,
unsigned int  mode
[static]
 

Definition at line 42 of file glut_overlay.c.

References __glutDisplay, __glutIsSupportedByGLX(), GLUT_WIND_HAS_ACCUM, GLUT_WIND_HAS_ALPHA, GLUT_WIND_HAS_DEPTH, GLUT_WIND_HAS_STENCIL, GLUT_WIND_IS_DOUBLE, GLUT_WIND_IS_MULTISAMPLE, GLUT_WIND_IS_STEREO, GLX_DEPTH_SIZE, GLX_DOUBLEBUFFER, GLX_RGBA, GLX_SAMPLES_SGIS, GLX_STENCIL_SIZE, GLX_STEREO, GLX_USE_GL, and glXGetConfig().

Referenced by getOverlayVisualInfoCI().

static XVisualInfo* determineOverlayVisual int *  treatAsSingle,
Bool *  visAlloced,
void **  fbc
[static]
 

Definition at line 314 of file glut_overlay.c.

References __glutDetermineVisual(), __glutDetermineVisualFromString, __glutDisplayMode, __glutDisplayString, getOverlayVisualInfo(), numRequiredOverlayCriteria, requiredOverlayCriteriaMask, and _Criterion::value.

Referenced by glutEstablishOverlay(), and glutLayerGet().

static XVisualInfo* getOverlayVisualInfo unsigned int  mode  )  [static]
 

Definition at line 255 of file glut_overlay.c.

References getOverlayVisualInfoCI(), getOverlayVisualInfoRGB(), GLUT_WIND_IS_LUMINANCE, and GLUT_WIND_IS_RGB.

Referenced by determineOverlayVisual().

static XVisualInfo* getOverlayVisualInfoCI unsigned int  mode  )  [static]
 

Definition at line 97 of file glut_overlay.c.

References __glutDisplay, __glutScreen, __glutXGetLayerVisualInfo(), checkOverlayAcceptability(), j, TransparentPixel, _XLayerVisualInfo::vinfo, VisualLayerMask, and VisualTransparentType.

Referenced by getOverlayVisualInfo().

static XVisualInfo* getOverlayVisualInfoRGB unsigned int  mode  )  [static]
 

Definition at line 163 of file glut_overlay.c.

References __glutWarning().

Referenced by getOverlayVisualInfo().

void APIENTRY glutEstablishOverlay void   ) 
 

Definition at line 356 of file glut_overlay.c.

References __glutCurrentWindow, __glutDisplay, __glutFatalError(), __glutForceDirect, __glutFreeOverlay(), __glutFreeOverlayFunc, __glutGetTransparentPixel(), __glutPutOnWorkList(), __glutSetupColormap(), __glutToplevelOf(), __glutTryDirect, addStaleWindow(), _GLUTwindow::children, _GLUToverlay::cmap, _GLUToverlay::colormap, _GLUToverlay::ctx, _GLUTwindow::ctx, determineOverlayVisual(), _GLUToverlay::display, _GLUTwindow::eventMask, _GLUTwindow::forceReshape, GL_FRONT, glDrawBuffer(), glReadBuffer(), GLUT_COLORMAP_WORK, GLUT_OVERLAY_EVENT_FILTER_MASK, glutUseLayer(), GLX_RGBA_TYPE_SGIX, glXCreateContext(), glXCreateContextWithConfigSGIX, glXIsDirect(), _GLUTwindow::height, _GLUToverlay::isDirect, _GLUTwindow::overlay, _GLUToverlay::shownState, _GLUToverlay::transparentPixel, _GLUToverlay::treatAsSingle, _GLUToverlay::vis, _GLUToverlay::visAlloced, _GLUTwindow::width, _GLUTwindow::win, _GLUToverlay::win, _GLUTwindow::x, and _GLUTwindow::y.

void APIENTRY glutHideOverlay void   ) 
 

Definition at line 537 of file glut_overlay.c.

References __glutCurrentWindow, __glutDisplay, __glutWarning(), _GLUTwindow::overlay, _GLUToverlay::shownState, and _GLUToverlay::win.

int APIENTRY glutLayerGet GLenum  param  ) 
 

Definition at line 559 of file glut_overlay.c.

References __glutCurrentWindow, __glutWarning(), __glutWindowDamaged, determineOverlayVisual(), dummy, GLUT_OVERLAY_REPAIR_WORK, GLUT_REPAIR_WORK, _GLUTwindow::overlay, _GLUTwindow::renderWin, _GLUToverlay::transparentPixel, _GLUTwindow::win, and _GLUTwindow::workMask.

void APIENTRY glutOverlayDisplayFunc GLUTdisplayCB  displayFunc  ) 
 

Definition at line 527 of file glut_overlay.c.

References __glutCurrentWindow, __glutWarning(), _GLUToverlay::display, and _GLUTwindow::overlay.

void APIENTRY glutPostOverlayRedisplay void   ) 
 

Definition at line 511 of file glut_overlay.c.

References __glutCurrentWindow, __glutPostRedisplay(), and GLUT_OVERLAY_REDISPLAY_WORK.

void APIENTRY glutPostWindowOverlayRedisplay int  win  ) 
 

Definition at line 521 of file glut_overlay.c.

References __glutPostRedisplay(), __glutWindowList, and GLUT_OVERLAY_REDISPLAY_WORK.

void APIENTRY glutRemoveOverlay void   ) 
 

Definition at line 458 of file glut_overlay.c.

References __glutCurrentWindow, __glutFreeOverlay(), __glutPutOnWorkList(), __glutToplevelOf(), addStaleWindow(), GLUT_COLORMAP_WORK, glutUseLayer(), _GLUTwindow::overlay, _GLUTwindow::renderWin, and _GLUToverlay::win.

void APIENTRY glutShowOverlay void   ) 
 

Definition at line 548 of file glut_overlay.c.

References __glutCurrentWindow, __glutDisplay, __glutWarning(), _GLUTwindow::overlay, _GLUToverlay::shownState, and _GLUToverlay::win.

void APIENTRY glutUseLayer GLenum  layer  ) 
 

Definition at line 481 of file glut_overlay.c.

References __glutCurrentWindow, __glutSetWindow(), __glutWarning(), _GLUToverlay::ctx, _GLUTwindow::ctx, _GLUTwindow::overlay, _GLUTwindow::renderCtx, _GLUTwindow::renderWin, _GLUToverlay::win, and _GLUTwindow::win.

Referenced by glutEstablishOverlay(), and glutRemoveOverlay().


Variable Documentation

int numRequiredOverlayCriteria = sizeof(requiredOverlayCriteria) / sizeof(Criterion) [static]
 

Definition at line 36 of file glut_overlay.c.

Referenced by determineOverlayVisual().

Criterion requiredOverlayCriteria[] [static]
 

Initial value:

{
  {LEVEL, EQ, 1},       
  {TRANSPARENT, EQ, 1},
  {XPSEUDOCOLOR, EQ, 1},
  {RGBA, EQ, 0},
  {BUFFER_SIZE, GTE, 1}
}

Definition at line 27 of file glut_overlay.c.

int requiredOverlayCriteriaMask [static]
 

Initial value:

(1 << LEVEL) | (1 << TRANSPARENT) | (1 << XSTATICGRAY) | (1 << RGBA) | (1 << CI_MODE)

Definition at line 37 of file glut_overlay.c.

Referenced by determineOverlayVisual().


Generated on Mon Sep 18 11:41:20 2006 for jot by  doxygen 1.4.4