The kcodegen library is part of CLUI Services; note, however, that CLUI services is a private service -- it is not meant for direct use by applications, and is not documented in the Programming Services Manuals. The public routines in kcodegen are used by the ghostwriter and conductor code generators, and are automatically generated in the source code of Khoros programs.
The primary function of the kcodegen library (libkgen.a) is to do the work for the ghostwriter and conductor code generators. Code and documentation is generated according to software object type, as follows. Note that code & documentation generation is initiated by ghostwriter, unless marked with a @ sign indicating that generation is initiated by conductor.
kroutine objects -
*.c file
*.h file
usage.c file
l*.c file in assoc. library (if applicable)
prototype for library routine in library's *.h file
help file
man page
xvroutine objects -
*.c file
*.h file
usage.c file
help file
man page
@ form_drv.c file
@ form_info.c file
@ form_init.c file
@ form_info.h file
@ "do" files containing "do" routines
pane objects -
*.sh file (if told to generate executable)
man page (if told to generate executable)
help page
script objects -
man page
library objects -
man page for library as a whole
individual man page for each public routine in library
In addition, the kcodegen library controls the operation of the standardized command line arguments used by all Khoros programs: [-V], [-U], [-P], [-gui], [-A], [-a], (and [-jr], [-jp], [-form], [-x], and [-y] for xvroutines only). It pre-processes these specialized arguments, so that individual programs do not have to.
$BOOTSTRAP/objects/library/kcodegen/src
$BOOTSTRAP/include/kcodegen/kcodegen.h
#include <bootstrap.h>
While not directly referenced, the functionality provided by the kcodegen library is documented in Chapter 6, "Writing Software With Khoros", of the Toolbox Programmer's Manual.