OOFILE | Downloads | Purchasing | Press | Services | Company Information | Soapbox | References| F.A.Q. | HOME

Annotated OOFILE Documentation Index

Design Diagrams

Package Overview
The different components of OOFILE.
Core database
Major database classes and backends.
Persistent fields inheritance
Including some portions linked to a rough reference manual.
GUI Integration classes
How OOFILE links your database to an application framework.



Description as Patterns
Describes some OOFILE internals in terms of the GOF Patterns, and our own efforts.
(See "Design Patterns" by Gamma, Helm, Johnson & Vlissides)
OOFILE over c-tree Plus
Summary of the main features OOFILE adds to enhance c-tree Plus.
Comparison to the ODMG-93 Standard
Describes OOFILE features side by side with ODMG definitions and discusses some future compatability improvements.
Small Software Engineering
The Diary-Driven approach we use to manage development.

GUI Interfaces & Framework Integration

Using the AppMaker code generator program on Macintosh and how OOFILE applications can be automatically generated for the PowerPlant framework.
GUI Integration Philosophy
The common philosophy to integrating OOFILE into application frameworks
GUI Events
Use Cases (from Jacobson) describe sequences of actions in a typical GUI database application.
GUI Customisation
The points at which you can easily customise gui integration behaviour by overriding virtual methods.
PowerPlant Framework
The (Macintosh) MetroWerks PowerPlant GUI integration, and the basis for our future GUI integrations.


Installation Summary
Steps to installing OOFILE and the accompanying c-tree Plus package.
Quick Start
Quick guide to creating and using a database for people who know a bit about database concepts.
Field Types
The field types and operations, including standalone types such as oofDate that can be used without a database.
The different ways to declare a search, including combinatorial expressions, wildcards and how to optimise searches with indexed compound fields.
A quick description of how sorting works in OOFILE, including multiple field sorts and the automatic dependency-based resorting.
How relationships work between database classes (instead of plain C++ pointers) - an overview and details.
ANSI Gotchas
IOStreams, the ANSI standard and Metrowerks CodeWarrior Pro.

More Details

Debugging Techniques
How to use the OOF_Debug and OOF_SmartHeap #defines to ensure the safety of your database.
A list of a couple of minor problems that you can run into and the error messages likely to be seen. Running in OOF_Debug mode should help avoid or diagnose most mistakes you can make.
Database size limits
Just the limits on numbers of classes, indices etc.
Describes the general dependency mechanism in OOFILE which you can use for your own dependencies, as well as its use by dbTable and other classes.
Programming Conventions
An important read to understand the naming conventions and what hints the names of parameters and methods provide.

Other Issues

Multi-user issues
How the c-tree multi-user capabilities are used in OOFILE.
Cross-platform issues
A few minor issues in going cross-platform. Read this document to see how to get the most efficient space packing of your objects and to be sure that your database can be copied to other platforms.
c-tree Changes and Issues
A couple of minor c-tree source code changes are required for Mac programmers writing GUI applications. Also describes how OOFILE makes use of c-tree features.
Questions and Answers
Some interesting questions from user correspondence.
OOFILE release test plan
The test plan followed in validating an OOFILE release.
Description as Patterns
Describes some OOFILE internals in terms of the GOF Patterns, and our own efforts.
(See "Design Patterns" by Gamma, Helm, Johnson & Vlissides)


Summary of Main Commands
A short reference to the basic commands for dealing with the database.
Quick Index
A short form of this index for quick referencing.
Class Reference Browser
Manual with class and collaboration diagrams, generated from the source code using Doxygen





(c) Copyright A.D. Software 1994-2004 (All Rights Reserved).
Last Updated: 21st June 2004