23.5 OpenGLXlib Interface

ORIGIN '~beta/guienv/guienv';

--windowitemlib:attributes--

(*------ GLX ---------- *)
(* note this is not complete,
 * only intendet for internal use,
 * as programs is not platform independent 
 *)

(* --------GLX_CONFIGURATION-------- 83 *)
GLX_USE_GL:(# exit 1 #);
GLX_BUFFER_SIZE:(# exit 2 #);
GLX_LEVEL:(# exit 3 #);
GLX_RGBA:(# exit 4 #);
GLX_DOUBLEBUFFER:(# exit 5 #);
GLX_STEREO:(# exit 6 #);
GLX_AUX_BUFFERS:(# exit 7 #);
GLX_RED_SIZE:(# exit 8 #);
GLX_GREEN_SIZE:(# exit 9 #);
GLX_BLUE_SIZE:(# exit 10 #);
GLX_ALPHA_SIZE:(# exit 11 #);
GLX_DEPTH_SIZE:(# exit 12 #);
GLX_STENCIL_SIZE:(# exit 13 #);
GLX_ACCUM_RED_SIZE:(# exit 14 #);
GLX_ACCUM_GREEN_SIZE:(# exit 15 #);
GLX_ACCUM_BLUE_SIZE:(# exit 16 #);
GLX_ACCUM_ALPHA_SIZE:(# exit 17 #);

(* GLX_EXT_visual_info extension *)
GLX_X_VISUAL_TYPE_EXT:(# exit 0x22 #);
GLX_TRANSPARENT_TYPE_EXT:(# exit 0x23 #);
GLX_TRANSPARENT_INDEX_VALUE_EXT:(# exit 0x24 #);
GLX_TRANSPARENT_RED_VALUE_EXT:(# exit 0x25 #);
GLX_TRANSPARENT_GREEN_VALUE_EXT:(# exit 0x26 #);
GLX_TRANSPARENT_BLUE_VALUE_EXT:(# exit 0x27 #);
GLX_TRANSPARENT_ALPHA_VALUE_EXT:(# exit 0x2 #);


(*---------Various functions ---------------*)


glXChooseVisual:external (* 171 *)
  (# display:@integer;
     screen:@integer;
     attributes:@integer;
     visual:@integer;
  enter (display,screen,attributes)
  exit visual
  #);

glXCopyContext:external
  (# display:@integer;
     src,dst,mask:@integer;
  enter (display,src,dst,mask)
  #);

glXCreateContext:external (* 174 *)
  (# display:@integer;
     visual:@integer; (* found with glXChooseVisual *)
     sharelist:@integer; (* glXcontext *)
     direct:@integer;  (* 1 true, 0 false *)
     context:@integer;
  enter (display,visual,sharelist,direct)
  exit context
  #);

glXCreateGLXPixmap:external 
  (# display:@integer;
     visual:@integer; 
     pixmap, glxpixmap: @integer
  enter (display,visual,pixmap)
  exit glxpixmap
  #);

glXDestroyContext:external 
  (# display:@integer;
     context:@integer;
  enter (display,context)
  #);

glXDestroyGLXPixmap:external 
  (# display:@integer;
     glxpixmap:@integer;
  enter (display,glxpixmap)
  #);

glXGetClientString:external 
  (# display:@integer;
     name:@integer;
     string: [0]@char;
  enter (display,name)
  exit string
  #);

glXGetConfig:external 
  (# display:@integer;
     visual:@integer;
     attrib:@integer;
     value_ptr:@integer;
     status:@integer;
  enter (display,visual,attrib,value_ptr)
  exit status
  #);

glXGetCurrentDisplay:external 
  (# display:@integer;
  exit display
  #);

glXGetCurrentDrawable:external 
  (# drawable:@integer;
  exit drawable
  #);

glXIsDirect:external 
  (# display,context:@integer;
     isdirect:@integer
  enter (display,context)
  exit isdirect
  #);

glXMakeCurrent:external (* 179 *)
  (# display:@integer;
     drawable:@integer;
     context:@integer;
     result:@integer;
  enter(display,drawable,context)
  exit result
  #);

glXQueryExtension:external 
  (# display,errorBase_ptr,eventBase_ptr:@integer;
     has_extension:@boolean
  enter (display,errorBase_ptr,eventBase_ptr)
  exit has_extension
  #);

glXQueryExtensionString:external 
  (# display,screen:@integer;
     string: [0]@char
  enter (display,screen)
  exit string
  #);

glXQueryServerString:external 
  (# display,screen,name:@integer;
     string: [0]@char
  enter (display,screen,name)
  exit string
  #);

glXQueryVersion:external 
  (# display,major_ptr,minor_ptr:@integer;
     status:@boolean
  enter (display,major_ptr,minor_ptr)
  exit status
  #);

glXSwapBuffers:external (* 185 *)
  (# display:@integer;
     drawable:@integer;
  enter (display,drawable)
  #);

glXUseXFont:external 
  (# font,first,count,listBase:@integer;
  enter (font,first,count,listBase)
  #);


glXWaitGL:external (* 205 *)
  (# #);

glXWaitX:external (* 207 *)
  (# #)


23.5 OpenGLXlib Interface
© 1994-2002 Mjølner Informatics
[Modified: Thursday August 3rd 2000 at 11:32]