Available C++ Libraries FAQ

Libraries available to download (Q-Z)

qDecoder - qDecoder is a development kit for C/C++ network programming

qDecoder is a development kit for C/C++ network programming includes CGI/FastCGI supports. For the use of C/C++ CGI programming, the query-fetch algorithm based on the linked-list provides transparency with low layers by the simple library interface regardless of COOKIE/GET/POST(including File Upload). Thus, it enables the web based software to be more intuitively designed and implemented.

Operating Systems

  • Linux
  • FreeBSD
  • FreeBSD, Darwin

Compilers

  • Visual C++
  • GCC

Added : 2009-09-04 Amended: 2009-09-04 Licensing : Non commercial

    qDecoder - qDecoder is a development kit for C/C++ network programming
  • qDecoder Homepage
  • Submitted by:Kizza George Mbidde
Add a comment

Qt - Qt - A cross-platform application and UI framework.

Develop applications and user interfaces once, and deploy them across Windows, Mac, Linux/X11, embedded Linux, Windows CE and S60 (coming soon) without rewriting the source code. Qt allows open source and commercial software developers to code less, create more and deploy everywhere. Qt enables developers to build innovative applications and user interfaces once and then extend the innovation across all major desktop, consumer electronic and other embedded platforms without rewriting the code. Qt has an LGPL/Free version.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • X Windows
  • PC Windows
  • Mac
  • FreeBSD

Compilers

  • GCC
  • Any Unix C++ compiler
  • Any standard C++ compiler

Added : 2009-09-02 Amended: 2009-09-02 Licensing : Open Source

    Qt - Qt - A cross-platform application and UI framework.
  • Qt Homepage
  • Submitted by:Kizza George Mbidde
Add a comment

Quercus Robusta - C++ application framework.

Quercus Robusta is re-usable opensource C++ application framework. It supports refcounting GC, flexible polymorphic containers, portable multithreading, GUI (over X11, Win32 API and curses), parsers and persistence.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Sparc
  • Sun
  • Solaris
  • Unix
  • X Windows
  • PC Windows

Compilers

  • Visual C++
  • GCC
  • Sun CC
  • Borland C++
  • Sparcworks

Added : 2000-09-22 Amended: 2000-09-22 Licensing : GNU copyleft

Add a comment

QxOrm - QxOrm - C++ Object Relational Mapping (ORM) library

QxOrm is a C++ library designed to provide Object Relational Mapping (ORM) feature to C++/Qt users (like Hibernate in Java, or NHibernate in .Net).

QxOrm engine is based on a simple and non intrusive mapping function by class to provide :

  • Persistence (based on QtSql)
  • Serialization (XML and binary, based on boost serialization)
  • Reflection or introspection (invoke class methods and access to properties)
QxOrm is developed by Lionel Marty, a software development engineer since 2003.

For more information about QxOrm library, please visit the web site.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • PC
  • Unix
  • PC Windows
  • Mac

Compilers

  • Visual C++
  • GCC

Added : 2011-09-26 Amended: 2011-09-26 Licensing : Open Source

    QxOrm - QxOrm - C++ Object Relational Mapping (ORM) library
  • QxOrm website
  • Submitted by:QxOrm
Add a comment

Radix-2 - Fast Fourier Transform

Radix-2 DFT of a real or complex sequence, or sin/cos/complex Fourier integral of an evenly tabulated function.

The input can be either real or complex with/without zero padding, the full complex transform or only real/im/abs_value part of it can be obtained.

Test drivers and test run outputs are included, too. Commented.

Needs LinAlg.shar, v3.2

Operating Systems

  • Unix
  • Mac

Compilers

  • GCC
  • MetroWerks CodeWarrior

Added : 1995-01-01 Amended: 2008-11-04 Licensing : Not known

Add a comment

Range - C++ class for range arithmetic.

Associated with article in TOMS, Dec 1992 title "Precise computation using range arithmetic, via C++".

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

RapidXml - RapidXml is an attempt to create the fastest XML parser possible.

RapidXml is an attempt to create the fastest XML DOM parser possible, while retaining useability, portability and reasonable W3C compatibility. It is an in-situ parser written in C++, with parsing speed approaching that of strlen() function executed on the same data.

Entire parser is contained in a single header file, so no building or linking is neccesary. To use it you just need to copy rapidxml.hpp file to a convenient place (such as your project directory), and include it where needed. You may also want to use printing functions contained in header rapidxml_print.hpp.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Compiler independent

Added : 2010-11-09 Amended: 2010-11-09 Licensing : Boost

Add a comment

Reason - Reason is a C++ cross platform framework

Reason is a cross platform framework designed to bring the ease of use of Java, .Net, or Python to developers who require the performance and strength of C++. It is ideally suited to developing web services, enterprise applications, and internet technologies. Reason contains many features missing in other C++ libraries such as xml, xpath, regular expressions, threads, sockets, http, sql, times and dates, streams, encoding and decoding, files and folders, compression, and much more.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Any standard C++ compiler

Added : 2009-09-03 Amended: 2009-09-03 Licensing : Open Source

Add a comment

recls - Platform-independent, multi-language, recursive search library

recls - standing for recursive ls - is a platform-independent recursive search library, written in C and C++, and presenting a C API.

The library also includes mappings to several languages and technologies, including C++ (simple wrapper classes), C++ (STL), C#, COM (IEnumXXXX), COM (Automation collections), D, Java, Managed C++, Perl, Python and Ruby

The library is the exemplar for Matthew Wilson's Positive Integration column in C/C++ User's Journal, in which he takes the reader through the process of mapping C/C++ libraries to a host of target languages and technologies.

Supplied as source, not binary, including makefiles and IDDE project files

Operating Systems

  • Linux
  • Unix
  • PC Windows

Compilers

  • Visual C++
  • GCC
  • MetroWerks CodeWarrior
  • Borland C++
  • Intel C++
  • Comeau
  • Digital Mars

Added : 2003-11-06 Amended: 2008-06-26 Licensing : Public Domain

Add a comment

refcnt - Reference Counting for C++

Reference counting for C++. Freeware. Uploaded by the author.

Added : 1999-10-14 Amended: 1999-10-14 Licensing : Freeware

Add a comment

Regex++ - C++ template regular expression library

A regular expression library for C++ which handles both char and wchar_t types. Template search/match/grep functions allow for the searching of any bi-directional iterator type, making seemless searches of non-contiguous data possible. Customised traits classes allow for localisation and almost endless customisation if required. The library is freely available, and comes with full documentation + demo applications + regression tester.

Should work with any compiler supporting templates, on any operating system.

Operating Systems

  • PC DOS
  • PC Windows

Compilers

  • Visual C++
  • Borland C++

Added : 1998-12-03 Amended: 1998-12-03 Licensing : Public Domain

Comment from : broken link on 2010-01-16

broken link

Comment from : Nikki Locke on 2010-01-18

Suggest you use the Boost library instead.

Add a comment


Restbed - Asynchronous RESTful Framework

The Restbed framework brings asynchronous RESTful functionality to C++11 applications. Restbed is looking to address compliance with all of the HTTP specifications past, present and feature.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Compiler independent

Added : 2015-10-26 Amended: 2015-10-26 Licensing : GNU copyleft

Add a comment

Rhapsodia.Scheduler - Concurrency Support Library

Rhapsodia.Scheduler library provides minimal and hopefully complete versions of classes commonly used in concurrent C++ programming. The library code consists of concepts that have been successfully used in production systems and follows well established concurrency design patterns and language idioms. Most of all, the emphasis has been on code that will work well with the C++ Standard Library and the Boost library.

Library is hosted at SourceForge.net

Operating Systems

  • PC DOS
  • Linux
  • PC 32-bit Windows
  • Unix
  • PC Windows

