+// $Id$
+//
+// Copyright (C) 2007
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
+// Stefan Bund <g0dil@berlios.de>
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the
+// Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
namespace senf {
/** \mainpage The SENF Utilities Library
- The Utilities Library is a collection of independent
- utilities. We have
- <dl>
+ The Utilities Library is a collection of independent utilities.
+
+
+ \section basic_helpers C++ Language helpers and library extensions
+
+ <table class="listing">
+ <tr><td>\ref membind</td><td>a simple <a
+ href="http://www.boost.org/libs/bind/bind.html">Boost.Bind</a> extension</td></tr>
+
+ <tr><td>\ref senfmpl</td><td>Some simple tools which help to solve common meta-programming
+ tasks</td></tr>
+
+ <tr><td>\ref senfpp</td><td>Extensions to the <a
+ href="http://www.boost.org/doc/libs/1_33_1/libs/preprocessor/doc/index.html">Boost.Preprocessor</a>
+ library</td></tr>
+
+ <tr><td>\ref typetraits</td><td>Extensions to the <a
+ href="http://www.boost.org/doc/libs/1_33_1/doc/html/boost_typetraits.html">Boost.TypeTraits</a>
+ library</td></tr>
+
+ <tr><td>\ref boost_parameter</td><td>Utilities concerning the <a
+ href="http://www.boost.org/doc/libs/1_33_1/libs/parameter/doc/html/index.html">Boost.Parameter</a>
+ library</td></tr>
+
+ <tr><td>\ref phoenix_helpers</td><td>Phoenix functors</td></tr>
+ </table>
+
+
+ \section basic_mixins Mixin classes
+
+ <table class="listing">
+ <tr><td>\ref intrusive_refcount</td><td>mixin to simplify writing classes for use with <a
+ href="http://www.boost.org/libs/smart_ptr/intrusive_ptr.html">boost::intrusive_ptr</a></td></tr>
+
+ <tr><td>\ref safe_bool</td><td>a mixin class to provide a really safe replacement for
+ <tt>operator bool</tt>
+
+ <tr><td>\ref singleton</td><td>mixin to make a class a singleton</td></tr>
+ </table>
+
+
+ \section memory_management Memory Management
- <dt>SystemException</dt><dd>standard exception for system errors
- (errno)</dd>
+ <table class="listing">
+ <tr><td>\ref SENF_SCOPED_BUFFER</td><td>a portable way to efficiently allocate temporary
+ buffers</td></tr>
- <dt>\ref time</dt><dd>Very rudimentary microsecond time
- support</dd>
+ <tr><td>\ref pool_alloc_mixin</td><td>mixin to provide pool allocation to a class</td></tr>
- <dt>\ref process</dt><dd>Some simple process management and daemon
- helpers<?dd>
+ <tr><td>\ref contiguous_storage_iterator</td><td>traits class to check iterator type for raw
+ pointer accessibility</td></tr>
+ </table>
+
+
+ \section typeinfo C++ Type interface
+
+ <table class="listing">
+ <tr><td>\ref prettyName()</td><td>an interface to the C++ demangler of g++ to get formated type
+ names from typeinfo objects</td></tr>
+
+ <tr><td>\ref TypeIdValue</td><td>class wrapping a typeid in a way that it can be used like any
+ other value type, e.g. as the key in a map.</td></tr>
+ </table>
+
+
+ \section miscstuff Miscellaneous
+
+ <table class="listing">
+ <tr><td>\ref exception</td><td>standard exception for system errors (errno)</td></tr>
+
+ <tr><td>\ref hexdump</td><td>a simple but usefull function to write binary data in in
+ hexadecimal format.</td></tr>
+
+ <tr><td>\ref IpChecksum</td><td>calculating the 16 bit checksum used in the IP
+ specification</td></tr>
+
+ <tr><td>\ref utils_tags</td><td>Miscellaneous type tags</td></tr>
+
+ <tr><td>stringJoin()</td><td>Utility to join a string range into
+ a single string (with separator)</td><?tr>
- <dt>\ref membind</dt><dd>a simple <a
- href="http://www.boost.org/libs/bind/bind.html">Boost.Bind</a>
- extension</dd>
+ <tr><td>make_transform_range()</td><td>\c boost::make_transform_iterator() with support for
+ ranges</td></tr>
+
+ <tr><td>\ref backtraces</td><td>Utilities to parse and format backtrace information as provided
+ by the GNU libc</td></tr>
- <dt>intrusive_refcount</dt><dd>mixin to simplify writing classes for
- use with <a
- href="http://www.boost.org/libs/smart_ptr/intrusive_ptr.html">boost::intrusive_ptr</a></dd>
+ <tr><td>signalName()</td><td>convert signal number to string representation</td></tr>
+ </table>
- <dt>SafeBool</dt><dd>a mixin class to provide a really safe
- replacement for <tt>operator bool</tt></dd>
- <dt>prettyName()</dt><dd>an interface to the C++ demangler of g++
- to get formated type names from typeinfo objects</dd>
+ \section testing Correctness and testing
- </dl>
+ <table class="listing">
+ <tr><td>\ref auto_unit_test.hh</td><td>Boost auto unit test compatibility across Boost versions
+ 1.33 and 1.34</td></tr>
+
+ <tr><td>\ref SENF_ASSERT()</td><td>SENF specific assertion macro</td></tr>
+
+ <tr><td>\ref unittest</td><td>Additional unit test extension for Boost.Test</td></tr>
+ </table>
*/
}
\f
// Local Variables:
// mode: c++
-// mode: flyspell
-// mode: auto-fill
+// fill-column: 100
+// c-file-style: "senf"
+// indent-tabs-mode: nil
// ispell-local-dictionary: "american"
+// mode: auto-fill
// End: