next up previous contents index
Next: Menus Up: Introduction Previous: Basic design

The O database

The heart of O is the database. Most data used or created by the program is kept here. The O database is the equivalent of a simple file system. The files are called datablocks, or parameter blocks. Each datablock has an associated header, containing data such as name, size, read-write status, data-type, and so on. This header data is maintained by the program. Only four types of data are allowed: real, integer, characters and text. Most of the datablocks in the database are data items created by the program itself, but the user has the possibility of entering and extracting information as well.

In dealing with macromolecules, O adopts a naming convention so that structural information is stored in particular datablock entries. To access the orthogonal coordinates for example, the program would look for a datablock composed of the user-defined molecule name appended with the string _atom_xyz.   Such an example of a datablock is called an atomic property. Likewise, there are residue properties; an example of this is the _residue_type.   This is an array of character variables that describes the amino acid or nucleotide sequence of the macromolecule. A standard molecular data set consists of 9 datablocks in the current version of O. Other atom or residue properties can be generated by the user, using a text editor, or by using separate stand-alone programs.

Another group of items kept in the database includes default values that do not need to be changed very often. For example, the object definition code defining how to display a single, unconnected atom is in the database. This is usually a 3-D cross, but could be changed to a tetrahedron, icosahedron, sphere, etc. This is a characteristic result of the object oriented design of the O program.  

Some files are distributed, which contain database information that is required when starting O for the first time. The file startup.o defines a number of things, e.g. the standard RSR dictionary, constants needed for molecular object definition and the recognized colours. The menu.o file defines the actual menu names used to key the commands (see Appendix C for a list of the required datablocks).



next up previous contents index
Next: Menus Up: Introduction Previous: Basic design