# Defined Types

### ARGL_CONTEXT_SETTINGS_REF

Opaque type to hold ARGL settings for a given OpenGL context.

>     typedef struct _ARGL_CONTEXT_SETTINGS *ARGL_CONTEXT_SETTINGS_REF;

##### Discussion

An OpenGL context is an implementation-defined structure which keeps track of OpenGL state, including textures and display lists. Typically, individual OpenGL windows will have distinct OpenGL contexts assigned to them by the host operating system.
As gsub_lite uses textures and display lists, it must be able to track which OpenGL context a given texture or display list it is using belongs to. This is especially important when gsub_lite is being used to draw into more than one window (and therefore more than one context.)
Basically, functions which depend on OpenGL state, will require an ARGL_CONTEXT_SETTINGS_REF to be passed to them. An ARGL_CONTEXT_SETTINGS_REF is generated by setting the current OpenGL context (e.g. if using GLUT, you might call glutSetWindow()) and then calling arglSetupForCurrentContext(). When you have finished using ARGL in a given context, you should call arglCleanup(), passing in an ARGL_CONTEXT_SETTINGS_REF, to free the memory used by the settings structure.

Availability
  First appeared in ARToolKit 2.68.

© 2003-2006 Philip Lamb (Last Updated June 23, 2006)