AGOCG logo
Graphics Multimedia VR Visualisation Contents
Training Reports Workshops Briefings Index
This report is also available as an Acrobat file.
Next Back [Top]

Review of Visualisation Systems

6.5 Khoros


6.5.1 - Programming language
6.5.2 - General overview and structure
6.5.3 - Software lifecycle
6.5.4 - General Topics
6.5.5 - Training
Khoros 2.0 was designed to be a software development environment, so the support for incorporating new application code is very strong. Khoros is composed of toolboxes, which are simply collections of programs and libraries. Additional application code can be easily added to the system by creating new programs and libraries within a new toolbox [38] [39]. Since the Khoros system comes with complete source code, programming examples are always handy.

6.5.1 Programming language


Khoros is based on the C programming language with support for compiling with Fortran and C++. Support for sh, ksh, csh, and perl scripts as program objects is also available.

6.5.2 General overview and structure


In Khoros, application code is contained within distinct software objects. A software object a complete encapsulation of a program or library and consists of application source code, documentation, user interface information, and configuration. All software objects except libraries can be run independently from the command line, or from the visual programming language Cantata. The following types of software objects can be created.

6.5.3 Software lifecycle


The Khoros software development tools provide a complete environment which support the iterative process of developing, maintaining, delivering, and sharing software. These tools act as the programmer's assistant by providing automation where possible, enforcing consistency as necessary, and hiding underlying complexity of software configuration, code generators, and documentation formatters. This functionality is provided in the form of three applications which are described below.

6.5.4 General Topics


Application control of the module


Each program object is an application unto itself giving full control to the user.

Shared data


Khoros provides data transport between processes via files shared memory, pipes, and streams.

User interface


As mentioned earlier, interactive editing of Khoros user interfaces is done with the Guise application. The resulting user interface will be created at run time using widgets from one of the supported widget sets (Athena, Motif, OLIT).

Compilation


Compilation of Khoros software objects is performed at a button press from the Composer application.

Debugging support


Khoros has no actual debugger, but provides compilation rules for linking against Purify from Puresoft and CodeCenter from Centerline.

6.5.5 Training


Khoral Research Inc. offers a "Khoros 2.0 Software Development Course" which provides a complete tour of the Khoros system, detailed coverage on each of the Programing Services, as well as the Khoros Software development system and how to write new Khoros routines.

E-mail ktraining@khoros.unm.edu for more information.


Review of Visualisation Systems
Next Back [Top]

Generated with CERN WebMaker

Graphics     Multimedia      Virtual Environments      Visualisation      Contents