Environment Variables

There are two Unix environment variables which can be used to customize the behavior of CAVE programs. They are:

CAVE_HOME This defines the top-level directory containing the CAVE distribution; the default directory, if CAVE_HOME is not set, is /usr/local/CAVE. The library looks under this directory for the etc/ directory, which contains the system-wide configuration files, and for the bin/ directory, which contains the mplock and mpunlock commands.
CAVEDEBUGCONFIG Normally, CAVEConfigure() prints an abbreviated form of the final configuration data to stderr when it has finished reading all the configuration files. However, if CAVEDEBUGCONFIG is defined as "FULL", it will print out a complete list of all the configuration options which will be used. If this variable is defined as "OFF", the printout will not be done at all. If this variable is defined as "VERBOSE", each configuration option will be printed as it is processed.


Internal functions

This section describes some of the functions which are used internally in the CAVE library. They are not called directly by a normal CAVE application. However, they may be useful for developing other applications which need some of the functionality of the CAVE library.

There are functions for reading configuration files, running the tracking and networking processes, and getting the off-axis projection matrices for CAVE walls.

void CAVEConfigurationInit(int *argc,char **argv,char **appdefaults,CAVE_CONFIG_ST *config)
char *CAVEDebugConfigWallName(CAVE_WALL_ID wallnum)
char *CAVEFullPathName(char *file)
void CAVEGetProjection(CAVE_WALL_ID wall,CAVEID eye,float *frustum,Matrix viewmat)
void CAVETrackerStart(CAVE_CONFIG_ST *config)
Must call CAVEConfigure()
void CAVEUpdateSensors(void)