Compilers

  • Visual C++
  • GCC

Added : 2004-01-16 Amended: 2004-01-16 Licensing : Public Domain

Add a comment

RTTI implementation

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

RTTI library

Till RTTI becomes a part of regular compilers these RTTI libraries provide an excellent tool for the same purpose.

The library is claimed to be portable. No licence restrictions.

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Public Domain

Add a comment

RudeServer - Open Source C++ CGI Library

Rude promotes Open Source C++ CGI development, by providing the following core libraries: RudeCGI™ Open Source C++ CGI Library RudeDatabase™ Open Source C++ Database Library RudeSocket™ Open Source C++ Socket Library RudeConfig™ Open Source C++ Config File Library C++ Session Library

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Any standard C++ compiler

Added : 2009-09-03 Amended: 2009-09-03 Licensing : Open Source

    RudeServer - Open Source C++ CGI Library
  • Rude Homapage
  • Submitted by:Kizza George Mbidde
Add a comment

Rudiments - C++ class library

Rudiments is an Open Source C++ class library providing base classes for things such as daemons, clients and servers, and wrapper classes for the standard C functions for things like regular expressions, semaphores, and signal handling.

Operating Systems

  • Platform-independent

Compilers

  • Compiler independent

Added : 2013-11-07 Amended: 2013-11-07 Licensing : Open Source

Add a comment

SA - Library for simulated annealing

Thanks to Tarjei Knapstad for updated FTP site information.

Added : 1995-01-01 Amended: 1999-08-10 Licensing : Not known

Add a comment

SCEW - Simple C Expat Wrapper

The aim of SCEW is to provide an easy interface around the XML Expat parser, as well as a simple interface for creating new XML documents. It provides functions to load and access XML elements without the need to create Expat event handling routines every time you want to load a new XML document.

These are the main SCEW features:

  • Uses a DOM-like object model for new or parsed XML documents.
  • Supports loading concatenated XML documents.
  • Can copy and compare full XML documents, elements or attributes.
  • Writes XML documents to multiple outputs.
  • Allows adding new I/O sources easily.
  • UTF-8, ISO-8859-1 and US-ASCII encodings (and UTF-16 in Windows).

Operating Systems

  • could run on any OS, but not tested

Compilers

  • could be compiled, but not tested

Added : 2011-06-15 Amended: 2011-06-15 Licensing : GNU copyleft

Add a comment

Schifra C++ Reed-Solomon Library - Schifra C++ Reed-Solomon Library

Schifra is a very robust, highly optimized and extremely configurable Reed-Solomon error correcting code library implemented in C++. Schifra supports standard, shortened and punctured Reed-Solomon codes. It also has support for stacked product codes and interleaving.

url: http://www.schifra.com

Operating Systems

  • PC DOS
  • PC 32-bit Windows
  • SGI Irix
  • Sun
  • IBM AIX
  • Solaris
  • HP UX
  • Unix
  • Mac

Compilers

  • Visual C++
  • GCC
  • Borland C++
  • HP C++
  • Intel C++

Added : 2006-11-06 Amended: 2006-11-06 Licensing : GNU copyleft

Add a comment

script - C++ interpreted language

