int cvxPathAdd
(
vxPath SearchDirectory   /* I: directory pathname */
)
/*
DESCRIPTION:
Adds the specified file directory to the list of search paths
stored in the configuration file named "vxpaths".  These paths
are used to find files specified by name only.

Returns 1 if error; 0 if successful.
*/
________________________________________________________________________________

int cvxPathAddApiPath
(
vxName LibName,   /* I: library name (without .dll extension) */
char *SubFolder   /* I: sub-folder name or path  (NULL if undefined) */
)
/*
DESCRIPTION:
Logs the specified sub-folder of the "apilibs" directory that 
contains the specified DLL (LibName) to the list of ZW3D search
paths.  It is assumed that the sub-folder name or path is defined 
relative to the "apilibs" directory.  

If "SubFolder" is input as NULL, the path to "apilibs" is added 
to the ZW3D search paths.  "SubFolder" should not begin with a path 
delimiter.

Returns 1 if error; 0 if successful.
*/
________________________________________________________________________________

int cvxPathApiLib
(
vxName LibName,      /* I: library name (without .dll extension) */
vxPath LibDirectory   /* O: path of directory that contains the library */
)
/*
DESCRIPTION:
Gets the path of the "apilibs" directory that contains the 
specified API library.  It is assumed the library resides 
in a sub-directory named "apilibs" either in the runtime 
user directory or in the ZW3D installation directory.  The
local "apilibs" is checked first, then the "apilibs" in 
the installation directory.

Returns 1 if the library is found; 0 if not found.
*/
________________________________________________________________________________

int cvxPathCheckActiveOnlyGet()
/*
DESCRIPTION:
Get the VgCheckActivePathOnly.
*/
________________________________________________________________________________

void cvxPathCheckActiveOnlySet(int Value)
/*
DESCRIPTION:
Set the VgCheckActivePathOnly.
*/
________________________________________________________________________________

int cvxPathCompose
(
vxPath Path,      /* I: directory where file is located */
                    /* O: directory/file path */
const char *File   /* I: filename */
)
/*
DESCRIPTION:
Combines the input directory name (Path) and file name (File).
Outputs the result via "Path".
Returns 1 if pathname is too long.
*/
________________________________________________________________________________

void cvxPathDel
(
vxPath Path      /* I: file search pathname */
)
/*
DESCRIPTION:
Deletes the specified path from the current list of search paths.
No error is logged if the path doesn't exist.
*/
________________________________________________________________________________

void cvxPathDelAll (void)
/*
DESCRIPTION:
Deletes all paths from the current list of search paths.
*/
________________________________________________________________________________

void cvxPathDelim
(
vxPath Path      /* I: file pathname */
)
/*
DESCRIPTION:
If "Path" does not end with the path delimiter, appends the delimiter.
It is assumed that the memory referenced by "Path" is sufficient to
accomodate addition of another character.
*/
________________________________________________________________________________

void cvxPathDir
(
vxPath FullPath,   /* I: full path/file name */
vxPath Directory   /* O: directory portion of "FullPath" */
)
/*
DESCRIPTION:
Extracts the directory portion of the specified physical path.
If there is no directory specified, outputs "./".
*/
________________________________________________________________________________

void cvxPathFile
(
vxPath FullPath,   /* I: full path/file name */
vxLongName FileName   /* O: filename portion of "FullPath" */
)
/*
DESCRIPTION:
Extracts the filename portion of the specified physical path.  
The filename may include an extension, if there is one.

Outputs FileName[0]=0 if a filename could not be extracted or
if its length exceeds the size of a "vxName" string. 

Use cvxPathFile2() to extract a file name that may be longer
than "vxName".
*/
________________________________________________________________________________

void cvxPathFile2
(
char *FullPath,/* I: full path/file name */
int MaxNameLen,/* I: maximum name length in bytes (including null-terminator) */
char *FileName   /* O: filename portion of "FullPath" */
)
/*
DESCRIPTION:
Extracts the filename portion of the specified physical path.  
The filename may include an extension, if there is one.

Outputs FileName[0]=0 if a filename could not be extracted or
if its length (including the null-terminator) exceeds the size 
of "MaxNameLen".  

It is assumed "FileName" references at least "MaxNameLen" bytes 
of memory.
*/
________________________________________________________________________________

int cvxPathFind
(
vxName FileName,   /* I: file name */
vxPath FullPath   /* O: full path to the specified file */
)
/*
DESCRIPTION:
Given a filename without any directory path (FileName), this
function searches default paths for the file and outputs a
complete pathname to the file. 

Returns 1 if the file is found; 0 if not found.
*/
________________________________________________________________________________

void cvxPathInstall
(
vxPath InstallDirectory      /* O: installation directory */
)
/*
DESCRIPTION:
Outputs the path of the ZW3D installation directory.
*/
________________________________________________________________________________

int cvxPathIsDebug
(
const char *FolderName  /*I: name of folder where zw3d.exe resides in*/
)
/*
DESCRIPTION:
Check whether current environment is debug/release based on the name of folder where zw3d.exe resides in.
Returns 1 if the folder name contains Debug/Debugx64/Release/Releasex64, otherwise, returns 0.
*/
________________________________________________________________________________

void cvxPathSearchFirst
(
vxPath Directory   /* I: directory pathname */
)
/*
DESCRIPTION:
Causes ZW3D to search the input directory before searching the 
directories listed in "vxpaths".
*/
________________________________________________________________________________

int cvxPathSearchGet()
/*
DESCRIPTION:
Get the VgSearchPath.
*/
________________________________________________________________________________

void cvxPathSearchSet(int Value)
/*
DESCRIPTION:
Set the VgSearchPath.
*/
________________________________________________________________________________

int cvxPathSet
(
vxPath path   /* I: pathname */
)
/*
DESCRIPTION:
Add specified path to directory search conducted by DmPathFind
and resave search paths.

Return 1 if error, else return 0.
*/
________________________________________________________________________________

void cvxPathTemp
(
vxPath Directory   /* I: ZW3D temp directory */
)
/*
DESCRIPTION:
Outputs the path of the ZW3D "temp" directory for the active session.
*/
________________________________________________________________________________

void cvxPathUserFolder
(
vxPath Directory   /* I/O: user path */
)
/*
DESCRIPTION:
Get user folder path of ZW3D.
*/
________________________________________________________________________________