Rogue Wave banner
©Copyright 1999 Rogue Wave Software, Inc.
Send mail to report errors or comment on the documentation.
Documentation Tips

If you are accessing this for the first time, please read the licensing statement.

Tools.h++ Class Reference

Welcome to the Tools.h++ Class Reference. Look below for an alphabetized table of links to the class descriptions.

For member functions and data types (exclusive of constructors and destructors), you can consult the comprehensive index, and each class description has an index specific to the class.

Introduction

The Tools.h++ Class Reference describes all the classes and functions in Tools.h++. It does not provide a tutorial on how to program with the Tools.h++ class library. For information on how to write programs using Tools.h++, consult the Tools.h++ User's Guide. For information on building and using Tools.h++, review the Tools.h++ Build Guide.

Organization of the Class Reference

Immediately following this introduction is a class hierarchy diagram. The class hierarchy lists all the classes, and illustrates the relationships among them. You can refer to it for a bird's-eye view of the inheritance structure used in Tools.h++.

The remainder of this reference is an alphabetical listing of classes. The entry for each class begins with an illustration showing the individual class's inheritance hierarchy, followed by a synopsis that lists the header files(s) and the Smalltalk typedef (if appropriate) associated with the class. The synopsis also shows a declaration and definition of a class object, and any typedefs that are used. Following the synopsis is a brief description of the class, and a list of member and global functions. These functions are organized in categories according to their general use - for example, "constructors," "global operators," and "public member functions." The categories, although somewhat arbitrary, provide a way of organizing the many functions.

Conventions

All Rogue Wave class names start with the letters RW, as in RWCollectable. In some cases, we may refer to an instance of a class by an English name; for example, "the string" instead of "the RWCString instance." We do this to make it easier to read when the meaning should be clear from context, but we use the longer form if there is a possible ambiguity.

All function names begin with a lower case letter, with the first letter of subsequent words capitalized. Function names attempt to accurately describe what a function does. For example, RWCString::toLower() changes all uppercase letters in itself to lowercase. Underline characters and abbreviations are not generally used in function names.

Function names, examples, operating system commands, mathematical symbols and code fragments are shown in a courier font, as in <rw/stream.h> . Vertical ellipses are used in code examples to indicate that some part of the code is missing.

Throughout this documentation, there are frequent references to "self." This should be read as "*this".

Inheritance Notation

Each class that inherits from another class (or other classes) includes an illustration that shows the inheritance hierarchy. For example, the following illustration indicates that class A inherits from class B:

image1.gif

When a class inherits from more than one class, or there are multiple levels of inheritance, all of the inheritance relationships are shown. For example, the following illustration indicates that A inherits from class B and from class C, which inherits from class D.

image2.gif

The notation system used in the inheritance hierarchies is based on the Object Modeling Technique (OMT) developed by Rumbaugh and others. [1]

Member Functions

Within their general categories, member functions for each class are listed alphabetically. Member functions fall into three general types:

  1. Functions that are unique to a class. The complete documentation for these functions is presented in the class where they occur. An example is balance(), a member of the class RWBinaryTree.

  2. Functions that are inherited from a base class without being redefined. The complete documentation for these functions is presented in the defining base class. An example is clearAndDestroy(), for class RWBinaryTree, which is inherited from class RWCollection. When a member function is inherited without being redefined, the member function appears in both places, and this guide refers you to the original definition.

  3. Functions that are redefined in a derived class. These are usually virtual functions. The documentation for these functions usually directs you to the base class, but may also mention peculiarities that are relevant to the derived class. An example is apply(), for class RWBinaryTree.

Class Hierarchy

The following list shows the public class hierarchy of the Tools.h++ classes. Note that this is the public class hierarchy--the implementation of a given class may use private inheritance. Additionally, some classes inherit from public, but undocumented, implementation classes. Undocumented classes are omitted from the hierarchy.

Classes derived by multiple inheritance show their additional base(s) in italics to the right of the class name.

Class Hierarchy

RWBench
RWBitVec
RWBTreeOnDisk
RWCacheManager
RWCollectable
   RWCollection
      RWBag
      RWBinaryTree
      RWBTree
         RWBTreeDictionary
      RWHashTable
         RWSet
            RWFactory
            RWHashDictionary
               RWIdentityDictionary
            RWIdentitySet
      RWSequenceable
         RWDlistCollectables
         RWOrdered
            RWSortedVector
         RWSlistCollectables
            RWSlistCollectablesQueue
            RWSlistCollectablesStack
   RWCollectableAssociation
   RWCollectableDate (&RWDate)
   RWCollectableInt (&RWInteger)
   RWCollectableString (&RWCString)
   RWCollectableTime (&RWTime)
   RWModelClient
RWCRegexp
RWCRExp
RWCString
   RWCollectableString (&RWCollectable)
RWCSubString
RWCTokenizer
RWDate
   RWCollectableDate (&RWCollectable)
RWErrObject
RWFactory
RWFile
   RWFileManager
RWGBitVec(size)
RWGDlist(type)
RWGDlistIterator(type)
RWGOrderedVector(val)
RWGQueue(type)
RWGSlist(type)
RWGSlistIterator(type)
RWGStack(type)
RWGVector(val)
   RWGSortedVector(val)
RWInteger
   RWCollectableInt (&RWCollectable)
RWIterator
   RWBagIterator
   RWBinaryTreeIterator
   RWDlistCollectablesIterator
   RWHashDictionaryIterator
   RWHashTableIterator
      RWSetIterator
   RWOrderedIterator
   RWSlistCollectablesIterator
RWLocale
   RWLocaleSnapshot
RWMessage
RWModel
RWReference
   RWCStringRef
   RWVirtualRef
   RWWStringRef
RWTime
   RWCollectableTime (&RWCollectable)
RWTimer
RWTBitVec<size>
RWTIsvDlist<T>
RWTIsvDlistIterator<TL>
RWTIsvSlist<T>
RWTIsvSlistIterator<TL>
RWTPtrDeque<T>
RWTPtrDlist<T>
RWTPtrDlistIterator<T>
RWTPtrHashMap<Key,Type,Hash,EQ> 
RWTPtrHashMapIterator<Key,Type,Hash,EQ>
RWTPtrHashMultiMap<Key,Type,Hash,EQ>
RWTPtrHashMultiMapIterator<Key,Type,Hash,EQ>
RWTPtrHashMultiSet<T,Hash,EQ>
RWTPtrHashMultiSetIterator<T,Hash,EQ>
RWTPtrHashSet<T,Hash,EQ>
RWTPtrHashSetIterator<T,Hash,EQ>
RWTPtrMap<Key,Type,Compare>
RWTPtrMapIterator<Key,Type,Compare>
RWTPtrMultiMap<Key,Type,Compare>
RWTPtrMultiMapIterator<Key,Type,Compare>
RWTPtrMultiSet<T,Compare>
RWTPtrMultiSetIterator<T,Compare>
RWTPtrOrderedVector<T>
RWTPtrSet<T,Compare>
RWTPtrSetIterator<T,Compare>
RWTPtrSlist<T>
RWTPtrSlistIterator<T>
RWTPtrSlistDictionary<KeyP,ValP> 
RWTPtrSlistDictionaryIterator<KeyP,ValP>
RWTPtrSortedDlist<T,Compare>
RWTPtrSortedDlistIterator<T,Compare>
RWTPtrSortedVector<T,Compare>
RWTPtrVector<T>
RWTQueue<T,Container>
RWTRegularExpression<charT>
RWTStack<T,Container>
RWTValDeque<T>
RWTValDlist<T>
RWTValDlistIterator<T>
RWTValHashMap<Key,Type,Hash,EQ>
RWTValHashMapIterator<Key,Type,Hash,EQ>
RWTValHashMultiMap<Key,Type,Hash,EQ>
RWTValHashMultiMapIterator<Key,Type,Hash,EQ>
RWTValHashMultiSet<T,Hash,EQ>
RWTValHashMultiSetIterator<T,Hash,EQ>
RWTValHashSet<T,Hash,EQ>
RWTValHashSetIterator<T,Hash,EQ>
RWTValMap<Key,Type,Compare>
RWTValMapIterator<Key,Type,Compare>
RWTValMultiMap<Key,Type,Compare>
RWTValMultiMapIterator<Key,Type,Compare>
RWTValMultiSet<T,Compare>
RWTValMultiSetIterator<T,Compare>
RWTValOrderedVector<T>
RWTValSet<T,C>
RWTValSetIterator<T,C>
RWTValSlist<T>
RWTValSlistIterator<T>
RWTValSlistDictionary<Key,V>
RWTValSlistDictionaryIterator<Key,V>
RWTValSortedDlist<T,Compare>
RWTValSortedDlistIterator<T,Compare>
RWTValSortedVector<T>
RWTValVector<T>
RWTValVirtualArray<T>
RWvios
   RWios (virtual)
       RWvistream
         RWbistream  (&ios: virtual)
            RWeistream
          RWpistream
         RWXDRistream  (&RWios)
       RWvostream
         RWbostream  (&ios: virtual)
            RWeostream
          RWpostream
         RWXDRostream  (&RWios)
RWVirtualPageHeap
   RWBufferedPageHeap
      RWDiskPageHeap
RWWString
RWWSubString
RWWTokenizer
RWZone
   RWZoneSimple
streambuf
   RWAuditStreamBuffer
   RWCLIPstreambuf
      RWDDEstreambuf
xmsg
   RWxmsg
      RWExternalErr
         RWFileErr
         RWStreamErr
      RWInternalErr
         RWBoundsErr
      RWxalloc

Class Descriptions