Welcome to the second alpha release of the UCSF Computer Graphics Laboratory's
Object Technology Framework (OTF) for molecular modeling and computational
chemistry.
This release just contains the molecule object toolkit. The IFS (Item
File System), that you may have read about in the Proceedings of the NSF
Scientic Database Projects 1991-1993, will be part of a future release.
The source directory structure is:
./bin/ source for applications (both developer and end user)
./lib/ source for linkable libraries
./doc/ source for documention
The installation tree is the familar:
${OTFHOME}/bin/ installed programs
${OTFHOME}/include/ installed include files for libraries
${OTFHOME}/lib/ installed code libraries and data files for
applications
${OTFHOME}/man/ installed manual pages
All of the code is written in C++ and was developed using the GNU project's
gcc and libg++. It was compiled locally with gcc version 2.6.3 and libg++
version 2.6.2 (and some modifications to the genclass script, see below).
The C++ is fairly generic, but there are dependencies on the container classes
provided by the libg++ library. We were planning to add support for other
container class libraries. But we may just switch over to the Standard
Template Library.
The Makefile's in the the source hierarchy support three different types
of installation, sysv.install, bsd.install, and osf1.install. You should
be able to do a "make xxxx.install" in this directory and have everything
install correctly.
There is a mailing list, otf@cgl.ucsf.edu for reporting bugs and for
general discussion of the OTF. Send mail to otf-request@cgl.ucsf.edu to
be put on the mailing list. We are especially interested in hearing
about what functionality you think should be added.
Greg Couch, gregc@cgl.ucsf.edu
January 1995
Changes since the first release:
The code has been modified to compile under gcc 2.6.3. The bool
type is used, const correctness is improved (used the mutable
keyword for the first time), conforms better to standard C++.
>>> Added two new argument types to libg++'s genclass script, ptr
and cptr, for pointer and const type pointer. We also modified
some of the g++-include/gen/*P prototype files to more const
correct. The diff's to genclass can be found in genclass.diffs
and are needed to build the mol library.
There has been some code reorganization. For example, the
tmplBondRadius function has been moved to the mol library
into the AtomicSymbol class.
In mol library, there is a new Geom3d class (future namespace)
for 3D transformations.
In mol library, switch from coordinates being 3 float's to 3
double's to avoid precision problems. We would like to add
back the option of using float's for applications that don't
need double's, but if you don't have double's when you need
them, you're out of luck.
In mol library, fixed a bug with Iterator's where the count
function wasn't copied when it should have been.
In the molgraph library, aggregate interators were added (this
makes it possible to iterate over all of the dihedrals). No ring
detection yet.
|