This a set of C++ classes which create a new interpreted language which is freely inspired from "C" and HP RPL (that's calculators).

This scripting language is freely inspired by the C-language syntax and HP's RPL in the way of manipulating variables : - There are no variable declaration, but the first use of a new variable name must be a write (no read allowed on a undefined name). You can considere that the declaration is included in this first write. I find this way to do the declaration good to avoid use of uninitialised variable. - Control structures must have the prefix #. This language syntax isn't very beautiful but I found it cleared the code. - Functions exists through file separation : one file, one function. The behavior is the same as Matlab .M files. - A variable isn't type constant. This allows a variable name to change of type. Actually, 5 types can be used, but the structure of the program allows an easy add of new types : integer, strings, real, array and list.

The full source is provided and some examples of scripts.

Operating Systems

  • PC 32-bit Windows
  • PC Windows

Compilers

  • Visual C++
  • Watcom C++

Added : 1999-06-21 Amended: 1999-06-21 Licensing : Public Domain

Add a comment

Sdeint

A Runge-Kutta like class for integrating systems of Stochastic Differential Equations.

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

SDL - Simple DirectMedia Layer

Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. It is used by MPEG playback software, emulators, and many popular games, including the award winning Linux port of "Civilization: Call To Power."

SDL is written in C, but works with C++ natively, and has bindings to several other languages, including Ada, Eiffel, Java, Lua, ML, Perl, PHP, Pike, Python, and Ruby.

Operating Systems

  • Linux
  • IBM AIX
  • Solaris
  • PC Windows
  • Mac
  • FreeBSD

Added : 2004-06-22 Amended: 2004-06-22 Licensing : GNU copyleft

Add a comment

SeqAn - Efficient algorithms and data structures for (biological) sequence analyses.

SeqAn is an open source C++ library of efficient algorithms and data structures for the analysis of sequences with the focus on biological data. The library applies a unique generic design that guarantees high performance, generality, extensibility, and integration with other libraries. SeqAn is easy to use and simplifies the development of new software tools with a minimal loss of performance.

Operating Systems

  • Linux
  • PC Windows
  • Mac

Compilers

  • Visual C++
  • GCC

Added : 2014-03-28 Amended: 2014-03-28 Licensing : BSD style

Add a comment

SESAME - Neural net software ?

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

Shift-Right Open Repository - C++ Class Library and Reusable Build Environment

The Shift-Right Open Repository is a complete development environment for C/C++ programmers. The main focus of the Repository is on reusable code. Another characteristic of the Repository is that the majority of the code was developed for embedded software development. And as such, was designed to meet the constrained environment of embedded programming. The most obvious characteristics are the obsession with deterministic memory management and strict type checking.

The C++ library contains a large range of functionality and interfaces such as: threading, inter-thread communications, streamio, socketio, parsing, multi-threaded database support, strings, containers, etc. The Repository also contains reusable build environment

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Unix
  • eCos

Compilers

  • Visual C++
  • GCC

Added : 2002-03-08 Amended: 2002-03-08 Licensing : Copyrighted freeware

Add a comment

shwild - Shell Compatible Wildcard Matching

shwild is a simple, platform-independent library for shell-compatible wildcard matching. It is implemented in C/C++, expressing a C-API, with a C++ wrapper.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Unix
  • Mac

Compilers

  • Visual C++
  • GCC
  • MetroWerks CodeWarrior
  • Borland C++
  • Watcom C++
  • Intel C++
  • Comeau
  • Digital Mars

Added : 2006-05-15 Amended: 2008-06-26 Licensing : Public Domain

Add a comment

simC - C/C++ function library for discrete simulation

SimC is a function library for C/C++, providing support facilities for discrete and combined discrete-continuous simulation including set operations and data collection.

Operating Systems

  • PC

Added : 1996-03-19 Amended: 1996-03-19 Licensing : Shareware

Add a comment

SIMEX - Helps develop discrete-event simulation models

Provides classes that help a user develop discrete-event simulation models, with an emphasis on epidemiology and biology.

Classes for random number generation, event and process management, user interface (commandline arguments, TTY, or Tcl/TK), aggregate statistics, basic data structures (list, strings, weighted ordered sets). Many examples.

Operating Systems

  • Sun

Compilers

  • GCC

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Copyrighted freeware

Add a comment

Simpack - Tools for writing simulations with a EECS bias

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

SMTP/POP3 - SMTP/POP3 Email Engine for C/C++

SMTP/POP3 Email Engine for C/C++ v3.1. Win16 and Win32 DLLs. Email from your C/C++ application. Simple API allows sending & receiving email, including MIME attachments. Knowledge of Winsock and TCP/IP is not needed. Includes multiple C/C++ examples.

Operating Systems

  • PC Windows

Compilers

  • Visual C++

Added : 1999-06-04 Amended: 2011-02-21 Licensing : Shareware

Add a comment

SMURPH - A C++ library which could be useful for building a network simulator

It comes with extensive documentation and examples.

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

SObjectizer - It's all about in-process message dispatching!

SObjectizer is a small tool for simplification of development of concurrent and event-driven applications in C++. It was used for projects of various sizes: from very small utilities to large distributed and highly loaded applications.

SObjectizer is strongly influenced by agent-oriented approach. It allows to build a concurrent application as a set of agent-objects which interact with each other only by means of asynchronous messages. SObjectizer takes responsibility of in-process message dispatching and providing working context for message processing. And allows to tune those things by supplying various ready-to-use dispatchers just out-of-box.

Operating Systems

  • Linux
  • PC Windows
  • FreeBSD
  • FreeBSD, Darwin

Compilers

  • Any standard C++ compiler

Added : 2015-10-26 Amended: 2015-10-26 Licensing : BSD style

Add a comment

SOCI - Simple library for embedding SQL in C++

SOCI is a database access library for C++ that makes the illusion of embedding SQL queries in the regular C++ code, staying entirely within the Standard C++.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Unix

Compilers

  • Visual C++
  • GCC

Added : 2004-09-29 Amended: 2008-07-29 Licensing : Copyrighted freeware

Add a comment

SOCI - The C++ Database Access Library. - SOCI is a database access library for C++.

SOCI is a database access library for C++ that makes the illusion of embedding SQL queries in the regular C++ code, staying entirely within the Standard C++. The idea is to provide C++ programmers a way to access SQL databases in the most natural and intuitive way. If you find existing libraries too difficult for your needs or just distracting, SOCI can be a good alternative.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Any standard C++ compiler

Added : 2009-09-03 Amended: 2009-09-03 Licensing : Boost

    SOCI - The C++ Database Access Library. - SOCI is a database access library for C++.
  • SOCI Homepage
  • Submitted by:Kizza George Mbidde
Add a comment

SOCKET++ - C++ iostream like library for sockets and pipes

The code was oringially developed by Gnanasekaran (Sekar) Swaminathan (gs4t@virginia.edu), at the Department of Electrical Engineering at the University of Virginia, a few years ago. The master repository was ftp://ftp.virginia.edu/pub.

Version 1.10 does not include C++ exception handling, and it therefore "more portable".

Version 1.11 has a number of changes that make it less portable. I recommend that you use version 1.10 unless you want to try out using exception handling, then you can try using version 1.11. If you use version 1.11, then you will need to catch exceptions in your mail client.

Operating Systems

  • IBM AIX
  • Solaris
  • PC Windows
  • Dec OSF/1

Compilers

  • GCC
  • Sun CC
  • IBM xlC
  • CygWin

Added : 1995-01-01 Amended: 2008-07-29 Licensing : Not known

Add a comment

SocketMan - C++ Socket Library

Portable, robust, and easy-to-use socket library for implementing client-server and multicast communication models.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • SGI Irix
  • Sun
  • HP UX
  • Dec Alpha
  • Dec Ultrix

Compilers

  • Visual C++
  • GCC
  • Dec CC
  • SGI CC
  • Cfront

Added : 1998-12-03 Amended: 1998-12-03 Licensing : GNU copyleft

Add a comment

SOL++2000 Class Library - User interface construction toolkit for Microsoft Windows

This is a completely free C++ class library for Microsoft Windows. All source files of the library and a lot of sample programs are also available. One of the striking features of SOL++2000 is the simplicity of handling of Windows events.

Operating Systems

  • PC 32-bit Windows

Compilers

  • Visual C++

Added : 1999-08-26 Amended: 1999-08-27 Licensing : Public Domain

Add a comment

SPLASH - Small Perl-like List And String Handling class library

SPLASH is a c++ class library that implements many of the Perl constructs and data types, including extensive regex regular expression pattern matching.

For those not familiar with Perl, it is an excellent scripting language by Larry Wall and is available for most platforms.

This Class library provides List, String, Regular Expression, and text manipulation handling capabilities based on those provided in Perl.

File names are splashxxx.tar.gz or splashxxx.zip where xxx is the version number, currently 192 (for version 1.92)

Operating Systems

  • PC DOS
  • Unix

Added : 1995-01-01 Amended: 1998-12-03 Licensing : Public Domain

Add a comment

stdlib - UTF8 console i/o in Windows, other crucial stdlib fixes, functional area headers

stdlib is a pure header library that provides
  • fixes for some standard library issues, including that <stdlib/console_io.hpp> makes Windows console i/o work for international text such as Norwegian (more precisely the Basic Multilingual Plane of Unicode is supported for the iostreams objects such as cout), with narrow text encoded as UTF-8;
  • C++ library header wrappers for all C++ standard library headers, e.g. you can just include <stdlib/iostream.hpp> where you want the <iostream> header with the Windows console i/o fix, plus some;
  • C library header wrappers, e.g. <stdlib/math.hpp> which for maximal portability includes both <cmath> and <math.h> for you, and ditto for the other C library headers;
  • functional area headers for the C++ standard library, e.g. just include <stdlib/io.hpp> to get all the C++ iostreams headers plus the C standard library’s i/o headers, more precisely all headers in this category mentioned in the header overview at cppreference.com; and
  • extensions such as <stdlib/byte_to_wide_converter.hpp>, which provides the class that’s used for narrow and wide encoding conversion in the Windows console i/o fix. Most of the extensions are part of the library implementation anyway, so they’re provided in a reusable form in the public interface. Those that are not directly used in the current library code, are provided for completeness.
Other fixes & nice-to-haves include
  • support for de facto standard <math.h> constants such as M_PI;
  • support for the C++ standard’s alternative keywords such as and, or and not, in Visual C++;
  • random seed for C++11 random number generation with g++;
  • support for output of something that converts implicitly to wchar const*, on a wide stream, corresponding to how something that converts implicitly to char const* can be output an a narrow stream;
  • setting the default locale in C and C++ to the user’s native locale, which makes the wide iostreams work for international text in *nix-land;
  • setting UTF-8 as the basic execution character set (i.e. for narrow literals) in Visual C++; and just because it’s nice to have in a portable way,
  • support for ANSI escape sequences, e.g. to produce colored console text or move the text cursor on the screen, in Windows 10 and later.

Operating Systems

  • Cross platform, should work on any.

Compilers

  • Visual C++
  • GCC
  • Any standard C++ compiler

Added : 2017-06-20 Amended: 2017-06-21 Licensing : Boost

Add a comment

STLSoft - Robust, Lightweight, Cross-platform, Template Software

STLSoft provides freely available STL-like extensions, including STL-style wrappers for common operating system and framework APIs (such as Windows, Unix, COM, MFC, ATL).

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Unix

Compilers

  • Visual C++
  • GCC
  • MetroWerks CodeWarrior
  • Borland C++
  • Watcom C++
  • Intel C++
  • Comeau
  • Digital Mars

Added : 2003-08-08 Amended: 2008-06-26 Licensing : Public Domain

Add a comment

STXXL - Standard Template Library for Extra Large Data Sets

The core of STXXL is an implementation of the C++ standard template library STL for external memory (out-of-core) computations, i.e., STXXL implements containers and algorithms that can process huge volumes of data that only fit on disks. While the closeness to the STL supports ease of use and compatibility with existing applications, another design priority is high performance.

The key features of STXXL are:

  • Transparent support of parallel disks. The library provides implementations of basic parallel disk algorithms. STXXL is the only external memory algorithm library supporting parallel disks.
  • The library is able to handle problems of very large size (tested to up to dozens of terabytes).
  • Improved utilization of computer resources. STXXL implementations of external memory algorithms and data structures benefit from overlapping of I/O and computation.
  • Small constant factors in I/O volume. A unique library feature called "pipelining" can save more than half the number of I/Os in many applications.
  • Shorter development times due to well known STL-compatible interfaces for external memory algorithms and data structures.
  • STL algorithms can be directly applied to STXXL containers; moreover, the I/O complexity of the algorithms remains optimal in most of the cases.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Mac
  • FreeBSD

Compilers

  • Visual C++
  • GCC

Added : 2010-11-16 Amended: 2010-11-16 Licensing : Boost

Add a comment

SV_Lib - Class library for speech recognition and speaker verification

Currently, there are more than 20 classes in this library, including commonly used feature extraction algorithms and modeling techniques for speech recognition and speaker verification.

The following highlights the main features of this library:

  1. Modeling
    • Continuous density HMM,
    • Discrete density HMM,
    • Gaussian Mixture Model (GMM),
    • Vector Quantization model (VQ),
    • Multivariate Gaussian model,
    • Dynamic Time Wrapping (DTW),
  2. Feature extraction
    • Mel-scaled FFT based cepstrum (MFCC),
    • LPC based cepstrum (LPCC),
    • Dynamic features (delta cepstrum),
    • Pitch extractor,
  3. Speech Input
    • Read raw speech data (16-bit PCM, 8-bit ULAW),
    • Read data with SPHERE header (NIST format) (both compressed and uncompressed),
  4. Auxiliary Classes
    • Fourier transforms (FFT/IFFT),
    • Discrete cosine transform (DCT/IDCT),
    • LPC analysis,
    • Design FIR filter (lowpass, highpass, bandpass, bandstop),
    • Matrix (Inverse, Determinant, Eigen, SVD),
    • Waveform generator (noise, modulated tone, sawtooth etc.),
    • Window functions (hamming, hanning, triangle, blackman, etc.)
    • Function operation (root, minimum, numerical integration).

Operating Systems

  • PC 32-bit Windows
  • Solaris

Compilers

  • Visual C++
  • GCC

Added : 1999-06-15 Amended: 2008-07-29 Licensing : Freeware

Add a comment

SXP - Simple XML Persistence

very lightweight, adding support for serialization of simple data members is done with 4 lines of source per member, support for numeric/string/Unicode string simple data members is built-it, easily extended for more datatypes

Compilers

  • Visual C++
  • MetroWerks CodeWarrior

Added : 2000-04-26 Amended: 2000-05-03 Licensing : Artistic License

Add a comment

td.lib - C/C++ Programmers time, date, and cal lib (adtd)

td.lib v2 is a small time and date library for C/C++ programmers. It contains practical time and date functions that overcome the limitations of the ANSI standard functions that ship with Borland, and Microsoft C++ compilers. Unlike the standard functions, td.lib allows the programmer to perform a variety of calculations using dates and times from Jan. 1, 1 A.D. to Dec. 31, 32766 and the ability to format and print the output of such calculations using ANSI format specifiers. Designed with the beginning programmer in mind, td.lib is easy to use and simplifies the process of coding time/date routines. The library is fully ANSI compliant and can be used with any standard C/C++ compiler. The source is freely available (mail the author).

Special requirements: IBM compatible 386 PC.

Operating Systems

  • PC DOS

Added : 1997-03-19 Amended: 1997-03-27 Licensing : Copyrighted freeware

Add a comment

TdhListsAPI - TdhListsAPI provides fast, flexible dynamic data storage for C++ programs

The purpose of TdhListsAPI is to provide fast, flexible dynamic data storage for C++ programs, including:
  • Queues and Stacks
  • Sorted lists
  • Indexed lists (b-trees)
  • Circular Stacks and AutoKey lists
  • Multi Head lists
  • List Notifications
  • List Managers
  • Managed relationships between lists
The purpose of TdhEditAPI is to provide an editor for TdhLists.

The download includes:

  • User's manuals for TdhListsAPI and TdhEditAPI
  • Demonstration source code for TdhLists and TdhEdit with all required header files and libraries
  • executable libraries for MS Win and Linux

Operating Systems

  • Linux
  • PC Windows

Compilers

  • Visual C++
  • GCC
  • Any standard C++ compiler

Added : 2016-07-13 Amended: 2016-07-13 Licensing : Freeware

    TdhListsAPI - TdhListsAPI provides fast, flexible dynamic data storage for C++ programs
  • product description and download
  • Author://www.linkedin.com/pub/tim-hirrel/15/1a5/970
  • Submitted by:Tim Hirrel
Add a comment

Texas Persistant Store

Texas is a free persistent store that can be used with standard C++ compilers, and works efficiently with very little modification to most C++ programs. It runs on several varieties of UNIX and should be very easy to port to most modern operating systems, such as OS/2, Windows NT, Mach, Windows 4.0, etc. (If things we hear are correct, Linux will provide the necessary virtual memory features soon, too, and Texas will be ported about fifteen minutes later. :-)

Texas uses "pointer swizzling at page fault time", an address translation techique that converts pointers from an abstract format to actual virtual memory addresses when pages are first touched and brought into memory. (A similar technique, invented independently, is used in the market-leading persistent store/OODB, ObjectStore from Object Design Inc.) This allows Texas to be highly portable, avoiding any assumptions about where a page of data will be an a process' virtual memory address space; it can also support very large addresses spaces efficiently on stock 32-bit hardware. (It could also be used to efficiently provide shared address spaces across networked heterogenous machines with different hardware address sizes, e.g., across 32- and 64-bit machines.)

Operating Systems

  • Unix

Added : 1995-01-01 Amended: 2008-07-29 Licensing : GNU copyleft

Add a comment

Thrust - Thrust is a parallel algorithms library which resembles the C++ STL

Thrust is a parallel algorithms library which resembles the C++ Standard Template Library (STL). Thrust's high-level interface greatly enhances programmer productivity while enabling performance portability between GPUs and multicore CPUs. Interoperability with established technologies (such as CUDA, TBB, and OpenMP) facilitates integration with existing software. Develop high-performance applications rapidly with Thrust!

When using CUDA backend, Thrust requires nvcc (NVIDIA (R) Cuda compiler driver).

The library is under Apache License 2.0.

Operating Systems

  • Linux
  • PC Windows
  • Mac

Compilers

  • Any standard C++ compiler

Added : 2014-09-29 Amended: 2014-09-29 Licensing : Open Source

Add a comment

TOLKIEN - TOoLKIt for gENetics based applications

The tool contains objects for both GA and classifier system applications. It's in some kind of alpha-status.

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

TSR100JE.ZIP - TSR class library

DOS PC/Borland C++ specific.

Operating Systems

  • PC DOS

Compilers

  • Borland C++

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

tvmet - A Tiny Vector Matrix library using Expression and Meta Templates.

This Tiny Vector and Matrix template library uses Meta and Expression Templates to evaluate results at compile time, thus making it fast for low-end systems. Temporaries are avoided because of this. The dimensions are static and bounded at compile time.

More generaly this can be a replacement/extension to blitz++ tiny matrix and tiny vector classes (If you know it from blitz++ probably you will have no problems on using it).

Operating Systems

  • Linux
  • Unix

Compilers

  • GCC
  • Intel C++

Added : 2003-11-04 Amended: 2003-11-05 Licensing : GNU copyleft

Add a comment

Types 1.0

Types is a Shareware library used to support the creation of reusable software components in C++.

Full source code and documentation and examples are included.

Types provides:Garbage Collector,recursive data estructures,encode and decode of polymorfic objects,encode and decoding to and from files or memory using external or local data representation, exceptions,...

Types also include some classes implemented using types a double linked list, stack, btree, storage class, string and others.

You can use and XDR representation for encode and decode objects this feature enable your data to be ported to other plataforms.

Operating Systems

  • PC

Compilers

  • Borland C++

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Shareware

Add a comment

Unibase Framework - toolkit designed to simplify network programming

The UniBase Framework is a platform-independent toolkit designed to simplify network programming. You use standard iostream-derived communication streams with standard io operators, instead of messy connect() and listen() calls. You can leverage on ALL the code you already have using standard fstreams and iostreams with little or no modification and make your program NETWORKED today!

Unix versions due soon.

Free for any purpose, with little requirements (see details at the downloading home page listed below).

Operating Systems

  • PC Windows

Compilers

  • Visual C++

Added : 1996-02-05 Amended: 1996-02-05 Licensing : Copyrighted freeware

Add a comment

Unicomm - Unified Communication Protocol - High-level asyncronous framework for TCP based nework application creation

Unicomm is a free open source multiplatform C++ framework that allows to create application level protocols over TCP transport. There are different rules can be applied to support communication logic. The main purpose is to focus on business logic and make communication process transparent to user. Unicomm simplifies connection management like accepting incoming connections and handling disconnects. It provides an easy way to associate data with the connection. Thus unicomm is the engine provides flexible mechanisms to construct custom logic protocols. Predefined xml and binary formats are also provided as option. Unicomm provides modularity and clear design of the application. Protocols implemented by using unicomm are flexible to changes and easily modifiable. Unicomm supports SSL, it’s lightweight and provides hundreds of concurrent connections processing (without considering business logic level as if unicomm handlers would be empty) on decent hardware.

Unicomm is based on boost , stl and compiled with msvc 8.0, 9.0, 10.0, gcc 4.2. It is supplied with Boost.Build scripts and Microsoft Visual Studio 2005, 2008, 2010 project files. Unicomm is tested under Windows and Ubuntu Linux.

Operating Systems

  • Linux
  • PC 32-bit Windows

Compilers

  • Visual C++
  • GCC

Added : 2013-10-15 Amended: 2013-10-15 Licensing : Boost

    Unicomm - Unified Communication Protocol - High-level asyncronous framework for TCP based nework application creation
  • Home page
  • Submitted by:Dmitry Timoshenko
Add a comment

Unidraw - A graphical editor building library

Unidraw is a graphical editor building library based on top of InterViews.

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

uSTL - uSTL is a partial implementation of the STL specification.

uSTL is a partial implementation of the STL specification intended to reduce code size of the derivative programs. Usually, the STL containers manage their own storage with new[] and delete[] operators, which create strongly typed storage. Although type safety is a good thing, placing memory management code into a template necessitates its reinstantiation for every template instance used by the derivative program. This produces substantial code bloat, that is frequently derided by C developers and used by them as an argument that C is better than C++. The uSTL implementation solves this problem by factoring memory management code into a non-template base class, ustl::memblock, which performs unstructured memory allocation. STL containers are then implemented as template wrappers for memblock to provide a measure of type safety.

Operating Systems

  • Linux
  • Solaris
  • Unix
  • Mac
  • FreeBSD
  • FreeBSD, Darwin

Compilers

  • Any standard C++ compiler

Added : 2009-10-07 Amended: 2009-10-07 Licensing : Open Source

Add a comment

UTF-8 CPP - A simple, portable generic library for handling UTF-8 encoded strings.

Many C++ developers miss an easy and portable way of handling Unicode encoded strings. The original C++ Standard (known as C++98 or C++03) is Unicode agnostic, and while some work is being done to introduce Unicode to the next incarnation called C++0x, for the moment nothing of the sort is available. In the meantime, developers use third party libraries like ICU, OS specific capabilities, or simply roll out their own solutions. In order to easily handle UTF-8 encoded Unicode strings, I came up with a small generic library. For anybody used to work with STL algorithms and iterators, it should be easy and natural to use. The code is freely available for any purpose - check out the license at the beginning of the utf8.h file. If you run into bugs or performance issues, please let me know and I'll do my best to address them. The purpose of this article is not to offer an introduction to Unicode in general, and UTF-8 in particular. If you are not familiar with Unicode, be sure to check out Unicode Home Page or some other source of information for Unicode. Also, it is not my aim to advocate the use of UTF-8 encoded strings in C++ programs; if you want to handle UTF-8 encoded strings from C++, I am sure you have good reasons for it.

Operating Systems

  • All platforms that support ANSI C++ and PThreads
  • Platform-independent

Compilers

  • Visual C++
  • GCC
  • Any standard C++ compiler

Added : 2010-05-14 Amended: 2010-05-14 Licensing : Boost

    UTF-8 CPP - A simple, portable generic library for handling UTF-8 encoded strings.
  • SourceForge home page
  • Submitted by:noname
Add a comment

UVS - C++ library dealing with univariate statistics

The scope of the library is univariate (single variable) statistics. In particular, the following statistical operations are supported:
  • distribution modeling: properties of commonly used statistical distributions
  • process generation: creating pseudo-random variables with specified distributions
  • sample statistics: for summarizing statistical data
  • hypothesis testing: for determining if experimental results could just be noise

Although UVS certainly does not provide a completely comprehensive treatment of these topics, facilities are provided to extend the library by coding additional classes or functions yourself.

Two types of random variable are supported: discrete (integer type) for statistics derived from counting, and continuous (floating point type) for all others.

The intended user is an application developer.

Although the code has been extensively tested, a realistic appraisal of its readiness is "alpha".

UVS was written with Visual C++ 6.0. Since that is the only compiler the author owns, no other platforms or compilers are currently supported.

All UVS symbols are in the "uvs" namespace.

UVS functions do not throw exceptions. If an argument value which calls for an infinite result is detected the function returns std::numeric_limits<double>::max().

UVS uses the Cephes library. The required components from this library are included with the distribution of UVS.

UVS is free. Full source code is provided.

Operating Systems

  • PC 32-bit Windows

Compilers

  • Visual C++ 6

Added : 2003-03-07 Amended: 2003-03-07 Licensing : Freeware

Add a comment

valarray<Troy>

Attempts at providing the functionality described in Chapter 26 of the draft C++ standard. None of the releases stick perfectly to the specifications of the proposed standard. Version 2.0 is a very deliberate step away from the draft as released in April 1995 for public comments in the USA: it is used as a proof of concept to support a revision of the original specs.

Some characteristics:

  • heavy usage of templates and their automatic instantiation;
  • avoidance of temporary arrays in array expressions;
  • production of fast compact loops, but some overhead before entering those loops.

Operating Systems

  • Sun
  • Cray
  • PC

Compilers

  • Sun CC
  • CRI C++ (Cray)
  • IBM xlC
  • SGI NCC
  • Apogee CC
  • Borland C++

Added : 1995-01-01 Amended: 1996-05-22 Licensing : Non commercial

Add a comment

vhclserv - server/viewers for multi-vehicle simulation

vhclserv consists of a stand-alone multi-vehicle state server and a 2D map viewer evolved for controlling vehicles, drawing and playing routes, and displaying graphics on a map that track vehicle positions. Compiles on ivmaps and ivtools and PROJ-4.3.3 from the USGS. Optionally can be compiled to use ACE and clippoly.

Added : 1998-07-22 Amended: 1998-07-22 Licensing : Freeware

Add a comment

VMime - Mail library for C++

VMime is a powerful C++ class library for working with MIME messages and Internet messaging services like IMAP, POP or SMTP.

With VMime you can parse, generate and modify messages, and also connect to store and transport services to receive or send messages over the Internet. The library offers all the features to build a complete mail client.

Key features

  • it is free software! GNU GPL license (Commercial licenses available!)
  • fully RFC-compliant implementation
  • object-oriented and modular design
  • very easy-to-use (intuitive design)
  • well documented code
  • very high reliability
  • maximum portability

Features Overview

  • RFC-2822 and multipart messages
  • aggregate documents and embedded objects
  • 8-bit MIME and encoded word extensions
  • full support for attachments
  • POP3, IMAP, SMTP, maildir and sendmail
  • SSL/TLS security layer and X.509 certificates (using GNU TLS)
  • SASL authentication (using GNU SASL)

Operating Systems

  • could run on any OS, but not tested
  • POSIX

Compilers

  • Visual C++
  • could be compiled, but not tested

Added : 2010-11-23 Amended: 2010-11-23 Licensing : GNU copyleft

Add a comment

VOLE - A Neat C++ COM/Automation Driver

VOLE is a C++ library that dramatically simplifies the business of driving COM servers (via the IDispatch interface) from C++.

VOLE is highly robust.

VOLE is very flexible, taking and returning normal C++ types, such as int,   double, std::string, std::wstring, and so on.

VOLE is 100% header only.

VOLE is compiler-independent

VOLE is dependent only on the STLSoft libraries (version 1.9.1 beta 43, or   later; available from http://stlsoft.org/), which are themselves   100% header-only.

Operating Systems

  • PC 32-bit Windows

Compilers

  • Visual C++
  • GCC
  • MetroWerks CodeWarrior
  • Intel C++
  • Comeau
  • Digital Mars

Added : 2007-02-13 Amended: 2008-06-26 Licensing : Public Domain

Add a comment

VTK - The Visualization Toolkit

The Visualization ToolKit (VTK) is an open source, freely available software system for 3D computer graphics, image processing, and visualization. VTK includes a textbook published by Prentice-Hall ( href="http://www.kitware.com/vtkhtml/vtkdata/HowToBuyBook.html"The Visualization Toolkit, An Object-Oriented Approach To 3D Graphics, 2nd edition" ISBN 0-13-954694-4 ), a C++ class library, and several interpreted interface layers including Tcl/Tk, Java, and Python. VTK has been implemented on nearly every Unix-based platform and PC's (Windows NT and Windows95).

The design and implementation of the library has been strongly influenced by object-oriented principles.

The graphics model in VTK is at a higher level of abstraction than rendering libraries like OpenGL or PEX. This means it is much easier to create useful graphics and visualization applications. In VTK applications can be written directly in C++, Tcl, Java, or Python. In fact, using the interpreted languages Tcl or Python with Tk, and even Java with its GUI class libraries, it is possible to build useful applications very quickly.

Finally, the software is a true visualization system, it doesn't just let you visualize geometry. VTK supports a wide variety of visualization algorithms including scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques like implicit modelling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation. Moreover, we have directly integrated dozens of imaging algorithms into the system so you can mix 2D imaging / 3D graphics algorithms and data.

Operating Systems

  • PC 32-bit Windows
  • Unix

Compilers

  • Visual C++
  • Borland C++
  • Any Unix C++ compiler
  • Intel C++

Added : 2000-11-06 Amended: 2000-11-06 Licensing : Open Source

Add a comment

VTL - Views Template Library - Filtering and Transformation container adaptors

VTL provides container adaptors to allow selected data from a container to appear as if it was its own container. VTL adaptors do not modify the original container or data. VTL adaptors provide a STL complaint interface which allows the new object to be used anywhere a STL container can be used. The default arguments to the adaptors will generate code that has as much functionality as possible based on the underlying container. Adaptor types include, filter, transformation, zip, union, range, unique, intersection, difference, merge, crossproduct, downcast, polymorphic and window.

Compilers

  • GCC

Added : 2000-05-03 Amended: 2008-07-29 Licensing : Copyrighted freeware

Add a comment

VXCL - The Virtual X Class Library

The Virtual X Class Library, or VXCL for short, is a non-commercial open source collection of powerful C++ classes that encapsulate the complexities of Windows and Linux/UNIX C and C++ development. All classes are designed to use the C++ language effectively and efficiently, with minimal overhead added to the application being developed. Code size and execution speed for applications built using VXCL are inline with programs built using standard C code. There are no bloated multi-megabyte DLL's or shared libraries that must be distributed with applications using VXCL, as the code is normally (but not required to be) statically linked with the application.

From April 1996 until March 2001, VXCL was known as VWCL, the Virtual Windows Class Library. In the beginning, VWCL was intended primarily for Windows development, but support for Linux/UNIX was added in 1999. Today, what was VWCL, is used daily for development of non-Windows applications as well as Windows programs. To better express the capabilities of the library, and to atract more development input from the UNIX community, we decided to rename the library to more appropriately describe the features it can provide. By dropping the 'Windows' in favor of X, we leave open the opportunity to develop the library on (and for) platform X, which can be anything. The X does not mean X Windows. It is simply a generic term (variable X) which can be whatever you want it to be.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Unix

Compilers

  • Visual C++
  • GCC
  • Borland C++
  • egcs

Added : 2000-05-03 Amended: 2001-07-03 Licensing : Open Source

Add a comment

VXL - C++ Libraries for Computer Vision Research and Implementation

VXL (the Vision-something-Libraries) is a collection of C++ libraries designed for computer vision research and implementation. The high quality core libraries contains a fairly exhaustive range of code for numerics, image io and processing, geometry, cross-platform binary io, divided into 6 independent libraries.

Add on libraries provide numerical algorithms, image processing, co-ordinate systems, camera geometry, stereo, video manipulation, structure recovery from motion, probability modelling, GUI design, classification, robust estimation, feature tracking, topology, structure manipulation, and much more. VXL is written in ANSI/ISO C++ and is designed to be portable over many platforms. The latest version is always available by CVS and is tested daily on several platforms. It is developed and used by a consortium including groups from the Universities of Leuven, Oxford, Manchester, RPI, and GE Research.

Compilers

  • Visual C++
  • GCC
  • SGI CC
  • Sun CC
  • SGI NCC
  • MetroWerks CodeWarrior
  • Borland C++
  • HP C++
  • Symantec C++

Added : 2002-04-16 Amended: 2003-10-15 Licensing : Copyrighted freeware

Add a comment

WebApp / CGI++ - A powerful library for the development of Web applications.

WebApp / CGI++ is a powerful library for the development of web applications, with the fundamental notion of separation of programming logic and graphical display.

It works as CGI (or FastCGI) programs, but it works nothing like "classical" CGI programming, where the programs contain all the HTML (or the no-much-better approach of things like PHP, where the HTML contains the program).

A variety of related tools are included, with particular emphasis on security (including wrappers for OpenSSL cryptographic primitives such as hashes, public-key encryption, and symmetric encryption).

Operating Systems

  • Linux
  • All platforms that support ANSI C++ and PThreads

Compilers

  • GCC
  • Any standard C++ compiler

Added : 2011-08-04 Amended: 2011-08-04 Licensing : BSD style

Add a comment

Windows Standard Serial Comm Lib - Windows Standard Serial Comm Lib for C/C++

Windows Standard Serial Comm Lib for C/C++. v2.3, July 15, 1998. Win 16 & Win 32 DLLs (Windows 95, NT, 3.1). Serial communications library based on the Windows API. Includes 30 functions plus modem control, ANSI emulation, ASCII/XMODEM/YMODEM protocols, and 8 example programs.

Operating Systems

  • PC Windows

Compilers

  • Visual C++
  • Borland C++
  • Watcom C++

Added : 1998-07-27 Amended: 1998-07-27 Licensing : Shareware

Add a comment

Windows Template Library - WTL is a C++ library for developing Windows applications and UI components

Windows Template Library (WTL) is a C++ library for developing Windows applications and UI components. It extends ATL (Active Template Library) and provides a set of classes for controls, dialogs, frame windows, GDI objects, and more. License: Common Public License 1.0

Operating Systems

  • PC 32-bit Windows
  • PC Windows

Compilers

  • Visual C++
  • Visual C++ 6
  • Visual C++ .NET

Added : 2013-01-15 Amended: 2013-01-15 Licensing : Open Source

Add a comment

Winsock Interface Library - Winsock network communications

Win16 & Win32 DLLs. Feb 14, 1998. Version 2.0. The Winsock Interface Library simplifies winsock network communications programming and provides support for the most common Internet protocols such as Finger, SMTP, POP3, FTP, NNTP, and HTTP.

Operating Systems

  • PC Windows

Added : 1998-07-22 Amended: 1998-07-22 Licensing : Shareware

Add a comment

WinZilla - C/C++ lib for easier Win programming

WinZilla is a statically linked library that provides functions for encapsulating GDI calls, dealing with fonted text, user input, interface, and more. WinZilla also provides a linear programming paradigm, making application development for Windows similar to developing applications for DOS.

Operating Systems

  • PC 32-bit Windows

Compilers

  • Visual C++
  • Borland C++

Added : 1999-06-04 Amended: 2003-08-19 Licensing : Shareware

Add a comment

WMGL - WM PPC Graphics Library - Windows Mobile Graphics Library

WMGL (Windows Mobile Graphics Library) is a graphic library developed for Windows Mobile devices. It provides easy-in-use interfaces for fast alpha blending and various 3D effects.

Key features:

  • Various "3D" Effects (Rotate, Page, Slide)
  • Fast Alpha Blending
  • Blending types (HUE, Color, Saturation etc.)
  • Transparent PNG Support
  • Filtering
  • Bordered blitting (resize skinnable elements without resizing its borders)
  • C++ optimized procedures for semi-transparent drawing

Operating Systems

  • PC Windows

Compilers

  • Visual C++

Added : 2010-11-23 Amended: 2010-11-23 Licensing : Copyrighted freeware

Add a comment

Wt: a C++ Web Toolkit - Wt (pronounced 'witty') is a C++ library for developing interactive web applicat

Wt (pronounced 'witty') is a C++ library for developing interactive web applications. The API is widget-centric and inspired by desktop GUI APIs. To the developer, it offers complete abstraction of any web-specific implementation details, including event handling, graphics support, and pretty URLs. Unlike many page-based frameworks, Wt was designed for creating stateful applications that are at the same time highly interactive (leveraging techinques such as AJAX to their fullest) and accessible (supporting plain HTML browsers), using automatic graceful degradation or progressive enhancement. It comes with an application server that acts as a stand-alone web server or integrates through FastCGI with other web servers.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Any standard C++ compiler

Added : 2009-09-01 Amended: 2009-09-01 Licensing : Open Source

    Wt: a C++ Web Toolkit - Wt (pronounced 'witty') is a C++ library for developing interactive web applicat
  • Wt Homepage
  • Submitted by:Kizza George Mbidde
Add a comment

wvstreams - C++ Network Programming Library

WvStreams is a network programming library in C++. WvStreams aims to be an efficient, secure, easy-to-use, and OS-independent library for doing network applications development, and we think that it has pretty much lived up to those goals. Currently all or parts of it work under Linux, *BSD, Solaris, and MAC OS X. Some parts have been ported to Windows, with a more complete port coming really soon.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Any standard C++ compiler

Added : 2009-09-03 Amended: 2009-09-03 Licensing : Open Source

Add a comment

wxWidgets - Open-source cross-platform GUI library

wxWidgets is an open-source cross-platform GUI library for Windows, GTK+, MacOS 9, MacOS X, Motif, X11and OS/2. wxWidgets is a native look-and-feel toolkit since it uses native widgets wherever possible.

C++, Python, Perl, C#/.Net and other languages are supported.

wxWidgets gives you a single, easy-to-use API for writing GUI applications on multiple platforms. Link with the appropriate library for your platform (Windows/Unix/Mac/WinCE,etc.) and compiler (almost any popular C++ compiler), and your application will adopt the look and feel appropriate to that platform. On top of great GUI functionality, wxWidgets gives you: online help, network programming, streams, clipboard and drag and drop, multithreading, image loading and saving in a variety of popular formats, database support, HTML viewing and printing, and much much more.

Operating Systems

  • OS/2
  • X Windows
  • Motif
  • PC Windows
  • Mac

Compilers

  • Any standard C++ compiler

Added : 1995-01-01 Amended: 2008-07-29 Licensing : GNU copyleft

Add a comment

Wykobi C++ Computational Geometry Library - Wykobi is an efficient and robust C++ 2D/3D geometry library

Wykobi is an efficient, robust and simple to use multi-platform 2D/3D computational geometry library. Wykobi provides a concise, predictable, and deterministic interface for geometric primitives and complex geometric routines using and conforming to the ISO/IEC 14882:2003 C++ language specification.

The design and structure of Wykobi lends itself to easy and seamless integration into projects of any scale that require a robust yet efficient 2D/3D computational geometry back-end.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Sun
  • IBM AIX
  • Solaris
  • HP UX
  • Unix
  • NeXT
  • PC Windows

Compilers

  • Visual C++
  • GCC
  • SGI CC
  • Sun CC
  • SGI NCC
  • Cfront
  • Symantec THINK C++
  • Borland C++
  • HP C++
  • Glockenspiel C++
  • Intel C++
  • Comeau

Added : 2006-08-02 Amended: 2008-06-26 Licensing : GNU copyleft

Add a comment

XD++ - Diagramming MFC Library for VC++.NET

Diagram++ Library is an C++ class framework that provides your applications with a drawing surface for diagramming, symbol manipulation, drag and drop, scrolling, zooming, and many other graphics capabilities also includes full source code for its 260+ classes.

Operating Systems

  • PC 32-bit Windows

Compilers

  • Visual C++

Added : 2002-06-30 Amended: 2002-06-30 Licensing : Not known

Add a comment

XMLFoundation - Provides a foundation for XML support in an application

As the name suggests it provides a foundation for XML support in an application, however this is much more than just another XML parser. It applies a unique approach to handling XML that allows your application code to focus on the application rather than traversing DOM or subscribing to SAX events. The most unique feature of the XMLFoundation is the object oriented encapsulation that provides XML support in the application layer. XMLFoundation allows you to easily integrate XML with your GUI, or with your server objects, and it natively supports COM, DCOM, and CORBA objects.

XMLFoundation contains a small, fast, and portable XML tokenizer that has been refined and optimized in many large software projects for about 10 years. My involvement with XML pre-dates the finalization of the XML 1.0 recommendation by W3C. For years, the only XML Parser that could match XMLFoundation tokenization performance was "Xpat" by James Clark - but as you will see the unique ability to bypass DOM and SAX altogether makes XMLFoundation the fastest solution available for moving XML to and from application layer objects - and it requires far less lines of code to do it.

The performance of the stack based XML parser is at the top of its class for non-validating parsers. Parsing and tokenization is only half the task, the other half is getting the results into the member variables, lists, and objects that they need to be in to be useful in the application layer - it is in that task that XMLFoundation is in a class of its own. The performance is unparalleled because the memory buffer that contains the source XML parses directly into your custom class objects without ever being copied or temporarily stored in a DOM tree. It parses directly into your lists, objects, arrays, indexed data structures, and all native C++ data types. It even has support for common containers of element data such as MFC CStrings. It's been used in Java too. That said, speed of execution is less impressive than the speed of development and overall reduction in lines of code required to effectively use XML in your application.

If you are building an application that does not use XML and never will..... XMLFoundation is still a very valuable tool available to solve many very common development tasks. The data structure classes alone ( List, Hash, Stack, Tree, Array, QSort ) are very useful. They all have "Iterator" objects so that data structures can be read-referenced by multiple threads at the same time without blocking. The interface is standard to all data structures. If you find MFC or Rogue Wave Standard C++ library data structures useful, you will likely find XMLFoundation data structures even more so.

Operating Systems

  • Platform-independent

Compilers

  • Any standard C++ compiler

Added : 2009-08-24 Amended: 2009-08-24 Licensing : Open Source

Add a comment

XMS200JE.ZIP - XMS array class library

Wrapper classes to access XMS, UMBs and the HMA, as well as a templated XMS array class. Test suites and timing programs provided for each class. Source included. Free. DOS PC/Borland C++ specific.

Operating Systems

  • PC DOS

Compilers

  • Borland C++

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known

Add a comment

xpressive - advanced C++ regular expression template library and parser.

xpressive is an advanced regular expression template library and recursive descent parser generator. It lets you write regular expressions and regex grammars using expression templates or strings. Expression template regexes are statically bound and syntax-checked at compile time. String-based regexes are dynamically bound and can be specified at runtime.

xpressive is a Boost.Regex work-alike, providing an interface similar to the one accepted into the C++ Technical Report (TR1).

xpressive depends on Boost version 1.31 or later.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Unix

Compilers

  • Visual C++
  • GCC

Added : 2005-01-24 Amended: 2005-01-24 Licensing : Public Domain

Add a comment

XRLCAD - CXrL CAD toolset

This package contains a C++ class library to manipulate Structure (as in Calma/CIF) hierarchies. There is also loaders for CIF and Calma, as well as output drivers for these formats. A bunch of demo programs are included which I wrote when I was testing the library, and these programs turned out be quite useful tools.

The library is still in its infancy, but it's reasonably solid; in a few months I'll take another look at it and probably overhaul it.

Operating Systems

  • Sparc
  • rs6000-aix-3.2
  • decstation-ultrix4.2
  • hppa1.1-hpux9.05

Compilers

  • GCC
  • Sun CC
  • Cfront

Added : 1995-01-01 Amended: 1995-01-01 Licensing : Copyrighted freeware

Add a comment

YAMI - Portable library for network and distributed programming.

The YAMI stands for "Yet Another Messaging Infrastructure" and is a portable library that helps to write network and distributed programs. The library is centered around the idea of Object Request Broker (ORB, like in CORBA) and provides the asynchronous communication model with dynamic interfaces. The library is portable in the sense of supported platforms and in the sense of supported languages (C, C++, Python, Tcl). The library is also very lightweight -- after compilation takes about 100kB. As an additional tool for C++ programmers, the YDL compiler is provided for processing static interface descriptions and generating C++ stubs and skeletons for staticly typed systems.

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Sun
  • Unix
  • FreeBSD

Compilers

  • Visual C++
  • GCC
  • Sun CC
  • Borland C++

Added : 2003-03-07 Amended: 2003-10-13 Licensing : Copyrighted freeware

    YAMI - Portable library for network and distributed programming.
  • YAMI home page
  • Author:Maciej Sobczak
Add a comment

YAPL - Yet Another Parallel Library

YAPL (Yet Another Parallel Library) is a small experimental prototype implementation to illustrate some ideas about parallel libraries. It is a header-only library at present.

YAPL design principles:

The library is designed as an experimentation framework for containers and algorithms.
  1. User code should be the same in sequential and parallel modes. This ideal is not always achievable, but differences are minimized.
  2. There should be a clear separation between a container abstraction (a list of values) and its supporting implementation structure (e.g., a linked list of nodes or a vector.).
  3. For element access, YAPL uses mappings (a generalization of ranges). It does not use the C++ standard library iterators because iterators are inherently sequential.
  4. It should be easy to select the execution policy for an application (sequential, parallel, GPU, …).

YAPL structure:

The library offers components in five categories:
  • CONTAINER – provides a minimal interface for the container abstraction. A key property of a container is that it provides mechanisms for generating mappings to that container;
  • SUPPORT STRUCTURE – implements a concrete strategy that can be used by multiple containers;
  • MAPPING – provides an interface to operate on a subset of container elements. Different subsets may be generated through different defining criteria;
  • ALGORITHM – an operation that can be applied to any mapping;
  • POLICY – allows the programmer to configure how operations are sequenced and elements allocated.

Operating Systems

  • All platforms that support ANSI C++ and PThreads

Compilers

  • Any standard C++ compiler

Added : 2015-10-26 Amended: 2015-10-26 Licensing : Copyrighted freeware

Add a comment

YARD (Yet Another Recursive Descent) Parser - A pure C++ R-D parsing library with a built in BNF meta-language.

The YARD library provides a simple meta-language for expressing recursive descent parsers as types, using a notation which closely resembles BNF syntax. Recursive descent parsers are useful for recognizing patterns which can be expressed as context free grammars (CFG's).

The YARD library is distributed using the Boost License version 1.0 and can be used, modified and redistributed freely.

YARD is designed to be as portable as possible but is designed primarily to work on GCC 3.4.

Compilers

  • Visual C++
  • GCC

Added : 2005-03-30 Amended: 2005-03-30 Licensing : Copyrighted freeware

Add a comment

Zeus-Framework - C++ Framework used for multithreading and complex computing

Zeus is a C++ framework witch implements the aspects of Cell Computing Model. The framework is specialized to realize complex application development such as distributed systems, multithreading, cell computing etc. It runs on Linux (tested on OpenSuse 10.x) and on Win32 (tested on Windows XP). It's portable to other operating systems as well. The Zeus serves as Framework for the development of
  • Dynamic and stable software
  • Modular software by use of software components
  • Distributed applications
  • Highly complex machine controls with distributed logic

It supports you in

  • Using genetic algorithmes
  • Serializing objects
  • Distributing objects (remote method invocation)
  • Creating and using classes (java like)
  • Creating object hierarchy (XML based object hierarchy)

Zeus bring you following advantages like:

  • high reusability of the software components
    • Cost reduction
    • Fast, stepwise development
  • Software development with large teams, by exact interface descriptions
    • Decentralized software development
  • Complex systems can be simply built
    • Use of artificial intelligence
    • Use of evolutionary software
    • Use of Cell Computing Model

Operating Systems

  • Linux
  • PC 32-bit Windows
  • Any after making small changes...
  • All platforms that support ANSI C++ and PThreads

Compilers

  • Visual C++
  • GCC
  • Borland C++
  • Any standard C++ compiler
  • Visual C++ 6
  • Visual C++ .NET

Added : 2011-08-24 Amended: 2011-08-24 Licensing : Open Source

Add a comment

Zipios++ - A small C++/iostream-based library for reading Zip files

Zipios++ is a small C++ library for reading Zip files. The structure and public interface are based (somewhat loosely) on the java.util.zip package. The streams created to access the individual entries in a Zip file are based on the standard iostream library. Additional features include

- support for embedding of a zip file in another file, e.g. a binary executable - Handling of a mix of ordinary directories and zip files through the same interface as a single zip file directory is handled through. In effect a simple virtual filesystem where ordinary directories and zipfiles can be mounted

The library is released under the GNU Lesser General Public License (LGPL).

Operating Systems

  • Linux
  • SGI Irix

Compilers

  • GCC
  • SGI CC

Added : 2000-08-09 Amended: 2000-08-09 Licensing : GNU copyleft

Add a comment
Our ads
Buy gold
Beat the credit crunch - buy gold online - quickly, safely and at low prices
www.bullionvault.com
Google
Trumphurst Home Page
C++ Usenet Newsgroup
A Web form for submissions to this list
Contact the author for permission to distribute

Copyright (c) 2024 Nikki Locke, Trumphurst Ltd.
Permission is granted to distribute over the Internet without charge. The author's permission is required (and usually given) to distribute in any other way, including on CD.