OTCLIB - A library of generic components, including support for error handling, error message logging, error recovery, program debugging, memory management, resource management, generic collections, text manipulation, date/time, operating system interfacing and event driven systems.
OUXLIB - A library of components which primarily extends classes in the OTCLIB library to support features specific to the UNIX operating system.
OTKLIB - A library of components which builds on the OTCLIB and OUXLIB libraries to allow integration of the TCL/TK library into applications using the event driven systems framework provided by the OTCLIB library.
The C++ libraries are portable to a wide range of C++ compilers on the UNIX platform. Supported C++ compilers include those from ATT/USL (CFRONT), CenterLine, DEC, HP, IBM, Lucid, ObjectStore, SGI (CFRONT), SGI (DELTA), Sun (CFRONT) and Sun (NATIVE), as well as the freely available GNU C++ compiler. If your C++ compiler does not support templates, it is possible to use a template preprocessor which is supplied with OSE. If your C++ compiler support exceptions, they will be used. Portability to all the major variants of UNIX has been achieved. Supported platforms include AIX, BSD, HPUX, IRIX, Linux, NeXT, OSF, SCO, Solaris, SunOS, SYSV and Ultrix. In addition to being available under UNIX, the OTCLIB library has been ported to DOS, OS/2 and Windows NT using Borland, Watcom and Microsoft C++ compilers.
The C++ libraries have been fully integrated with the ObjectStore OODBMS, allowing instances of classes from the C++ libraries to be made persistent. The C++ libraries can also be used in conjunction with applications using Versant, although in this case instances of classes from the C++ libraries cannot be made persistent.
In addition to the C++ libraries, a build environment is provided. The build environment greatly simplifies the writing of makefiles, making the the task of building applications, as well as the generation and installation of both static and shared libraries easy. The details of template instantiation for many of the C++ compilers is also hidden, making it possible to write makefiles which are portable between different C++ compilers as well as different platforms. The build environment also supports tasks such as schema generation for the ObjectStore and Versant OODBMS, and testing of applications using tools such as Purify, Quantify, PureCoverage, TestCenter and Sentinel.
Comprehensive documentation for the C++ libraries and build environment is provided. Documentation for the C++ libraries comes in the form of a UNIX style manual page for each class and higher level documentation giving examples of how to use the classes. The UNIX style manual pages are generated from the class header files using documentation extraction tools. These tools are provided with OSE and are capable of generating both UNIX style manual pages and Frame documents.
Development of OSE commenced in 1990, being made freely available via the Internet in 1993. OSE was winner of CODA'94, the ComputerWorld Object Developer Awards, held in conjunction with ObjectWorld in Sydney, Australia. The category in which OSE was a winner was "Best implementation of a reusable development environment for company deployment".
OSE (source code and documentation) can be obtained via anonymous ftp from:
Europe:
ftp.th-darmstadt.de [130.83.55.75] directory pub/programming/languages/C++/class-libraries/OSE
United States
ftp.odi.com [198.3.16.26] directory pub/OSE
Australia:
csis.dit.csiro.au [192.41.146.1] directory pub/SEG/ose
Documentation for OSE is also available online via WWW at:
http://www.telstra.com.au/docs/ose/doc/ose-home.html
Questions about OSE can be directed to the author (Graham Dumpleton) at:
ose@nms.otc.com.au
A mailing list for discussion of OSE, and a mail server providing a list of known problems and fixes also exists.
OSE is made freely available by Dumpleton Software Consulting Pty Limited. OSE contains licensed program materials which are the copyright of Telstra Corporation Limited and which are licensed to Dumpleton Software Consulting Pty Limited by Telstra Corporation Limited.