| ▼NDwm | |
| ►NPthread | |
| CConditionVariable | This class just encapsulates a condition variable (from the pthread library), with default attributes |
| CMutex | This class just encapsulates a pthread_mutex_t (from the pthread library) |
| CQueue | This template provides inter-thread first-in first-out (FIFO) queueing |
| CReadWriteLock | This class is just a simple wrapper around pthread_rwlock* functions from the pthread library |
| CSignal | This class inherits from Dwm::Signal and adds locking and unlocking for threaded programs as well as members to block and unblock a in a particular thread (wrappers for pthread_sigmask()) |
| ►NStringUtils | |
| CBadStringConversion | Simple exception class for StringTo() |
| ►NThread | |
| CConcurrentQueue | Concurrent queue template |
| CQueue | This template provides inter-thread first-in first-out (FIFO) queueing |
| CArgument | Pre-declare the Argument class template |
| CAssertion | Holds assertion information |
| CAssertionCounter | Holds 'passed' and 'failed' counters |
| CAssertions | A container to hold all assertions. Note everything is static here |
| CBZ2IO | This class contains a collection of static functions for reading and writing simple types in network byte order (MSB first) from/to bzip2 files |
| CBZ2Readable | This class is a pure virtual class, defining an interface for classes that can read their contents from a BZFILE pointer |
| CBZ2Writable | This class is a pure virtual class, defining an interface for classes that can write their contents to a BZFILE pointer |
| CCgi | This class encapsulates CGI input |
| CCvsTag | This class can be used to wrap a string containing CVS keyword name/value pairs |
| CDaemonUtils | Tiny collection of utilities for daemon processes |
| ►CDataLog | Simple class template for data logging |
| CEntry | Encapsulates a single data log entry |
| CDateTime | This class just encapsulates a struct tm and some of the typical functionality for dealing with date and time |
| CDescriptor | This class encapsulates UNIX file and socket descriptors |
| CDirectoryEntry | Encapsulates a directory entry (file, directory, FIFO, et. al.) |
| CEngFormat | Class to format numbers in an engineering-type form |
| CExecutor | Provides a simple interface to fork() + execvp() |
| CFileAssertions | A container class to hold all assertions called from a single source file |
| CFileLogger | This class encapsulates syslog-like logging, but uses files instead of the syslog facility |
| CFileRoller | This class can be used to roll over files such as log files |
| CFunctionAssertions | A container class to hold all assertions called from a single function |
| CGroup | Encapsulates an /etc/group entry |
| CGZIO | This class contains a collection of static functions for reading and writing simple types in network byte order (MSB first) from/to gzip files |
| CGZReadable | This class is a pure virtual class, defining an interface for classes that can read their contents from a gzFile |
| CGZWritable | This class is a pure virtual class, defining an interface for classes that can write their contents to a gzFile |
| ►CHostPinger | Encapsulates a 'pinger', which can 'ping' one or more hosts using TCP or ICMP |
| CReceiver | Data callback interface |
| CIO | This class contains a collection of static functions for reading and writing simple types, in network byte order (MSB first) |
| CIpAddress | This class encapsulates an IP address |
| CIpv4Address | This class encapsulates an IPv4 address |
| CIpv4IcmpDestinationUnreachable | Encapsulates an ICMP destination unreachable message |
| CIpv4IcmpEchoReply | Encapsulates an IPv4 ICMP echo reply |
| CIpv4IcmpEchoRequest | Encapsulates an ICMP echo request |
| CIpv4IcmpMessage | Base class for ICMP messages |
| CIpv4IcmpRedirect | Encapsulates an ICMP source quench message |
| CIpv4IcmpSourceQuench | Encapsulates an ICMP source quench message |
| CIpv4IcmpTimeExceeded | Encapsulates an ICMP source quench message |
| CIpv4PacketHeader | Encapsulates an IPv4 packet header |
| CIpv4Prefix | This class encapsulates an IPv4 address and netmask |
| CIpv4Routes | This template class provides an associative container keyed by IPv4 addresses, with longest-match searching |
| CIpv4TcpHeader | Encapsulates a TCP header |
| CIpv4TcpPacket | Encapsulates a TCP packet, including the IP header |
| CIpv4TcpPayload | Encapsulates a TCP payload |
| CIpv4UdpHeader | Encapsulates an IPv4 UDP header |
| CIpv4UdpPacket | Encapsulates a UDP packet, including the IP header |
| CIpv4UdpPayload | Encapsulates a UDP payload |
| CIpv6Address | This class encapsulates an IPv6 address |
| CIpv6Prefix | This class encapsulates an IPv6 network prefix |
| ►CLoadBalancer | A simple load balancer class template which balances work across Worker objects that each run in their own thread |
| CCompareWorkers | Comparison class for workers within the LoadBalancer |
| CWorker | Worker class for LoadBalancer |
| CLocalInterface | Simple class to hold the name and IPv4 address of a local interface |
| CLocalInterfaceAlias | Holds an interface alias, which is just IP address and netmask |
| CMacAddress | Encapsulates a 6-byte MAC address |
| CMplsLabel | Encapsulates an MPLS label |
| CMplsLabelStack | Encapsulates an MPLS label stack |
| COptArg | Encapsulates a command line option and its argument (if it takes an argument) |
| COptArgs | Class to encapsulate command line options and parse them |
| CPacer | This class permits throttling of functions to a max number of repetitions per second |
| CPassword | Encapsulates an /etc/passwd entry |
| CPathUtils | This class just encapsulates miscellaneous utility functions for working with UNIX paths (files and directories) |
| CPatricia | Pre-declare the Patricia class template |
| CPatriciaNode | A node in a Patricia trie |
| CPcap | This is a pcap wrapper/utility class |
| CPingDestination | Common interface for an IPv4 destination we wish to ping with ICMP or TCP |
| CPingDestinationEntry | Holds state information for a destination being pinged |
| CPingSequencesInFlight | Used to cache information about packets whose responses have not yet been received |
| CProcessInfo | Encapsulates information about a single process |
| CReadable | This class defines an interface for classes that can read their contents from an istream, file descriptor or FILE pointer |
| CRegistry | This class encapsulates a simple registry file, which contains lines of the form: key = "value" If value contains quotes, they must be escaped in the registry file |
| CRusage | This class encapsulates struct rusage and getrusage() functionality |
| CSignal | This class encapsulates a signal |
| CSocket | This class abstracts a UNIX socket descriptor |
| CStringConverter | Encapsulates conversion from a string to another type |
| CSvnTag | Trivial class used to fetch an assumed SVN tag name from a repository path (in a Subversion keyword) |
| CSysLogger | This class encapsulates syslog logging in global scope (all members are static) |
| CTermioControlFlags | Encapsulates termios control flags |
| CTermioFlagInfo_t | Holds termios flag values and names |
| CTermioFlags | Base class for input, output, control and local termio flags |
| CTermioInputFlags | Encapsulates termios input flags |
| CTermioLocalFlags | Encapsulates termios local flags |
| CTermioOutputFlags | Encapsulates termios output flags |
| CTermios | Encapsulates a struct termios |
| CTimeInterval | This class encapsulates a time interval |
| CTimeInterval64 | This class encapsulates a time interval |
| CTimeUtil | This class is just a collection of time utility functions |
| CTimeValue | This class encapsulates a time value beyond the UNIX epoch, with microsecond granularity |
| CTimeValue64 | This class encapsulates a time value beyond the UNIX epoch, with microsecond granularity |
| CValueRange | This template encapsulates a range of values (low, high) |
| CWritable | This class defines an interface for classes that can write their contents to an ostream, file descriptor or FILE pointer |