Template and Library function declarations

The include directory defines header files describing the portable library functions available in the C++ tools.

You'll need to look at all the files individually to get a complete picture, but some of the include files are more important than the others:


Defines a wrapper around snprintf that makes it much more C++ like. Less flexible than ftmio::cs, but faster and smaller.


Defines a C++ style print/sprintf replacement for builtin types only. Faster than BOOST::format but more limited.


Defines a faster more C++ like version of sscanf.


Functions and classes associated with file names and file activities provided by the operating system. These functions are designed to work with both Windows and unix file systems and cover most major file system and directory queries as well as a few commonly "helper" routines. See FileName in particular because it is a starting point for many file related calls -- not just string manipulations on file names.


Tools that make writing templates easier because they let you customize the template based on its parameters more effectively. Similar to the boost class traits -- but easier to understand because they are commented.


Defines a general purpose cubic spline template implementation.


Defines routines to access the 'etags' output. That is, the output of the etags program can be read and searched using the class defined in include/cxxtls/etags.


A container with O(1) insert and O(K) deletes (not O(N), but a fixed maximum, K). It also preserves the order of insert so that your tests don't diff every time that you change your program or the hardware it runs on.


A collection of generic hashing routines.


A generic program options processor. A more verbose variant of getops() only designe around C++. Analogous to getopts() but design around C++.


A map of sequences to simple values. Also known as a suffix tree.


A simple interface to regular expression parsing. Uses gnu regex.{c,h}.


A template container designed to store a very long sequence of objects of type T. Most operations are O( LN(N) ) where N is the size() of the container.


A helper template that allows you to easily make ANY class be an output stream.


A log file helper that lets you easily generate indented log files.


string formatting tools.


Defines functions associated with user id's and privileges. This is a trivial wrapper class.


Defines a general purpose text windowing interface library. See also, text_windows


Defines a generic for() statement that knows how to iterate over STL containers. This header could theoretically be as simple as the following:

   iterator a;    
   container &b;

   #define for_every(a,b) \
     for(a = b.begin(), end = b.end(); a != end; ++a)

But the fact is that the implementation of for_every is much more complex because in addition to merely iterating over the container, b, it allows you to use a pointer as a loop variable instead of just an interator or const iterator:

   Member * a;

   for_every(a, b)


Defines a generic to the ftp program. Buggy, experimental.


Defines a few simplistic queries about the OS and host machine that you are running on.

Generated on Wed Feb 29 22:51:48 2012 for CXXUtilities by  doxygen 1.6.3