Changes From the Previous Release

This is the third distribution of the Variable Block Database. The changes from release 1025 to release 1027 are list below:

C++ CLASS LIBRARY

:
SLList - General-purpose template and non-template singly linked list class. Removed duplicate definition of overloaded assignment operator.

EHandler - Added a new exception code and class for CRC exceptions. See source code for details.

Btree - Added functions the allow files to be properly updated during multiple file access. See source code for details.

Persistent - All string functions represent null values with a zero. See source code for details.

PostScriptDrv - Modified the system time function to format the time string using either abbreviated or non-abbreviated Months. See source code for details.

UString - Added standalone insensitive case comparison functions that take UString objects as operands. See source code for details.

VBDFile - Version number changed to 1027 revision 'A'. Version 1027 includes a 32-bit CRC checksum routine used to detect bit error during all write operations. Revision 'A' modifies the file format by reserving four bytes at the end of each block for an optional block checksum. See source code for details. Downward compatible with previous release.

EXAMPLE PROGRAMS

:
Rolodex Program - Changed all references to the name "Rolodex" in both the source code and documentation to CCIndex. The word "Rolodex is trademarked and proprietary. It cannot be used in any of the source code or documentation as the Rolodex Company aggressively and actively defends their trademark.

Removed the Contacts List, HP List, Property List, and Telecommunications string database example programs to keep the file size of the distribution below 1.44 MB.

UTILITY PROGRAMS

:
Modified the VB Debug utility to work with previous releases.

Added some conversion functions to the Hex Dump utility. See the help documentation for complete details.

The changes from release 1024 to release 1025 are list below:

C++ CLASS LIBRARY

:
All the components of the C++ class library have been moved to a central directory named: "classes". The source code is located in a subdirectory named after the class itself. Each source code directory is broken down into two or more subdirectories. The base source code resides in a directory named "base" and a console based test program resides in a directory named "console". The following classes have been added or modified in this release:

Btree - B-tree class and supporting classes added in this release to create and manage index files.

Cache - Cache class and supporting classes added in this release to implement disk caching.

CDate - General-purpose year 2000 compliant date classes added in this release.

DLList - General-purpose template and non-template doubly linked list class added in this release.

Dtree - Unbalanced B-tree supplied with this release for testing purposes.

EHandler - Additional exception codes and classes added and minor changes. See source code for details. Fully compatible with previous release.

Misc. - Simple implementations of a tree, hash table, doubly linked list, and string classes supplied with this distribution for testing purposes.

OS - The "os_type.hpp", "machine.hpp", and complier.hpp include files are no longer used in this release. In the previous distribution these include files contained a set of macros used to define operating system, machine, and compiler specific flags. The conditional directives are now defined in each makefile using the "-D" compiler option.

Persistent - Added index file routines and modified derived class interface. Will not compile with previous release. See source code before compiling.

Placenew - Overloaded new operator added in this release to perform in-place construction.

POD - Added index file routines and minor changes. See source code for details. Fully compatible with previous release.

PostScriptDrv - PostScript driver class added in this release to print database files in a postscript format.

StrDB - The general-purpose string database and example programs will not compile with the previous release due to major changes. See source code and help documentation before compiling.

Strutil - General purpose null-terminated string utilities added in this release.

VBDFile - Version number changed to 1025 due to minor changes. See source code for details. Downward compatible with previous release.

DOCUMENTATION

:
All documentation is now provided in an HTML format. The documentation covers the VBD C++ class library, the example programs, and the utility programs provided with this distribution. Parts of the documentation may be made available in other formats upon request.

UTILITY PROGRAMS

:
All the VBD file utilities have been moved to a central directory named: "utils". Several new utility programs have been added in this release. See the help documentation for complete details.

End Of Document