Available C++ Libraries FAQ
Introduction
About the list
Here is the latest draft of the "Available C++ libraries FAQ".
This list is not exhaustive. If you are looking for a particular library, and you don't find it here, try an ordinary Web search engine (e.g. Google). If you do find a suitable library, why not use the submission form to add it to this list for the next person?
Due to the increasing size of this list, and problems with updating the automatic poster at rtfm.mit.edu, the full list is now only available on the Web (at www.trumphurst.com/cpplibs/).
Marshall Cline's C++ FAQ is available on his Web page.
I have not included a credits list, because it would be nearly as large as the rest of the file! Many thanks to all those who contributed, and I hope you won't be offended that I haven't mentioned you.
Please send comments, criticisms, additions and amendments to me using the forms on the Web site. Please DO NOT mail me with requests for assistance in finding files mentioned in the list. I am unable to provide such a service. Definite information such as "file xyz is no longer at site xxx" IS welcome - even better if you can tell me an alternative site where it can be found. If you are new to the Internet, I recommend the newsgroups "news.announce.newusers" and "news.answers" for starters.
Added : 1995-01-01 Amended: 2008-06-26 Licensing : N/A
Comment from : Nikki Locke on 2008-06-26
I recently made major changes to the FAQ, adding forms to let people make submissions and add comments without using email. Please let me know if I screwed up anywhere.
Add a comment
Dos and don'ts - (Mostly don'ts)
- Do not send me mail asking for help with your programming - unless you are willing to pay my normal daily rate for consultancy. Free advice is available from Usenet newsgroups like comp.lang.c++.
- Do not ask me if there is a library to do a particular task. All the libraries I know about are in this list.
- I do not actually have copies of the libraries in the list. I do not evaluate the libraries in the list, I just collect together information sent in by the authors or others. So it's no use asking me how good a particular library is, or, indeed, anything about them that isn't already in the list.
- If you want me to include your library in the list, send in a submission. Do not just send in a URL, and expect me to connect to the Internet, download your Web page(s) and summarise them. That's your job.
Added : 1997-12-04 Amended: 2008-07-06 Licensing : N/A
Comment from : Nikki Locke on 2008-07-22
Big thanks go to Andrew Marlow, who has been going through the FAQ checking the URLs and various other details.
Add a comment
Adding or amending entries
Sending in a new entry
If your library isn't mentioned, or you wish to update your entry in this list, feel free to submit an entry via the Web form. Please note that entries will be restricted to a couple of paragraphs - if you send me a 100k text file giving minute details, I will have to summarise it. Or I might just ignore it, if I'm busy. It is much easier for me if you just send me an entry which is the right size to start with.
Please try to format your entry in the same way as the entries already in this list. If you wish, you may include HTML tags in your Long description text, which will make it through to the WWW version of this document. Please do not use heading levels 1-3, and please do not include any hot links in the body of the text - all links should occur at the end of the text.
NOTE TO VENDORS
This FAQ contains details of both free and commercial libraries. Vendors who have sent me details of their libraries for inclusion in the FAQ have been pleasantly surprised by the level of interest generated. Please remember, I only allow 2 or 3 paragraphs describing the product, and no advertising hype !
Added : 1995-01-01 Amended: 2008-07-21 Licensing : N/A
Add a comment
Indexes
How to find libraries in the FAQ
The recommended way to search the database is via the index page, which accesses the database directly.
Added : 1995-01-01 Amended: 2008-07-06 Licensing : N/A
Add a comment
Libraries available to download (A-C)
ACDK - A Java-oriented C++ framework for server development
ACDK (Artefaktur Component Development Kit) is a platform-independent library for generating distributed server-based components and applications. With support for memory-managment, threading, networking and scripting (Lisp, Perl, Tcl, Java, PHP).
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- Unix
- PC Windows
Compilers
- Visual C++
- GCC
- Sun CC
- Borland C++
Added : 2000-12-22 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
ADAPTIVE Communication Environment (ACE) - C++ IPC wrappers
This release contains contains the source code, documentation, and example test drivers for a number of C++ wrapper libraries and higher- level distributed application frameworks developed as part of the ADAPTIVE project at the University of Calfornia, Irvine.
The C++ wrappers encapsulate many of the user-level BSD and System V Release 4 IPC facilities such as sockets, TLI, select and poll, named pipes and STREAM pipes, the mmap family of memory-mapped file commands, System V IPC (i.e., shared memory, semaphores, message queues), and explicit dynamic linking (e.g., dlopen/dlsym/dlclose) using type-secure, object-oriented interfaces.
The higher-level distributed application frameworks integrate and enhance the lower-level C++ wrappers to support the configuration of concurrent network daemons composed of monolithic and/or stackable services
A relatively complete set of documentation and extensive examples are included in the release. A mailing list is available for discussing bug fixes, enhancements, and porting issues regarding ACE. Please send mail to ace-users-request@ics.uci.edu if you'd like to become part of the mailing list.
Added : 1995-01-01 Amended: 1997-03-19 Licensing : Not known
Add a comment
ADBLib - Database lib for Visual C 6
ADBLib.dll provides some classes and routines to develop DAO(r) database
applications quickly using Microsoft Visual C 6.0, the important feature
of this library is,besides the power and coding speed, you can still
access DAO derived objects from your programs allowing you to accomplish
complex tasks when needed. To simplify your task when creating modeless
form, a simple tool ADBWizard has been added - it will automate the
process of base class substitution, so that you can create forms and add
them to your application very quickly.
Operating Systems
Compilers
Added : 1999-06-04 Amended: 1999-06-04 Licensing : Shareware
Add a comment
Adobe Source Libraries (ASL). - ASL provides peer-reviewed and portable C++ source libraries.
stlab.adobe.com is the home of the Adobe Source Libraries (ASL) and information about other Adobe open source projects.
ASL provides peer-reviewed and portable C++ source libraries. The libraries are intended to be widely useful, leveraging and extending both the C++ Standard Library and the Boost Libraries.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Any standard C++ compiler
Added : 2009-09-02 Amended: 2009-09-02 Licensing : Open Source
Add a comment
Alcatraz - Software copy protection C++ library
Alcatraz is a C++ library that can be used to provide copy protection
capabilities to an application. You can create and distribute
time-locked trial versions and hardware-locked full versions of your
software. Both applications and components can be copy protected. The
license file is signed and encrypted to prevent tampering. A license
file generation program is provided along with the library. Online help
is included with the software.
Added : 1999-06-04 Amended: 1999-06-04 Licensing : Shareware
Add a comment
AML++ - Another Matrix Library in C++ - AML++ is a matrix/numerical routines library
AML++ is a matrix library which mimics most Matlab/Octave features and functions. It offers many different matrix classes (both real and complex including generic dense and sparse matrices, upper/lower triangular, symmetric, Hermitian and band).
Features:
- Library interface resembles Matlab/Octave language, which makes it a
perfect tool if you wish to translate Matlab or Octave code to C++.
- Vector (row and column) classes, generic dense and sparse matrices,
special types of matrices including upper/lower triangular, symmetric,
Hermitian and band.
- Index checking as well as fast indexing without index checking; indexing with colon expressions (replicating Matlab/Octave. (s:i:e) functionality) as well as with arbitrary integer vectors/matrices.
- Most Matlab and Octave matrix creation & manipulation functions like
ones, zeros, randn, randn, diag, eye, fliplr, flipud, rot90, horzcat, vertcat, find, all, any and others.
- Extensive sparse matrix support with fast sparse matrix manipulation
routines.
- Many mapper functions (computing function of each element).
- Sums and products.
- Natural way of writing matrix expressions through overloaded +, - and * operators; comparison and Boolean operators.
- Kronecker product.
- Trace & determinant. Vector and matrix norms.
- Solving linear equations, handles special types of matrices; inverting
matrices; solving sparse linear systems.
- Dense and sparse LU and Cholesky decomposition, QR decomposition, SVD,
Schur decomposition, QZ decomposition.
- Extensive runtime checks and exception handling. (no assert).
- C++ I/O streams (handling NaN's. and Inf's and comments) for numerical
classes.
- Formatted console, string and LATEX output.
- A 100 page manual is provided.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
Added : 2010-01-15 Amended: 2010-01-15 Licensing : GNU copyleft
AML++ - Another Matrix Library in C++ - AML++ is a matrix/numerical routines library- AML++ homepage
- Submitted by:Grzegorz Klima
Add a comment
Amulet - User Interface Development Environment
AMULET is a user interface development environment in C++. Code written using Amulet will work with little or no changes on all platforms.
More than just another free "virtual toolkit," Amulet includes many features specifically designed to make the creation of highly-interactive, graphical, direct manipulation user interfaces significantly easier. Based on a proven earlier system, called Garnet, that was in wide use in the Lisp community, Amulet adds a number of important innovations and refinements.
Important features of Amulet include:
- a dynamic, prototype-instance object system that makes prototyping easier
- automatic constraint solving integrated with the object system
- a "structured-graphics" model (also called a "display list") that handles automatic refresh of objects when the change
- a high-level input model that makes it easy to add behaviors to objects and also supports undo and help for operations
- a full set of flexible widgets implemented using the Amulet intrinsics, so you can easily experiment with your own widgets; and high-level interactive debugging tools. Widgets include:buttons, check boxes, radio buttons, menus, menu bars (pull-down menus), scroll bars, scrolling windows, and text input fields.
Amulet comes with complete documentation including a tutorial.
Operating Systems
- PC 32-bit Windows
- X Windows
- Mac
Compilers
- Visual C++
- GCC
- MetroWerks CodeWarrior
- Object Center
Added : 1996-02-29 Amended: 1996-02-29 Licensing : Public Domain
Add a comment
APE - Portable C++ threading and sockets framework
APE is the "APE Portable Environment" and class libraries for writing
portable threaded servers in C++, under UNIX (pthread) and Win32 API's.
APE provides portable class abstraction for threads and sockets, and
is used as a base framework for other projects. The goal of APE is to
make writing threaded servers in C++ both practical and convenient,
even for small and simple projects, and hence simplicity and low
runtime overhead are design goals.
The 1.0.0 release of APE is available at ftp://ftp.voxilla.org/pub/ape
with both source and pre-built binary packages. APE has been used
not only in server applications, but also in conjunction with client
class frameworks, such as QT/KDE, to offer threading and socket
services. APE is licensed under the GPL with additional priviledges
as annoted in the source under terms similar to Guile.
As of March 14th, 2000, the APE project was merged with the Common C++ project to form the newly introduced Common C++ portable application framework.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- FreeBSD
Compilers
- Visual C++
- GCC
- Sun Workshop Pro
Added : 2000-04-26 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
Arabica - SAX2 implementation
SAX is an event-based XML processing API. Arabica is a full SAX2 implementation, including the optional interfaces and helper classes. It provides uniform SAX2 wrappers for the Expat parser, Xerces, Libxml2 and, on Windows, for the Microsoft XML parser.
The DOM is a platform- and language-neutral interface which models an XML document as a tree of nodes, defined by the W3C. Arabica implements the DOM Level 2 Core on top of the SAX layer.
XPath is a language for addressing parts of an XML document. Arabica implements XPath 1.0 over its DOM implementation.
XSLT is a language for transforming XML documents into other XML documents. Arabica builds XSLT over its XPath engine.
Arabica is written in Standard C++ and should be portable to most platforms. It is parameterised on string type. Out of the box, it can provide UTF-8 encoded std::strings or UTF-16 encoded std::wstrings, but can easily be customised for arbitrary string types.
Operating Systems
- Linux
- PC 32-bit Windows
- Unix
- PC Windows
Compilers
Added : 2008-08-05 Amended: 2008-08-05
Add a comment
Architector - GradSoft C++ ToolBox
This is multiplatform C++ library, which incapsulate set of common C++ programmer tasks: Threading, Logging, Parsing options and more.
Operating Systems
- Linux
- Sparc
- Unix
- PC Windows
Compilers
Added : 2000-12-29 Amended: 2000-12-29 Licensing : Copyright (other)
Add a comment
Arjuna - For writing fault-tolerant (distributed) applications
Arjuna provides a set of tools (C++ classes and libraries) for writing fault-tolerant distributed applications using persistent objects, atomic actions, and replication. Included in the system is a C++ stub generator (and associated RPC mechanism) which takes a C++ class definition for an object and generates client and server stub code. Using these stub classes occurs in a relatively transparent manner: the differences between a local and distributed application are typically only a single line.
The system has been ported to a wide range of architectures and C++ compilers, both by the authors and other users, and has been in use for several years.
A comprehensive manual is available with the distribution.
The system has been ported to a wide range of architectures and C++ compilers, both by the authors and other users, and has been in use for several years.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Education
Add a comment
Armadillo - Armadillo linear algebra (matrix) library
The Armadillo C++ Library aims to provide an efficient base for linear algebra operations (matrix and vector maths), while at the same time having a straightforward and easy to use interface. To keep it relatively lean, it does not aim to provide a boilerplate of functionality, such as GNU Octave. Its intended target audience is scientists and engineers.
A delayed evaluation approach is employed (during compile time) in order to combine several operations into one and reduce (or eliminate) the need for temporaries. Where applicable, the order of operations is optimised. Delayed evaluation and optimisation are achieved through recursive templates and template meta-programming.
Operating Systems
- Linux
- Solaris
- Unix
- Mac
- FreeBSD
- FreeBSD, Darwin
- POSIX
Compilers
- GCC
- CygWin
- Any Unix C++ compiler
- Intel C++
Added : 2008-12-09 Amended: 2009-09-15 Licensing : GNU copyleft
Add a comment
AvlTree - C++ AVL tree class implementation
This is a C++ implementation of AVL trees. It is targeted more for teaching purposes than for efficiency.
Operating Systems
- PC DOS
- OS/2
- Unix
- PC Windows
Compilers
Added : 1997-03-19 Amended: 2008-07-22 Licensing : Public Domain
Add a comment
Awesime - A C++ task library explicitly designed for simulation
Simulation library
Added : 1995-01-01 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
b64 - base-64 Encoding and Decoding
Simple, lightweight, library for RFC-1113 compatible base-64 encoding and decoding. The core library is written in C, with a C-API. The C++ mapping offers a flexible facade over the C-API, and is 100 per cent header-only. All code is platform-independent.
Operating Systems
- PC 32-bit Windows
- Unix
- Mac
Compilers
- Visual C++
- GCC
- MetroWerks CodeWarrior
- Borland C++
- Watcom C++
- Intel C++
- Digital Mars
Added : 2006-04-29 Amended: 2008-06-26 Licensing : Public Domain
Add a comment
BCGControlBar - MFC extension library
The MFC extension framework library which allows you create Microsoft® Office, Visual Studio® and Internet Explorer®-like applications with full toolbars/menus customization, docking control bars, menu bars, Office-2000 menus and more.
Operating Systems
Compilers
Added : 2000-04-26 Amended: 2006-12-02 Licensing : Shareware
Add a comment
BIGINT - N-bit integer math class
BIGINT is an unsigned N-bit integer math class for the C++ programming
language.
BIGFP is a floating point math class based on BIGINT for the C++
programming language.
Added : 1997-11-27 Amended: 2008-07-22 Licensing : Public Domain
Add a comment
Blitz++ - Scientific computing in C++
Blitz++ is a C++ class library for scientific computing which provides performance on par with Fortran 77/90. It uses template techniques to achieve high performance. The current versions provide dense arrays and vectors, and small vectors and matrices.
Operating Systems
- Linux
- Sparc
- SGI Irix
- Sun
- Cray
- IBM AIX
- Solaris
- HP UX
- Unix
- Dec Alpha
- Dec Ultrix
Compilers
- GCC
- CRI C++ (Cray)
- HP C++
- KAI C++
Added : 1998-07-27 Amended: 1998-07-27 Licensing : GNU copyleft
Add a comment
Boost C++ Libraries - Provides free peer-reviewed portable C++ source libraries that work well with th
Boost provides free peer-reviewed portable C++ source libraries.
Boost emphasizes libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications. The Boost license encourages both commercial and non-commercial use.
Boost aims to establish "existing practice" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Ten Boost libraries are already included in the C++ Standards Committee's Library Technical Report (TR1) and will be in the new C++0x Standard now being finalized. C++0x will also include several more Boost libraries in addition to those from TR1. More Boost libraries are proposed for TR2.
Boost works on almost any modern operating system, including UNIX and Windows variants. Follow the Getting Started Guide to download and install Boost. Popular Linux and Unix distributions such as Fedora, Debian, and NetBSD include pre-built Boost packages. Boost may also already be available on your organization's internal web server.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Any standard C++ compiler
Added : 2009-09-01 Amended: 2009-09-01 Licensing : Boost
Boost C++ Libraries - Provides free peer-reviewed portable C++ source libraries that work well with th- Boost Homapage
- Submitted by:Kizza George Mbidde
Add a comment
Brent's univariate minimizer and zero finder.
Ref: G.Forsythe, M.Malcolm, C.Moler, Computer methods for mathematical computations. Precision - double
Obsolete - now part of the linalg package
Added : 1995-01-01 Amended: 2008-11-04 Licensing : Not known
Add a comment
BRL10 - Binary Relations Library for C/C++
Binary relations are more directly based on semantic
concepts rather than on recordlike structures as traditional
(relational, hierarchies, networks, object-oriented) models are.
Binary Relations tend to be more functionally complete
in their information processing capability, and more precise in
their semantic modelling.
The Binary Relations Approach was implemented in Binary
Relations Library for C/C++. BRL is not a full featured DBMS.
It does not support all ideas of the Binary Relations Approach.
BRL is however a small, fast and reliable engine.
BRL provides basic tools for using binary relations in C and C++
programs.
Operating Systems
- PC DOS
- PC Windows
- FreeBSD
Compilers
Added : 1996-11-13 Amended: 2008-07-22 Licensing : Non commercial
Add a comment
C* In C++ - Parallel Programming Classes for C++:
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
C++ command line parameters parser - Library for simple and flexible command line parameters parsing
C++ command line parameters parser with callback correspond functions and, if necessary, type/semantic checking of values of inputed parameters. Header-only and cross-platform. Uses ISO C++ and Boost C++ libraries only. It's really simple to use!
Operating Systems
- Cross platform, should work on any.
Compilers
Added : 2010-05-05 Amended: 2010-05-05 Licensing : GNU copyleft
C++ command line parameters parser - Library for simple and flexible command line parameters parsing- Download
- Documentation
- Submitted by:Denis Shevchenko
Add a comment
C++ implementation of differential algebra
This is temporarily unavailable while we resolve the question of whether inclusion of codes from Numerical Recipes makes distribution illegal.
Available from the netlib mailing list, in c++/mxyzptlk.shar
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
C++ Portable Components - Portable classes for network and XML development
The C++ Portable Components are a collection of class libraries for
developing network-centric, portable applications in C++. The classes
integrate perfectly with the C++ Standard Library and cover
functionality like threads, thread synchronization, filesystem access,
streams, shared libraries and class loading, sockets and network
protocols (HTTP, FTP, SMTP, etc.), including an HTTP server, as well as
an XML parser with SAX2 and DOM interfaces.
The C++ Portable Components are available on a variety of platforms.
All major desktop and server platforms are supported, including Windows
XP, Mac OS X, Linux, HP-UX, Tru64, Solaris and OpenVMS, in addition to
Windows CE and POSIX-compliant embedded operating systems.
For use in open-source projects, the C++ Portable Components are
available for free under an open-source license. Non open-source
commercial use requires a separate license.
Operating Systems
- Linux
- PC 32-bit Windows
- Sparc
- IBM AIX
- Dec MIPS Ultrix
- Solaris
- HP UX
- Unix
- OSF
- Dec Alpha
- Mac
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- Sun CC
- IBM xlC
- HP C++
Added : 2005-02-28 Amended: 2008-07-22 Licensing : Boost
Add a comment
C++ Sockets Library - Unix / Windows Socket programming made easy
When making this library, there were a few things I wanted to achieve. I did not want to end up with C++ code that had to be used in the same way as the berkeley socket C API are being used ( connect/bind/accept - check result, write - check result, read - check result, etc, etc ). Another thing was the ability to manage multiple sockets in the same thread; the library should be singlethreaded - but not limited to one thread. So.. I never wanted to manage a fd_set for a select() call ever again, no more writing code for accepting a connection - this has already been done again and again in every single networking project ever made.
One decision made early on was to treat one socket as one object. And so was the Socket class born. The socket class, by itself, has all the functions needed for address translation (hostname to ip, ip to hostname etc). It owns the file descriptor / SOCKET handle. But it can't do anything. Code for actually doing something with the socket is implemented in other, Socket derived classes.
Operating Systems
Compilers
- GCC
- Visual C++ 6
- Microsoft .NET
Added : 2005-01-31 Amended: 2005-02-01 Licensing : GNU copyleft
Add a comment
C++/Tcl - A library for integration between C++ and Tcl.
C++/Tcl is a library that allows to easily integrate C++ and Tcl.
It provides the following features: - Support for both extending Tcl with C++ modules and embedding Tcl in C++ applications.
- Possibility to expose free C++ functions as commands in Tcl.
- Possibility to define classes and class member functions, visible in Tcl in the style similar to SWIG wrappers.
- Possibility to manipulate Tcl lists and objects from the C++ code.
Operating Systems
Compilers
Added : 2004-11-24 Amended: 2008-07-22 Licensing : Open Source
Add a comment
C++/Tk - A complete interface to the Tk GUI toolkit.
C++/Tk is a complete C++ interface to the popular Tk GUI toolkit, known from many scripting languages, like Tcl, Python or Perl. The C++/Tk library uses templates and operator overloading to achieve syntactic similarity to Tcl/Tk code.
Operating Systems
- Linux
- PC 32-bit Windows
- Unix
- X Windows
- Mac
Compilers
Added : 2004-11-08 Amended: 2008-07-22 Licensing : Open Source
Add a comment
C++Advio - Advanced i/o, Networking, and Arithmetic Compression
A set of classes (C++ streams) that perform:
- a variable-bit coding of sequences of integers
(including Arithmetic compression ),
- a trick of sharing a stream buffer (a "file") among several streams,
- handling of extended file names, e.g.,
EndianOut stream("| compress > /tmp/aa.Z");
FILE * fp = fopen("tcp://localhost:7","r");
fstream fp("| cat | cat",ios::in|ios::out);
- explicit endian specification in dealing with integer streams
- TCP streams
- TCP transactor, a shell RPC-like tool
- a primitive Logging service
- a Vocabulary package, (poly/homo)morphic dictionaries with a
dynamic "inheritance" path, an embedded OO system
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- HP UX
- Mac
- FreeBSD
- BeOS
Compilers
- Visual C++
- GCC
- MetroWerks CodeWarrior
Added : 1996-05-22 Amended: 2000-04-26 Licensing : Public Domain
Add a comment
C++SIM 1.5.2 - A simulation package written in C++.
C++SIM provides discrete process based simulation similar to that provided by the simulation class and libraries of SIMULA. The linked list manipulation facilities provided by SIMSET are also included in the package, and there is support for a variety of statistics gathering classes.
The simulation package requires the use of a threads package and currently only works with the following:
- Sun's lwp threads and Solaris threads
- C++ task library
- NT threads
- Posix threads
- cthreads
- Rex threads
It has been build on a number of different architectures and C++ compilers, and porting to other systems should be relatively easy.
Added : 1995-01-01 Amended: 1997-03-19 Licensing : Education
Add a comment
C/C++ cyclic logs - Record log information
Cyclic logs provide a platform-independent way for a server to record
stdout and stderr such that the most recent information can be
retained in a logfile without such logfiles growing in size such that
they might fill the disk up. A cyclic log has a fixed size upon
creation and a structure that allows older data to be overwritten on
the arrival of new data to be logged.
It consists of a C++ library, a C library, a set of commands and a user
manual.
It is released under the GPL license.
Operating Systems
Compilers
- Any standard C++ compiler
Added : 2008-07-22 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
CalcPlus - Interpreter of procedural language
The CalcPlus library is the C++ class library which provides an ability to use your own programming language built into C++ project. Any algorithm or any constant needed by application can be carried out into the special file, when process comes to the key point, it calls function or procedure stored in the text file. Interpreter runs the function and process returns back to C++ code. Library contains the interpreter which understands simple nameless procedural language. Bi-directional communication between C++ and the code for interpreter available.
Version of the language that comes with the library allows to use functions, procedures, blocks, preprocessor, global and local variables and constants, if/for/while statements. Each variable can have value of type: nil, bool, long, float, string, date. Type definitions and arrays are allowed. Functions and procedures may be recursive. New functions written in C++ may be easily added to the language. Syntax of the language can be modified by changing YACC rules. Interpreter is fast enough and may be helpful for many tasks.
Platform independent, YACC required.
Operating Systems
- PC DOS
- SCO Unix 3.2.4
- Sun
Compilers
- Visual C++
- GCC
- Borland C++
- Watcom C++
- Sparcworks
Added : 1996-05-22 Amended: 1996-05-22 Licensing : Shareware
Add a comment
CBMT - Collaborative BioMolecular Tools
CBMT provides a number of easy-to-use fundamental classes for biologists, chemists and crystallographers. They include: Molecular Structure, Sequence, Standard Formats (PDB, CIF, GCG, etc), Geometry, Statistics, TextParsing, and a single container class (a dynamic Array). All documentation is in HTML, and member functions have *.c examples. I hope that the system can be extended as a communal effort and am piloting this idea in the C++ course at the Globewide Network Academy
Version 1.3 will be posted shortly including an experimental script language (generated automatically from the *.h files) providing support for persistent objects manipulatable by other languages such as tcl or csh.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Non commercial
Add a comment
CCL110JE.ZIP - Coroutine class library
DOS PC/Borland C++ specific.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
CDBFile - C++ library to handle dBASE III files
CDBFile is a C++ object-oriented package for programmers who need to
manipulate dBASE III files in their programs. It enables you to perform
many operations on an existing DBF file: reading/writing to it, accessing
its values, sorting the records, adding/deleting records, etc. It comes
with full text and postscript documentation, and commented source code.
A demonstration program, TestDBF, shows the various possibilities of the
CDBFile library, and its source file, testdbf.cpp, demonstrates how to
implement CDBFile within a program. CDBFile was designed to be as
portable as possible: you should be able to compile it under "as is" any
DOS/Windows C++ compiler; porting it to Un*x/Linux should also require
little effort.
Since CDBFile is distributed under the GNU Public License for libraries,
I hope that programmers will like it and suggest or implement enhance-
ments and additional features to that piece of software.
Operating Systems
Added : 1997-03-19 Amended: 1997-03-19 Licensing : GNU copyleft
Add a comment
CGAL - Computational Geometry Algorithms Library
CGAL - the Computational Geometry Algorithms Library - is a C++ software library of geometric data structures and algorithms. The CGAL library contains: - Basic geometric primitives such as points, vectors, lines, predicates such as for relative positions of points, and operations such as intersections and distance calculation.
- A collection of standard data structures and geometric algorithms, such as convex hull, (Delaunay) triangulation, planar map, polyhedron, smallest enclosing circle, and multidimensional query structures.
- Interfaces to other packages, e.g. for visualisation, and I/O, and other support facilities.
More functionality is being developed, and will be incorporated in successive releases.
The product is also available commercially.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Solaris
Compilers
- Visual C++
- GCC
- SGI CC
- Borland C++
- KAI C++
Added : 1998-12-03 Amended: 2001-10-25 Licensing : Education
Add a comment
CGI++ - A C++ Library for CGI Programming
CGI++ combines an easy and intuitive 'look and feel' with a powerful
and rich object-oriented implementation. Features include:
- Full support for CGI/1.1 and HTTP/1.0 (the current standards)
- Support for Netscape's Cookie and File Upload features.
- Support for new HTTP/1.1 methods PUT, GET, OPTIONS and TRACE, in addition to GET, HEAD and POST.
- Intelligent parsing of HTTP/1.0 and HTTP/1.1 Headers.
- Clean and elegant methods for reading and rendering form elements, and for preserving state, based on a deep object-oriented hierarchy. Powerful interactive debugging mode.
- Highly-automated and safe memory management.
Shareware. Distributed as source code; modification permitted
Free download/unlimited trial; license payable for installation
on a WWW or Intranet server. Developer arrangements available
for products incorporating the Library.
Nick Kew is also author and keeper of the CGI programming FAQ - archived as /www/cgi-faq at RTFM.
Jeff Garzik alleges it doesn't compile under GCC 2.8 or later, nor egcs.
Operating Systems
Compilers
Added : 1997-03-19 Amended: 1998-12-03 Licensing : Shareware
Add a comment
Cgipp - Very Portable and powerful CGI-Library
Cgipp is a small class library which eases the creation of applications for the World Wide Web, and gives you an easy but powerful interface to the CGI interface which will increase your productivity when writing CGI-applications. The Cgipp also provides a class to ease your creation of HTML-pages which can be used as any ostream.
The library is highly portable, and can be used with no problems on any unix-system
using gcc/g++, and has also been tested with SGI C++ and Sun CC. The library
has also been succesfully ported to PCs (both 16-bit DOS and 32-bit DOS/Windows).
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- SGI Irix
- Sun
- Solaris
- Unix
- SYSV
- Dec Alpha
- PC Windows
Compilers
- GCC
- SGI CC
- Sun CC
- Borland C++
Added : 1997-11-27 Amended: 2004-09-10 Licensing : Public Domain
Add a comment
ClassBuilder - ClassBuilder 1.1 OOD C++ code generator
ClassBuilder is an Object Oriented C++ front end to your compiler. It
lets you create, manipulate and navigate classes, class relations, class
members and class methods at a high level of abstraction trough a
graphical user interface. Features include:
- Full code generation for the defined relations and their associated
find methods.
- Wizards to insert code, like iteration loops and navigation paths.
- Code synchronization with compile environment.
- Full code generation for serializing the complete data model when used
together with MFC. (The tool is build with itself and uses this
feature to save to and read from file).
- Drag and drop support for many things. Adding a member to a class is
just drag with holding down the Ctrl-key and then drop it on the
desired class.
- Documentation generation in RTF and HTML.
Added : 1998-07-22 Amended: 1998-07-22 Licensing : Demo
Add a comment
CLN - a Class Library for Numbers
CLN is a library for computations with all kinds of numbers. It has a
rich set of number classes, including integers (with unlimited precision),
reals with various precisions (including unlimited), rationals, complex
numbers and polynomials. The kernel is written in assembly language, in
addition it can easily be configured to use the superefficient GNU MP
low-level functions. CLN uses garbage collection (automatic, without
imposing any burden on the main application). Many extremely efficient
algorithms (i.e. for all transcendental functions) are implemented.
Operating Systems
Compilers
Added : 2001-01-31 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
CMATH - Complex-number math library for Borland C/C++
CMATH is a comprehensive library for complex-number arithmetics and
mathematics. In contrast to C++-written complex class libraries, this
true Assembler implementation ensures superior computational efficiency,
mathematical accuracy and safety.
All functions exist in two alternative forms:
- a C++ form with overloaded function names, like sin, exp, operator
/;
- a plain-C form with data-type specific function names, like cf_sin,
cd_exp, ce_div, where the prefix determines the level of accuracy
(complex float, double, or extended).
Changes: The necessary adjustments have been made for CMATH to work with
the new version 4 of BCBuilder, while maintaining compatibility
with the older BC++ versions. Slight improvements with respect
to speed and accuracy have also been made for the forward and
inverse trigonometric functions.
Operating Systems
Compilers
Added : 1998-07-24 Amended: 1999-06-04 Licensing : Shareware
Add a comment
CmdLine - command-line option and argument parsing framework
CmdLine is a full-featured C++ class framework for parsing options and arguments from the command line. Abstract and concrete classes are provided for the command-line, options, arguments, and argument iterators, and the user may add their own specialized argument/option types using subclasses.
Operating Systems
- PC DOS
- OS/2
- Unix
- PC Windows
Compilers
Added : 1997-03-19 Amended: 1997-03-19 Licensing : Copyrighted freeware
Comment from : Nikki Locke on 2008-07-21
I understand this library is obsolete. However, TCLAP does the same kind of thing.
Add a comment
CNCL - ComNets Class Library
Universal classes:
- Tree structured class hierarchy, similar to NIHCL.
- Classes for general purposes such as arrays, linked lists, strings.
- Interface classes for UNIX system calls: pipes, select.
- Persistent objects.
Simulation:
- Event driven simulation.
- Statistical evaluation.
- Random number generators and distributions.
Fuzzy logic:
- Fuzzy sets, fuzzy variables, fuzzy rules and inference
- engine for building fuzzy controllers and expert systems.
EZD:
- Interface classes for DEC's ezd graphics server.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
ColDet - 3D Collision Detection Library
This library is an effort to provide a free collision detection library
for generic polyhedra. Its purpose is mainly for 3D games where accurate
detection is needed between two non-simple objects.
Features:
-
Works on any model, even polygon soups.
-
Fully Portable. Compiles on windows compilers (VC, BCB) and recent
versions of g++ on any platform.
-
Uses bounding box hierarchies for fast detection.
-
Uses additional triangle intersection tests for 100 per cent accuracy.
-
Provides (upon request) exact point of collision, plus the pair of triangles
that collided.
-
Supports timeout setting, to limit detection time.
-
Ray-Model collision test.
-
Segment-Model collision test.
-
Sphere-Model collision test.
-
Ray-Sphere and Sphere-Sphere primitive collision tests.
Operating Systems
- Linux
- PC 32-bit Windows
- Mac
- Cross platform, should work on any.
Compilers
- Visual C++
- GCC
- MetroWerks CodeWarrior
- Borland C++
- Any standard C++ compiler
Added : 2001-01-10 Amended: 2001-01-10 Licensing : GNU copyleft
Add a comment
Comet - A C++ template library for COM programming
Comet is a language binding between COM and C++. It allows you to do both COM client and COM server programming, without any dependency on either ATL or MFC. In other words Comet is a replacement for ATL.
Operating Systems
Compilers
- Visual C++
- GCC
- Borland C++
- Visual C++ 6
- Visual C++ .NET
Added : 2009-08-13 Amended: 2009-08-13 Licensing : BSD style
Add a comment
Common C++ - A GNU Portable Application Framework
Common C++ is a C++ framework offering portable support for threading, sockets, file access, deamons, persistance, and system services, initially started by David Sugar and Daniel Silverstone. Common C++ is a GNU package and is licensed to the terms of the GNU GPL with specific privileges similar to Guile.
Common C++ offers support and portable classes for threading and sockets for both UNIX (Posix systems with "pthread" support) and the Windows "Win32" API. Common C++ uses extensive autoconf macro sets for automatic detection of various levels of "pthread compliance" in your target platform and attempts to adjust itself appropriately. Common C++ has been tested to date with GNU/Linux, FreeBSD, Solaris, and DEC Tru64 Unix. HP/UX has also been tried and found not to be successfully supported at this time.
While Common C++ is not directly related to GNU portable threading (GNU Pth), it should work with the Pth "pthread emulation" library at present. Common C++ will become usable as a class framework for GNU Pth directly in future releases.
The primary goal of Common C++ is to promote a very low overhead abstract C++ interface to common system services. Consistent with this goal, and the desire for broad portability with wide compiler support, specific aspects and practices in C++ programming were selected when writing code in this package, and other practices were discarded that seemed to detract from this goal.
Operating Systems
- Linux
- Solaris
- FreeBSD
- Dec Tru64
Compilers
Added : 2003-12-15 Amended: 2008-07-22 Licensing : GNU copyleft
Common C++ - A GNU Portable Application Framework- Home page
- Author:David Sugar and Daniel Silverstone
Add a comment
Complex class - Very complete complex generic class
The Complex Library gives you the possibility to do complex arithmetic as simply as real arithmetic in your C++ sources. The class Complex is designed with generic code, allowing you to do single or double floating point arithmetic (default is double). All the algorithms favour numerical stability first and speed secondly. You can download the postscript documentation complex.ps.gz [40 Ko] alone or dowload the complete package (including the documentation) complex.tgz. [47 Ko]
Operating Systems
- Linux
- Sparc
- Sun
- IBM AIX
- Solaris
- Unix
- X Windows
Compilers
Added : 1997-11-27 Amended: 1997-11-27 Licensing : Public Domain
Add a comment
Conical - C++ classes for building neural networks
CONICAL is a cross-platform library of C++ classes for building biologically realistic simulations of neurons or small neural networks. Its capabilities are similar to large Unix-based packages such as GENESIS and NEURON, but produces simulations which are smaller, faster, and easily imbedded in other applications.
CONICAL is still under development, but documentation is fairly complete and includes both introductory material and demo programs.
Operating Systems
- PC DOS
- Unix
- PC Windows
- Mac
Compilers
- GCC
- MetroWerks CodeWarrior
- Borland C++
Added : 1996-07-30 Amended: 2001-04-02 Licensing : Education
Add a comment
CSLIB - Database library for C++ developers
A series of C++ classes in combination with a program generator is used
to build databases with automatically updated indexes, access to fields,
support for DATE fields, exporting to dBASE and so on. It also contains
classes for variable-length records, virtual heaps, btrees etc. Some
helpful utilities are included as well. CSLIB produces stand-alone
executables. It is NOT just an interface to some central database
server.
Evaluation version.
Operating Systems
- PC DOS
- Linux
- OS/2
- PC Windows
Compilers
- Visual C++
- GCC
- Borland C++
- Watcom C++
Added : 1997-03-19 Amended: 1997-03-19 Licensing : Not known
Add a comment
cURLpp - C++ interface for C libcurl
cURLpp is a C++wrapper of libcurl.
About libcurl.
libcurl is a free and easy-to-use client-side URL transfer library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, cookies, user+password authentication (Basic, Digest, NTLM, Negotiate, Kerberos4), file transfer resume, http proxy tunneling and more!
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Any standard C++ compiler
Added : 2008-12-05 Amended: 2008-12-05
Add a comment
Cvmath.cc - An include file to make complex math look like regular math.
The file uses a lot of operator overloading, so that if x=a+ib and y=c+id, the code for multiplying the two together looks like z = x*y; Also, the file includes nrutil from Numerical Recipes, and adds the complex versions for vectors and matrices.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
Libraries available to download (D-L)
DaoLib - Static library for C++ DAO database access
DaoLib v2.0 provides a communication layer between user interface
elements and underlying database objects. It consists of a complete COM
proxy wrapper, a set of DAO/GUI classes and a list control dialog
component. The Visual C++ developer can take advantage of its simple
interface for building dialog-intensive and property sheet-intensive
database applications, without the burden and overhead of the MFC DAO
implementation. In addition, it provides automatic recordset listing
with sorting facilities and complete printing support.
Operating Systems
Compilers
Added : 1999-06-04 Amended: 1999-06-04 Licensing : Shareware
Add a comment
Database Template Library Programmer's Guide - The DTL makes ODBC recordsets look just like an STL container.
The goal of this library is to make ODBC recordsets look just like an STL container. What is more, we do this portably so the abstraction can run on multiple platforms and C++ compilers. As a user, you can move through our containers using standard STL iterators; and if you insert(), erase() or replace() records in our containers changes can be automatically migrated to the database for you. The library's compliance with the STL iterator and container standards means you can plug our abstractions into a wide variety of STL algorithms for data storage, searching and manipulation. In addition, the C++ reflection mechanism used by our library to bind to database tables allows us to add generic indexing and lookup properties to our containers with no special code required from the end-user. Because our code takes full advantage of the template mechanism, our library adds minimal overhead compared with using raw ODBC calls to access a database.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Any standard C++ compiler
Added : 2009-09-28 Amended: 2009-09-28 Licensing : Open Source
Database Template Library Programmer's Guide - The DTL makes ODBC recordsets look just like an STL container.- DTL Homapage
- Submitted by:Kizza George Mbidde
Add a comment
Depression Glass Debug Library - DGD
Depression Glass Debug (DGD) is simple, easy to use C++ ostream extension for debugging output. DGD is created with a goal to produce nice, readable and easy to understand trace logs.
Operating Systems
Compilers
Added : 2003-04-09 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
Developer - Smart Pointers
smart_ptr is a smart pointer policy class that can use different ownership logic and semantic polices, which allows the developer to get the best performance and/or interface for a particular requirement.
The smart_ptr class can be used with STL containers to create containers of smart pointers, moreover it can be used to create a container of abstract based objects via smart_ptr. In general, smart_ptr is faster than boost::shared_ptr. When used with STL containers, the smart pointer is faster than the boost pointer containers, and more generic.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Sun
- IBM AIX
- Solaris
- HP UX
- OS/2
- Unix
- Dec Alpha
- PC Windows
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- IBM xlC
- Borland C++
- HP C++
Added : 2006-03-14 Amended: 2006-03-14 Licensing : Public Domain
Add a comment
Developer - EzLogger
EzLogger is a C++ logging library that can easily be added to an implementation. It can be used with both C++ style stream operators and C style printf functions.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Sun
- IBM AIX
- Solaris
- HP UX
- OS/2
- Unix
- Dec Alpha
- PC Windows
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- IBM xlC
- Borland C++
- HP C++
Added : 2006-03-14 Amended: 2006-03-14 Licensing : Public Domain
Add a comment
DiamondBase - Add Relational Database functionality to your C++ programs
DiamondBase is a library of C++ routines and utilities that allow you to add Relational Database functionality to your C++ programs. It is written entirely in C++, and great pains have been taken to ensure it compiles under a variety of compilers. It comes with a 47 page manual.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 2008-07-22 Licensing : Not known
Add a comment
Dinkum Compleat Library - Standard C++, C99, and Embedded C++
The Dinkum Compleat Library combines our popular C/C++ libraries
in one highly portable and flexible package. You get:
-- the Dinkum C++ Library, the only library that fully conforms
to ISO 14882:1998, as corrected through 2003,
including support for export templates
-- the Dinkum C99 Library, conforming to ISO 9899:1998, as corrected
through 2003, even on compilers that don't fully support C99
-- C++ library TR1, the only complete implementation of C++ TR19768
-- the libraries mandated by all other C and C++ TRs, including
C TR18037 (fixed-point arithmetic for DSPs) and C TR19768 (UTF-16
and UTF-32 data types)
-- the Dinkum EC++ Library, the only add-on library that conforms
to the EC++ Technical Committee specification
-- the Dinkum Abridged Library, which combines EC++ with the STL
portion of our C++ library
-- a portable multithreading library compatible with boost.threads in C++
and with Posix pthreads in C
-- a number of memory allocators for STL node-based containers, offering
a variety of memory-management strategies and multithreading options
-- dozens of conversions between Unicode and popular multibyte character
encodings, including Chinese, Japanese, and Korean large character sets
-- common extensions to the Standard C and C++ libraries to simplify
adapting code written for Linux, Unix, Windows, and pre-standard dialects
-- dozens of C locales to adapt to all major American and European cultures
The library can be built from source code for use with a native C library,
with ``safe iterator'' debugging enabled, and with exceptions disabled.
It has been tested extensively on most popular compilers.
It is available in both source, with ongoing support, and binary packages,
for all current versions of Microsoft VC++, eVC++, and GCC.
Each package includes online references in HTML.
You can browse the references, and compile test programs
against the library, at our web site.
Compilers
Current versions of Microsoft VC++ and eVC++ (V6 through V8)
Current versions of GCC (V3.x and V4.x)
Compilers with Edison Design Group front end
Compilers
- Visual C++
- GCC
- Visual C++ 6
- Visual C++ .NET
Added : 2006-07-03 Amended: 2006-07-03 Licensing : Commercial
Add a comment
dlib C++ library - A portable C++ toolkit
This is a C++ library of portable sockets, threading, GUI, and directory browsing APIs as well as many container classes and other items such as a big integer, a log4j style logger, arithmetic coder, other compression related classes and much more.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- Unix
- X Windows
- PC Windows
- Mac
Compilers
- Visual C++
- GCC
- Borland C++
Added : 2006-12-21 Amended: 2006-12-21 Licensing : Copyright (other)
Add a comment
Doctor Matrix - Matrix and vector algebra package for C++
Doctor Matrix is a matrix and vector algebra package for C++. It
allows the C++ programmer to perform calculations on matrices and
vectors within C++ programs. Over 50 functions are supported, including
ranking, determinant calculation, matrix addition and multiplication,
inversion, and more. Comprehensive documentation provides instructions
for use of all functions and mathematical definitions of their purpose.
Shareware version is limited to DOS programming in Borland C++ and for
Tiny or Small memory models.
Special requirements: The Shareware version supports compilation only
under Tiny or Small memory models. Borland C++ compiler recommended.
Operating Systems
Compilers
Added : 1997-03-19 Amended: 1997-03-19 Licensing : Shareware
Add a comment
DOSTmUit - DOS Text Mode User Interface Toolkit
Enables C++ programmers to add a CUA-compliant user interface to their DOS programs without getting involved in screen coordinates and other messy details. The programmer merely states which interface objects are required, and how they are to be placed on the screen in relation to each other. Those familiar with the ET++ toolkit for the X windows system under Unix will get the general idea.
Includes a class documentation facility (DocClass) which will generate a large text file from the source code giving details of every class, structure, enum and extern in the toolkit. This program will also work on your own C++ source code. Source is provided.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 2008-07-22 Licensing : Non commercial
Add a comment
Drat - A C++ interface to the curses library
Drat contains several classes for interfacing with the UNIX curses library, including menus with callback's, and other common forms.
Added : 1996-02-05 Amended: 2006-12-02 Licensing : Not known
Comment from : Matthew Chaplain on 2009-07-02
Dead link.
Add a comment
eigen - C++ template library for linear algebra: vectors, matrices & related algorithms
Eigen is a C++ template library for linear algebra: vectors, matrices, and related algorithms. It is:
- Versatile. (See modules and tutorial). Eigen handles, without code duplication, and in a completely integrated way:
- both fixed-size and dynamic-size matrices and vectors.
- both dense and sparse (the latter is still experimental) matrices and vectors.
- both plain matrices/vectors and abstract expressions.
- both column-major (the default) and row-major matrix storage.
- both basic matrix/vector manipulation and many more advanced,
- specialized modules providing algorithms for linear algebra, geometry, quaternions, or advanced array manipulation.
various numeric types out of the box, including std::complex numbers, while being easy to extend to custom numeric types.
- Fast. (See benchmark).
- Expression templates allow to intelligently remove temporaries and enable lazy evaluation, when that is appropriate -- Eigen takes care of this automatically and handles aliasing too in most cases.
- Explicit vectorization is performed for the SSE (2 and later) and AltiVec instruction sets, with graceful fallback to non-vectorized code. Expression templates allow to perform these optimizations globally for whole expressions.
- With fixed-size objects, dynamic memory allocation is avoided, and the loops are unrolled when that makes sense.
- For large matrices, special attention is paid to cache-friendliness.
- Elegant. (See API showcase). The API is extremely clean and expressive, thanks to expression templates. Implementing an algorithm on top of Eigen feels like just copying pseudocode. You can use complex expressions and still rely on Eigen to produce optimized code: there is no need for you to manually decompose expressions into small steps.
- Compiler-friendy. Eigen has very reasonable compilation times at least with GCC, compared to other C++ libraries based on expression templates and heavy metaprogramming. Eigen is also standard C++ and supports various compilers.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Visual C++
- GCC
- Sun CC
- Intel C++
Added : 2009-11-25 Amended: 2009-11-25 Licensing : Open Source
eigen - C++ template library for linear algebra: vectors, matrices & related algorithms- Homepage
- Submitted by:Anonymous
Add a comment
EO - Evolutionary computation library
EO (Evolvable|Evolutionary objects) is a C++ toolbox for evolutionary computation
which defines interfaces for many classes of algorithms used in evolutionary
computation, and, at the same time, provides some examples that use those
interfaces. The client/user can include those objects in his or her programs, or
create their own. If new objects are created, the GeNeura team commit themselves to
test them, and make them available to the Evolutionary Computation community. In
this way, no changes have to be made to the library design or to a program that
implements an EC algorithm: just new classes added. Our intention would be that, in
the future, somebody implementing an EC algorithm would say "I am using EO, plus a
class that hs been made publicly available", improving repeatability of EC results
and easing its availability.
It contains classes for any kind of evolutionary computation
you might come up to, except maybe genetic programming. Here are its
features
- Chromosomes: Can be defined by the user; binary, floating point and
string are provided. All algorithms defined work on all kind of
chromosomes.
- Genetic operators: Can be defined by the user. Several floating
point, bitstring, and generic operators are defined, like mutation,
crossover, and things like that.
- Selection/elimination procedure: Can be defined by the
user. Steady-State and rank-based are provided.
- Reproduction procedure: Can be user defined (I'll skip that from now
on, but everything can be user-defined). Random and rank-based are
provided.
- Termination conditions: (user-definable) fitness and generation-based.
- Algorithms: Easy Ga, SimpleGA and simulated annealing with
user-definable cooling schedule.
- Some utilities: command-line parsing, random-number generations
- Examples: examples that test all features, plus genetic mastermind.
- User interface: an example that uses gtk is provided
- Documentation in html.
RELEASES:
New releases are made almost every day. Check at the site. Probably,
cvs access will be provided in the future.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- Irix
Compilers
Added : 1998-07-24 Amended: 2008-07-22 Licensing : Copyrighted freeware
Add a comment
Fast Light Toolkit - GNU LGPL GUI toolkit for X11 and Windows
FLTK (pronounced "fulltick") is a LGPL C++ graphical user
interface toolkit for X (UNIX®), OpenGL, and WIN32 (Microsoft®
Windows® NT 4.0, 95, or 98). It is currently maintained by a small
group of developers across the world with a central repository in the
US.
FLTK was originally created to build in-house applications at
Digital Domain for image processing and 3D graphics. The original
author, Bill Spitzak, received
permission from Digital Domain to release it to the public domain in
the hopes that it could be used to make better, faster, and
nicer-looking UNIX programs. Digital Domain has since withdrawn
support for FLTK, but Bill is still able to work o!n it from time to
time.
FLTK was designed to be small and modular enough to be statically linked.
FLTK also works fine as a shared library and has started being included
on Linux distributions.
Here are some of the core features unique to FLTK:
- sizeof(Fl_Widget) == 40 to 48
- The "core" (the "hello" program compiled & linked with a
static FLTK library using gcc on a 486 and then stripped) is
110k.
- The FLUID program (which includes every widget) is 372k.
- Does not use macros, templates, multiple inheritance, or
exceptions.
- Written directly atop Xlib (or the WIN32 API) for maximum
speed, and carefully optimized for code size and performance.
- Precise low-level compatibility between the X and Windows
version (only about 10% of the code is different).
- Interactive user interface builder
program. Output is human-readable and editable C++ source
code.
- Support for overlay
hardware (emulation if none and under Windows)
- Very small & fast portable
2-D drawing library to hide Xlib and WIN32
- OpenGL/Mesa drawing area widget
- Support for OpenGL overlay hardware on both X and Windows.
Emulation if none.
- Text input fields with Emacs
key bindings, cut & paste, and foreign letter compose!
- Compatability header file for the GLUT library
- Compatability header file for the
XForms library
Operating Systems
- Linux
- PC 32-bit Windows
- Sparc
- SGI Irix
- IBM AIX
- Solaris
- HP UX
- OS/2
- Unix
- X Windows
- SYSV
- Dec Alpha
- SCO Open Desktop
- Unisys Unixware
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Sun CC
- IBM xlC
- SGI NCC
- MetroWerks CodeWarrior
- Borland C++
- HP C++
- Any standard C++ compiler
Added : 2000-04-26 Amended: 2000-04-26 Licensing : GNU copyleft
Fast Light Toolkit - GNU LGPL GUI toolkit for X11 and Windows- FLTK Home Page
- Submitted by:mike@easysw.com
Add a comment
FastFormat - 100% type-safe, infinitely extensible, very high performance C++ format library
FastFormat is an open source C++ formatting library, whose design parameters are 100% type-safety, efficiency, and flexibility. It is simple to use, highly-portable (platform and compiler-independent), and is infinitely extensible.
FastFormat supports output/formatting of statements of arbitrary complexity, consisting of heterogeneous types. It provides two APIs:
-
Format: provides replacement-based formatting, like Streams (printf()-family), Boost.Format()
-
Write: provides concatenation-based formatting, like IOStreams
FastFormat writes to output "sinks", which can be of arbitrary type. It implicitly supports any type that is structurally conformant with the standard library's string, and the library includes adaptors to allow writing to:
std::ostream
FILE*
- STLSoft's
auto_buffer
- C-style string buffers and character buffers
- ACE's
ACE_String
- ATL's
CComBSTR
- MFC's
CString
std::stringstream
- speech (currently Windows-only)
- Windows'
OutputDebugString()
- Windows'
MessageBox()
Adaptation to a new type requires the definition of a single function.
FastFormat is robust. Both APIs are 100% type-safe - something no other C/C++ widely-used formatting library can claim - and with the Write API it is impossible to compile defective code.
FastFormat is fast. The processing of each statement involves at most one memory allocation to hold the entire statement, and each statement element is measured and copied exactly once. As a consequence, the library is on a par with (the type-unsafe) C's Streams (printf()-family) of functions, faster than C++'s IOStreams (by 2-10x) and Loki.SafeFormat (by 1-5x), and considerably faster than Boost.Format (by 5-17x).
FastFormat supports I18N/L10N by using numbered arguments, enabling reordering of arguments by exchanging format strings. The library comes with a number of resource bundles, classes whose instances can load sets of localised resource strings for use as format strings.
FastFormat does not contain any compiler-specific or platform-specific constructs. It supports UNIX (including Linux and Mac OS-X), and Windows, and should work with any operating system. It is known to be compatible with Comeau (4.3.3+), GCC (3.4+), Intel (8+), Metrowerks (8+), Microsoft Visual C++ (6.0+), and should work with any reasonably modern C++ compiler.
FastFormat is completely free and includes source released under a BSD-style license. Commercial customisations and related consultancy are provided by Synesis Software.
FastFormat features in a series of articles in ACCU's peer-reviewed Overload magazine:
- An Introduction to FastFormat, part 1: The State of the Art, Matthew Wilson, Overload #89, February 2009
- An Introduction to FastFormat, part 2: Custom Argument and Sink Types, Matthew Wilson, Overload #90, April 2009
- An Introduction to FastFormat, part 3: Solving Real Problems, Quickly, Matthew Wilson, Overload #91, June 2009
Examples:
-
Emulate Streams' ability to specify widths:
printf("[%-10d, %10d]\n", 123, -456);
fastformat::fmtln(std::cout, "[{0,10,,<}, {1,10}]", 123, -456);
Both produce the output:
[123 , -456]
-
Handle heterogeneous types:
struct connection_t
{
std::string connectionId;
struct in_addr remoteAddress;
struct in_addr localAddress;
unsigned short port;
unsigned long numBytesTransferred;
struct tm completionTime;
};
void log_connection(connection_t const& conn)
{
fastformat::fmtln(
std::cout
, "{0} {5} {1} {2} {3} {4}"
, conn.connectionId
, conn.remoteAddress
, conn.localAddress
, conn.port
, conn.numBytesTransferred
, conn.completionTime
);
}
Produces output like:
channel-1 May 03 03:50:41 2009 192.168.160.247 127.0.0.1 5651 102401
-
Emulate Boost.Format's absolute tabulations (with a little indirection):
std::cout
<< boost::format("%1% %2%, %|20t|lives at %3%\n")
% "Mr"
% "Smith"
% "the Smith residence"
<< std::endl;
std::string scratch;
fastformat::fmtln(
std::cout
, "{0,20,,<}lives at {1}"
, fastformat::fmt(
scratch
, "{0} {1}, "
, "Mr"
, "Smith"
)
, "the Smith residence"
);
Both produce the output:
Mr Smith, lives at the Smith residence
Performance:
FastFormat's performance has been extensively tested, and in every case it has superior performance
to the C++ standard library's IOStreams, Boost.Format and Loki.SafeFormat. In most cases it has
equivalent performance to the (type-unsafe) C standard library's Streams (printf()-family).
Test results are included on the project website,
and in the first in the Overload article series;
the third article in the series has a further set of four performance tests, based on real-world uses of
FastFormat in commercial projects.
Features:
- 100% type-safe
- Presents a natural syntax
- Infinitely extensible
- Highly-efficient:
- no intermediate memory allocations
- no intermediate string copying
- no repetition of any string-length calculations
- at most one allocation required to produce the resultant string
- Verified with Borland, Metrowerks' CodeWarrior, Digital Mars, GCC, Intel, and Visual C++ compilers
- Verified on Linux, Mac OS-X, and Windows
Requirements:
STLSoft libraries (1.9.1 beta 81 or later); 100% header-only open-source.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Visual C++
- GCC
- Borland C++
- Any after making small changes...
- Intel C++
- Comeau
- Digital Mars
Added : 2009-05-11 Amended: 2009-05-11
Add a comment
FCE - Ftp Client Engine Library for C/C++
FTP Client Engine (FCE) Library for C/C++ Win16 & Win32 DLLs v1.1,
[ASP]. The FCE can connect to any FTP server and navigate its directory
structure, list files, download files, delete files, and upload files
all from within your application. Requires Windows C/C++ compiler. By
MarshallSoft Computing.
Operating Systems
Added : 1999-06-21 Amended: 1999-06-21 Licensing : Shareware
Add a comment
FEMTown - Open-Source Multi-Physics Finite Element Framework
FEMTown is designed to solve partial differential equations (PDE) using spatial finite-element discretizations. FEMTown provides
- an extensive library of elements,
- variable interpolation schemes (p-adaptivity),
- shape-function calculations,
- numerical integration,
- sparse and dense matrix manipulations,
- assembly routines,
- numerical solvers,
- exchange of common file formats
<h4>Applications</h4>
FEMTown also includes open-source end-user applications:
- contribution calculations for acoustics and
- visco-elastic materials.
Operating Systems
- Linux
- PC 32-bit Windows
- Sparc
- SGI Irix
- Sun
- Cray
- IBM AIX
- Solaris
- HP UX
- Unix
- Convex
- Dec Alpha
- PC Windows
- NEC, Fujitsu, Hitachi
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- IBM xlC
- SGI NCC
- HP C++
Added : 2001-09-28 Amended: 2001-09-28 Licensing : Public Domain
Add a comment
FFTPACK++ - C++ version of FFTPACK
FFT_Pack is a C++ wrapper for FFTPACK complex routines using LAPACK++ Matrix and Vector classes. FFTPACK routines were converted to C using f2c and also modified to use double precision complex using -r8 to f2c.
Most of this code was lifted directly from GNU OCTAVE v1.1.0, hence the copyright notice at the top.
The forward FFT takes you to freq domain (ala direction == -1), and backward the other way.
Passing LaVectorComplex/Double or LaGenMatComplex/Double with one dimension set to 1 will implicitly perform 1D FFT on the data.
The members of the FFT_Pack class are declared static, since they really need no private member storage. There are two types of transform routines: ones that return a new complex matrix and the ones that change the matrix in place.
The original FFTPACK does not appear to be available any more, but I found the link below to a different (possibly improved) version.
Compilers
Added : 1995-01-01 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
FFTW - Fast C library for computing the Fast Fourier Transform (FFT)
FFTW is a C library for performing the FFT in one or more dimensions.
It also includes real-complex and parallel transforms. In our
benchmarks, FFTW compares favorably to other portable codes for
most platforms and transform sizes, and is often competitive with
vendor-tuned libraries for specific machines.
Operating Systems
Added : 1997-11-27 Amended: 1999-06-21 Licensing : GNU copyleft
Add a comment
FRUCTOSE - Andrew Marlow's C++ Unit Testing Framework
C++ unit testing framework, very cutdown compared to CppUnit but very simple and implemented entirely using header files.
Operating Systems
- Any after making small changes...
Compilers
- Any standard C++ compiler
Added : 2008-07-29 Amended: 2008-07-29
Add a comment
GAGS - C++ class library for Genetic algorithms
It includes classes for chromosomes and populations.
Library:binary chromosome representation. Genetic operators:
mutation, xOver (n-pt and uniform), remove/reinsert. Selection
operator: steady state, tournament, roulette wheel. Perl and/or tcl/tk
graphic front-end. Graphics through gnuplot. Training from file.
Application generator: it needs only an ANSI-C definition of the
fitness function. It's parsed, and a program that runs a GA on it is
generated.
Operating Systems
Compilers
Added : 1996-02-08 Amended: 1996-02-08 Licensing : Copyrighted freeware
Add a comment
GAME - Parallel Genetic Algorithms Theory and Applications
Edited by: J. Stender
Publisher: IOS Press
Frontiers in Artificial Intelligence and Applications series
1993, 225 pp; hard cover; w/ disk
ISBN: 90 5199 087 1
Price: $85, 59 pounds sterling
The first version of the GAME Virtual Machine software and two examples that come with the book can be obtained also by ftp.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
GECOOL 2.1 - A reworking and enhancement of Texas Instrument's "C++ Object Oriented Library"
By some programmers at General Electric.
Also available is JCOOL. Its main difference from COOL and GECOOL is that it uses real C++ templates instead of a similar syntax that is preprocessed by a special 'cpp' distributed with COOL and GECOOL.
Some users behind "firewalls" have had difficulty accessing the ftp site.
Added : 1995-01-01 Amended: 1996-02-05 Licensing : Not known
Add a comment
Generic Linked List Package
A package to define, create, update query and delete one or more (nodes of) linked lists, to sort linked lists, and so on. The user doesn't have to take care of allocating a number of bytes for a node, inserting on the right place, deleting and freeing a node and so on.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
GiNaC - Symbolic computation embedded in C++
GiNaC is an iterated and recursive acronym for GiNaC is Not a CAS, with
CAS standing for Computer Algebra System. It is designed to allow the
creation of integrated systems that embed symbolic manipulations together
with more established areas of compute r science (like computation-
intense numeric applications, graphical interfaces, etc.) under one roof.
It is distributed under the terms and conditions of the GNU general public
license GPL.
It implements a class hierarchy with the basic classes needed to create
symbolic expressions, including abritrary length/precision numbers
(drawing from the CLN library). The classes provide basic symbolic
manipulations as well as memory management through reference counting,
disk-I/O, etc. Using the Cint C/C++ interpreter it is even possible to
use it in an interactive manner.
It is written in standard C++ and should compile on any compliant
compiler. Since it has to be linked with CLN, however, it is somewhat
tricky (but not impossible) to do so on other compilers than GCC.
Operating Systems
Compilers
Added : 2001-01-31 Amended: 2001-01-31 Licensing : GNU copyleft
Add a comment
gleem - OpenGL Extremely Easy to use Manipulators
A C++ library of Open Inventor-style manipulators (3D widgets) for direct interaction with a 3D scene. Written using OpenGL and GLUT and very easy to incorporate into an existing OpenGL/GLUT application. Developed on Irix, but should be easily portable.
NOTE: this version of gleem is no longer being maintained. The current
sources are in the jogl-demos workspace at the url below and are covered under the BSD license.
Operating Systems
Compilers
Added : 1998-12-03 Amended: 2008-07-29 Licensing : GNU copyleft
Add a comment
GNU Plotutils - A library for exporting 2-D vector graphics in many file formats.
The GNU plotutils package contains software for both programmers and technically oriented users. Its centerpiece is the libplot/libplotter, a C/C++ function lib for exporting 2-D vector graphics in many file formats (including WebCGM format, recommended by the graphics Activity of the W3 Consortium). It can also do vector graphics animations, has thread-safe APIs, and supports the use of Posix threads (if available). The program also contains the following command-line programs for plotting scientific data:
- graph- plots 2-D datasets or data streams in real time
- plot- translates metafile formats to any of the other formats
- tek2plot- translates legacy Tektronix data to any of the above formats
- pic2plot- translates the pic language to any of the other formats
- plotfont- displays character maps of the fonts available in the above formats.
- spline- spline interpolation of data
- ode- numerically integrates ordinary differential equations
Operating Systems
- Linux
- Sparc
- Sun
- IBM AIX
- Solaris
- HP UX
- Unix
- X Windows
- OSF
- SYSV
- Convex
- Dec OSF/1
Compilers
- GCC
- Dec CC
- SGI CC
- Sun CC
- IBM xlC
Added : 1999-07-01 Amended: 2008-07-22 Licensing : GNU copyleft
Add a comment
Grail - Symbolic computation with finite-state machines and regular expressions
Supports conversion of FSM to RE and back and also conversion to and from finite languages. Supports many algebraic operations on FSM and RE. All objects are templates, so you can parameterize FSM or RE to use any C++ class or base type as its alphabet type (hence, Mealy machines are supported by using ordered pairs as the alphabet type).
Compilers
- IBM xlC
- Cfront
- Watcom C++
- IBM Cset++
Added : 1996-05-22 Amended: 2008-07-29 Licensing : Education
Add a comment
Grayscale Image Processing
Enhanced grayscale image processing class library and verification code, source code
Keywords: image arithmetics, median filtration, morphological
filtration, convolution, lazy image, TIFF, plasma fractals,
nondeterministic filter, class library
Operating Systems
- PC 32-bit Windows
- rs6000-aix-3.2
- Solaris
- Dec Alpha
- Mac
- HP 9000
- FreeBSD
- Concurrent Maxion 8000/RTU
- BeOS
Compilers
- GCC
- Sun CC
- MetroWerks CodeWarrior
- Borland C++
Added : 1996-05-22 Amended: 1997-03-19 Licensing : Public Domain
Add a comment
GRETA Regular Expression Template Archive - Fast, Perl 5-compliant regular expression template library for C++
GRETA is a (yet another) C++ template library for regular expression pattern matching. It was developed in Microsoft Research. GRETA's distinguishing features are: high performance, Perl compatibility, and clean STL integration. You can perform matches with any bidirectional iterator type, or on a std::basic_string, or on a C-style NULL-terminated string. It supports wide and narrow character types (wchar_t and char) and respects the C locale setting (as specified by setlocale()). GRETA lets you customize regular expression syntax via a syntax module template parameter. Perl 5 and Basic POSIX syntax modules are included.
Operating Systems
Compilers
Added : 2002-06-21 Amended: 2004-06-15 Licensing : Non commercial
Add a comment
GTAD - Graph Toolkit for Algorithms and Drawings
The GTAD (Graph Toolkit for Algorithms and Drawings) is an attempt to construct a set of flexible, reusable, and efficient C++ implementations of graph representations and algorithms (including drawing/layout). It is developed with the generic programming paradigm and under the same principles of the BGL (Boost Graph Library).
Operating Systems
Compilers
Added : 2008-09-16 Amended: 2008-09-16 Licensing : Open Source
GTAD - Graph Toolkit for Algorithms and Drawings- Main website
- Submitted by:Leandro Melo
Add a comment
GTL - The Graph Template Library
The Standard Template Library (STL) is supposed to become a
part of the C++ standard library and therefore is an ideal basis
when writing portable programs.
Unfortunately, STL has no support for graphs and graph
algorithms. However, graphs are widely used to model complex relational
structures.
Since we are intensively working with graph algorithms and Graphlet, we decided to
implement GTL, a graph library based on STL. For the design of GTL's API the
API of LEDA has served as a
basis. GTL contains the classes needed to work with graphs, nodes and edges
and some basic algorithms as building blocks for more complex graph
algorithms. Further algorithms are under work.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- HP UX
Compilers
Added : 2000-04-26 Amended: 2000-04-26 Licensing : Copyright (other)
Add a comment
GzipFile - MFC C++ objects compressed to disk.
Gzipfile compresses MFC serialized document data. The only code changes required are
a few include statements and macro instantiations in a CDocument derived class.
Uncompressed documents can still be loaded and all saved documents are compressed.
The compression engine is mature, widely used and extremely fast.
Operating Systems
Compilers
Added : 1998-07-24 Amended: 2003-07-29 Licensing : Shareware
Add a comment
Hans Boehms GC - Hans Boehms free Garbage Collector
Conservative garbage collector for C/C++. Several interfaces are provided. Can be used as a transparent malloc replacement, or implements much of the Detlefs/Ellis C++ GC proposal, or can be used as an allocator for SGI's STL.
Can be used with the large majority of operating systems that support 32- or 64-bit flat addressing, i.e. almost all UNIX variants, win32, and a few others.
Operating Systems
Added : 1995-01-01 Amended: 2008-07-29 Licensing : Copyrighted freeware
Add a comment
High level vector operations
Contains the Aitken-Lagrange interpolation over the table of uniform or arbitrary mesh, and the Hook-Jeevse multidimensional minimizer. Precision single/double.
Obsolete - now part of the Lin-alg package.
Added : 1995-01-01 Amended: 2008-11-04 Licensing : Not known
Add a comment
HugeCalc - Arbitrary accuracy large integer calculations
HugeCalc is a package for performing long integer calculations with
up to 300 digits of accuracy. The package allows C++ programmers to
define objects of type HugeInt and use them just like ordinary
integers to perform addition, subtraction and multiplication
operations. Most of the ordinary mathematical operators are supported
in the ordinary fashion. Includes object modules for Borland C++,
example programs and complete documentation. Shareware version
contains object modules for tiny, small and medium memory models only.
Operating Systems
Compilers
Added : 1997-11-27 Amended: 1997-11-27 Licensing : Shareware
Add a comment
ICU - Unicode Support Library
Provide Unicode Support for C++, C and Java Short list of features: Character set conversions, Unicode Strings, collation, Unicode character properties access, locale management, resource management, calendars, date/time, message formatting, language transliteration, text layout, regular expressions. Separate APIs for C++ and C.
Licence restrictions: Open Source, X license, http://www.x.org/terms.htm
Operating Systems
- Linux
- PC 32-bit Windows
- IBM AIX
- Solaris
- HP UX
- Dec Alpha
- Mac
- FreeBSD
- IBM OS390, OS400
- IA64 Windows XP
Compilers
- Visual C++
- GCC
- Sun CC
- IBM xlC
- HP C++
- Sparcworks
Added : 2002-03-08 Amended: 2008-07-29 Licensing : Copyrighted freeware
Add a comment
Image Magick - Image manipulation application and libraries
Jeff Donner writes :-
It isn't C++ but C, but it's so cross-platform and comprehensive an
image package, I thought you should know about it. If you look
at their page you don't see anything about the libs, but they
(and all source) are included with the app. They're free,
(commercial use OK, copyright only) and useful.
ImageMagick does a pretty thorough job of reading & writing most image
formats.
Added : 1998-12-03 Amended: 2003-03-13 Licensing : Copyrighted freeware
Add a comment
ImageLib - An Image Processing C++ Class Library
ImageLib is a C++ class library providing image processing and related
facilities.
The main set of classes provides a variety of image and vector types,
with additional modules supporting scalar and vector quantisation, wavelet
transforms, DCT transforms, and simple histogram operations.
Tested on Solaris and FreeBSD, but should work with
most other UNIX versions. Most features are not operating
system specific.
Operating Systems
Compilers
Added : 1998-07-27 Amended: 2000-04-26 Licensing : GNU copyleft
Add a comment
iMatrix - Matrix classes implementation
Keywords: matrix, matrix operation, C++, class template .
Implementation of a matrix and some matrix operation based on class-template concept. The key different from others is the implemenation of the separate matrix operation as separate class-template. A few small particularities would be effective.
Operating Systems
- Linux
- PC 32-bit Windows
- PC Windows
Compilers
- Visual C++
- GCC
- Borland C++
Added : 2000-05-25 Amended: 2000-05-25 Licensing : Public Domain
Comment from : F. Beekhof on 2008-09-10
Link is dead.
Add a comment
Intel Threading Building Blocks - Intel TBB offers a rich and complete approach to expressing parallelism in a C++
Intel® Threading Building Blocks (TBB) offers a rich and complete approach to expressing parallelism in a C++ program. It is a library that helps you take advantage of multi-core processor performance without having to be a threading expert. Threading Building Blocks is not just a threads-replacement library. It represents a higher-level, task-based parallelism that abstracts platform details and threading mechanisms for scalability and performance.
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
Intel Threading Building Blocks - Intel TBB offers a rich and complete approach to expressing parallelism in a C++- Intel TBB Homepage
- Submitted by:Kizza George Mbidde
Add a comment
InterViews - GUI class library developed by Stanford University
Make sure you get v3.1 or later. This library contains excellent examples of multiple inheritance used profitably. I understand that InterViews development will not continue past the current version; author Mark Linton is concentrating his efforts on the X Consortium Fresco project, which should show up in X11R6.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
iof - Replacement for printf/scanf in C++
Many people wonder how to get the same effects using C++ streams as they would using printf/scanf. They are usually pointed to STL manipulators with std::setw etc.
There is at least one: the iof library at http://iof.sourceforge.net. There is also the boost format library (http://www.boost.org) but it doesn't support scanf-like input.
Operating Systems
- Linux
- PC 32-bit Windows
- Unix
- PC Windows
Compilers
Added : 2006-12-01 Amended: 2007-04-10 Licensing : Copyrighted freeware
Add a comment
ISC366.ZIP - Interrupt Service Class (v. 3.66)
Allows hooking of interrupts (software and hardware) into classes, comes with classes for staying resident, for serial communication (interrupt driven), and like-wise classes. Comes with full source code!
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Public Domain
Add a comment
Ivf++ - C++ OpenGL visualisation library
Ivf++ is a simple OpenGL based C++ visualisation framework. The main
goal with Ivf++ was not to create a complete visualisation library, but
create a foundation of classes that can be extended in simple ways.
Ivf++ contains a simple gui framework based on FLTK. Ivf++ can also be
used together with other GUI libraries using provided widgets. Currently
Win32, FLTK, and MFC are supported.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
Compilers
Added : 2000-04-26 Amended: 2008-07-29 Licensing : GNU copyleft
Add a comment
ivmaps - C++ libraries for manipulation and visualization of geo-spatial map data
ivmaps is a set of C++ libraries for reading, writing, processing,
painting, viewing, and querying map data, with 2D and 3d map viewers
that support DEM elevation data, DLG and VPF vector map data, and DRG
and DOG raster. Compiles on ivtools and PROJ-4.3.3 from the USGS.
Optionally can be compiled to use ACE, clippoly, Vtk, and Mesa.
Added : 1998-07-22 Amended: 1998-07-22 Licensing : Freeware
Add a comment
ivtools - C++ frameworks for graphical editors and spatial data servers
ivtools is a set of C++ frameworks for building graphical editors,
spatial data servers, and combinations of both. It incorporates an
alternate distribution of the InterViews and Unidraw libraries last
published by Stanford University and Silicon Graphics in release 3.2a.
New C++ libraries augment the baseline drawing editor mechanism of
Unidraw with various features, which are then used in drawing editors
evolved from idraw: a network-ready editor, a multi-frame flipbook
editor, and a hiearchical node-graph editor. Optionally can be
compiled to use ACE and clippoly C++ libraries.
Added : 1998-07-22 Amended: 1998-07-22 Licensing : Freeware
Add a comment
ixlib - c++ tools library
ixlib is a C++ tools library based upon the STL. It provides garbage collection, a small well-integratable JavaScript interpreter, linear algebra components (e.g., linear solver, LU decomposition), planar geometry, polygons, automatic arrays, rasterization for geometric primitives and polygons, regular expressions and XML parsing (non-DTD). Its main design goals were simplicity and small size.
GNU C++ 2.95.2 (linux and mingw32) tested, any ISO-compliant compiler should work.
Compilers
Added : 2001-01-22 Amended: 2001-01-22 Licensing : GNU copyleft
Add a comment
jjLibrary - C++ Pattern Library
jjLibrary is a C++ library which provides - jjPattern : Pattern-based container class (Hash, Tree, List, Graph)
- jjErrno : error handling, and
- jjCGI : CGI library
jjPattern has unique feature which can be compared to STL.
Operating Systems
- Linux
- HP UX
- could run on any OS, but not tested
Compilers
- GCC
- HP C++
- could be compiled, but not tested
Added : 2004-09-06 Amended: 2004-09-06 Licensing : GNU copyleft
Add a comment
JPTUI - Textual user interface for DJGPP
Textual user interface for DJGPP 2, v4.0e
JPTUI is an object-oriented textual user interface. Designed for C++, it
provides a simple to use application programming interface. JPTUI is
available for DJGPP 2 and Borland C++ 4.
I am told that this library is no longer on Simtel, but there is an older version stil available via ftp from a different site.
Operating Systems
Compilers
Added : 1998-02-24 Amended: 2000-04-26 Licensing : Copyrighted freeware
Add a comment
JThreads/C++ - Java-like Threads for C++
JThreads/C++ is the short-form of "Java-like Threads for C++". JThreads/C++ is a high-level thread abstraction library that gives C++ programmers the "look & feel" of Java threads.
JThreads/C++ is free for non-commercial use and available with its full source code.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Solaris
- HP UX
- Unix
- Dec Alpha
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- HP C++
Added : 1998-02-24 Amended: 1998-02-24 Licensing : Copyright (other)
Comment from : Andrew Marlow on 2008-07-29
OOC was acquired by IONA who incorporated JThreads/C++
into Orbacus. Thus JThreads/C++ is no longer available separately
(except via old copies in various free software reposistories)
Add a comment
JX - Application framework and widget library for use with X Windows
JX is a full-featured C++ application framework and GUI class library for X Windows. It provides support for all facets of application development, including distributed applications, and aims to combine the best of MacOS and NeXTSTEP. It is built directly on top of Xlib and has been carefully optimized for performance.
Operating Systems
- Linux
- Sparc
- SGI Irix
- Sun
- Solaris
- HP UX
- Unix
- X Windows
- Dec Alpha
- Dec Ultrix
Compilers
Added : 1997-12-06 Amended: 2008-07-29 Licensing : Copyright (other)
Add a comment
Kalman - A class library for Kalman filtering
Contains lumatrix.c++ etc.
Compilers
Added : 1995-01-01 Amended: 2003-10-20 Licensing : Not known
Add a comment
kplib - Basic but highly optimised C++ library
The library consists of the following classes:
- KPList<T>
A two-way list that assumes nothing about its elements except they
correctly implement a default constructor and operator=().
- KPComparableList<T>
A subclass of KPList<T> which also assumes its elements can be
compared with operator==(), thus providing more powerful methods.
- KPSortableList<T>
A subclass of KPComparableList<T> which also assumes its elements
can be compared with operator<(), thus providing more powerful
methods.
- KPReadOnlyIterator<T>
An iterator with pointer-like semantics which can iterate over any
of the above lists for reading purposes only.
- KPIterator<T>
An iterator with pointer-like semantics which can iterate over any
of the above lists for the purpose of reading, modifying, deleting,
or adding elements to or from arbitrary locations in the list.
- KPArray<T>
A dynamically-sizable array that assumes nothing about its
elements except they correctly implement a default constructor
and operator=().
- KPComparableArray<T>
A subclass of KPArray<T> which also assumes its elements can be
compared with operator==(), thus providing more powerful methods.
- KPSortableArray<T>
A subclass of KPComparableArray<T> which also assumes its elements
can be compared with operator<(), thus providing more powerful
methods.
- KPQueue<T>
A queue that assumes nothing about its elements except they
correctly implement a default constructor and operator=().
- KPPriorityQueue<T>
A priority queue that assumes its elements correctly implement
a default constructor, operator=(), operator==() and operator<().
- KPStack<T>
A stack that assumes nothing about its elements except they
correctly implement a default constructor and operator=().
- KPSet<T>
A set that assumes its elements correctly implement a default
constructor, operator=(), operator==() and operator<(). All
union, intersection, difference and superset/subset operations
are of order O(n).
- KPBag<T>
A bag that assumes its elements correctly implement a default
constructor, operator=(), operator==() and operator<().
- KPString
A string class which implements basic string functions and more
(such as tokenizing methods which return KPList<KPString>). This
class uses reference counting and copy-on-write semantics to
insure that it as efficient as possible.
Operating Systems
Compilers
- GCC
- MetroWerks CodeWarrior
- Watcom C++
Added : 2000-04-26 Amended: 2000-12-22 Licensing : Public Domain
Add a comment
Lapack++ - C++ version of some of lapack fortran code
Developmental version of proposed C++ version of lapack. Contains blas.h++ etc, but needs Fortran library to link.
Documents : Overview paper (9 pages postscript), release notes (7 page ps)
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
LEDA - A Library of Efficient Data Types and Algorithms
Provides basic data-types like lists, stacks, queues, trees, sets, partitions, priority queues and a few others. These are parameterizable classes, you may add your own datatype and have a priority queue ... An important datatype is a graph, these are also parameterizable and there are useful algorithms for them like shortest path, transitive closure, matching, maximum flow, spanning tree and others, we have implemented a few algorithms for dealing with perfect graphs, but these ar not part of the standard library. The latest part deals with computational geometry.
It can be used with C++ compilers which understand templates
Compilers
Added : 1995-01-01 Amended: 1999-06-04 Licensing : Education
Add a comment
libCON - C++ Game Programming Library
This is an easy-to-use C++ API for creating games, graphics, and sounds.
It is built over DirectX 6.0 and is meant to run in Windows 95/98 using
16-bit display modes. The library supplies a multi-level API to these
resources: keyboard, mouse, joystick, and the screen as a 2D drawing
surface and a target for 3D rendering. This library comes as a packaged
DLL, so you don't need to have the DirectX SDK at all, but rather only
the runtime components.
Changes: New features including AVI, mp3, fog, dynamic textures, dynamic 3D lights.
Operating Systems
Compilers
Added : 1999-07-21 Amended: 2000-08-09 Licensing : Non commercial
Add a comment
libg++ - (GNU's C++ library)
Libg++ is probably only relevant if you are using g++; and if so, you already know about it. It does have some good implementations of bignum's and of regular expressions and strings.
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
libLCS - Library for Logic Circuit Simulation
libLCS is a hardware description library in C++ aiming to be as powerfull and easy as the Verilog HDL. It currently supports logic gates, flipflops, clock, and facilitates delays, continuous assignments and variable value dumping into VCD files.
libLCS is a library for Logic Circuit Simulation developed in 100% c++. The ultimate aim of LCS is to become a thorough hardware description library, matching the functionality of the Verilog hardware description language, while keeping the usage (and syntax) as intuitive as possible. Currently, it supports simulation of digital systems containing logic gates, flipflops, clock, user defined modules, and facilitates propogation delays, continuous assignments and dumping value changes into VCD files.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Solaris
- Unix
- PC Windows
Compilers
Added : 2007-06-27 Amended: 2007-06-27 Licensing : GNU copyleft
Add a comment
libpropc++ - Add properties to C++ (widget.color = "red";)
- variable like syntax for accessing properties;
- only two lines to create a property (having get/set functions);
- aimed to implement binding properties
(http://ex-code.com/articles/binding-properties.html);
- documented.
Template library for properties in C++ (like this:
widget.color = "red"; to change widget color).
class Widget {
...
Color get_color();
void set_color(Color value);
prop::Property<Widget, Color,
&Widget::set_color, &Widget::get_color>
color;
...
};
Optionally uses libsigc++ to notify
about property value changes.
It will support binding several properties together to change accordingly each other.
Article: Binding
Properties of Objects
Operating Systems
Compilers
- Any standard C++ compiler
Added : 2004-08-31 Amended: 2004-08-31 Licensing : GNU copyleft
Add a comment
libsigc++ - Callback Framework for C++ (signal/slot)
Libsigc++ implements a full callback system for use in widget libraries, abstract interfaces, and general programming. Originally part of the Gtk-- widget set, libsigc++ is now a seperate library to provide for more general use. It is the most complete library of its kind with the ablity to connect an abstract callback to a class method, function, or function object. It contains adaptor classes for connection of dissimilar callbacks and has an ease of use unmatched by other C++ callback libraries. Ligsigc++ is licensed under the LGPL.
Operating Systems
Compilers
Added : 1999-06-15 Amended: 1999-06-15 Licensing : GNU copyleft
Add a comment
Lily (LIsp LibrarY) - Gives C++ programmers the capability to write LISP-style code
I think Lily will be useful in academia for instructors who want to teach artificial intelligence techniques with C++. The garbage collection mechanism employed by Lily is slow which will make it unattractive for commercial use.
Documentation is minimal. The "Lily User's Guide" (in file lily.txt) provides a good overview of the architecture of Lily -- the document is unfinished. All of the example programs are from Winston's book "LISP Second Edition" so you will be much better off if you have a copy. Steele's "Common LISP" describes the behavior of the LISP functions.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : GNU copyleft
Add a comment
LinAlg - C++ Linear Algebra and Optimization classlib
- defines Matrix,Vector, subMatrices, and LAStreams over real domain;
- contains efficient and fool-proof implementations of level 1 and 2
BLAS (element-wise operations and various multiplications),
transposition, determinant evaluation and matrix inverse.
- There are operations on a single row/col/diagonal of a matrix.
- Distinct features of the package are Matrix views, various Matrix
streams, and LazyMatrices. Lazy construction allows one to write
matrix expressions in a natural way while imposing no hidden
temporaries, no deep copying, and no reference counting.
- LinAlg stresses Matrix streams, which provide a sequential
view/access to a matrix or its parts.
LABlockStreams may
span over an arbitrary rectangular block of a matrix, including the
whole matrix, a single matrix element, and all other block sizes in
between. Matrix streams are seek-able and
subrange-able. A stream or a substream are always created in-line;
they do not allocate any heap storage, and are safe.
- The package implements Singular Value Decomposition (SVD), and its
application to solving
Ax=b, where matrix A
does not have to be square, and b does not have to be a
thin vector.
- The package also implements Brent's univariate optimization and
root finding, Hooke-Jeeves multidimensional optimization of functors,
and Aitken-Lagrange interpolation.
- Every feature is extensively tested in the validation code (included).
Current Version:
4.3, December 25, 1998
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- IBM AIX
- Solaris
- HP UX
- Unix
- Dec Alpha
- Mac
- BeOS
Compilers
- Visual C++
- GCC
- SGI CC
- Sun CC
- MetroWerks CodeWarrior
- egcs
Added : 1996-05-22 Amended: 1999-06-04 Licensing : Public Domain
Add a comment
Lodestar Database - Client/Server - High performance, non-relational database engine
Lodestar Database is a super fast, non-relational database engine which comes in either single user or network enabled, multi-user client/server versions. The network version comes with either a Novell server or an NT server with clients for Windows 95/98/2000 and Windows NT. Both versions have libraries for Borland C++, Delphi, C++ Builder and Visual Basic.
Lodestar Database has been in use for 10 years in the financial industry and has contributed to huge run time improvements in Credit Union software used throughout the US, but is just now being released to the public as shareware. Credit Unions with as many as 10 branches and thousands of users are currently using our database engine with sub-second response times. Statement runs are 35 minutes for a 35,000 member credit union with over 100,000 accounts and can be run while the credit union is open with virtually no degradation in online response time.
Operating Systems
Compilers
Added : 2000-04-26 Amended: 2000-04-26 Licensing : Shareware
Lodestar Database - Client/Server - High performance, non-relational database engine- Lodestar Database Home
- Submitted by:dbaker@lodestardatabase.com
Add a comment
Loki - Loki is a C++ library of designs.
Loki is a C++ library of designs, containing flexible implementations of common design patterns and idioms.
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
Loki - Loki is a C++ library of designs.- Loki Homepage
- Submitted by:Kizza George Mbidde
Add a comment
Libraries available to download (M-P)
macstl - Modern generic programming for SIMD and the Mac
The C++ header library designed to bring the Macintosh into the
world of modern generic programming.
Generic programming is the art -- some say, the black art -- of
making software components super-reusable and yet ultra-efficient. Our
tool is the C++ template, and our result is code nearly as fast as
hand-coded machine language.
macstl was inspired by the premier generic library, the Standard
Template Library (now part of the C++ Standard Library), but with a
distinct Macintosh flavor. Many components let you use low-level Mac OS
X functionality like SIMD acceleration and memory copy-on-write easily
and intuitively.
Although macstl started on the Mac, it now has a cross-platform
look. Over 14,000 source lines of code compile cleanly on different C++
compilers. The SIMD classes work seamlessly on PowerPC’s running Mac OS
X and Pentium’s running Windows XP.
macstl provides these sets of classes:
- valarray -- numeric arrays highly optimized for SIMD architectures
like Altivec and MMX/SSE/SSE2/SSE3.
- vec -- a portable, extensible SIMD toolkit with intuitive, fast
functions; the trig functions and integer division can’t be beat so
far...
- mach -- allocator and partially specialized vector for fast
OS-level copy-on-write.
- core -- adapting Core Foundation and Foundation classes for
STL.
- com -- interface pointer and a fast, lightweight server
implementation for Microsoft COM and Apple CFPlugIns.
- mmapping -- treating files as STL containers.
The library is open-source and free when derived code is
reciprocated; for others, licensing is $99 (Personal) or $499
(Corporate).
Operating Systems
Compilers
- GCC
- MetroWerks CodeWarrior
- Visual C++ .NET
Added : 2003-07-23 Amended: 2005-02-08 Licensing : Copyright (other)
Add a comment
MatClass - a C++ class for numerical computation
Very complete.
- Offers a general purpose dense, real matrix class
- Has a family of decomposition classes based on LU, Cholesky, Householder QR and SVD
- Has a family of OLS regression classes based on above decompositons
- A family of special function classes
- Random number class
- Has a simplified I/O structure
Documents : Very thorough tex manual, with discussion of design philosophy. Currently the manual does not cover all the features of the I/O.
Added : 1995-01-01 Amended: 2008-07-29 Licensing : Not known
Add a comment
MATCOM - Matlab to C++ translator and matrix library
MATCOM V2 translates Matlab source files (M-Files) to C++ source code. The resulting code is linked with the supplied C++ Matrix class library to create MEX files or stand alone executables.
The C++ code and library can be integrated in products, royalty free, saving the need to translate the algorithm prototype.
Compiled code runs significantly faster than the original interpreted source.
Source code created highly resembles the original code using C++ language features. The compilation is fully automated by a smart project manager.
Matrices of doubles, floats, ints and chars are supported, providing lower memory usage for many applications, especially Signal and Image Processing.
Evaluation version (fully functional, 30 days limited) is available for free download from the Web page. Information packet is also available by e-mail and fax.
An introductory price for MATCOM V2 is 300$ for a single user license, with discounts on quantity and for academic institutes. Prices are valid until Jan 1, 1997.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- SGI Irix
- Sun
- IBM AIX
- Solaris
- HP UX
- OS/2
- Dec Alpha
- PC Windows
- Dec OSF/1
Compilers
- DJGPP
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- IBM xlC
- Borland C++
- Watcom C++
- HP C++
- EMX
Added : 1996-02-05 Amended: 1996-08-08 Licensing : Commercial
Add a comment
Matrix - A C++ Matrix class
A C++ Matrix class, including a matrix implementation of the backward error propagation (backprop) algorithm for training multi-layer, feed- forward artificial neural networks. A C++ interface to existing C and FORTRAN matrix libraries. LaTeX manual.
Added : 1995-01-01 Amended: 2008-07-29 Licensing : Not known
Add a comment
matrix - C++ High Speed Matrix class
Matrix is an efficent C++ class library for doing matrix computation on windows NT. The main goal of this package is : - easy to use. - as fast as fortran code. This speed is achieved using the Math Kernel Library of INTEL.
Actually features : - works with double dense matrices, - can make an +, -, *, / operator efficiently, - is as powerful as FORTRAN code, - have comparison operators, - can do LU, Cholesky, Householder QR, and SVD decompositions, - have build-in matlab functions, - have a standard interface to BLAS so that everyone who wanted to use under another platform could manage it easely.
Only denses matrices of double are supported but it is planned to be extented to other matrices and variables.
Operating Systems
- PC DOS
- PC 32-bit Windows
- PC Windows
Compilers
Added : 1999-06-21 Amended: 1999-06-21 Licensing : Public Domain
Add a comment
Matrix class - Very complete matrix generic class
The Matrix Library is designed for signal processing and data manipulation. The Matrix class is written with generic code, allowing you to use the matrix operators on various data types, including the Complex data type (default is double). One of its useful features is the ability to plot matrix data using the free software gnuplot. You can download the postscript documentation matrix.ps.gz [133 Ko] alone or dowload the complete package (including the documentation and the Complex library) matrix.tgz [164 Ko].
Operating Systems
- Linux
- Sparc
- Sun
- IBM AIX
- Solaris
- Unix
- X Windows
Compilers
Added : 1997-11-27 Amended: 1997-11-27 Licensing : Public Domain
Add a comment
Matrix11 - C++ matrix template class library (source)
This matrix template class can be used to perform common matrix
operations in your C++ program like any other built-in data types.
Though I have written this class in compliance with ANSI/ISO C++
standard, you may encounter some compilation problem, particularly with
older version of compilers, because all standard features of namespace,
exception and template may not be fully supported in your compiler. In
that case you may just want to disable any or all the above features by
defining the appropriate macros. I have included full source code as
inline functions in the header file so you can modify it if necessary.
The implementation is not optimized for performance and memory usage.
So it is not suitable for large and sparse matrices. But for small and
medium size matrices these should not be a problem, keeping in mind the
present generation of powerful computers.
Special requirements: An up-to-date C++ compiler.
Changes: Some conditional compilation code has been added for different
compilers.
Added : 1998-07-22 Amended: 1999-06-04 Licensing : GNU copyleft
Add a comment
Matthew's Galib - A C++ Genetic Algorithm Library
GAlib is a C++ library that contains a set of genetic algorithm objects. With GAlib you can add genetic algorithm optimization techniques to your program using any data representation and many different genetic algorithm operators. The library includes genomes based upon binary string, array, tree, and list data structures, and you can create your own genomes by simply deriving a new class from the base genome and any data structure that you may be using already. Many scaling, selection, termination, initialization, mutation, and crossover methods are included in the library, and you can override any of the defaults with operators.of your own design.
Operating Systems
- SGI Irix
- PC
- IBM AIX
- Dec MIPS Ultrix
- Solaris
- HP UX
- Mac
Compilers
- GCC
- Cfront
- DCC
- MetroWerks CodeWarrior
- Symantec THINK C++
- Borland C++
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Non commercial
Add a comment
MetaKit - C++ classes for persistent structured data
General purpose C++ classes for highly-structured persistent containers. This library can be used as compact/fast database for many apps/utilities. Some key features are: uncorruptable data files, an efficient file format, "on-the-fly" restructuring, and portability - all using a very simple API. The windows release includes DLLs, with many C++ examples. Static libs and full source code to build royalty-free self contained apps is available.
Recent changes include
- production-grade interfaces to Tcl and Python
- SQL parser interface, currently in alpha
Visit the website for FAQs, API docs, and to download any of over a dozen ports (as tar/gzip, zip, stuffit, and Linux RPM).
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Sparc
- SGI Irix
- Sun
- IBM AIX
- Solaris
- Unix
- Dec Alpha
- PC Windows
- Mac
- BeOS
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- IBM xlC
- MetroWerks CodeWarrior
- Borland C++
- Watcom C++
- Symantec C++
Added : 1998-07-27 Amended: 2000-07-28 Licensing : Open Source
Add a comment
MGUI - GUI lib & designer for DOS/Win/Unix (Win32)
MGUI is cross-platform C/C++ GUI library for DOS, Windows 3.1, Win32 and
Unix X-Window environments. It offers all typical GUI objects like menu,
push button, editable text fields with Cut & Paste capabilities. A
manager object automatically positions and resizes its children, making
layout construction simple. Supports 16, 256, 32K and 64K colors under
DOS, up to 16 million in Windows and X-Window environments. A designing
tool (MGUI Designer) is provided for helping programmers in the
construction and maintenance of the application windows layout.
Operating Systems
Compilers
- Visual C++
- Borland C++
- Watcom C++
- RSXNT
Added : 1998-12-03 Amended: 2008-11-04 Licensing : Non commercial
Add a comment
molbio++ - A C++ library for molecular biosequence analysis
Major features include:
- classes and services for reading and writing sequence data in the following formats:
- Genbank Flatfile
- EMBL / SwissProt
- GCG / Wisconsin
- Fasta / Pearson
- PIR
- NCBI Retrieve Server (read-only)
- limited parsing of fields and features in biosequence files
- storing amino acid or nucleic acid sequences
- iterating over a biosequence
- calculating and storing counts or frequencies of amino acids or nucleotides
- device-independent graphics, via GCG's FIGURE program
- translating nucleotide sequences into proteins using the universal genetic code or modifications thereof.
- parsing BLAST output
- calculating pI and molecular weight of proteins
- amino acid hydropathy values of Kyte & Doolittle
Added : 1995-01-01 Amended: 2008-07-29 Licensing : Not known
Add a comment
Motif++ - A wrapper-library, that encapsulates Motif widgets in C++ classes
All resources of these Widgets can now be set through member-functions, while objects can be used in callback-functions.
The July 93 release offers:
- Easy configuration (even for non-imake-gurus)
- Full support for X11R4 as well as X11R5
- Full support for Motif 1.1 and Motif 1.2 (including Drag and Drop)
- Support for Xbae widgetset
- Support for the xpm library
- Percentage widgets
- Generic Widget
- Support for WCL Table Widget
- A library for easy manipulation of Visuals
- A library that reads PBMPLUS files, as well as providing an extension to 3D of the format.
- Lots of demos and testfiles (even somewhat useful programs)
- An article I wrote on the usage of Motif, X and C++, previously posted on Usenet.
- All filenames smaller than 14 characters
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
MozillaV3 CGI C++ Library - CGI script library
This public domain portable C++ library is the basis of a CGI. It contains all external aspects that should be required by a CGI script, from options to hash containers. It provides one minute implementation of hours of work and allows optimal performance and ease of use. Writing a guestbook using this library which can be used by as many people as wanted is a question of minutes! This Mozilla-V3 library is in a state of providing all internal structures to write virtually any kind of html output CGI.
This library was written for an HTML based forum (called aGNeS) that is successfully running for hundreds of users all over the world. It is open for all suggestions and modifications.
Compilers
Added : 1998-02-24 Amended: 1998-02-24 Licensing : Public Domain
Add a comment
MozillaV4 CGI C++ Library - Web HTML code generation library
This public domain portable C++ library is the basis of a CGI. It contains all external aspects that should be required by a CGI script, from options to hash containers. It provides one minute implementation of hours of work and allows optimal performance and ease of use. Writing a guestbook using this library which can be used by as many people as wanted is a question of minutes! This Mozilla-V3 library is in a state of providing all internal structures to write virtually any kind of html output CGI.
This library was written for an HTML based forum (called aGNeS) that is successfully running for hundreds of users all over the world. It is open for all suggestions and modifications.
Unfortunately, the senders mail to me was truncated, so I do not know where you can get this library. [Later: Andy.Law@bbsrc.ac.uk sent me the URL below.]
Compilers
Added : 1997-12-04 Amended: 1998-07-24 Licensing : Public Domain
Add a comment
mpatrol - A library for controlling, tracing and profiling dynamic memory allocations.
A link library that attempts to diagnose run-time errors that are caused by the wrong use of dynamically allocated memory. Along with providing a comprehensive and configurable log of all dynamic memory operations that occurred during the lifetime of a program, the mpatrol library performs extensive checking to detect any misuse of dynamically allocated memory. All of this functionality can be integrated into existing code through the inclusion of a single header file at compile-time. All logging and tracing output from the mpatrol library is sent to a separate log file in order to keep its diagnostics separate from any that the program being tested might generate. A wide variety of library settings can also be chan!ged at run-time via an environment variable, thus removing the need to recompile or relink in order to change the library's behaviour.
Operating Systems
- Linux
- PC 32-bit Windows
- Sparc
- SGI Irix
- IBM AIX
- Solaris
- HP UX
- Unix
- Sequent
- SYSV
- Unisys Unixware
- Novell
- DG/UX
- LynxOS
- SINIX
- AmigaOS
Compilers
- Visual C++
- GCC
- SGI CC
- Sun CC
- SAS/C
Added : 2000-07-28 Amended: 2008-06-26 Licensing : Copyrighted freeware
mpatrol - A library for controlling, tracing and profiling dynamic memory allocations.- The mpatrol home page
- Submitted by:graeme@epc.co.uk
Add a comment
MTL110JE.ZIP - Multithreading class library
DOS PC/Borland C++ specific.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
MTL: The Matrix Template Library - A library of generic components for basic linear algebra
The Matrix Template Library is a C++ class library for basic linear algebra. The MTL is designed for high-performance while at the same time taking advantage of the generic programming paradigm (ala the STL) to allow much greater flexibility and breadth of functionality. Many new and advanced programming techniques were used in the construction of this library.
The MTL is a low level library in the sense that the user must be conscious of the matrix type being used, and that all computationally expensive operations are explicit. The MTL is not a C++ Matlab. Nevertheless, the interface is designed to be simple and easy to use.
The matrix types provided include compressed sparse row/column, banded, packed, diagonal (and tridiagonal), envelope, array of pointers, and of course dense matrices. All matrix types share a common and easy to use interface.
The algorithms consist of the traditional basic linear algebra routines (from the BLAS level-1 to 3) which includes matrix and vector arithmetic as well as operations such as backward substitution and norm calculations.
Operating Systems
- Linux
- Sparc
- SGI Irix
- Sun
- Solaris
- Unix
- Mac
Compilers
- GCC
- SGI CC
- MetroWerks CodeWarrior
- KAI C++
Added : 1999-07-15 Amended: 2008-07-29 Licensing : Public Domain
MTL: The Matrix Template Library - A library of generic components for basic linear algebra- Mail a question to MTL authors
- MTL Home Page
- Author:Jeremy Siek and Andrew Lumsdaine and Lie-Quan Lee
- Submitted by:jsiek@lsc.nd.edu
Add a comment
MythOS - Open source C++ game development library
MythOS is an Open Source (previously commercial) C++ game development
library set for making games for the Windows 9x/NT platform using the
DirectX APIs including graphics rendering, memory manager, file
processing, input events, animation playback, sound, timers, and
supporting tools. This version is the 'slim' distribution (15 MBytes)
which does not include prebuilt libraries and executables (except one
that is difficult to build). The 'full' distribution is 25 MBytes as a
Self-Extracting Windows setup.
Operating Systems
Added : 1999-07-13 Amended: 1999-07-13 Licensing : Freeware
Add a comment
Newmat - A thorough matrix class
This library supports classes Matrix, UpperTriangularMatrix,
LowerTriangularMatrix, DiagonalMatrix, SymmetricMatrix, BandMatrix,
UpperBandMatrix, LowerBandMatrix, SymmetricBandMatrix, RowVector,
ColumnVector. Only one element type is supported. It includes the
operations *, +, -, concatenation, elementwise product, Kronecker product,
inverse, transpose, conversion between types, submatrix, determinant,
Cholesky decomposition, QR triangularisation, singular value decomposition,
symmetric eigenvalue analysis, fast Fourier and trig. transforms, sort,
print, an interface to "Numerical Recipes in C" programs, and an emulation
of exceptions.
Compilers
- Visual C++
- GCC
- Sun CC
- Borland C++
- Intel C++
Added : 1995-01-01 Amended: 2008-07-29 Licensing : Copyrighted freeware
Add a comment
NIHCL - (National Institute of Health's C++ Library)
NIHCL is essentially a mapping of part of Smalltalk's library into C++. It lies somewhere between OATH and COOL. It is a little better supported and there is a textbook by the author, Keith Gorlen, that is fairly good documentation. However, the Smalltalk hierarchy is not completely consistent (IMO) with the C++ strong typing nature. It is weakly supported.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
nlmdl - A library for estimation of nonlinear models
Nonlinear maximisation, estimation, includes a real matrix class
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
Numerics C++ Library - C++ lib w/src of numerical and math routines
Numerics C++ Library is a collection of routines to do numerical and
statistical computations. Included in this library are routines to
solve linear systems of equations, generate random numbers, compute
values for random variables, as well as various other routines that are
commonly needed in science and engineering fields as well as other
disciplines.
Added : 1999-06-21 Amended: 1999-06-21 Licensing : Freeware
Add a comment
O-Matrix - RAD environment for scientific and engineering applications
Harmonic Software Inc. has released O-Matrix 4, A Complete
Analysis and Development Environment for Math, Science,
Engineering and Technical Computing. This new version of
O-Matrix includes many new features including a Mathlink
program for communicating with Mathematica, new
analysis functions for statistics, optimization and general mathematics.
Performance has been improved even further and data
visualization capabilities have been enhanced. For complete
details on what has been added, how O-Matrix can improve
your productivity, and a free trial version, see our home page
Operating Systems
Added : 1997-03-19 Amended: 1998-12-03 Licensing : Copyrighted freeware
O-Matrix - RAD environment for scientific and engineering applications- Email:harmonic@omatrix.com
- WWW http://www.omatrix.com
- Tel:1-800-895-4546
- Tel:1-206-367-8742
- Postal address:Harmonic Software Inc., PO Box 31537, Seattle, WA 98103
- Fax:1-206-706-7493
- Author:Harmonic Software
Add a comment
OATH - Object oriented Abstract Type Hierarchy
OATH was designed as an experiment in increasing object-oriented reuse. It has a fairly high learning curve, but potentially higher gains if you are looking for a more flexible and robust abstraction. It is completely unsupported.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Comment from : xxx on 2008-12-28
The ftp link is broken. I am not able to download the library
Add a comment
OBST - Persistent object management system
The persistent object management system OBST was developed by Forschungszentrum Informatik (FZI) as a contribution to the STONE project.
Sites interested in getting information about new OBST developments are welcome to register in their mailing list by sending a mail with subject "obst-mailing-list" to stone@fzi.de.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
Octave - Matlab like interactive system for numerical computations
Includes C++ classes for matrix manipulation, numerical integration, and the solution of systems of nonlinear equations, ODEs and DAEs. Distributed under the GPL.
Operating Systems
- Linux
- Sparc
- IBM AIX
- Unix
- Dec Ultrix
Compilers
Added : 1995-01-01 Amended: 2008-07-29 Licensing : GNU copyleft
Add a comment
Ode - Object database v2.0
Ode is an object-oriented database based on the C++ database model. The primary interface to Ode is the database programming language O++ which is based on C++.
Ode is now available to Universities. The current version of Ode runs on Sun (Sparc) workstations and users must have C++ release 2.0 or a later release.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Education
Add a comment
OffiX - Framework for interactive applications in the Unix / X environment
The OffiX API is a Framework for interactive applications in the Unix / X environment.
Features:
- generic Layout Management
- supports multiple 'look and feels' (Motif, OpenLook, ...)
- generic Plugin support
- generic Communication support
Alpha release
Stefan Seefeld
Operating Systems
Compilers
Added : 1998-07-24 Amended: 1998-12-03 Licensing : GNU copyleft
OffiX - Framework for interactive applications in the Unix / X environment- Email:seefelds@plgcn.umontreal.ca
- WWW http://leb.net/OffiX
- Tel:1-514 343 61 11 ext. 3953
- Postal address:Departement de Physique, Universite de Montreal, C.P. 6128 - Succ.A, Montreal, QC, Canada H3C 3J7
- Fax:1-514 343 7586
- Author:Stefan Seefeld
Add a comment
ooMPEG - Berkeley MPEG decoder
A reentrant, multi-threaded version of the Berkeley MPEG decoder
Operating Systems
- Sparc
- SGI Irix
- Sun
- Solaris
- HP UX
Added : 1996-02-05 Amended: 1996-02-05 Licensing : Non commercial
Add a comment
Options - command-line option parsing library
Options is a full-featured C++ class library for parsing options on the command-line. It uses the getopt() style of option parsing but provides a lot more features and has configurable behavior.es.
Operating Systems
- PC DOS
- OS/2
- Unix
- PC Windows
Compilers
Added : 1997-03-19 Amended: 2008-07-29 Licensing : Copyrighted freeware
Add a comment
OptiVec - Vectorized functions library for Borland C/C++
OptiVec contains more than 3000 hand-optimized, Assembler-written
functions for all floating-point and integer data types, running, on the
average, 2-3 times faster than compiled C/C++ code of the same
functionality.
The following fields are covered:
- Vectorized form of all arithmetic operators and math functions
of C/C++
- Statistics
- Analysis (derivatives, integrals, extrema, interpolation)
- Fast Fourier Transform techniques for efficient convolutions,
correlation analyses, spectral filtering, etc.
- Curve fitting for a wide range of model functions from simple
linear regression to non-linear models with multiple data sets
- Graphical representation of data in Cartesian coordinates
- Matrix operations, e.g.: multiplication, inversion, LU
decomposition, singular value decomposition, two-dimensional
FFT, eigenvalues
- Complex number math
The vectorized implementation in Assembler ensures not only superior
speed; in many instances, the numerical accuracy is improved as well.
Operating Systems
Compilers
Added : 1998-07-27 Amended: 2008-11-04 Licensing : Shareware
Add a comment
OSE - C++ Library and Build Environment
OSE is a development environment for C/C++ programmers. The major components of OSE are a generic C++ class library, documentation tools and build environment. The C++ class library includes support for error handling, error message logging, error recovery, program debugging, memory management, resource management, object containment, strings and symbols, pattern matching, operating system interfacing, simulation and event driven systems. OSE can be used with all major C++ compilers and UNIX platforms as well as Windows NT and Windows 95. OSE has been integrated for use with the ObjectStore OODBMS from Object Design.
OSE was a winner at CODA '94, the ComputerWorld Object Developer Awards, held in conjunc! tion with ObjectWorld in Sydney, Australia. The category in which OSE was successful was "Best implementation of a reuseable development environment for company deployment".
Operating Systems
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- IBM xlC
- SGI NCC
- Cfront
- Borland C++
- HP C++
- Sparcworks
- Object Center
- KAI C++
- CenterLine
- Lucid
- Novell
Added : 1996-05-22 Amended: 2008-06-26 Licensing : Copyright (other)
Add a comment
paintlib - Image file decoding
Paintlib is a C++ class library for image file decoding and manipulation. It currently supports the TGA, TIFF, JPEG/JFIF, Windows BMP, and Mac PICT formats. Data source and destination formats can be tailored as nessesary. Additionally, format-independent but fast bitmap manipulation classes are available.
Although there are a few Windows-specific functions, the library is portable. Makefiles are included for Microsoft Visual C++ (Win32) and GNU C++ (DOS and SunOS). Prerequisite is a C++-compiler with standard C libraries and support for exception handling. The library also requires support for 32-bit memory addressing.
Operating Systems
- PC 32-bit Windows
- Solaris
Compilers
Added : 1997-03-19 Amended: 2008-07-29 Licensing : Copyrighted freeware
Add a comment
Pantheios - The C++ Logging Sweetspot
Pantheios offers all the following features in one simple, portable, easy-to-use library:
-
Atomicity - all parts of a statement are emitted (or not) to the back-end
transports in a single action.
-
Efficiency - the length of each element in a statement is determined at
most once; the contents of each element in a statement is copied at most
once; memory is allocated for the prepared statement at most once
(and even then only if the total statement length exceeds 2047 characters).
-
Extensibility - the back-end transport can be customised by the user to
any conceivable transport, should the stock back-ends prove insufficient for a
particular need. The distribution includes transports over the following:
- SysLog
- both UNIX and Windows
- COM Error Object
- Adaptive Communications Environment (ACE) Logger
- Windows Debugger
- Windows Event Log
- stdout/stderr
-
Filtered - statements are filtered based on a 32-bit severity level,
incorporating, but not limited to, the standard eight levels described
by SysLog
-
Genericity - log statement elements may be of arbitrary type. Support for
a large number of known types is implicit because Pantheios uses the STLSoft
libraries. Extension to new/custom types is achievable by several different
techniques, which one selects as appropriate.
-
100% type-safety - Use of Pantheios from C++ is 100% type-safe (unlike the
unsafe printf()-family, or the IOStreams).
But above all else Pantheios adheres to the important principle of C
programming that:
-
You don't pay for what you don't use. If a statement at a given severity level
is not to be emitted, no conversions, no concatenations, no memory
allocation nor any other expensive operations are carried out.
The library is portable, and has been used on UNIX (Linux) and Win32 operating
systems. There should be no impediment to it working on any platform, or flavour
thereof
The library is compatible with a large range of C++ compilers. It even compiles with
Visual C++ v5.0!
Compilers
- Any standard C++ compiler
Added : 2006-09-04 Amended: 2006-09-11 Licensing : Open Source
Add a comment
ParLib++ - Parallel Programming Classes for C++:
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
PARODY - C++ DATABASE LIBRARY
Al Stevens has written a book on the subject called `Database programming in C++' or something. An article on the subject was printed in Doctor Dobbs Journal some time ago.
The nice thing is that Stevens also wrote a C++ library adding persistence to C++, and the source is available. The library is called PARODY and compiles under most DOS-based C++ compilers. A slight rewrite of the GUI- routines has to be done to make it compile under GNU C.
Perry Rapp says "The zipped sources in the ftp version include a license statement permitting source redistribution in the exact format of the zip file
(ie, unmodified and as original zip file). This is a more liberal policy than the license of the software with the book, which allows no source redistribution at all."
Operating Systems
Compilers
- Visual C++
- GCC
- Borland C++
Added : 1995-01-01 Amended: 2001-01-06 Licensing : Not known
Add a comment
PATL - Practical Algorithm Template Library - C++ library on PATRICIA trie
Major features: STL-compatible, high-performance template containers and auxiliary classes useful for stringology with fine-grained low level design.
Library features:
- set & map containers with trie (digital/radix search tree) functionality - patl::trie_set & patl::trie_map;
- set & map containers with online suffix tree functionality - patl::suffix_set & patl::suffix_map - with linear time & space: 16 bytes per symbol, alphabet-independent;
- bunch of iterators over each type of containers - standard ([const_][reverse_]iterator), special ((post|pre|level)order_iterator), partial match iterators ([const_]partimator) and suffix_cont-special (match_iterator & [super_]maxrep_iterator);
- partimator's can be specialized with one of the decision functors: partial_match (filter strings with joker pattern), hamming distance (filter strings with Hamming automata), levenshtein_[tp_|ms_]distance (filter strings with Levenshtein automata with optional operations like transposition or merge-split);
- lowest common ancestor (LCA) requests with constant time after linear time & space postprocessing of the suffix_cont - patl::lca_oracle.
All features of this library can be examined with small demo programs delivered within.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Visual C++
- GCC
- CygWin
- Intel C++
- Microsoft .NET
- Visual C++ .NET
Added : 2008-08-25 Amended: 2008-08-25
PATL - Practical Algorithm Template Library - C++ library on PATRICIA trie- SVN repository
- Submitted by:Roman Klyujkov
Add a comment
pC++ - A preprocessor for C++ that implements a data parallel extension
Operating Systems
- Unix
- CM5
- Paragon
- KSR-1
- Sequent
- BBNTC2000
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
PCL - Personal Communications Library for C/C++
Personal Serial Communications Library C/C++, v6.1. Real & protected
mode DOS. Supports thru COM20 to 115200, 4+ ports concurrently, many
dumb multiport boards, 16550, 16650, 16750 UARTs, interrupt driven,
RTS/CTS flow control, any UART address and IRQ, all memory models.
Supports Watcom C/C++, Borland/Turbo C/C++, MIX Power C, & Microsoft
C/C++.
Operating Systems
Added : 1998-02-24 Amended: 2008-11-04 Licensing : Shareware
Add a comment
PDBlib - Library for modeling a macromolecular structure
PDBlib is a class library written in C++ for modeling a macromolecular structure at the level of detail (excluding symmetry information) found in a Protein Data Back (PDB) file. A class is supplied to read a PDB file into a PDBlib representation. This class is independent of the actual representation and other forms of input, for example from a relational database like SESAM, are possible.
The library is made extensible by a close coupling between intrinsic and external classes. By writing only to the external classes you will remain compliant with future versions of the library.
You don't get source code. This is a temporary situation while we attempt to centralize bug fixes and additions to the library. If you find this situation unworkable source code is available by signing a copyright agreement which is available with the distribution.
The following files are available :
- PDBLib.1.0.SGI.tar.Z Compressed tar file of PDB object classes library and header files for SGI. AT&T C++ release 2.1 & 3.0 compatible.
- PDBLib.1.0.Sun.tar.Z Compressed tar file of PDB object classes library and header files for Sun Sparc station. AT&T C++ release 2.1 & 3.0 compatible.
- PDBLib.1.0.Cvx.tar.Z Compressed tar file of PDB object classes library and header files for Convex. AT&T C++ release 2.1 compatible.
- PDBLib.1.0.Alpha.tar.Z Compressed tar file of PDB object classes library and header files for Dec 3000 (Alpha AXP) with OSF1. Dec C++ (cxx) release 1.2 compatible.
Operating Systems
- Sparc
- SGI Irix
- Convex
- Dec Alpha
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Copyright (other)
Add a comment
Platinum C++ Framework - Platinum is a portable comprehensive framework that allows writing high-performa
Platinum is a comprehensive C++ framework, that allows developers to write high-performance applications for many platforms with only one codebase. It provides a large amount of features and is still remarkably easy to use. It intergrates well into existing toolkits and frameworks.
A consistent API for advanced object modeling, multithreading, synchronous and asynchronous I/O, file-system access, system programming, plugins, networking, database access, graphics, XML processing and graphical user interfaces is provided on all supported platforms.
Pt can be used on embedded devices, desktops or large servers. The supported platforms include Windows, Windows CE, Linux, QNX, and Unix. It lets you spend your time on your application without tedious low-level programming.
A high degree of performance is achieved through the use of modern C++ features. Programs will benefit from the many optimizations included in the framework.
Pt is designed from the ground up to be flexible and extensible. It provides simple solutions to your problems without being intrusive. It integrates well with existing code bases or other toolkits and frameworks. Programs written with Pt tend to be significantly shorter and much easier to understand.
Its not just open, its free! Published under the LGPL it allows you to write commercial and open-source applications and be part of the great community that develops Pt and determines its future.
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
Platinum C++ Framework - Platinum is a portable comprehensive framework that allows writing high-performa- Platinum C++ Homepage
- Submitted by:Kizza George Mbidde
Add a comment
png++ - a C++ wrapper for libpng
PNG++ aims to provide simple yet powerful C++ interface to libpng, the
PNG reference implementation library.
PNG++ is free software distributed under a modified variant of BSD
license.
Using raw libpng in C++ may impose serious challenge since lots of
precautions must be taken to handle initialization/deinitialization of
control structures as well as handling errors correctly. With png++
you can read or write PNG images just in a single line of C++ code:
png::image< png::rgb_pixel > image("input.png");
image.write("output.png");
Operating Systems
- Platform-independent
- POSIX
Compilers
- GCC
- Any standard C++ compiler
Added : 2008-11-06 Amended: 2008-11-06 Licensing : BSD style
png++ - a C++ wrapper for libpng- Project page
- Submitted by:Alexander Shulgin
Add a comment
PNGwriter - A C++ class allowing easy plotting to (and reading from) PNG images
This class, which requires libpng, allows you to plot to a 16-bit PNG
file, saving it directly to disk. Plotting is as easy as specifying the
red, green, blue values and the x, y coordinates of the pixel.
It includes functions for plotting simple geometric shapes (circle,
rect, line), reading the colour of a pixel, reading in a whole PNG file
(great for image analysis), plotting and reading in HSV colourspace and
many others that might come in handy.
This class has proven tremendously useful for my own scientific
simulation needs, and I would like others to benefit from its use as
well.
It is available in both english and spanish, and is complemented by a
PDF manual and a website with examples, a forum, and so on.
I have only tested it on Mac OS X and Debian Linux, but I don't see why
it shouldn't compile on anything that has libpng.
Operating Systems
Added : 2003-01-08 Amended: 2003-01-09 Licensing : GNU copyleft
Add a comment
POCO C++ Libraries - POCO are open source libraries accelerating development of network-centric porta
The POCO C++ Libraries (POCO stands for POrtable COmponents) are open source C++ class libraries that simplify and accelerate the development of network-centric, portable applications in C++. The libraries integrate perfectly with the C++ Standard Library and fill many of the functional gaps left open by it. Their modular and efficient design and implementation makes the POCO C++ Libraries extremely well suited for embedded development, an area where the C++ programming language is becoming increasingly popular, due to its suitability for both low-level (device I/O, interrupt handlers, etc.) and high-level object-oriented development. Of course, the POCO C++ Libraries are also ready for enterprise-level challenges.
The POCO C++ Libraries free developers from re-inventing the wheel, and allow them to spend their time on more worthwhile areas, such as getting things done quickly and working on the features that make their application unique.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Any standard C++ compiler
Added : 2009-09-01 Amended: 2009-09-01 Licensing : Boost
POCO C++ Libraries - POCO are open source libraries accelerating development of network-centric porta- POCO Homepage
- Submitted by:Kizza George Mbidde
Add a comment
POST++ - Persistent Object Storage for C++
"Persistent Object Storage for C++" (POST++) is simple and effective
persistent object storage for single-user applications (personal OODBMS).
POST++ is based on memory mapping mechanism and provides access to
persistent objects without any runtime overhead. POST++ supports
transactions, garbage collection, fast memory allocation, objects with
multiple inheritance and virtual functions. POST++ is available for
Windows-95/NT and for several dialects of Unix (Digital Unix, Linux,
Solaris) and Windows NT/95. It can be used with standard C++ compilers
and requires no special tools for development.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- Dec Unix
Added : 1998-07-22 Amended: 2008-07-29 Licensing : Shareware
Add a comment
Power View IDE - DOS-hosted IDE for Watcom C++
As WATCOM International Corp. has not included a DOS-hosted IDE in the
Watcom C/C++ package, here it is - Power View IDE. Tired of having to
load Windows to use the Watcom IDE for DOS applications development? The
answer is Power View IDE.
Power View IDE has powerful build-in multi-file programmer's editor. You
use dialog boxes to navigate options for the Watcom C/C++ compilers and
for the Watcom Linker. The compiler and the linker are executed from
inside the IDE, using build-in automatic dependency check for target
object files. Power View IDE uses special filter programs to locate
produced errors in your source. The source of these filter programs is
also included for those who want to write filters for translators other
than Watcom C/C++/Assembler/Linker.
Operating Systems
Compilers
Added : 1998-02-24 Amended: 1998-02-24 Licensing : Shareware
Add a comment
Power View Windowing Interface - Source code for Power View Windowing Interface
Power View Windowing Interface is a 32-bit DOS4/GW library designed for
32-bit DOS-hosted applications development. It is 100% Watcom C++
compatible code. Power View is object-oriented, event-driven program.
However, in most cases client program doesn't need to be object-oriented
and/or event-driven. For most of C++ classes defined and used by Power
View there are simple functions to interface with client program. That's
why Power View is quite easy to use and learn.
Power View IDE is a DOS-hosted Integrated Development Environment for
Watcom C/C++ compiler. You can use the source code of Power View IDE for
understanding how does Power View Interface work, and to learn using it
for your own applications.
Operating Systems
Compilers
Added : 1998-02-24 Amended: 1998-02-24 Licensing : Public Domain
Add a comment
PStade C++ Libraries - This library is Boost based library. about Range, Function Object, etc...
This library is Boost based library
about Range, Function Object, etc...
Specifically, PStade.Oven is a very strong Range Library.
This library includes:
- Biscuit
- A PEG Parser generator framework based on YARD
- Egg
- A framework of making function objects
- Ketchup
- The Replacement for BEGIN_MSG_MAP of ATL/WTL using Class Templates
- Napkin
- A Logging Library using Boost.LexicalCast
- Oven
- A Boost.Range Extension Library
- Tomato
- An ATL/WTL Extension Library
- Wine
- Language Utilities
Operating Systems
- PC 32-bit Windows
- Mac
- FreeBSD, Darwin
Compilers
Added : 2010-05-05 Amended: 2010-05-05 Licensing : Boost
Add a comment
PTL - Portable Threads Library - C++ interface to POSIX/Sun/DCE threads
PTL is a free library (GNU LGPL license) to ease the port and debug of multithreaded applications.
PTL provides an object interface (C++) to threads and synchronisation abtractions provided by existing threads packages. PTL is tiny (current size is 55K gziped).
Currently supported architectures/machines are:
- Dec alpha/OSF1 DEC threads. (Native DCE threads)
- Dec alpha/OSF1 MIT Pthread (Pthread-1.60-b4 from C. Provenzano)
- Sun Sparc/SunOs4.1.x MIT Pthread (Pthread-1.60-b4 from C. Provenzano)
- Sun Sparc/SunOs4.1.x LWP threads (Native user level SunOS threads)
- Sun Sparc/Solaris Pthreads (Native kernel Solaris threads)
Operating Systems
- Sparc
- Sun
- Solaris
- Dec Alpha
- Dec OSF/1
Compilers
Added : 1996-11-13 Amended: 1997-04-10 Licensing : GNU copyleft
Add a comment
Ptypes - C++ Portable Types Library
PTypes (C++ Portable Types Library) is a simple alternative to the
STL that includes multithreading and networking. It defines dynamic strings, character sets, lists, and other basic data types along with threads, synchronization and IP sockets. PTypes also offers message queues as an alternative method of thread synchronization. Its main `target audience' is developers of complex network daemons, robots or non-visual client/server applications of any kind.
PTypes defines simple and intuitive interfaces. It is portable across many modern operating systems (Currently FreeBSD, Linux, SunOS, Mac OS X and Windows). All platform-dependent issues are hidden inside. A simple web server called wshare is included in the package to demonstrate the full power of PTypes.
And finally, PTypes is open and free.
Operating Systems
- Linux
- PC 32-bit Windows
- Sun
- Solaris
- Unix
- PC Windows
- FreeBSD
- FreeBSD, Darwin
Compilers
- Visual C++
- GCC
- Borland C++
Added : 2002-06-18 Amended: 2002-08-20 Licensing : Copyrighted freeware
Add a comment
PVM++ - Easy Programing of PVM (Parallel Virtual Machine)
This library provides an easy way to program the widely used parallel programming library PVM, which works in homogenous and heterogenous network environments. The main features are
- Easy sending and receiving of messages in heterogenous networks.
- Full STL-integration.
- easy installation with configure-script on all UN*X platforms
- easy access to all task and host information o message handlers are possible
- messages can be automatically unpacked on arrival
Operating Systems
Compilers
Added : 1998-02-24 Amended: 2008-07-29 Licensing : GNU copyleft
Add a comment
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
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
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
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
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
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
Compilers
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
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
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
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
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
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
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
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
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
Compilers
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
Compilers
Added : 1999-06-04 Amended: 2002-03-08 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
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
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
Compilers
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
Added : 1995-01-01 Amended: 1998-12-03 Licensing : Public Domain
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
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:
- Modeling
- Continuous density HMM,
- Discrete density HMM,
- Gaussian Mixture Model (GMM),
- Vector Quantization model (VQ),
- Multivariate Gaussian model,
- Dynamic Time Wrapping (DTW),
- Feature extraction
- Mel-scaled FFT based cepstrum (MFCC),
- LPC based cepstrum (LPCC),
- Dynamic features (delta cepstrum),
- Pitch extractor,
- Speech Input
- Read raw speech data (16-bit PCM, 8-bit ULAW),
- Read data with SPHERE header (NIST format) (both compressed and uncompressed),
- 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
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
Added : 1997-03-19 Amended: 1997-03-27 Licensing : Copyrighted freeware
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
Added : 1995-01-01 Amended: 2008-07-29 Licensing : GNU copyleft
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
Compilers
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
Compilers
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
Compilers
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
Compilers
Added : 1996-02-05 Amended: 1996-02-05 Licensing : Copyrighted freeware
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
Compilers
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
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
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
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
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
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
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
Compilers
- Visual C++
- Borland C++
- Watcom C++
Added : 1998-07-27 Amended: 1998-07-27 Licensing : Shareware
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
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
Compilers
Added : 1999-06-04 Amended: 2003-08-19 Licensing : Shareware
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
Compilers
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
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
Compilers
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
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
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Copyrighted freeware
Add a comment
YACL - Yet Another Class Library
YACL is a freely available C++ class library that includes GUI classes based on the Model-View-Controller paradigm. The class protocols are designed in a platform independent manner, and are implemented under Motif 1.2 as well as under Microsoft Windows and OS/2. This makes it possible to maintain a single code base for an application that runs on all three platforms. YACL also includes a suite of container and data storage classes for general-purpose programming.
Operating Systems
- OS/2
- X Windows
- Motif
- PC Windows
Added : 1995-01-01 Amended: 1996-02-05 Licensing : Not known
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
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
Added : 2005-03-30 Amended: 2005-03-30 Licensing : Copyrighted freeware
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
Compilers
Added : 2000-08-09 Amended: 2000-08-09 Licensing : GNU copyleft
Add a comment
Tools for C++ Programmers
5Loaves - IP Tunneling, Routing, Proxying
An open source, cross platform, secure, internet tunneling platform with file transfer, web server, remote admin, proxy, and load balancing. Enables connections through or around firewalls and across sub-networks.
Now part of the XMLFoundation
Operating Systems
- Linux
- Sparc
- Sun
- Solaris
- Unix
- All platforms that support ANSI C++ and PThreads
Compilers
- Visual C++
- GCC
- Sun CC
- SUN Forte
Added : 2002-06-19 Amended: 2009-08-24 Licensing : Copyrighted freeware
Comment from : Brian Aberle on 2009-08-22
7 years have passed since the initial release of 5Loaves on trumphurst.com
Trumphurst would not accept a post with the hyperlink to the new version, so google "XMLFoundation" and you will find the new version quickly.
Comment from : Nikki Locke on 2009-12-22
I've fixed the URL now
Add a comment
C++ component search engine - Searches C++ Libraries FAQ for components
This is a Web page containing a Java search engine which searches the C++ Library FAQ for libraries or components which match your criteria.
I have tried this myself, and it is a very neat Web page. It even plays music to you while the search progresses!
Just select "Search Library", then enter your search string and press return.
Added : 1996-11-13 Amended: 1996-11-13 Licensing : Not known
Add a comment
Cback - Cfront optimiser
Cback optimizes C source from the cfront C++ translator to create easy to read, smaller, faster and portable C source, while maintaining or improving compile times
Improves run-time performance by:
- Minimizing object code size (especially in debug)
- Minimizing cfront output code size
- Simplifying cfront data structures and expressions
Improves programmer productivity with:
- Easier to read C source from cfront output
- Portable C source from cfront output
- Faster link times, reducing the debug cycle
- Seamless integration into existing compile paths
- Availability on a broad range of Unix platforms
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Cback - Cfront optimiser- Email:al@newcode.com
- Email:zeev@newcode.com
- Email:info@newcode.com
- Tel:508.454.7255
- Tel:303.416.0784
- Tel:Corporate HQ: 1.800.NEWCODE (1.800.639.2633)
- Postal address: Eastern Office:NewCode Technology, Inc., 650 Suffolk Street, Lowell, MA 01854
- Postal address:Western Office: NewCode Technology, Inc., 2406 Newport Court, Fort Collins, CO 80526
- Fax:508.454.7559
- Fax:303.416.0753
Add a comment
CCDL - 32-bit C compiler for DOS/DPMI
CCDL is a complete 32-bit development package for MSDOS. It
incorporates a C compiler, assembler, linker, make program, librarian,
and run-time libraries for a 32-bit implementation of ANSI C. It has
been compiled with itself.
The full source code for the compiler, utilities and run-time libraries is included. This could make it a useful learning tool, even for non DOS users.
Operating Systems
Added : 1999-06-21 Amended: 1999-06-21 Licensing : Freeware
Add a comment
CGI.h C++ include file - Defines a CGI object and access methods
CGI.h is a C++ #include file that allows a 'CGI' object to be created then HTML tags generated via methods.
Here is an example..
#include <iostream.h> #include <stdlib.h> #include <string.h> #include "CGI.h"
int main() {
CGI c;
c.comment("A test CGI page by Trans-Euro It Ltd"); c.start_html("Stephen Martin tigger@marketrends.net", "Test CGI Page- written using C++ Include file", "white");
char cgiurl[]="http://www.mydomain.com/cgi-bin/CGI.cgi"; char method[] ="post";
c.form_start(cgiurl,method); c.submit(9; c.form_end();
c.end_html();
exit(0); }
Operating Systems
Compilers
Added : 2000-04-26 Amended: 2000-04-26 Licensing : Public Domain
CGI.h C++ include file - Defines a CGI object and access methods- Submitted by:tigger@marketrends.net
Add a comment
Ch C/C++ interpreter - for shell programming, numerical computing, plotting and embedded scripting
Ch is an embeddable C/C++ interpreter for cross-platform scripting, shell programming, 2D/3D plotting, numerical computing, and embedded scripting.
Ch supports 1999 ISO C Standard (C99) and C++ classes. Ch also supports many industry standards with over 8,000 functions including POSIX, socket/Winsock, X11/Motif, OpenGL, ODBC, C LAPACK, GTK+, Win32, and CGI. Functions in static or dynamical binary C/C++ libraries can be executed interpretively in scripting without re-compilation.
Ch is also C compatible shell while C-shell (csh) is a C like shell. Ch is an interpretive implementation of C, similar to Unix/MS-DOS shells. Ch in Windows includes over 100 commonly-used Unix commands for portable shell programming. Ch can also be used as a login shell just like sh, csh and ksh. Ch bridges the gap between the C language and shell languages. With its built-in string type and many enhanced scripting features, Ch is an alternative to other scripting languages for automating repetitive tasks, regression test, and hardware testing.
Ch supports 2D/3D graphical plotting, C LAPACK, high level numeric functions. For example, linear system equation b = A*x can be written verbatim in Ch.
Embedded Ch allows users to embed Ch engine into other C/C++ application programs. Embedded Ch has a small footprint.
Ch supports an increasing number of third party software applications. It includes Ch Control toolkit, Ch NAG Statistics Package, Ch CGI toolkit, Ch ODBC toolkit, Intel OpenCV for computer vision and image processing, National Instruments' data acquisition toolkit NI-DAQ and motion control toolkit NI-Motion, Barret Technology's Barret Hand robotic manipulator control, and Perl Compatible Regular Expressions.
Ch for Windows, Linux, Mac OS X, Solaris, FreeBSD and HP-UX is available. Ch Standard Edition is free for both commercial and non-commercial. More can be found at http://www.softintegration.com
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- HP UX
- Unix
- Mac
- FreeBSD
Compilers
- Visual C++
- GCC
- Sun CC
- HP C++
Added : 2004-07-19 Amended: 2004-07-20 Licensing : Copyrighted freeware
Add a comment
Cilk++ - The Intel Cilk++ SDK is an extension to C++ improving performance on multicore p
The Intel® Cilk++ SDK is an extension to C++ that offers a quick, easy and reliable way to improve the performance of C++ programs on multicore processors. The Cilk++ suite offers support for programmers using the GCC compiler for Linux or the Microsoft C++ compiler for Windows. Cilk++ includes compiler support, runtime libraries, the Cilkscreen Race Detector and the Cilkview Scalability Analysis and Performance Tuning tools. The three Cilk++ keywords provide a simple yet surprisingly powerful model for parallel programming, while runtime and template libraries offer a well-tuned environment for building parallel applications.
Operating Systems
Compilers
Added : 2009-12-02 Amended: 2009-12-02 Licensing : Open Source
Add a comment
Class Edit - C++ class code generator and editor
Class Edit is a Windows 95/98 MDI "RAD" C++ Class code generator and
editor. It helps in construction of new classes and maintaining or
re-coding of old c++ code. The online help is designed to aid beginner
and intermediate programmers in class syntax. ClassEdit 1.1 does not
require installation, just unzip and run. ClassEdit 1.1 is released as
Shareware version has 10 runs of full functionality.
Operating Systems
Added : 1999-06-11 Amended: 1999-06-11 Licensing : Shareware
Add a comment
ClassAction - OO design and C++ code gen
ClassAction is an Object Oriented design tool for Windows 95 based on an approximation of the OMT methodology. It generates C++ code suitable for MFC 4.0. Contains context sensitive help, floating/dockable toolbar, drag/drop support. Also has install/uninstall.
The current version is the first beta version.
Operating Systems
Added : 1996-08-07 Amended: 1996-08-07 Licensing : Shareware
Add a comment
Classdoc - AWK package to produce documentation from C++ source
Dag Bruck has written this package in AWK. It produces UNIX-style manual pages from C++ class headers. If you are interested in automatic documentation, you might want to look at this.
Added : 1996-02-08 Amended: 1996-02-08 Licensing : Not known
Classdoc - AWK package to produce documentation from C++ source- Mail Dag Bruck
Add a comment
CoreLinux++ - C++ class libraries for Linux
CoreLinux++ is an initiative to normalize methods and conventions for OOA/OOD/C++ development for Linux, materialized in a set of Open Source C++ class libraries to support common patterns and frameworks and exploit the C++ standards.
Operating Systems
Compilers
Added : 2000-11-02 Amended: 2000-11-02 Licensing : Copyrighted freeware
Add a comment
CPPSERV - C++ Servlet Server and C++ Server Pages
CPPSERV is an application server that provides Java Servlet like API to C++ programmers. It also includes CSP (C++ Server Pages) parser, that allows one to mix HTML and C++ code, like JSP, PHP, etc.. CPPSERV is implemented as separate process that communicates with webserver front-end through sockets (either Unix-domain or TCP). Currently there are modules for two web servers: Apache and Lighttpd. CSP (C++ Server Pages) are implemented as separate pre-processor, that converts CSP code into C++ servlet, that can later be compiled and loaded into CPPSERV.
Operating Systems
Compilers
Added : 2006-08-14 Amended: 2008-07-21 Licensing : GNU copyleft
Add a comment
Ct: C/C++ for Throughput Computing - Ct provides programmers with tools abstracting data-parallel programming
Intel developed Ct Technology with a singular vision: to provide programmers with tools that would abstract data-parallel programming away from the hardware, as well-known programming languages have done for single core processors, while also delivering forward-scaling performance across manycore and multicore processors. Ct technology assumes no specific processor architecture, but the underlying model requires a generalized parallel processing architecture as found in multicore and manycore processors.
Ct Technology provides several key benefits for developers:
- Reduce Errors in Parallel Programming by supporting a programming style that tends to avoid the parallel programming pitfalls which can plague parallel program development. Specifically, Ct Technology provides determinism, which helps provide certain guarantees about safety. Safety helps avoid data races and deadlocks, the two most often encountered parallel programming bugs.
- Parallel Programming that is readable with an expressive syntax that stays close the domain expert’s mode of expression. Ct technology excels at providing a framework that allows programs to keep a programming notation close to the notation used by non-programmer experts.
- Scaling across Multicore and Manycore Processors: Simply put, today’s programs can be ready for tomorrow’s hardware while getting the most out of today’s hardware.
- Fits into Existing Programs: Ct Technology allows for effective data-parallelism to be added into legacy programs using existing tools and programming languages. Ct extends C++ for data-parallelism allowing for compatible and incremental addition of parallel programming into existing programs without the need for completely new and incompatible programming languages.
Operating Systems
- All platforms that support ANSI C++ and PThreads
Compilers
- Any standard C++ compiler
Added : 2009-12-02 Amended: 2009-12-02
Ct: C/C++ for Throughput Computing - Ct provides programmers with tools abstracting data-parallel programming- Ct Intel Page
- Submitted by:Kizza George Mbidde
Add a comment
CXT - C source code analysis
CXT (C Exploration Tools) consists of CFT (C Function Tree Generator) and
CST (C Structure Tree Generator). They analyse C source code of
applications, no matter how big or complex, and are useful to explore
unknown software and to support software reuse and maintenance. By pre-
processing, scanning and analyzing the source code, these programs build
an internal representation of the function call hierarchy (CFT) and of
the data structure (CST) relations. Several features and options allow
the user to customize the generated hierarchy tree chart output and to
get a large set of useful information about the source code. The results
can be stored in a database and recalled later. The recall utility can
be integrated into editors like BRIEF or MicroEMACS (DOS, Windows) and
provides a hypertext-like feeling for function locating. The output
calltree can be generated as HTML- and as RTF-file (Windows Help).
CXT is part of the SXT Software Exploration Tools which provide similar
source code analysis features for C (CXT), DBASE (DXT), FORTRAN (FXT),
JAVA (JXT) and LISP (LXT).
Added : 1998-07-27 Amended: 1998-07-27 Licensing : Shareware
Add a comment
cxx2html - Create HTML Pages from C++ Header Files
cxx2html creates HTML pages from C++ header file information. It uses information from both the class declaration and the comments to create an HTML page which describes the class. The information extracted from the class declaration is used to create a class summary with links to the member function documentation and to the documentation for the classes which are parameters to the member functions. These links are created automatically from the class declaration.
cxx2html is written in Perl 5.0 (Perl 4.* will not work), and it is currently used to create the library reference manual for the AIPS++ project centered at the National Radio Astronomy Observatory (NRAO).
Added : 2000-04-26 Amended: 2000-04-26 Licensing : Not known
Add a comment
Debea database library - Debea is an Object Relational Mapping library (ORM) for C++
Debea is an Object Relational Mapping library (ORM) for C++. It allows you to map C++ objects to relations in various SQL and file databases.
By removing hand-written SQL queries (or csv file parsing) for serialization of C++ objects you can speed-up development of applications that needs to store and load their data in SQL or other database formats. Another positive side effect of using this library is that you will always have database schema strictly related to C++ logical model.
Operating Systems
- Cross platform, should work on any.
Compilers
- Any standard C++ compiler
Added : 2009-11-25 Amended: 2009-11-25 Licensing : Copyrighted freeware
Debea database library - Debea is an Object Relational Mapping library (ORM) for C++- link to site
- Submitted by:Lukasz Michalski
Add a comment
Dev-C++ - Free Windows C/C++ IDE and compiler
Free environment and compiler for the C and C++ language. Creates Win32
program and contains more than 150 include files and 100 libraries.
This program has the following features:
- C and C++ compiler for Win32
- Debugger (GDB)
- Syntax highlighting
- Multi-window editor with many options
- Project management and much more...
Operating Systems
Added : 1999-07-06 Amended: 1999-07-06 Licensing : Freeware
Add a comment
DocClass - Generates class documentation from source files
Docclass is a simple C++ program which reads in C++ header files, and outputs documentation describing the class hierarchy, methods, inherited methods etc.
Docclass has a rather dumb parser, but it should cope with reasonably sane C++ class declarations. It understands comments, and tries to group the comments with the appropriate class or method.
Docclass does not require templates, or nested classes, as many people had C++ compilers which didn't support them. With any luck, it should understand them a little in the code it analyses, though.
Docclass is Copyright (c) Trumphurst Ltd. I have made it available on the Internet for personal use only. Please do not use it in a commercial situation (except for testing to see if it is suitable) without first obtaining permission (mail address below).
Operating Systems
Compilers
- GCC
- Borland C++
- Zortech C++
Added : 1996-02-08 Amended: 1996-02-08 Licensing : Copyrighted freeware
Add a comment
D_Lib - C/C++ Debug Library
The D_Lib library provides a set of easy-to-use but powerful and easily configurable tools to perform a C++ programmer's daily debug as well as diagnostics needed by a system tester/maintainer. In fact the use of the D_Lib library gives very flexible debug printing with both compile-time and run-time management and also possibility to turn on/off (even run-time) some pieces of code without any recompilation. It is tested and used for several UNIX platforms as well as MS Windows NT/95.
Only requirement is a C++ compiler supporting templates.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- Unix
Compilers
Added : 1998-07-27 Amended: 1999-09-30 Licensing : Public Domain
Add a comment
Imagix 4D - Reverse engineering, metrics and documentation tool
Imagix 4D is a reverse-engineering, metrics and documentation tool for legacy C and
complex C++ software, for developers who are part of a large project or who are
inheriting code. Graphical displays from high level UML class diagrams to detailed
function level flow charts provide accurate, focused visualization of the software.
Imagix 4D also generates over 50 leading software metrics and source checks, and
automatically generates comprehensive documentation in a number of formats, including
HTML and RTF.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Sun
- Solaris
- HP UX
Added : 2002-07-19 Amended: 2002-07-19 Licensing : Commercial
Add a comment
LaKe - Make replacement
Yet another make replacement, but one that allows you to create your makefile in C++. A header and footer are added to it, and it's then compiled using your C++ compiler. Afther that it's run, and that's the point where your other sources are being compiled. Thanks to the lakeUsr extension library (which is included) many (possibly complex) compile commands can be given with just one simple function call.
Features of the lakeUsr library v0.2.0
- compilation of sourcetrees
- compilation of static libraries
- installation of libraries and headers
- cleaning
- all you need is a compiler
Operating Systems
Compilers
Added : 2004-10-19 Amended: 2004-10-19 Licensing : Open Source
Add a comment
LEADTOOLS - Imaging C++ Class Libraries, APIs, ActiveX, and VCL
LEADTOOLS is a family of comprehensive toolkits designed to help programmers integrate raster, document, medical, multimedia and vector imaging into their applications quickly and easily. LEADTOOLS gives developers the most flexible and powerful imaging technology available offering imaging technology for scanning, color conversion, display/special effects, annotations, image processing, compression, image format import/export filters, Internet imaging, medical imaging, database imaging, printing, multimedia, Imaging Common Dialogs, OCR, FlashPix format, screen capture and more. The result of ten years of development, the toolkit literally puts millions of lines of code at the fingertips of application developers. Included with the toolkit is extensive sample source code for Visual Basic, C/C++, Visual C++ (MFC), C++ Builder, Visual J++, Visual FoxPro, Access, Delphi, and Visual Basic and JScript, and support for Visual Studio 6.0 database connectivity (Oracle, SQL, OLE DB, ODBC, and JET)
Operating Systems
Compilers
Added : 2000-07-28 Amended: 2000-07-28 Licensing : Commercial
Add a comment
MkHelp - Generate HTML documentation from source files
Pretty good beta level documentation generator.
Generates fully cross-referenced class descriptions from .i files output by your compiler's preprocessor. Can extract comments from the source code and include them in the documentation (comments have to be immediately before the class, variable or method).
Pretty configurable - can generate the files in any language, for instance.
Has a few problems with some apparently correct syntax, and does not document typedefs, enums or global variables.
Operating Systems
- PC 32-bit Windows
- Solaris
Compilers
- Visual C++
- Cfront
- Borland C++
Added : 1996-08-02 Amended: 2000-08-18 Licensing : Non commercial
Add a comment
ModAssert - A library of ASSERT-like macros that can use rich booleans
In C and C++ the traditional assert function is used to tell the user that something unexpected happened, that might cause the program to fail. Macros were written to extend this mechanism, like ASSERT_EQUAL(a,b) to give a short explanation "lefthand is <9>, righthand is <10>". However, such a macros functionality can't be reused in any way if we want to have a similar VERIFY_EQUAL (which still evaluates its arguments in non-debug mode), or an ASSERT_EQUAL_MSG (to add a message).
The Modular Assert macros use Rich Booleans, to have a modular assertion framework where any type of ASSERT can be combined with any Rich Boolean or a simple boolean expression. This package has 16 different types of assertion macros (ASSERT, VERIFY, ASSERT_P, ...), which can be combined with any rich boolean to provide extra information (or a simple boolean expression). So one could write ASSERT(rbEQUAL(a,b)), VERIFY(rbLESS(foo(), 10)), etc. Furthermore, the macros allow an arbitray number of expressions to be evaluated and shown when an assertion fails. A level can be assigned to each assertion (Info, Debug, Error or Fatal). Assertions can be ignored per case, level or file.
They are released under the Boost License, which allows free use in any code. It was tested with Visual C++ and Gnu C++, but contains no platform or compiler specific code (except for the demo code), so it should be portable.
Operating Systems
Compilers
Added : 2005-02-11 Amended: 2005-02-11 Licensing : Non commercial
Add a comment
OOFILE - OOFILE cross-platform c++ database, report-writer and GUI forms framework
C++ frameworks for developing cross-platform database applications with forms
interface and report-writer. All OpenSource except professional database backends including
c-tree Plus and dBase compatible.
Operating Systems
- Linux
- PC 32-bit Windows
- Unix
- PC Windows
- Mac
Compilers
- Visual C++
- GCC
- MetroWerks CodeWarrior
- Borland C++
Added : 2002-03-08 Amended: 2002-03-08 Licensing : Public Domain
Add a comment
OOLua - C++ and Lua binding
GOOLua is a test driven, cross platform, non intrusive code generator framework for binding C++ and Lua code. Code is generated via macros which internally use templates to provide type safety where possible.
Operating Systems
- could run on any OS, but not tested
Compilers
- Any standard C++ compiler
Added : 2010-01-02 Amended: 2010-01-02 Licensing : Open Source
Add a comment
President - Surveyor for multilanguage analysis/metrics/documentation
Surveyor reduces software development timelines and improves code quality by automating the process of understanding complex source code, streamlining the development cycle, and fostering collaboration between team members. Surveyor can automatically document code, be used as a basis for code audits/reviews, and immediately imparts understanding of interactions, relationships, and structure of open source or other externally produced code elements. Surveyor is available for C, C++ and 12 other languages. www.lexientcorp.com for free demo.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Sun
- IBM AIX
- Solaris
- HP UX
- Unix
- X Windows
- Dec Alpha
- PC Windows
- Unisys Unixware
- NCR SVR4
Compilers
- Visual C++
- Sun CC
- MetroWerks CodeWarrior
- Symantec THINK C++
- Borland C++
- Watcom C++
Added : 2003-10-17 Amended: 2003-10-17 Licensing : Commercial
Add a comment
QScimpl - Qt-based software for building GUI's for scientific applications
QScimpl -- Qt-based Scientific Modeling and Plotting Library
Based on the cross-platform C++ GUI toolkit developed by Trolltech AS, QScimpl (pronounced "Q-simple") is a scientific graphics package that provides additional functionality for the rapid development of GUI's for scientific codes that require interactive visualization of particle or field data.
Like Qt, QScimpl is readily extensible by developers.
QScimpl supports 3-D rendering with OpenGL or Mesa, as well as threaded operation; however, neither of these features are required.
QScimpl is distributed with many example executables. One of these, called "SciMovie", can animate a sequence of images in a variety of different formats.
Operating Systems
Compilers
Added : 2002-03-08 Amended: 2002-03-08 Licensing : Non commercial
QScimpl - Qt-based software for building GUI's for scientific applications- QScimpl Home Page
- Submitted by:bruhwile@txcorp.com
Add a comment
Rich Booleans - A library to make powerful debugging libraries like ASSERT macros
The Rich Booleans framework is a set of macros that hold extra information if the condition fails, so a developer understands what goes wrong. They allow modularization of assertions and other constructs that check conditions, so on the one hand we can have different types of assertion macros (ASSERT, VERIFY, ASSERT_MSG, ...), and on the other hand macros that replace booleans in the assertion macros to provide extra information. So one could write ASSERT(rbEQUAL(a,b)), VERIFY(rbLESS(foo(), 10)), etc. These Rich Booleans can even be reused in other situations, like a TASSERT macro in a unit testing framework, or in contracts. The macros just have to know how to handle a rich boolean.
A number of interesting rich booleans are in this library, like rbEQUAL_STRING that shows where two strings are different (taking care of mismatches and insertions in an intelligent way), and similar ones for ranges of iterators and STL containers. They can be combined to make powerful checks, like checking whether the integer values in one vector are smaller than those in another vector, comparing two vectors of vectors, or combining rich booleans with logical operations.
They are released under the Boost License, which allows free use in any code. It was tested with Visual C++ and Gnu C++, but contains no platform or compiler specific code, so it should be portable.
Operating Systems
Compilers
Added : 2005-02-11 Amended: 2005-02-11 Licensing : Non commercial
Add a comment
SNIP: A Programming Power-tool - SNIP takes in an IDL and uses it to create code according to code patterns
SNIP is a programming power-tool for generating code from rules, or "code patterns" (AKA idioms).
Sr. software engineers have often noticed patterns in their coding practices. SNIP allows those patterns to be captured and expressed in an executable template.
An IDL-like input form is used to define objects. That IDL is then applied to the template to create code that a user would normally have typed in by hand.
For more information, and an example, see the site that describes SNIP more fully at http://www.ultranet.com/~advsw
Operating Systems
- PC 32-bit Windows
- Sparc
- Solaris
- Motif
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- CRI C++ (Cray)
- IBM xlC
- SGI NCC
- Apogee CC
- Cfront
- MetroWerks CodeWarrior
- Symantec THINK C++
- Borland C++
- Watcom C++
- HP C++
- IBM Cset++
- Symantec C++
- Zortech C++
- Glockenspiel C++
- MPW C++
- Sparcworks
Added : 1997-03-19 Amended: 1997-03-19 Licensing : Commercial
Add a comment
SourcePublisher C++ - HTML Documentation generator
SourcePublisher generates detailed HTML automatic documentation about your K&R C, ANSI C or C++ source code. Detailed HTML output offers quick, intuitive browsing of the documention with links to the actual code. That code is syntax/keyword colorized and contains links back to the documentation.
Operating Systems
- Linux
- PC 32-bit Windows
- Unix
Added : 2000-07-28 Amended: 2000-07-28 Licensing : Commercial
Add a comment
SourceStyler C++ - Advanced C/C++ Code Formatter
SourceStyler C++ is a tool for C++ developers that provides complete control over the formatting and layout of C++ source code.
SourceStyler C++ offers:
- over 75 individual formatting options
- 7 predefined formatting schemes
- unlimited user-defined formatting schemes
- complete support for ANSI C++
- a convenient graphical interface
- real time preview facilities
- automated formatting on trigger events
- a command line interface for use in scripts
Operating Systems
Added : 2001-11-01 Amended: 2001-11-01 Licensing : Commercial
Add a comment
SWIG - Connects C/C++ programs with a variety of high-level programming languages
SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages. SWIG is used with different types of languages including common scripting languages such as Perl, PHP, Python, Tcl and Ruby. The list of supported languages also includes non-scripting languages such as C#, Common Lisp (CLISP, Allegro CL, CFFI, UFFI), Java, Lua, Modula-3, OCAML, Octave and R. Also several interpreted and compiled Scheme implementations (Guile, MzScheme, Chicken) are supported. SWIG is most commonly used to create high-level interpreted or compiled programming environments, user interfaces, and as a tool for testing and prototyping C/C++ software. SWIG can also export its parse tree in the form of XML and Lisp s-expressions.
Added : 2008-07-29 Amended: 2008-07-29 Licensing : Non commercial
SWIG - Connects C/C++ programs with a variety of high-level programming languages- WWW http://www.swig.org/
- Submitted by:Andrew Marlow
Add a comment
The KDevelop-Project was raised in 1998 to build u - KDevelop multilingual IDE
The KDevelop-Project was raised in 1998 to build up an easy to use IDE (Integrated Development Environment) for KDE. Since then, the KDevelop IDE is publicly available under the GPL and supports many programming languages.
Operating Systems
Compilers
Added : 2004-02-17 Amended: 2004-02-17 Licensing : GNU copyleft
The KDevelop-Project was raised in 1998 to build u - KDevelop multilingual IDE- WWW http://www.kdevelop.org/
- Submitted by:hattons@globalsymmetry.com
Add a comment
U++ framework - U++ framework
U++ is BSD licensed C++ cross-platform rapid application development framework focused on programmers productivity without sacrificing runtime performance.
Based on strictly deterministic design it provides an alternative to GC collected platforms, even for bussiness logic oriented problems.
U++ brings it's own integrated development environment (IDE), "TheIDE", with it and shows the following merits in particular:
- The package contains everything one needs to build a program.
- The installation is absolutely trouble-free.
- The user interface is unconventional but - after getting used to it - very efficient.
- The tool has been standing the test of time years of use in commercial applications development.
- It is subject to the little restrictive BSD license.
- It is free of charge.
- There is an U++ forum which is perfect as regards organization, contents and look.
- The very active community is extremely ready to help.
Operating Systems
- Linux
- PC 32-bit Windows
- PC Windows
- FreeBSD
- POSIX
Compilers
Added : 2009-05-15 Amended: 2009-05-15
Comment from : Nikki Locke on 2009-05-15
This is the correct name for the library previously listed as "Ultimate++ - GUI toolkit"
Add a comment
Understand for C++ - Reverse engineering, documentation and metrics tool
Understand for C++ is a reverse engineering, documentation and metrics tool for C and C++ source code. It offers code navigation using a detailed cross reference, a syntax colorizing "smart" editor, and a variety of graphical reverse engineering views. It includes a PERL and C API for writing custom documentation directly from source code.
Operating Systems
- Linux
- PC 32-bit Windows
- Unix
Added : 2000-07-28 Amended: 2000-07-28 Licensing : Commercial
Add a comment
VCF - Visual Component Framework
A C++ framework that was created to provide a simple to use cross platform GUI framework, with many of the advanced design features of Java and Java's Swing, and Borland's Visual Component Library. In addition, the VCF provides advanced RTTI/Introspection features common in languages like Object Pascal, Objective C, Smalltalk, and Java, but not typically found in C++. The framework is divided into three main sections: FoundationKit, ApplicationKit, and GraphicsKit, in addition there are now two additional kits, the Network kit and the Remote Object Kit.
The FoundationKit provides all of the base classes for the rest of the Framework, as well as support for RTTI/Introspection, events, event listeners, properties, and basic streaming capabilities. The VCF makes use of C++'s Standard Template Library for it's collection classes, and has a number of template based classes to support the Frameworks RTTI/Introspection design. The VCF also makes use of C++ exception handling, multiple inheritance, and C++ namespaces, so compiler's that don't support these features may have problems getting the FoundationKit (and any of the other kits) to compile. The GraphicsKit provides a core set of easy to use 2D graphics classes, modeled heavily after the design of Java's Graphics2D architecture. This include support for 32bit color images, alpha channels, anti-aliased graphics primitives, basic matrix transforms, filters, image loaders, kernels, and easy to extend path classes. Image manipulation is allowed at the bit level for those who like to bit-twiddle, but higher level functions are/will be provided.
The ApplicationKit provides the classes used in the GUI portion of the Framework. This includes basics like windows, components, standard widgets (combo boxes, listboxes, trees, etc ), common dialogs, a basic layout manager, drag-and-drop, and standard windowing events. A simplified use of Model-View-Control design has been applied (sometimes referred to as UI delegate, where the Controller and View are combined ), similar to the way Java's Swing was designed. In addition it will also provide core services to extend the component framework with custom 3rd party libraries (DLL's or SO's) housing components that can be plugged into a the VCFBuilder tool, similar to Java Beans, or Borland's C++ Builder packages. The VCFBuilder is a simplified version of the C++ Builder IDE, something that can allow developer's to design their GUI's in real time, with out having to waste time writing code, and extend their set of components through 3rd party libraries.
Operating Systems
Compilers
Added : 2002-07-24 Amended: 2002-07-24 Licensing : Open Source
Add a comment
Visual Programming Armoury - Visual Programming Armoury for C++ and Java
Visual Programming Armoury is an IDE for C++ and Java. It implements a
concept of multidimensional desktop. The ergonomics of VPA helps you
maintain large projects. There are 3 frameworks: C++, Persistence Smith
and Java. All of them are compiler-independent structured processors of
source code. C++ framework includes a designer of event-driven
composite GUI and a resource editor. Persistence Smith framework is
built upon the object-relational layer which allows you to interact with
business objects instead of going directly to RDBMS. An extended
semantics of C++ provides full-featured capability to program a
back-end's logic: queries and updates are issued against the object
model instead of the storage one. Diagrams of persistent class helps
you design applied object model. Thus a system that uses relational
database is engineered in terms of object-oriented methodology. All of
your code is completely portable between variety of database products.
The set of class libraries formalize GUI up to high-level primitives
which query, retrieve, navigate, edit data, aid input, do printing job.
Java framework supports class diagrams and reverse engineering of source
code.
Added : 1998-12-03 Amended: 1999-06-09 Licensing : Freeware
Add a comment
WebDocs - C++ source code HTML docs application
C++ WebDocs generates online documentation in an HTML format from source
code. Make your own HTML templates and formatting for the
documentation. Imports header files and facilitates documenting
objects, methods, and members.
Special requirements: Microsoft Internet Explorer 4.0 or above.
Added : 1999-06-04 Amended: 1999-06-04 Licensing : Shareware
Add a comment
Weblet Application Server - Weblet Platform - Application Server for C/C++
A high performance C++ development environment offering:
- Dynamic resource generation
- Weblet Server Pages - Template based dynamic resource generation
- Resource level Callback handling
- Data Streaming, Event Publishing, and Server Push
This package includes:
Weblet and Weblet Server Pages libraries
Weblet and Weblet Server Pages engines
WSP Bean Library
WSP Bean Viewer
Open source Webserver (based on Apache1.3)
Ideal environment for C/C++ legacy systems to Web scenarios.
Ideal tool to develop and deploy high performance Web applications.
It supports Data Streaming and Publish Subscribe applications.
It is offered as a solution package.
The url for this package (www.webletworks.com seems to have been taken over by someone else. If anyone knows where the library can be found, please let me know.
Operating Systems
Compilers
Added : 2002-05-23 Amended: 2008-12-19 Licensing : Not known
Add a comment
XSD - XML Schema to C++ Data Binding Generator
Given an XML instance description (XML Schema), XSD generates C++ classes
that represent the given vocabulary as well as parsing and serialization
code. Compared to APIs such as DOM and SAX, the generated code allows you
to access the information in XML instance documents using your domain
vocabulary instead of generic elements, attributes, and text. Static typing
helps catch errors at compile-time rather than at run-time. XSD supports
two C++ mappings: in-memory C++/Tree and event-driven C++/Parser.
The C++/Tree mapping provides C++ classes that represent data types defined
in XML Schema, a set of parsing functions that convert XML instance documents
to a tree-like in-memory data structure, and a set of serialization functions
that convert the in-memory representation back to XML.
The C++/Parser mapping provides parser templates for data types defined in
XML Schema. Using these parser templates you can build your own in-memory
representations or perform immediate processing of XML instance documents.
GPL and Commercial licenses available
Operating Systems
- Linux
- Solaris
- HP UX
- PC Windows
- Mac
Compilers
- Visual C++
- GCC
- Sun CC
- HP C++
- Intel C++
Added : 2006-03-14 Amended: 2006-03-14 Licensing : GNU copyleft
Add a comment
Libraries with no known download site
Algebra - Collection of C++ classes to represent and edit equations in a GUI
Object classes to represent/edit algebric equations in Windows: number, literal, boolean, + and - infinite, indeterminations group, document, line, page, list, sum, negation, division,multiplication, root, raise, equal, lessThan, lessThanOrEqual etc..., equivalent, implication. Implementing: log,exp,sin,cos,tg,cotg,cos,asin,acos,atg, logic operators, etc...
Operating Systems
Compilers
Added : 1996-03-28 Amended: 1996-10-03 Licensing : Non commercial
Add a comment
DCE++ - A C++ API for Programming Distributed Systems
DCE++ is a set of ANSI C++ classes that enable the rapid prototyping of distributed programs. The goal of DCE++ is to provide a platform independent C++ API to the significant components used in distributed computing. Namely: RPC, threads, Security and Naming across the widely used distributed computing platforms such as DCE, ONC and WNT.
It is expected that by encapsulating platform dependencies inherent in setting up rpcs, security etc. in DCE++ base classes, program development time can be drastically reduced. Moreover, a foundation can be provided for developing *portable* distributed program development tools.
The second *evaluation* version of DCE++, version 0.4, has been released on Dec 2'93. The release includes C++ bindings for remote procedure calls over DCE and ONC. A C++ threads api for programming DCE threads. A C++ threads api for programming DCE distributed Time Service. The release is available free of charge upon signing a very liberal license agreement.
The license agreement is obtainable by anonymous ftp from hal.com. It is in the directory dce++. The same directory also contains the release notes for the 0.4 version and plans for 0.5 features. To obtain the code, please send the signed license agreement to:
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Copyright (other)
Add a comment
Dr. - Vector Graphics Framework in C++
A cross-platform (Linux, Win32, Mac OX X, FreeBSD, Linux and IRIX) open source C++ framework for 2D and 3D vector graphics that includes 2D curves, a 2D font engine, bitmap vectorizer, tessellator, and an OpenGL extensions manager.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Mac
Compilers
Added : 2005-09-16 Amended: 2005-09-16 Licensing : Not known
Add a comment
General complex C++ matrix library
This library contains about 90 functions ranging from summation and multiplication to Jacobi transforms and LUP algorithms for a general complex matrix class in c++... Roots of polynoms, operator overloads, discrete fourier transforms, vectors, scalars, GaussJordan algorithm with partial pivoting, elementary row operations, inverse, determinants using partial LUP factorizing, similarity transforms, eigenvalues (LR algorithm on hessenberg matrices), eigenvectors using itertations or Jacobi transforms, reductions to echelon or hessenberg forms, various matrix type checks (hermitian/diagonal/orthogonal etc.), fast data access if no inheritance etc. etc. Also contains some often used routines to interpolate data or to do polynomial least square fitting.
Operating Systems
- PC DOS
- PC 32-bit Windows
- PC Windows
- Any after making small changes...
Compilers
- Borland C++
- Any after making small changes...
Added : 2001-06-13 Amended: 2004-10-25 Licensing : Education
Add a comment
General complex matrix library for C++
This library contains about 90 functions ranging from summation and multiplication to Jacobi transforms and LUP algorithms for a general complex matrix class in c++... Roots of polynoms, operator overloads, discrete fourier transforms, vectors, scalars, GaussJordan algorithm with partial pivoting, elementary row operations, inverse, determinants using partial LUP factorizing, similarity transforms, eigenvalues (LR algorithm on hessenberg matrices), eigenvectors using itertations or Jacobi transforms, reductions to echelon or hessenberg forms, various matrix type checks (hermitian/diagonal/orthogonal etc.), fast data access if no inheritance etc. etc.
Operating Systems
Compilers
- Visual C++
- Borland C++
- Zortech C++
Added : 1999-08-10 Amended: 1999-08-10 Licensing : Education
Add a comment
GenTools - A Computational Genomic Tool Suite
The University of Texas System CHPC and collaborators are addressing the problems of high performance platforms by developing GenTools, an interactive, distributed, loosely integrated, set of tools for DNA and protein sequence data analysis, phylogenetic analysis, and restriction mapping which combines different algorithm implementations, machines, and databases through a "bio-user" friendly set of graphical user interfaces.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
GenTools - A Computational Genomic Tool Suite- Email:sarah@chpc.utexas.edu
- Tel:(512)471-2434
- Postal address:Sarah Barron, GenTools Project Leader, Computational Molecular Biology and Genetics Group, University of Texas System Center for High Performance Computing, Balcones Research Center, CMS 1.154, 10100 Burnet Road, Austin, TX 78758-4497
- Fax:(512)471-2445
Add a comment
IPL98 - Image Processing Library 98
The Image Processing Library 98 (IPL98) is a platform independent image manipulating C/C++ library. The purpose of the library is to be useful, for combining tailor-made image processing and interpretation with standard methods for acquisitions, processing, display and storage of image information. Emphasis is put on interactivity in projects made by students, as well as for advanced research and development.
Operating Systems
Compilers
- Visual C++
- GCC
- Borland C++
Added : 2001-05-25 Amended: 2001-05-25 Licensing : Non commercial
Add a comment
MenuPlus - Menu class library for Turbo C++ for DOS
The library contains functions that allow the programmer to
easily implement custom popup, pulldown, and buttonbar menus.
The menus are designed to have the look and feel of familiar menu
systems found in many popular applications. MenuPlus provides all
screen, keyboard, and mouse functionalilty built in. Simply
declare a menu object (menu item names, hotkeys, and handler
functions) and MenuPlus does the rest. MenuPlus is designed to
be simple to use, yet versatile enough to allow customized look
and operations of the menus. (Includes demos illustrating use.)
Registration of $15 grants royalty-free use of the
library and also provides registered owner with all source code.
Operating Systems
Compilers
Added : 1996-11-13 Amended: 1996-11-13 Licensing : Shareware
MenuPlus - Menu class library for Turbo C++ for DOS- Email:jssoft@aol.com
- Postal address:JS Software,517 Ingram Drive West,Eau Claire, WI 54701
- Author:Jeffrey Schierenbeck
Add a comment
OptSolve++ - Nonlinear optimization
OptSolve++ -- Software Components for Nonlinear Optimization.
The OptSolve++ optimization libraries provide a convenient and extensible interface for rapid nonlinear optimization of user-specified functions. OptSolve++ is available through the purchase of a commercial license.
The following nonlinear optimization algorithms: -nonlinear simplex (no derivatives required) -Powell (no derivatives required) -conjugate gradient (requires gradient of the function) -Levenburg-Marquardt (can use Broyden's method to estimate the Jacobian if function gradients are not available) -simple bound constraints can be imposed through a variable transformation approach.
Algorithms under development for the next release: -penalty functions to treat arbitrary nonlinear constraints -multidimensional nonlinear solvers (for root-finding)
OptSolve++ consists of the following components: -TxBase; reference counted N-D container classes, trait and attribute classes, exception classes, and cross-platform header files -TxFunc; 1-D and N-D functor classes providing wrappers for C++ function pointers or general user-specified calls to other -TxLin; reference counted matrix and vector classes, with all linear algebra algorithms required by the optimization algorithms, and specialized functor classes that require linear algebra capabilities. -TxOptSlv; implementation of 1-D and N-D nonlinear optimization algorithms.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Cray
- IBM AIX
- Solaris
- HP UX
- Unix
- Dec Alpha
- PC Windows
- Mac
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- MetroWerks CodeWarrior
- Borland C++
- HP C++
- KAI C++
Added : 2000-04-26 Amended: 2004-10-22 Licensing : Commercial
Add a comment
Source code from books
Bruce Eckel - Thinking in C++
You can find all the source code from Bruce Eckel's books on the web site below, as
well as the evolving 2nd edition of the entire text of "Thinking in C++".
Operating Systems
Added : 1995-01-01 Amended: 1998-12-03 Licensing : Copyrighted freeware
Add a comment
Coplien - Advanced C++ Programming Styles and Idioms
Code from "Advanced C++ Programming Styles and Idioms" by James O. Coplien, Addison-Wesley, 1992, ISBN
Added : 1995-01-01 Amended: 2000-09-18 Licensing : Not known
Comment from : Mark Txx on 2010-02-25
new URL for code
http://netlib.sandia.gov/c++/idioms/index.html
Add a comment
Hansen - C++ Answers book
Code from "The C++ Answer Book" by Tony L. Hansen , Addison-Wesley, 1990, ISBN 0-302-11497-6
Added : 1995-01-01 Amended: 2000-09-18 Licensing : Not known
Add a comment
Smith - Object Oriented Software in C++
Source to the Book by Michael A. Smith "Object-Oriented Software in C++", Chapman & Hall, London. 1993. ISBN 0 412 55380 5.
Added : 1995-01-01 Amended: 1996-02-09 Licensing : Not known
Add a comment
Other places to look for details of C++ libraries
ASSET
ASSET is currently populating a library of reusable components and systems, and documents on software reuse, called the Worldwide Software Reuse Discovery library (WSRD, pronounced "wizard"). Included are assets in numerous languages including C++, C, and Ada.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
ASSET- Email:info@source.asset.com
- Email:theeke@source.asset.com
- Tel:(304) 284-9000
- Tel:(304) 284-9000
- WWW http://source.asset.com/
- Postal address:Supplying products & advertisements: ASSET Attn: Patrick A. Theeke P.O. Box 3305 1350 Earl L. Core Rd. Morgantown, WV 26505
- Postal address:Obtaining an ASSET account or accessing the WSRD library: ASSET Attn: Account Administrator P.O. Box 3305 1350 Earl L. Core Rd. Morgantown, WV 26505
Comment from : Mat Kramer on 2009-06-08
Looks like the ASSET web site lost its domain.
Add a comment
comp.object FAQ
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Add a comment
comp.windows.misc - Portable GUI-software FAQ
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Add a comment
eg3.com - Electronic design website
eg3.com covers all major keywords in the board-level, embedded, realtime, smart (internet-enabling) and mcu/mpu markets. This website serves as an online software tool of browsable and searchable links to compactpci, pc/104, motorola's 68K, java for embedded systems, embedded x86, assembly - anything and everything on the Internet of interest to practical design. eg3.com is your "window on the electronic design world."
Added : 1999-08-10 Amended: 1999-08-10 Licensing : N/A
Add a comment
ftp.th.darmstadt.de
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Add a comment
Moderator - Boost - user extensions to the C++ Standard Library
The Boost.org web site provides a repository for free C++ libraries. The emphasis is on libraries which work well with the C++ Standard Library.
A mailing list supports peer review and related discussions about the libraries.
Operating Systems
- Cross platform, should work on any.
Compilers
- Any standard C++ compiler
Added : 2000-04-26 Amended: 2000-04-26 Licensing : Copyrighted freeware
Add a comment
numcomp-free-c.gz
The index of resources for numerical computation in C or C++.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Comment from : KIM on 2010-01-26
A good numerical computation tool for me,thx.
Add a comment
Useful web and ftp sites
Current CUG Library Catalog
The CUG CD-ROM file listing offers the most comprehensive look at the programming tools and utilities available from CUG. The complete annotated listing (about 1 megabyte) is available through anonymous ftp as follows:
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Not known
Add a comment
ftp.luth.se
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Comment from : F. Beekhof on 2008-09-10
link dead
Add a comment
ftp.th.darmstadt.de
A major repository of C++ stuff, mostly under the directory tree starting at /pub/programming/languages/C++. Includes a product list (from which some of the information in this document was taken) in various formats in sub-directory c++-products.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Add a comment
FTP/Mail gateways - Obtaining FTP files via email
If you don't have ftp access, send email to ftpmail@decwrl.dec.com saying "help". You will get instructions on how to do ftp via email.
European users might like to try ftpmail@grasp.insa-lyon.fr instead.
Added : 1995-01-01 Amended: 1996-03-28 Licensing : N/A
Add a comment
Netlib
- research.att.com has email, ftp
- ornl.gov has email, xnetlib
- nac.no has email, xnetlib for Europe
- unix.hensa.ac.uk is a mail server useful for Europe.
- ci.cs.uow.edu.au (130.130.64.3) in Australia
E.g. send email to netlib@ornl.gov to access by email. This is a mail server. Send mail with the text "send index" or "send index from C++"
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Add a comment
Planet Source Code - Web site for C and C++ source code
Award winning site with over 12,000 lines of C and
C++ code. Code ranges from one-line snippets to complete programs.
Includes a coding contest, hall of fame and a large Visual Basic and Java
'world'.
Added : 1999-11-01 Amended: 1999-11-01 Licensing : N/A
Add a comment
Simtel
The primary Simtel site is simtel.net, but there are many mirror sites all over the world.
Added : 1995-01-01 Amended: 1996-03-28 Licensing : N/A
Add a comment
Source code newsgroups
ftp.uu.net (e.g. usenet/comp.sources.reviewed archives the comp.sources.reviewed newsgroup).
Added : 1995-01-01 Amended: 1995-01-01 Licensing : N/A
Add a comment
Commercial libraries (A-N)
Aspect
This is a C library, though they're type safe for C++ compatibility. A GUI builder is provided with the library. They're coming out with a C++ class library soon.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Aspect- Tel:(719)527-9700
- Postal address:OPEN Inc., 655 Southpointe Court, Suite 200, Colorado Springs, CO 80906
- Fax:(719)576-3835
Add a comment
BitLevelGPS - Global Positioning System Library - A Source code Library to decode NMEA-0183 GPS receiver navigation data
BitLevelGPS software library provides a PC-based user application with access to a NMEA-183 compliant GPS receiver via a serial communications port. It provides navigational data update once per second, decoding NMEA sentences: $GPGGA (Global Positioning System Fix Data), $GPGSA (DOP and Active Satellites), $GPGSV (Satellites in View), $GPGLL (Geographic position), $GPRMC (Recommended Minimum Specific GNSS Data) and $GPVTG (Course over Ground and Ground Speed). Decoded parameters include: UTC time, date, position (lattitude, longitude), altitude, speed, course, heading and information about visible satellites. Applications include Navigation, Security, Telematics, Fleet Tracking and Asset Tracking. The library provides an interface over serial ports COM1 - COM8.
Free demo available: http://www.bitleveltechnology.com/blgps.htm
Operating Systems
Compilers
Added : 2003-05-13 Amended: 2003-05-13 Licensing : Demo
Add a comment
BitLevelSMS - Short Message Serives (SMS) Library - Send/Receive SMS (via serial port) for GSM phones (Siemens,Nokia,others)
BitLevelSMS software library provides a PC-based user application with access to a mobile phone's Short Message Service (SMS) functionality over serial port, according to ETSI standards: GSM 07.05 (ETS 300 585) "Use of Data Terminal Equipment - Data Circuit terminating; Equipment (DTE - DCE) interface for Short Message Service (SMS) and Cell Broadcast Service (CBS)" and GSM 03.40. "Technical Realization of Short Message Service - Point-to-Point".
BitLevelSMS allows the user to: send and receive SMS messages in PDU mode on many GSM mobile phones, including Siemens C35, S25, ME45, Nokia 6610 and others. Interfaces to serial ports COM1-COM8. Supports SEND - RECEIVE - DELETE functions. Decodes sender number and service centre timestamp.
Free demo available: http://www.bitleveltechnology.com/blsms.htm
Operating Systems
Compilers
Added : 2003-05-13 Amended: 2003-05-13 Licensing : Demo
Add a comment
BitLevelTrace - Protocol Decoding C Library - Trace Protocols: Q.931, LAPD (Q.921), LAPF (Q.922), X.25, 802.3, IP Protocols
BitLevelTrace software library (with full C source code) allows a calling user application to convert raw communication protocol data into a fully decoded readable trace text. Decoded protocols include LAPD (Q.921), LAPF (Q.922), ISDN call control (Q.931), X.25, 802.3 Ethernet and IP (IP, TCP, UDP, ICMP). Also decodes nested protocols: X.25 over LAPF; Q.931 over LAPD; TCP, UDP & ICMP over IP over 802.3 Ethernet. Supports different trace levels: (Basic Trace, Detailed Trace, Hex Dump). BitLevelTrace library API functions take raw binary communication data as parameters and perform protocol decoding and conversion into a readable ASCII trace text, according to specified trace level. The resulting ASCII trace text is copied to a different buffer, supplied with the function call. Benefits: Facilitates the development of trace related features; Shortens time-to-market of your product; Frees-up development resources from tedious coding and allows their re-direction to core development; flexible, portable architecture, easy integration into PC based or embedded environment
Free demo available: http://www.bitleveltechnology.com/bltrc.htm
Operating Systems
Compilers
Added : 2003-05-13 Amended: 2003-05-13 Licensing : Demo
Add a comment
Booch Components
Rational markets the C++ Booch objects which are a somewhat bizarre, but possibly quite innovative, set of library objects.
It appears quite complete (unless you have some specific, uncommon needs); Booch may have an edge in supporting concurrency. USL may have more installations and greater maturity.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Booch Components- Tel:408-496-3700
Add a comment
C++ Data Object Library - Data structures combined with automatic persistence
C++ Data Object Library has a wide variety of data structures combined with automatic persistence (storage to disk). In many applications, using the library is like building your own OO database. The emphasis is on high performance and protection against allocation and pointer errors. The library can help practically any C++ project, but is especially useful for large and complex software projects designs such as VLSI CAD.
Uses a code generator. Data relations are represented as objects. Protection against pointer errors is achieved by using rings instead of NULL ending lists. Smart iterators permit to delete objects while travering lists. Several methods of storing data to disk, including memory blasting (storing entire pages of memory). Portable programs and data, schema migration. Data organizations: lists, collections, aggregates, trees, graphs, dynamic arrays, hash tables, pointer links, reference counting, many-to-many relation, dynamic properties (like in LISP), virtual (disk access is if a large array), run-time access to type tables.
The library is build on ideas described in "Taming C++: Pattern Classes and Persistence for Large Projects", by Jiri Soukup, Addison-Wesley 1994. Sells in full source, and runs with all major compilers. A C version with similar features but with a less elegant interface is also available.
No licence restrictions and no marketing tricks. You can ship the source of the library with your programs, except for the code generator. A complete regression test, documentation and support comes with the basic price. We are one of the oldest class libraries in business, and we stand behind our software. Prices in US$: $299 DOS,WINDOWS, or MAC $599 UNIX workstations Postage included in North America, $25 for overseas.
Operating Systems
Compilers
- Visual C++
- GCC
- Dec CC
- Sun CC
- Cfront
- Borland C++
- Watcom C++
- HP C++
- Zortech C++
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
C++ Data Object Library - Data structures combined with automatic persistence- Email:jiri@debra.dgbt.doc.ca
- Tel:613-838-4829
- Postal address:Code Farms Inc 7214 Jock Trail, Richmond, Ont., K0A 2Z0, Canada
- Fax:613-838-3316
Add a comment
C++ Database & Spreadsheet Engine Toolkit - A comprehensive C++ Business/ Database Application development toolkit.
BASE SDK is a comprehensive C++ Software/ Application development toolkit for rapidly and efficiently developing "Industiral Strength" Business/ERP/Database Software. This toolkit includes Database engine, Spreadsheet Engine, User interface engine, Expression Evaluator, Webserver, and more.
Operating Systems
Compilers
Added : 2008-12-29 Amended: 2008-12-29
C++ Database & Spreadsheet Engine Toolkit - A comprehensive C++ Business/ Database Application development toolkit.- Home Page
- Submitted by:Sumeet
Add a comment
ChartFolio - C++ charting and graphing class libraries
DPC Technology manufactures the ChartFolio product line
-- C++ charting and graphing class libraries and DLL's providing
all major chart types, end-user interactivity, and Rapid Application
Development (RAD) built on and tightly coupled with The Microsoft
Foundation Classes (MFC), ZINC Software's ZAF 5, or Rogue Wave zApp.
Added : 1998-07-27 Amended: 1998-07-27 Licensing : Commercial
Add a comment
Classix
In addition to Rogue Wave, Empathy offers a good general-purpose library called Classix.
I do not have confirmed information, but I have been told that this library is no longer available.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Classix- Email:info@roguewave.com
- Tel:(503) 754-2311
- Postal address:Rogue Wave Software, Inc., 1325 NW 9th Street, Corvallis, OR, 97330
- Fax:(503) 757-6650
Add a comment
CodeBase Database Engine for C/C++ Developers - Develop powerful client/server or standalone database driven applications.
CodeBase is a high-performance database engine designed for developers who need maximum speed in their applications. Features include multi-user file compatibility with FoxPro, dBASE and Clipper file formats, Client/server support allowing database access over networks ranging from small LANs to the Internet, and adding security with account privileges.
CodeBase comes with full source code and provides royalty-free distribution. Support is also available for Java, SQL, OLE DB/ADO and ODBC. CodeBase also supports most development environments including C, C++, Visual Basic, Kylix, Delphi, and runs on most operating systems.
At the heart of our award-winning database engine is a library of well-tested, highly optimized routines. CodeBase has been around since 1984 so not only do you get a proven, stable product, but also experienced and knowledgeable technical support as well.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Sparc
- SGI Irix
- Sun
- IBM AIX
- Solaris
- HP UX
- OS/2
- Unix
- X Windows
- Dec Alpha
- PC Windows
- SCO Open Desktop
- Unisys Unixware
- Mac
Compilers
- Visual C++
- GCC
- SGI CC
- Sun CC
- IBM xlC
- MetroWerks CodeWarrior
- Borland C++
- HP C++
- IBM Cset++
Added : 2001-09-23 Amended: 2001-09-23 Licensing : Commercial
Add a comment
CommonPoint Application System - Comprehensive C++ class library for writing portable GUI applications
It includes a GUI builder, a development environment, full international language support, full 2D and 3D graphics, multi-media, collection classes, customizable text and graphics editors, a compound document architecture, a workspace/finder, etc.. It is fully supported.
Future versions will run on additional platforms.
Operating Systems
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
CommonPoint Application System - Comprehensive C++ class library for writing portable GUI applications- WWW http://www.taligent.com/
- Postal address:Taligent, Inc., Cupertino, CA
Add a comment
CommonView - Iconic user interface from Glockenspiel
This is a C++ UI library. In addition, it comes with container classes. The down-side is that some of the features are not supported across all platforms.
Richard Erwin (Erwin.Richard@service.rba.ch) writes:
As far as I know, CA does no longer distribute/support this class library.
It has no support for Win32.
We bought a source licence of CommonView and ported parts of it to Win32
ourselves.
Maybe you should remove CommonView from your list or indicate that there is
virtually no support from CA.
Added : 1995-01-01 Amended: 1999-08-24 Licensing : Commercial
CommonView - Iconic user interface from Glockenspiel- Tel:(516) 342-2308
- Postal address:Computer Associates International, One CA Plaza, Islandia, NY 11788
- Fax:(516) 342-6947
Add a comment
CP Graphics Library - User Interface Widgets
CP Graphics Library is MFC-extension set of C/C++ widgets for Windows 3.x, 95 and NT. It gives programmers full control over user interface. Both 16 and 32-bit versions are included. The source code is fully documented and can be easily extended to produce new controls.
Operating Systems
- PC 32-bit Windows
- PC Windows
Compilers
Added : 1998-07-27 Amended: 1998-07-27 Licensing : Commercial
CP Graphics Library - User Interface Widgets- User Interface Demo
- Submitted by:c-point@c-point.com
Add a comment
Crusher! - Data Compression Toolkits
The Crusher! Data Compression Toolkits are high-performance, portable data compression libraries. Crusher's comprehensive API of 45+ functions, identical across all platforms, provides buffer compression, file compression, archiving, subdirectory support, wildcards, disk spanning, encryption, self-extracting EXE's and more. Typical results compresses data to 20-50% of their original size or less. Implement full archiving in just four function calls.
Crusher archives are portable across all supported platforms and full source code is included, as well as numerous sample applications. Includes ARQ.EXE, a convenient command-line utility for managing Crusher archives, and SETUP, a Windows installation/setup program. Supports all C/C++ memory models and languages such as Visual Basic and Delphi. Windows versions include VBX and OCX custom controls and full on-line documentation. Limited 30-day warranty. A free demo is available for downloading from our bbs or web site.
Retail Platform Pricing (all prices are in U.S. dollar and include full C source code):
- DOS $249
- 16-bit Windows $299
- 32-bit Windows $299
- Macintosh $299
- OS/2 $349
- Unix $349
This information may be out of date. The vendor mailed me to say that they had a new version, together with a GCI toolkit, but did not give me any details.
Operating Systems
- PC DOS
- PC 32-bit Windows
- OS/2
- PC Windows
- Unisys Unixware
- Mac
Compilers
- Visual C++
- Borland C++
- Watcom C++
- Symantec C++
Added : 1996-02-05 Amended: 1998-02-24 Licensing : Commercial
Add a comment
Dalc++ - Store C++ objects in relational databases with this database access library
DALC++ is a C++ class library that makes connecting to a relational
database effortless. It takes care of the transformation between the
object-oriented paradigm and the relational model without compromises.
It provides automatically generated object identities, support for
bidirectional associations, and a query language in C++. DALC++
implements an advanced transaction model for both the database and the
client, and uses an optimistic locking strategy to make applications
built with it completely multi-user. Other advanced features include
client-side cache, automatic garbage collection, a multilevel undo/redo
mechanism and the ModelGenerator, a DALC++ sample application that can
generate header files that define your class model.
Operating Systems
Compilers
Added : 2003-01-08 Amended: 2003-01-08 Licensing : Shareware
Add a comment
Developer - Cross-platform high performance string support
Str Library is a high-performance string support library that enables developers to use a common code base for multiple platforms. It contains almost all the features of STL std::string and MFC CString but consistenly outperforms these in benchmarking for real-world programs.
A no-obligation free evaluation download is provided, including full source code. The library has no runtime royalties.
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- HP UX
- Unix
- PC Windows
Compilers
Added : 2002-06-11 Amended: 2002-06-11 Licensing : Commercial
Add a comment
DiaViews++
Class library for the development of graphical user interfaces (GUI) in OSF/Motif and C++
This library combines the power of the OSF/Motif toolkit with the advantages of the C++ language by means of completely encapsulating the Motif objects (widgets/gadgets). This means there is a C++ class for every Motif object. DiaViews supports the structured, object-oriented development of Motif interfaces. C++ features such as rigorous type checks and virtual functions, etc. enhance the efficiency of the development process.
Advantages:
- Uniform C++ interface with OSF/Motif
- Framework for generating reusable UI components
- Use of callback objects
- Interface with Dialog Builder, the interactive tool from Siemens Nixdorf for OSF/Motif user interfaces
- Simple and reliable handling of Motif resources
- Automatic generation of make- files
- Minimal training overhead
Price for source license (all platforms): 1200 DM, ~800 US$
Academic or private use license: 300 DM, ~200 US$
(needs Generic++)
Added : 1995-01-01 Amended: 1996-02-28 Licensing : Commercial
DiaViews++- Email:info@ootec.isar.de
- Tel:(49) 89 893242-0
- Postal address:Alexander v. Zitzewitz, OO-Tec GmbH, Muenchener Strasse 45, D-82131 Gauting, W. Germany
- Fax:(49) 89 893242-31
Add a comment
Diffpack - Comprehensive object-oriented system for multi-physics simulation
The Diffpack Development Framework is a comprehensive object-oriented system for multi-physics simulation. In contrast to traditional technology for scientific computing, Diffpack utilizes the full power of object-oriented modeling strategies while maintaining full focus on computational efficiency. Diffpack consists of a set of C++ class libraries geared towards the numerical solution of partial differential equations (PDEs) and a collection of of associated utilities and tools, such as a powerful graphical user interface (GUI) and automatic generation of web-aware result reports.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- IBM AIX
- Solaris
- HP UX
- Unix
- OSF
- Dec Alpha
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- IBM xlC
- HP C++
Added : 1999-06-16 Amended: 1999-06-16 Licensing : Commercial
Diffpack - Comprehensive object-oriented system for multi-physics simulation- Email:info@nobjects.com
- Tel:+47 22 06 73 00
- WWW http://www.nobjects.com
- Postal address:Numerical Objects AS, PO Box 124 Bindern, 0314 Oslo, Norway
- Fax:+47 22 06 73 50
- Submitted by:olied@nobjects.com
Add a comment
Distinct TCP/IP - TCP/IP for Windows Software Development Kit
C++ Class Libraries for FTP, Telnet and Windows Sockets.
Allows developers to develop TCP/IP applications without making calls directly to a C Dynamic Link Library (DLL). Applications are created using the Distinct C++ Class Libraries, which take care of establishing the connection between the client and server side of the application. All functionality normally associated with calling a TCP/IP application is taken care of by setting data members and by handling upcall events. Applications are notified of errors, connection changes and incoming data by an upcall posted by the library to the applications window, by providing a callback function to the library or by making polling calls to the library at frequent intervals.
Standard Edition:$495.00
Professional Edition:$695.00
Distinct TCP/IP Run Time: $100.00
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Distinct TCP/IP - TCP/IP for Windows Software Development Kit- Email:mktg@distinct.com
- Tel:(408) 366-8933
- Postal address:Distinct Corporation, 12901 Saratoga Avenue, #4, Saratoga, CA 95070
- Fax:(408) 366-2101
Add a comment
Dr. - Vector Graphics Framework in C++
A cross-platform (Linux, Win32, Mac OX X, FreeBSD, Linux and IRIX) open source C++ framework for 2D and 3D vector graphics that includes 2D curves, a 2D font engine, bitmap vectorizer, tessellator, and an OpenGL extensions manager.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Mac
Compilers
Added : 2006-04-20 Amended: 2008-07-22 Licensing : Commercial
Add a comment
DV Centro - C++ graphics framework for building visual language applications
DV-Centro provides robust graphics, event management and utilities for efficiently developing applications that use non-textual interfaces. Visual language interfaces allow programming through manipulation of graphic objects. By overlaying, juxtaposing or inter- connecting graphic objects, a user can interact and manipulate the application.
DV-Centro is designed for creating applications such as graphical editors and visual language applications - like diagram editors, finite state machine editors, simulation and control systems, etc.
It provides:
- graphics classes: primitives (line, point, circle etc.), rendering (Motif, Windows, Postscript), automatic damage repair, properties (color, fill, line styles etc.), transformations (rotation, scaling, translation)
- graphical constraint management for graphical connectivity and containment. For example, keeping lines connected to boxes while editing a diagram.
- event handling classes for platform-independent definition of events, states and responses used to define how the system behaves.
- mechanisms for graphical editing (n-level undo/redo, copy/cut/paste, save/restore etc.)
- utilities: run-time type checking, memory management
- classes to link data to graphics so you have "smart diagrams"
- Python bindings to Centro for rapid development without long C++ compile times
Operating Systems
- PC 32-bit Windows
- Sun
- Solaris
- HP UX
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
DV Centro - C++ graphics framework for building visual language applications- Email:info@dvcorp.com
- Tel:413-586-4414
- WWW http://www.dvcorp.com
- Postal address:DataViews Corporation 47 Pleasant Street Northampton, MA 01060
- Fax:413-586-3805
Add a comment
EasyTrans - DLL to convert and transform coordinates
EasyTrans is an all-in-one coordinate conversation and transformation DLL, with 3-D transformations, additional options and implemented geoids .EasyTrans supports geographic, UTM, isometric and geocentric coordinates and comes with all ellipsoids and projections used world-wide.
Operating Systems
Compilers
- Visual C++
- Borland C++
- VisualBasic
Added : 2000-04-26 Amended: 2000-04-26 Licensing : Commercial
Add a comment
Embedded Software Framework - An object-oriented software development kit for embedded systems
• ESF Base™ is an OS and platform independent data structure, algorithm and digital signal processing library.
• ESF RTOS™ is an elegant, simple, powerful, and easily customizable, object-oriented interface to kernel services, such as thread creation and synchronization.
• ESF Device™ is a framework of object-oriented, multi-threaded device drivers having portable interfaces and portable implementation, i.e. CPU independence and explicit separation of hardware dependent and hardware independent code.
• ESF Tcp/Ip™ is a flexible, fast, compact, no-shortcuts real-time implementation (e.g. no heap allocation, timeouts, etc.) of the standard TCP/IP protocols.
• ESF SNMP™ is a complete implementation of the standard SNMP protocols, including a framework for rapid MIB implementation that uses advanced data structures such as“balanced binary trees” for high performance object retrieval.
• ESF Web Server™ is an embedded implementation of an HTTP web server that supports all basic HTML (including HTML forms), a website in ROM, and a CGI method for direct execution of internal C or C++ functions.
• ESF SCSI™ is a complete implementation of both Initiator and Target side SCSI protocols.
Added : 2004-07-07 Amended: 2004-07-07 Licensing : Commercial
Add a comment
ExacMath - Quadruple Precision C++ Math Libraries
ExacMath is a quadruple and double quadruple C++ math library that supports the Borland C++ and Microsoft Visual C++ compilers. ExacMath supports real and complex arithmetic with three floating point data types. The epsilon real data type has a 128 bit mantissa. The dpepsilon real data type has a 256 bit mantissa. The cepsilon complex data type real and imaginary components each have a 128 bit mantissa.
ExacMath extends the capability of the Borland C++ and Microsoft Visual C++ math libraries, neither of which supports quadruple or double quadruple arithmetic. The ExacMath library of functions are the same ones found in the Borland C++ and Microsoft Visual C++ math libraries.
ExacMath libraries support DOS, Win16, Win32, 16 and 32 bit Windows Console Applications as well as MFC programs. ExacMath has an elaborate mecanism for exception handling that allows the programmer to trap an exception error message and continue executing the program after the exception occurred. ExacMath also has a library of functions that allow for processing of RMS and MRE errors automatically.
For pricing refer to the Floating Point Software Web Site
Operating Systems
Compilers
Added : 1998-12-03 Amended: 1998-12-03 Licensing : Commercial
Add a comment
fACTs++ Class Library - Financial Application Construction Tools in C++
A homogeneous tool-box of more than 300 C++ classes and templates. fACTs++ provides programmers with design patterns for distributed client-server applications supporting multi-currency securities and transactions, along with associated international conventions. The library includes a complete set of foundation classes, parallel processing and communication classes, extendible financial instrument hierarchy and financial modeling classes.
fACTs++ features include:
- Dynamic Object Type Identification with Smart Pointers
- Streams Interface
- Container Templates
- Time, Date, Calendar and Timer classes
- String and Regexp Classes
- Mathematics and Financial Modeling Classes
- Internationalization Support
- Interface To Persistence Storage and Extendible Objects
- Application Configuration Framework
- Human-Computer Interface Tools, including Model-Viewer Controller Classes
- Distributed Processing Primitives and Client-Server Framework
- CashValue, CashFlow, Payment, Yield and DayCount, Market classes
- Comprehensive and extendible set of instrument definitions, such as Swap, Bond, Basket and Derivative
- Portfolio, Position and Transaction Classes
- Yield Curve, Volatility and Time Series Classes
fACTs++ is available, on a per-project basis, as part of Objective Edge's custom software engineering service. The company's training program allows clients to quickly "ramp-up" their object-oriented development projects, providing early, visible results while reducing development costs. Upon project completion, clients are left with a technology base and application architecture which they are able to leverage in future development activities.
fACTs++ is currently supported on Solaris 2.X and x86, and may be ported to any POSIX compliant platform on a custom development basis.
fACTs++ is a trademarks of Objective Edge Inc. Copyright(c) 1994, 1995 Objective Edge Inc. All rights Reserved.
Operating Systems
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
Forward Error Correction Library - Reed-Solomon Forward Error Correction
Supports Reed-Solomon Forward Error Correction encoding and decoding for many different codes
Features:
- ANSI C++ class library, can be called from C or C++
- Designed for ease of use and flexibility
- Generate/test Reed-Solomon codes with an absolute minimal knowledge of error correcting codes
- Provides C++ classes to allow finite field matrix and polynomial operations to allow generation of other codes
Licensing/pricing: please contact us.
Operating Systems
Compilers
Added : 1996-09-09 Amended: 1996-09-09 Licensing : Commercial
Add a comment
G-BASE/GTX (MATISSE) - Object Oriented Database
Contact: Christina Bernard, Marketing and Communications
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
G-BASE/GTX (MATISSE) - Object Oriented Database- Email:info@odb.com
- Tel:(617) 354-4220
- Postal address:ODB, an Intellitic Intl Co., 238 Broadway, Cambridge, MA 02139
- Fax:(617) 547-5420
Add a comment
Galaxy
This is a C UI library, but it's written in an object-oriented style and is type safe for C++ use. The package includes a WYSIWYG GUI builder.
The tools are, reportedly, pretty full-featured. User-interface items have extensive abstraction (for example, they have a confirmation-type dialog that resolves to a push-pin and 'apply' button under openlook, but 'ok', 'apply', 'cancel' buttons under motif). Objects can be positioned relative to each other (rather than merely absolute position on the screen). Also, errors are handled with an abstract exception handling framework. They support internationalization of fonts (at least Japanese), money, and data formatting.
Some extra-cool features include memory leak detection and C-language objects for text (multi-styled, multi-font text with embedded graphics), list (spreadsheet-like for handling up to 2^31 x 2^31 cells with customizable displays), and graphics processing.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Galaxy- Email:galaxy@visix.com
- Tel:(800) 832-8668
- Postal address:Visix, 11440 Commerce Park Drive, Reston, Virginia 22091
- Fax:(703) 758-2711
Add a comment
GEMSTONE Object Oriented Database
Briefly, GemStone is a full featured OODBMS with transaction control, multiple users, multiple platforms supported, client server architecture, active objects (ie, behavior can occur in the database as well as in the application using it), multiple language support, etc.
GemStone is actually quite a bit more than just a data repository - it is a full-fledged DBMS that is pure OO. You can access the same database just as easily from C, C++, or SmallTalk, or you can build entire database applications inside the database server, because it is an active server that runs methods written in our DML, OPAL, which is a dialect of SmallTalk. There are also high-level tools to aid application building.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
GEMSTONE Object Oriented Database- Email:marcs@slc.com
- Tel:800-243-9369
- Tel:(181) 447-0800
- Tel:510-814-6200
- Postal address:Servio Corporation, 950 Marina Village Parkway, Suite 110, Alameda CA 94501
- Postal address:UK Office:, Servio-UK Ltd, Criterion House, Beauchamp Court, Victors Way, Barnet, EN5 5TZ, England
- Fax:510-814-6227
Add a comment
Generic++
Class library with container classes and basic data types for the development of portable, object-oriented applications. Actually (Feb 96) won the readers choice award of "Objekt Spektrum", which is a German SIGS publication.
This C++ library is completely new. It is aimed at commercial users and implements a generous selection of application-independent basic classes. Its use frees the user from error-prone and time-consuming specific tasks (e.g. main memory management). All libraries previously available on the market are targeted more or less specifically on a particular system environment. However, it is becoming more and more urgent to make as many application modules as possible independent of a specific target platform. What gives Generic++ its competitive edge is the portability of its components and the way it takes account of other software engineering aspects.
Advantages:
- Implementation of the most important application- independent basic classes
- Availability on all standard operating systems and platforms
- Accommodation of the latest C++ extensions such as templates and exception handling
- Co-existence with other libraries
- High degree of runtime efficiency and low resource consumption
- Integrated debugging support
- Template-based, typesafe container classes with interchangeable implementation data structures
- Smart cursors
- Suitability for use in the development of client/server applications in heterogeneous networks.
- Support for multi-threaded applications
- Persistent objects
- Regular expressions
- System independent handling of file and path names
Price for source license (all platforms): 947 DM, ~610 US$
Academic or private use license: 300 DM, ~200 US$
Operating Systems
- PC DOS
- PC 32-bit Windows
- OS/2
- Unix
- PC Windows
Compilers
- IBM xlC
- Cfront
- Borland C++
- Watcom C++
- IBM Cset++
- Symantec C++
Added : 1995-01-01 Amended: 1996-02-28 Licensing : Commercial
Generic++- Email:info@ootec.isar.de
- Tel:(49) 89 893242-0
- Postal address:Alexander v. Zitzewitz, OO-Tec GmbH, Muenchener Strasse 45, D-82131 Gauting, W. Germany
- Fax:(49) 89 893242-31
Add a comment
Genitor - Automates construction and maintenance of code and documentation
Genitor is a tool for C/C++ programmers that automates construction and
maintenance of code and documentation. A graphical editing environment
lets developers rapidly construct any kind of class or function. Genitor
stores objects in a shared repository. Powerful search and documentation
functions let programmers quickly utilize work performed by others.
Winner Software Development Magazine Productivity Award 1997 and 1997.
Genitor also hosts the Developers Resources a listing of useful links for
C/C++ developers.
- Genitor Standard Edition - $495
- Genitor Corporate Edition - $695
Operating Systems
Added : 1998-02-24 Amended: 1998-07-22 Licensing : Commercial
Add a comment
Great Circle GC - Garbage collection library
From Geodesic Systems.
Added : 1997-12-04 Amended: 1997-12-04 Licensing : Commercial
Great Circle GC - Garbage collection library- Geodesic Systems
- Submitted by:boehm@mti.sgi.com
Add a comment
Greenleaf ArchiveLib - C/C++ library for data compression/archiving
Greenleaf ArchiveLib provides the developer a set of classes and functions to compress and store ASCII and binary data into an archive for storage, as well as to retrieve and expand the stored data from the archive.
Features include: PKZip 2.0x archive support - insert, extract, delete, list and more 3 compress and decompress engines: PKZip 2.0x compatible Greenleaf engine: lossless, dictionary-based Copy engine as alternative for small files Portable data compression engines are fast and efficient Progress meter & message classes Functions to add, replace, delete, update and retrieve objects of compressed data within the archive
The price is $279 and this includes full source code. There are no royalties when distributed in executable format.
Operating Systems
- PC DOS
- PC 32-bit Windows
- OS/2
- PC Windows
Compilers
- Visual C++
- Borland C++
- Watcom C++
- IBM Cset++
- Symantec C++
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Greenleaf ArchiveLib - C/C++ library for data compression/archiving- Email:info@gleaf.com
- Tel:(214)248-2561
- Tel:(800)523-9830
- WWW http://www.gleaf.com/~gleaf.com
- Postal address:Greenleaf Software, Inc. 16479 Dallas Pkwy. STE 570 Dallas, TX 75248
- Fax:(214)248-7830
- BBS:(214)250-3778
Add a comment
Greenleaf Comm++
Comm++ is an synchronous RS-232 communications library that provides interrupt-driven, circular buffered service for 35 ports at baud rates to 115,200 baud. Classes are provided for: serial port controls, modem controls, file transfer protocols and calculation of check values.
Features include: XMODEM, YMODEM, ZMODEM, CompuServe B+, Kermit and ANSI file transfer support XON/XOFF, RTS/CTS flow control Support for Novell's NASI interface VT52 and VT100 (subset) terminal emulation support 286/386 Dos extender support
The price is $279 and this includes full source code. There are no royalties when distributed in executable format.
(214)248-2561 (800)523-9830 (214)248-7830 FAX (214)250-3778 BBS http:\www.gleaf.com~gleaf.com email: info@gleaf.com
Operating Systems
- PC DOS
- PC 32-bit Windows
- OS/2
- PC Windows
Compilers
- Visual C++
- Borland C++
- Watcom C++
- IBM Cset++
- Symantec C++
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
Guild
This is a C-language UI library, but they're type-safe for C++ compatibility. The package includes a GUI builder and an event occurrence monitor.
Additional features in the library includes support for international character sets, portable file system support and nifty C-language classes for pie-charts, 3d bars, x-y plots, and the like.
OPTIONS:
- Graphic Modeling $995
- Oracle Database Bridge $395
- ODBC Database Access $495
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Guild- Tel:(415) 513-6650
- Postal address:Guild, 1710 S. Amphlett, 2nd Fl., San Mateo, California 94402
- Fax:(415) 349-4908
Add a comment
ICpak101, ICpak201
Stepstone
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
IDB - Object Databases
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
IDB - Object Databases- Tel:412-963-1846
- Postal address:Persistent Data Systems, P.O. box 38415, Pittsburgh, PA 15238-9929
- Fax:412-963-1843
Add a comment
IKaID - Computer animation library
Brief summary of purpose: Computer animation library as an addition to
OpenGL, Direct3D, OpenInventor, Rave, etc.
Short list of features: Inverse kinematics, rigid-body dynamics, 3D
transformation routines, and classes, and a non-linear equations solver.
All components have portions assembly-coded for speed on the Intel Pentium.
Non-transferable single-user license $169.00. Contact us for details on
other types of licenses.
Operating Systems
Added : 1997-03-19 Amended: 1997-03-19 Licensing : Commercial
Add a comment
ILOG BROKER - Distributed Object Computing
ILOG BROKER: C++ library and preprocessor that extend the C++ language to transparently support Distributed Object Computing environments.
Developers can make any existing linked C++ application distributed, by minimally changing their header files. A set of about 15 keywords enable ILOG BROKER's preprocessor to generate standard C++ code.
Once the header files have been annotated, the preprocessor automatically generates the C++ source code to build the distributed application. Communication between objects is performed through the use of local surrogates calling methods on the real implementation objects across a network. The current implementation relies on RPC for the transportation layer. ILOG BROKER annotations have also been designed to generate IDL code for CORBA 2 specifications.
ILOG BROKER does not impose the use of a dedicated server. Each object in the distributed application can be both a client and a server to and for other objects, therefore providing a true peer-to-peer programming tool.
Cost: $5,000 per Unix-based development license. Preferred university rates available upon request.
Operating Systems
- Sun
- IBM AIX
- HP UX
- Dec OSF/1
- Silicon Graphics
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG BROKER - Distributed Object Computing- Email:info@ilog.com.sg
- Email:info@ilog.com
- Email:info@ilog.fr
- WWW http://www.ilog.fr
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- Tel:+65 773 06 26
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Fax:+1 415-390-0946
- Fax:+33 1 4908 3510
- Fax:+65 773 04 39
Add a comment
ILOG DB LINK - Connect RDBMS to C++ applications
ILOG DB LINK: is a C++ library to connect RDBMS such as Sybase, Oracle, Ingres, Informix, or SQLBase to C++ applications.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG DB LINK - Connect RDBMS to C++ applications- Email:info@ilog.fr
- Email:info@ilog.com
- Email:info@ilog.com.sg
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- Tel:+65 773 06 26
- WWW http://www.ilog.fr
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Fax:+33 1 4908 3510
- Fax:+1 415-390-0946
- Fax:+65 773 04 39
Add a comment
ILOG RULES - Data monitoring in real-time environments
ILOG RULES: is a C++ tool for data monitoring in real-time environments. ILOG RULES embeddable inference engine applies rules directly on native C++ application objets.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG RULES - Data monitoring in real-time environments- Email:info@ilog.com
- Email:info@ilog.fr
- Email:info@ilog.com.sg
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- Tel:+65 773 06 26
- WWW http://www.ilog.fr
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Fax:+33 1 4908 3510
- Fax:+65 773 04 39
- Fax:+1 415-390-0946
Add a comment
ILOG SERVER - C++ object server implementing real-time groupware applications
ILOG SERVER is a C++ library and preprocessor for building reactive servers of C++ objects. It offers a client-independent external abstraction of the data, which ensures the coherence of the shared objects. Each client: - has its own API (Application Programming Interface) - only has to be concerned with the objects it manipulates - does not have to worry about other clients sharing the same objects
ILOG SERVER is an extension of the SmallTalk Model View Controller (MVC) architecture to manipulate custom C++ objects instead of fundamental data types. Developers describe object models by annotating their header files using about 15 predefined keywords. Once the header files have been annotated, ILOG SERVER's C++ preprocessor automatically generates the appropriate C++ code.
By extending the notion of a C++ pointer as a data member, ILOG SERVER makes it possible to easily build relationships with cardinalities between C++ classes that will automatically be maintained. This extension to C++ supports inheritance and relationships based on smart pointers.
Cost: $5,000 per Unix-based development license. Preferred university rates available upon request. Demonstration CD-ROM available
Operating Systems
- Sun
- IBM AIX
- HP UX
- Dec OSF/1
- Silicon Graphics
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG SERVER - C++ object server implementing real-time groupware applications- Email:info@ilog.com
- Email:info@ilog.fr
- Email:info@ilog.com.sg
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- Tel:+65 773 06 26
- WWW http://www.ilog.fr
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Fax:+1 415-390-0946
- Fax:+33 1 4908 3510
- Fax:+65 773 04 39
Add a comment
ILOG SOLVER - Constraint reasoning library
ILOG SOLVER: is a C++ constraint reasoning library for solving complex resource management problems such as scheduling, configuration, and planning.
ILOG SCHEDULE: is an add-on library to ILOG SOLVER dedicated to solving scheduling problems.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG SOLVER - Constraint reasoning library- Email:info@ilog.com
- Email:info@ilog.fr
- Email:info@ilog.com.sg
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- WWW http://www.ilog.fr
- Tel:+65 773 06 26
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Fax:+1 415-390-0946
- Fax:+33 1 4908 3510
- Fax:+65 773 04 39
Add a comment
ILOG TALK - Object-oriented dynamic language
ILOG TALK: is an object-oriented dynamic language offering a seamless integration with C++ class libraries.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG TALK - Object-oriented dynamic language- Email:info@ilog.com
- Email:info@ilog.fr
- Email:info@ilog.com.sg
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- Tel:+65 773 06 26
- WWW http://www.ilog.fr
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Fax:+1 415-390-0946
- Fax:+33 1 4908 3510
- Fax:+65 773 04 39
Add a comment
ILOG VIEWS - C++ library and editor to design Very Graphical User Interfaces
ILOG VIEWS 2 high-level C++ class library is fully extensible and portable across Windows, OS/2, and Unix platforms.
It includes:
- portable resources, event management, and PostScript support
- a portable multi-look gadget library
- extensive 2D graphic object library including charts and gauges
- PowerObjects such as graph layout, spreadsheet, and Gantt chart
- management of multiple views & layers (for cartographic applications)
- double buffering, infinite undo, zooming, and other editing operations
The development of portable VGUI applications is accelerated through ILOG PowerEdit, an extensible VGUI builder that generates standard C++ code. PowerEdit reusable components are provided with ILOG VIEWS 2 so that developers can create and distribute their own custom editors.
ILOG VIEWS 2 Dynamic Variable mechanism offer an interpretor for writing C formulae between variables to control the attributes of objects. This allows for code-free animation and control of graphics objects.
ILOG VIEWS 2 provides a message translation mechanism so that messages used in the interfaces may be translated dynamically. The look and feel of ILOG VIEWS 2 applications can be changed dynamically from Motif to Windows on all platforms.
ILOG BUILDER: is a GUI builder that generates OSF/Motif interfaces in C and C++. It offers UIL read/write capabilities and tight integration with ILOG VIEWS.
Operating Systems
- PC 32-bit Windows
- Sun
- HP UX
- OS/2
- PC Windows
- Dec OSF/1
- Silicon Graphics
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ILOG VIEWS - C++ library and editor to design Very Graphical User Interfaces- Email:info@ilog.com
- Email:info@ilog.com.sg
- Email:info@ilog.fr
- Tel:+1 415-390-9000
- WWW http://www.ilog.fr
- Tel:+65 773 06 26
- WWW http://www.ilog.fr
- Tel:+33 1 4908 3500
- Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA
- Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France
- Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254
- Fax:+1 415-390-0946
- Fax:+65 773 04 39
- Fax:+33 1 4908 3510
Add a comment
ImageSoft - Object/Engineering C++ class library supporting simulation.
The library provides a natural approach to solving discrete-event simulation problems. Modularity is reinforced by implementing the process objects as concurrent tasks. Support is provided for dynamic systems; transaction operators; transaction messages; as well as queuing network thread with polymorphic scheduler (timer for discrete-event simulation; tracer for simulation run; processes in discrete-event simulation with services delay; conventional/unconditional blocking, pre-emption, etc.; shared queues/links in network with LIFO, FIFO & arbitrary queuing discipline; producing node and source; consuming node and sink; generic queuing network nodes and servers.
And full source code is provided together with extensive documentation, examples and tutorial. There are also an enormous number of other class libraries included with source that are of interest to the scientific and engineering community.
hemant@neonetworks.com reports that all the phone numbers given have been disconnected. Further information welcome!
Added : 1995-01-01 Amended: 1998-07-22 Licensing : Commercial
ImageSoft - Object/Engineering C++ class library supporting simulation.- Email:mcdhup!image!object
- Tel:(516) 767-2233
- Postal address:ImageSoft Inc., 2 Haven Avenue, Port Washington, NY 11050
- Fax:(516) 767-9067
- BBS:(516) 767-9074
Add a comment
jfront rawjava - A C++ library for parsing java source code
This parsing library is fully compliant with the newly published "The Java Language Specification, Second Edition" and as such encapsulates the complete Java 2 grammar. The release package contains a complete documentation set, including a training manual. The training package has been designed to be accessible to even inexperienced C++ developers.
What follows is a brief list of the more significant features:
- highly-scalable, efficient architecture means you can parse arbitrarily large java files
- fully compliant with the Java 2 grammar
- complete documentation clearly describes the API
- concise API is easy to understand -- even for inexperienced C++developers
- training package makes you productive very quickly
We are currently only offering the library for gcc on linux. However, we will be adding platforms as requested, so check our site to see if your favourite platform is available (or to request a build for your platform -- we will be taking selected requests, based on market scale).
Non-Commercial licences are available from US$88.00
Operating Systems
Compilers
Added : 2000-07-28 Amended: 2008-11-04 Licensing : Commercial
Add a comment
Julius Model Viewer 1 - DICOM / Polymesh Viewer & Software Framework for Medical Applications
Julius MV1 is a showcase application for the Julius framework. It can be used as a fully functional DICOM 3.0 or RAW volume viewer as well as a viewer for large polymesh datasets. It also provides basic data processing features such as volume segmentation or polymesh decimation.
Julius MV1 can be used as a basis and testbed for other applications developed with the Julius Framework. The Julius Framework (which comes bundled with MV1) is a general software architecture for medical visualization, simulation, and navigation.
Julius is written in C++ using Qt and OpenGL, resulting in a cross-platform framework.
Operating Systems
- Linux
- PC 32-bit Windows
- Mac
Compilers
Added : 2006-11-08 Amended: 2006-11-08 Licensing : Copyright (other)
Add a comment
just::thread C++0x thread library - A complete implementation of the thread library from the upcoming C++0x standard
just::thread is an implementation of the multithreading-related portions of the standard library from the upcoming C++0x standard.
The library includes the following features:
- Tight adherence to the C++0x working draft.
std::thread class for launching and managing threads.
- Mutex classes (
std::mutex, std::timed_mutex, etc.) for protecting shared data.
- Condition variables (
std::condition_variable and std::condition_variable_any) for synchronizing operations.
- Atomic types (
std::atomic_int, std::atomic_long, etc.) for low level atomic access.
- Futures and promises (
std::unique_future, std::promise, etc.) for communicating data between threads.
- Optimized implementation to minimize dynamic memory allocation and copying of supplied functions and arguments.
- Compatible with Microsoft Visual Studio 2008 and Microsoft Visual C++ Express 2008 for 32-bit Windows targets.
- Support for
std::tr1::ref from Microsoft Visual Studio 2008 Service Pack 1 for passing references to a thread function.
- Special debug mode for identifying the call chain leading to a deadlock.
Operating Systems
Compilers
Added : 2009-03-02 Amended: 2009-03-02
Add a comment
KALA - Object Oriented Database
Kala(tm) is a Persistent Data Server managing distributed, shared, arbitrarily complex and evolving persistent data. Kala is highly efficient and secure. Kala manages the visibility of persistent data elements to its clients, thus supporting any types of transactions, versions, access control, security, configurations. Kala does not restrict you to any particular model. Kala provides the mechanism, but imposes no policy.
Ports to Windows and MacOS are also likely in the near future. Any port is possible as NRE.
Kala's interface is ANSI C, also callable from C++.
Contact: Sergiu S. Simmel
Operating Systems
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
KALA - Object Oriented Database- Email:ig@kala.com
- Tel:+1-973-539-7739
- Postal address:Penobscot Development Corporation, Van Beuren Road, Morristown NJ 07960 USA
Add a comment
Libsetl - programming symbolically in C++
Libsetl is a C++ library that is designed for supporting symbolic computing in C++. Based on a very high-level symbolic programming language (SETL), libsetl offers a number of powerful features that are available only for advanced symbolic languages. These features include latent types, high-level constructs (sets, maps and tuples), high-level operations through polymorphism, efficient iterators, runtime type checking, automatic memory management, intuitive syntax, and more. C++ programs written using libsetl do not have common C++ errors like memory leaks or memory corruptions. Runtime errors are detected and handled gracefully by using exceptions.
Libsetl and its related files are proprietary materials. But free copies of precompiled packages are available for evaluations or education/research purposes.
Operating Systems
- PC DOS
- Linux
- PC 32-bit Windows
- Sun
- Solaris
- HP UX
Compilers
- Visual C++
- GCC
- Cfront
- HP C++
Added : 1996-03-28 Amended: 1996-03-28 Licensing : Demo
Libsetl - programming symbolically in C++- Land Software
- WWW http://www.landsoft.com
- Tel:908.957.3891
- Postal address:Zhiqing Liu, Land Software, 162 von Neumann Drive, Princeton, NJ 08540
- Fax:908.957.7189
Add a comment
LibXL - Library for reading and writing Excel files
LibXL reads and writes Excel files without COM and Microsoft Excel. Supports unicode, formulas and cell's formatting: alignments, borders, colors, fill patterns, fonts. See detailed description and examples on the home page.
Operating Systems
Compilers
- Visual C++
- GCC
- Borland C++
- Visual C++ 6
- Microsoft .NET
- Visual C++ .NET
Added : 2010-05-05 Amended: 2010-05-05 Licensing : Commercial
LibXL - Library for reading and writing Excel files- Homepage
- Submitted by:Dmytro Skrypnyk
Add a comment
Linpack.h++ - The jewel of C++ math classes.
Linpack.h++ includes all of Matrix.h++, plus all of the functionality in the original and well- established Fortran version; including solutions of systems of equations for a variety of matrix types, solutions of over- and under-determined systems of equations, incremental least squares solvers, etc. But, Linpack.h++ is a tru object-oriented library, not just a C version that compiles under C++: the traditional messiness of the Fortran version has been replaced with high-level, yet efficient, objects that make code far easier to write and maintain.
Prices range from $299 to $1195
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Linpack.h++ - The jewel of C++ math classes.- Email:info@roguewave.com
- Tel:(503) 754-2311
- Postal address:Rogue Wave Software, Inc., 1325 NW 9th Street, Corvallis, OR, 97330
- Fax:(503) 757-6650
Add a comment
M++
M++ isn't as well known as the RogueWave math.h++ libraries, but it has been around for many years. It has a number of features that distinguish it from the RogueWave classes, notably improved handling of temporaries.
M++ was explicitly designed to provide the functionality of an array language like Matlab or Gauss and it contains the Linpack, Eispack stuff found in RogueWave's Linpack.h++.
Dyad Software, also sell modules written in M++ for doing statistical work, including linear and nonlinear least squares estimation, as well as optimization, numerical integration, and differential equations.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
M++- Tel:206-637-9426
- Postal address:Dyad Software, 6947 Coal Creek Pkwy, Suite 361, Renton, WA 98059-3159
- Fax:206-637-9428
- BBS:206-271-9486
Add a comment
MacApp - Mac application development toolkit
Luigi Ballabio tells me this toolkit is now available free of charge from the URL below.
Operating Systems
Added : 1995-01-01 Amended: 2000-04-26 Licensing : Copyrighted freeware
Add a comment
MainWin - MFC on Unix (Microsoft Foundation Classes)
Developers can develop on Unix using the MFC library as on the PC. With
virtually no change to the source code compared to the PC version
(typically less then 1 per 1000) they produce unix version using the
MainWin libraries. Most advanced features of MFC are supported like OLE,
activeX, WinInet, multithreading, common controls.
The look and feel of the application on unix is either Windows or Motif,
and can be changed at runtime.
Requires the C++ compiler from the platform vendor.
Current MFC version (as of 11/96): 4.2
Operating Systems
- SGI Irix
- Solaris
- HP UX
- Dec Unix
- SCO Open Desktop
Added : 1995-01-01 Amended: 1997-03-19 Licensing : Commercial
Add a comment
Matrix.h++ - includes all the functionality of Math.h++.
For example: general matrices, vectors, statistics, complex numbers, Fast Forier Transformation (FFT's), etc. Matrix.h++ adds specialized matrix classes such as banded, symmetric, positive-definite, Hermitian, tridiagonal, etc. Because Matrix.h++ includes Math.h++, it can take advantage of Math.h++'s highly optimized low-level assembly routines, making it fast as well as graceful.
Prices range from $199 to $995
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Matrix.h++ - includes all the functionality of Math.h++.- Email:info@roguewave.com
- Tel:(503) 754-2311
- Postal address:Rogue Wave Software, Inc., 1325 NW 9th Street, Corvallis, OR, 97330
- Fax:(503) 757-6650
Add a comment
Memory Tuning System (MTS) - Fast, efficient memory allocator
Specifically designed to minimize paging and data fragmentation
Improves run-time performance by:
- Minimizing virtual memory paging
- Providing faster malloc/free calls
- Minimizing memory fragmentation
Improves programmer productivity with:
- Standard C library malloc interface
- Works with C, C++, FORTRAN
- Availability on Unix, OS/2, Win32s and Windows NT
- Consistent performance across multiple machines
- MTS shipped as portable C source code
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Memory Tuning System (MTS) - Fast, efficient memory allocator- Email: info@newcode.com
- Email:zeev@newcode.com
- Email:al@newcode.com
- Email:al@newcode.com
- Email:zeev@newcode.com
- Tel:Corporate Headquarters: 1.800.NEWCODE (1.800.639.2633)
- Tel:Eastern Office: 508.454.7255
- Tel:Western Office: 303.416.0784
- Postal address:Eastern Office: NewCode Technology, Inc., 650 Suffolk Street, Lowell, MA 01854
- Postal address:Western Office: NewCode Technology, Inc., 2406 Newport Court, Fort Collins, CO 80526
- Fax:Eastern Office: 508.454.7559
- Fax:Western Office: 303.416.0753
Add a comment
MFC Toolkit 2.0 - MFC extensions
The Toolkit product contains MFC extensions that make the programming job easier and improve your product. Examples of this include:
- a bitmapped button class that generates all required images from a single 16 or 256-color bitmap
- a class that allows subclassing of windows already subclassed by MFC
- a fully-customizable docking toolbar that extends customization even to allowing the end-user to edit bitmap images on buttons
- a class from which you can derive your own docking splitters
- a simple splitter window with dynamic reorientation horz/vert
- routines to find a runtime-class structure from its ascii name, check inheritan! ce using ascii names only, etc
These are just a few examples; the toolkit contains more than this, is shipped with an extensive HLP file and full source code, and works with both the 32 and 16-bit versions of MFC.
Operating Systems
- PC 32-bit Windows
- PC Windows
Compilers
Added : 1997-03-19 Amended: 1997-03-19 Licensing : Commercial
Add a comment
MIME++ - Class library for parsing, creating, editing messages in MIME format
Features
- Has intuitive object-oriented architecture.
- Designed from the beginning to permit user customization or extension
through inheritance (subclassing of library classes) and polymorphism.
- Class names are taken directly from the BNF grammars given in RFC-822
and RFC-2045.
- Supports all MIME types and subtypes documented in RFC-2046, including
multipart, message, and application types.
- Supports quoted-printable, base64, uuencode/uudecode, and Binhex 4.0
content transfer encodings.
- SMTP, POP, and NNTP protocols.
- Provides high-level, wrapper classes Message, C MultipartMessage, and
MessageWithAttachments that are especially easy to use. These wrapper
classes also serve as examples showing how to use the basic library
classes.
MIME++ should compile with just about any C++ compiler. The system-dependent
features, which are few, are isolated and identified as "portability functions."
Operating Systems
- Linux
- PC 32-bit Windows
- Sparc
- SGI Irix
- Sun
- IBM AIX
- Solaris
- HP UX
- Unix
- SYSV
- Dec Alpha
- PC Windows
- Dec OSF/1
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- Sun CC
- SGI NCC
- Cfront
- Borland C++
- HP C++
Added : 1998-07-27 Amended: 2005-07-01 Licensing : Commercial
Add a comment
MtxVec - An object oriented numerical library for Cbuilder
MtxVec is an object oriented numerical library designed for RAD. The library features several new approaches to object oriented numerics and breaks some new ground.
Features:
Encapsulates LAPACK 3.0 and BLAS I,II,III with Intel MKL 3.2.1 Add-on packages available: statistics and dsp. Interfaces Intel NSP for vector operations. Supports SMP for matrix operations. Single and/or double precision supported. Intel Itanium (IA64) ready. Bottom up complete support for complex numbers. Results in 50 to 100aster code then fastest possible structred code (plain procedures) written in C/C++. Design structured in three layers: procedural, object and component; ensures good scalability. Trading space for time technology. Introduces object caching. Trading safety for time technology. Allows user controllable range checking. CPU specific optimizations supporting: PI,PII,PIII. Extreme ease of use and very short time to implement. Ideal for algorithm prototyping. Built in dynamic memory management with extensive support for debugging. Allows completely matrix-vector oriented programming. Requires only CBuilder standard. Support for future CPU instruction sets, without application recompile. (DLL replacement)
Demo (4.5 MB) includes performance and code demonstrations, trial version and complete help system.
A new version 2.0 of MtxVec has been released..
MtxVec adds the following capabilities to C++Builder and .NET development
environment:
- Comprehensive set of mathematical and statistical functions
- Substantial performance improvements of floating point math by exploiting
the P4 SSE2 and SSE3 instruction sets
- Improved compactness and readability of code.
- Significantly shorter development times by protecting the developer from a
wide range of possible errors.
Typical performance improvements observed by most users are 2-3 times for
vector functions, but speed ups up to 10 times are not rare. The matrix
multiplication for example is faster up to 20 times. For .NET applications
these factors should be multiplied by about 1.3. All comparisons are against
classic floating point assembler (!).
Key new features:
- very fast and clean operator overloading
- features a very large set of vectorized math functions
Operating Systems
Compilers
Added : 2000-08-15 Amended: 2004-12-17 Licensing : Commercial
Add a comment
NeoAccess Developer's Toolkit - Cross-platform object database engine for C++ development
NeoAccess(TM) is a full-featured object database engine for use in Windows, Macintosh, Unix and DOS based applications. NeoAccess's feature set include: Blobs, part lists, iterators, swizzlers, temporary objects, multiple indices on a class, a powerful relational object query mechanism, a very small memory and file footprint and a streams-based I/O model. NeoAccess has the complete set of features that in-house and commercial developers need and an easy to use programming interface that hides internal complexity to keep C++ developers productive.
In much the same way that application frameworks are used to construct the front-end of an application, NeoAccess is the framework developers use to build an application's back-end. NeoAccess is a set of C++ classes that naturally extends standard application frameworks such as Metrowerks' PowerPlant, Symantec's THINK Class Library and Apple's MacApp on the Macintosh and Microsoft's Foundation Classes, Inmark's zApp and Borland's ObjectWindows in Intel-based environments. NeoAccess is very portable and can also be used without an application framework.
NeoAccess comes complete with full source code. The same NeoAccess source code can be used to build Windows ('95, NT and 3.x), Macintosh, Unix (all platforms) and DOS applications. The programming interface is virtually identical in all environments. NeoAccess-based applications produce single file documents that are binary-compatible across platforms. That is, a database built on one platform can be used on any other platform without conversion.
The NeoAccess Developer's Toolkit is priced at $749 per developer with no runtime licensing fees. It includes full source code, numerous sample applications, 450+ pages of documentation, and 30 days of online technical support.
Operating Systems
- PC DOS
- Unix
- PC Windows
- Mac
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
NetClasses++ - C++ classes for message passing environments:
NetClasses is a set of C++ class libraries that is organized as an object- oriented software toolkit for distributed, message-passing based programming.
Facilities include :
Transporting objects over a network. NetClasses can transport: Arbitrary C++ objects derived from PostModern's TransObject class, arbitrary NIH- derived objects, and NetClasses Typed Objects.
- NetClasses Typed Objects provide an object-oriented data transport in which the structure and organization of objects is specified externally in configurable files using a simple, programming language independent abstract syntax notation, the NetClasses Abstract Syntax Notation (NASN).
- Remote method invocations (RMI). Using RMI, an application on machine B can invoke a method on machine A. RMI makes fault tolerance and connection management transparent to the application programmer. The RMI layer is built on top of the distributed services package that is described below.
- Reading and writeing all three varieties of NetClasses-transportable objects on streams using machine-independent external representations.
Prices :
- NetClasses Development License $1995
- NetClasses Runtime License $495
- NetClasses Source Code License $7995 (includes 3 runtime licenses)
- NetClasses training class $2000
- NetClasses consulting and porting services (ask for quote)
Operating Systems
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
NetClasses++ - C++ classes for message passing environments:- Tel:1-800-245-UNIX
- Tel:(415) 572-0200
- Postal address:Qualix Group, 1900 S. Norfolk St. Suite 224, San Mateo, CA 94403
- Fax:(415) 572-1300
Add a comment
NeXTStep - application development toolkit
NeXT
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
NuGraf - Deveoper's 3D Toolkit
The NuGraf Developer's 3D Toolkit is a powerful and general purpose 3D graphics framework (in C, but C++ type-safe) providing full-featured hierarchical database management, modeling and high-quality "photo-realistic" rendering capabilities. The toolkit is designed as a complete "drop-in" solution for third party software vendors seeking to quickly and efficiently incorporate high quality 3D computer graphics into their software packages.
The toolkit provides all of the necessary components to build a complete interactive 3D modeling and rendering system. These components include a state-of-the-art "photo-realistic" renderer, modeling and database management, coordinate space mapping, object and polygon picking, automatic smoothing and processing of raw polygonal data (useful for DXF file import), as well as optimized wireframe output for fast interactive data manipulation.
The toolkit also handles all aspects of the 3D rendering process, alleviating the host application from dealing with such mundane tasks as error handling and recovery, color output conversion (for those output devices with few colors) and file/display output. It features all of the functionality normally associated with a high-end rendering system but neatly packaged into componentized modules.
NuGraf is ideally suited for:
- Inclusion into CAD packages which have a graphical user interface and existing 3D modeling capabilities, but no rendering features.
- 3D applications with weak or older renderers, or those that depend upon slow ray tracing.
- 3D applications which currently use real-time, medium quality renderers such as Open GL or 3DR.
- Developers writing 3D modeling applications which require powerful rendering capabilities, color conversion and scanline output to various devices.
- Any developer wishing to create a 3D modeling and rendering system from the ground up.
- 3d font creation programs.
Pricing: Development licences = $3500 for "Application Builder" version, $995 for "Render Extender" version. Royalties apply for commercial applications developed with the toolkit.
Highly portable, inquire about other platforms. Please refer to WEB site for further information, online API spec, extensive slide show and pricing.
Operating Systems
- Linux
- PC 32-bit Windows
- SGI Irix
- Sun
- PC Windows
Compilers
Added : 1996-02-05 Amended: 1996-02-05 Licensing : Commercial
Add a comment
OptSolve++ - Software components for nonlinear optimization (formerly LION++)
The OptSolve++ class libraries provide a convenient and extensible
interface for nonlinear optimization of user-specified functions.
The following multidimensional algorithms have been implemented:
nonlinear simplex (no derivative required)
Powell (no derivatives required) -- uses Brent line search
conjugate gradient (requires gradient of function) -- uses modified
secant line search
Levenberg-Marquardt -- for nonlinear least squares problems -- uses
Broyden's method to estimate the Jacobian if function gradients
are not available
bound constraints (uses variable transformation approach)
OptSolve++ also includes a reference counted linear algebra library.
The next release will include algorithms for:
-
general nonlinear constraints, using a penalty function approach
multidimensional nonlinear solvers for root-finding
Compiled versions of OptSolve++ are available to beta-testers for 17
OS/compiler combinations. Much of the source code is also available.
Operating Systems
- Linux
- PC 32-bit Windows
- IBM AIX
- Solaris
- HP UX
- Dec Unix
- Mac
- Irix
Compilers
- Visual C++
- GCC
- Dec CC
- SGI CC
- MetroWerks CodeWarrior
- Borland C++
- KAI C++
- egcs
Added : 1998-12-03 Amended: 1999-09-30 Licensing : Commercial
Add a comment
Performance Plus for C/C++ is an optimized and par - BLAS, LAPACK, FFTPACK, VFFTPACK in C++
Performance Plus for C/C++ is an optimized and parallelized class library that encapsulates the functionality of levels 1, 2, and 3 of BLAS, LAPACK, LINPACK, FFTPACK, and VFFTPACK. It is available for Solaris 2.x, Windows NT, and Windows 95.
Operating Systems
- PC 32-bit Windows
- Sparc
- Solaris
- Unix
- PC Windows
Compilers
- Visual C++
- Sun CC
- Apogee CC
- Borland C++
- Sparcworks
Added : 1997-11-27 Amended: 1997-11-27 Licensing : Commercial
Add a comment
SoftIntegration Graphical Library (SIGL) - C++ Graphical Library for 2D/3D plottings
SoftIntegration Graphical Library (SIGL) is a cross platform C++ graphical library from SoftIntegration. It provides the simplest possible solution for 2D/3D graphical plotting within the framework of C/C++ for rapid application development.
Plots can be generated using SIGL for display in a local monitor, through the Web, or saved in a file with a variety of different file formats. The graphical library is for applications where the convenience of use, speed and performance matter.
With our Graphical Library, you can design and deploy the graphical application running across different platforms. SIGL contains a C++
plotting class with many member functions for visualization. It simplifies the graphical plotting for C++ users. You can compile and link your code with the Graphical Library in your desired C++ compiler.
It costs $299 for commercial use and $199 for academic use.
More information can be found at
http://www.softintegration.com/products/silib/graphlib/
Operating Systems
- Linux
- PC 32-bit Windows
- Solaris
- HP UX
- Unix
- Mac
- FreeBSD
Compilers
- Visual C++
- GCC
- Sun CC
- HP C++
Added : 2004-07-19 Amended: 2004-07-20 Licensing : Commercial
Add a comment
Commercial libraries (O-Z)
ObjectBuilder - GUI library
ObjectBuilder includes the Object Interface (OI) class library which is a C++ object-oriented implementation of both Motif and Openlook interfaces. Note that interested parties can read more about the OI library in the 1300 page "OI Programmer's Guide" by Gary Aitken and Amber Bensen published by Prentice-Hall.
ObjectBuilder is a GUI that offers developers a complete C++ implementation of Motif. ObjectBuilder allows developers to rapidly design, test, modify and implement sophisticated object-oriented graphical user interfaces by using ObjectBuilder to manipulate C++ objects found in its Object Interface (OI) C++ class library.
ObjectBuilder features a drag-and-drop user interface that allows developers to immediately visualize the results of their user interface design.
ObjectBuilder is owned and supported by Openware Technologies, Inc.. Formerly owned by ParcPlace Systems, Openware recently acquired ObjectBuilder.
Operating Systems
- SCO Unix 3.2.4
- SGI Irix
- IBM AIX
- Solaris
- HP UX
- Dec Alpha
- Unisys Unixware
- NCR SVR4
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ObjectBuilder - GUI library- Tel:1-800-933-5558 x4224 (Kris Gottschalk)
Add a comment
Objective Grid - Visual C++/MFC grid control
Stingray Software offers two Visual C++/Microsoft Foundation Class extensions: Objective Grid and SEC++.
Objective Grid is a full-featured grid control that can be used as a CView or CWnd derivative.
All products include source code and are royalty free. Objective Grid is $395. There is a bundle with SEC++ available for $795.
Compuserve: GO STINGRAY
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
Objectivity/DB - Object Oriented Database
Operating Systems
- Sparc
- SGI Irix
- IBM AIX
- HP 9000
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
OBJECTSTORE - Object Oriented Database
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
OBJECTSTORE - Object Oriented Database- Tel:617-270-9797
- Tel:(415) 327 - 5191
- Tel:44-793-486111
- Postal address:Object Design, One New England Executive Park, 101 El Camino Real, Suite 300, Burlington, MA 01803,, Menlo Park, CA 94025
- Postal address:UK Office: Object Design (UK) Ltd., 604 Delta Business Park, Welton Road, Swindon, Wiltshire SN5 7XP
- Fax:617-270-3509
- Fax:44-793-491177
Add a comment
ObjectViews
I believe this is a commercial version of InterViews.
Quest Systems
Added : 1995-01-01 Amended: 1997-03-19 Licensing : Commercial
Add a comment
Octo+ - Extenstion library to MFC
The Octo+ MFC class library is an extenstion library to MFC. Subscription entitles you to the use of all the classes developed for the duration of a year. There is a commitment to issue a new class every two weeks. De facto at least one new class is added every week. You could compare it to the subscription to an online MFC source magazine. The class library is accessible at : www.periphere.be where you can get all the latest information up-to-date. New classes issued are eMailed to registered users.
Operating Systems
Compilers
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
ONTOS - Object Oriented Database
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ONTOS - Object Oriented Database- Tel:617-272-7110
- Tel:+44 625 539 903
- Postal address:Ontologic, Inc., Three Burlington Woods, Burlington, MA 01803
- Postal address:UK: VALBECC SOFTWARE, Mr. Fred Peel, 115 Wilmslow Road, Handforth,, Wilmslow, SK9 3ER, U.K.
- Fax:617-272-8101
- Fax:+44 625 539 905
Add a comment
Open Dialogue
Operating Systems
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
Open Interface Version 3.0
This is a C-based UI library, but type-safe for C++ compatibility. The software also comes with a WYSIWYG GUI builder.
They include tons of extra widgets like business graphics (bar, pie, and line charts), images (all standard formats), and hypertext help.
Other software in Open Interface includes international character support, multi-font support, full printer support, memory management, file I/O support as well as Windows DDE support (the latter is, of course, non- portable).
They also have a product called Nexpertobject, which is an expert systems tool intended for GUI development.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Open Interface Version 3.0- Tel:(800) 876-4900
- Tel:(415) 321-4488
- Postal address:Neuron Data, 156 University Avenue, Palo Alto, California 94301
Add a comment
OpenUI - Another GUI builder
This interface supports C, Pascal, and (ish) COBOL.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
OpenUI - Another GUI builder- Tel:(408) 730-2626
- Postal address:Open Software Associates, P.O. Box 3599, Sunnyvale, CA 94088-3599
Add a comment
ORION/ITASCA - Object Oriented Database
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ORION/ITASCA - Object Oriented Database- Email:doug@itasc.com
- Tel:612-851-3158
- Tel:(612) 851-3155
- Postal address:Itasca Systems, Inc., 2850 Metro Drive, Suite 300, Minneapolis, MN 55425
- Postal address: Itasca Systems, Inc., 7850 Metro Parkway, Minneapolis, Minn 55425
- Fax:612 851 3157
Add a comment
OS Object Oriented Database
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
OS Object Oriented Database- Email:didier@o2tech.fr
- Email:o2@o2tech.fr
- Tel:+1 617 621 7041
- Tel:+33 1 30 84 77 9
- Postal address:O2 technology, Suite 2200, 1 Kendall Square, Cambridge MA 02139, U.S.A.
- Postal address:France: O2 Technology, 7, Rue du Parc de Clagny, 78035 Versailles Cedex, France
- Fax:+1 617 577 1209
- Fax:+33 1 30 84 77 90
Add a comment
Performance Plus for C/C++ - Optimized and parallelized math library for Windows NT, Windows 95, and Solaris
Performance Plus for C/C++ is a native C and C++ implementation of the LAPACK, levels 1-3 of BLAS, FFTPACK, VFFTPACK, and LINPACK math libraries. It is highly optimized and parallelized to take advantage of multiple CPUs when they are available. It includes modules to accelerate programs that use Rogue Wave's Math.h++ and LAPACK.h++ so that Rogue Wave users can get the optimization and parallelization benefits of Performance Plus for C/C++ without making any source code changes.
Performance Plus for C/C++ is available for Windows NT, Windows 95, Solaris/SPARC, and Solaris/x86. It is compatible with Borland C++, Microsoft Visua!l C++, and Absoft C++ on Windows, and with Apogee and SunSoft C++ on Solaris.
Operating Systems
- PC 32-bit Windows
- Sparc
- Solaris
- Unix
Compilers
- Visual C++
- Sun CC
- Apogee CC
- Borland C++
- Sparcworks
- Absoft
Added : 1998-02-24 Amended: 1998-02-24 Licensing : Commercial
Add a comment
Persistence - Access to a relational database from a C++ object model
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Persistence - Access to a relational database from a C++ object model- Tel:415.341.7733
- Postal address:Persistence Software Inc, 1700 Sourth Amphlett Blvd, Suite 250, San Mateo, Ca 94402
Add a comment
POET - Object Oriented Database
Pricing starts at about $500. 00 for the DOS version, to a little over $1000.00 for the Unix versions.
Operating Systems
- PC DOS
- Sparc
- OS/2
- NeXT
- PC Windows
- Mac
- Novell
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
POET - Object Oriented Database- Email:poet@bks.de
- Email:acourt@cix.compulink.co.uk
- Tel:617 / 621 7047
- Tel:+49 30 / 342 3066
- Tel:408 / 748 - 3403
- Tel:+49 40 / 60 99 011
- Tel:+44 81 / 317 7777
- Postal address:BKS Software, One Kendall Square, Suite 2200, Cambridge, MA 02139
- Postal address:In Germany : BKS Software Guerickestr. 27 1000 Berlin 10 Germany
- Postal address:BKS Software, 4633 Old Ironsides Drive, Suite 110, Santa Clara, CA 95054
- Postal address:European Office:, BKS Software, Fo_redder 12, 2000 Hamburg 67, Germany
- Postal address:UK Office:, Silicon River, Ltd., 106-108 Powis Street, London, SE18 6LU, England
- Fax:617 / 621 7097
- Fax:+49 30 / 342 8413
- Fax:408 / 748 - 9060
- Fax:+49 40 / 60 39 851
- Fax:+44 81 / 316 7778
- BBS:+44 81 / 317 2310
Add a comment
ppLinear - General Linear Algebra lib
A general purpose linear algebra library in C+ also
lso provides FFT's and polynomial manipulations. Extremely
powerful and requires an adept C++ programmer familiar with
the Standard Library.
Distributed as a static library and headers. Examples provided.
free - currently in beta.
Operating Systems
- Cross platform, should work on any.
Compilers
- Any standard C++ compiler
Added : 2008-08-25 Amended: 2008-08-25 Licensing : Commercial
Add a comment
Presentation Services Manager UI library
No WYSIWYG GUI builder exists, but they do include a script language.
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Presentation Services Manager UI library- Tel:+61 3 646 7100
- Postal address:Lancorp Pty Ltd, 33 Nott St, Port Melbourne 3207, Australia
- Fax:+61 3 646 8610
Add a comment
Quick Thread - QuickThread is a C++ runtime library and paradigm for multithreaded applications
QuickThread is a C++ runtime library and programming paradigm for writing multithreaded applications in 32-bit and 64-bit environments using C++, FORTRAN and mixed language programs.
QuickThread is affinity capable supporting thread affinity, data binding affinity and NUMA support.
QuickThread is a tasking system using thread pools and provides exceptional control over task scheduling with respect to cache levels, core placement, and thread availability.
The design goal of QuickThread is to produce a minimal overhead mechanism for distributing work in a multi-socket, multi-core, multi-threaded environment.
Operating Systems
- PC 32-bit Windows
- PC Windows
Compilers
Added : 2009-12-02 Amended: 2009-12-02 Licensing : Commercial
Quick Thread - QuickThread is a C++ runtime library and paradigm for multithreaded applications- Quick Thread Home Page
- Submitted by:Kizza George Mbidde
Add a comment
Rhine collection - C++ functions for Name Matching
To provide a computer name matching system where the strings are not identical
eg to match "The Megaland (USA) Corp" with "Megaland USA Corporation"
short list of features:
- includes both exact and standard matching;
- written as a binary tree for speed;
- no built in limitations on number of names to match or length of names.
C++ code is fully standard - verified by PC-lint [tm] version 7.0
Licence contains normal range of conditions - software may be used in
customers own products subject to number of straightforward conditions.
Added : 1996-11-13 Amended: 1996-11-13 Licensing : Commercial
Add a comment
Rogue Wave SourcePro C++ - C++ libraries
Rogue Wave® SourcePro® C++ is a set of cross-platform enterprise C++ development components. Have been around for more than a decade now, deployed in some of the world's most sensitive mission-critical systems.
- SourcePro® Core offers an extensive set of fundamental C++ components -- containers, strings, serialization, file and directory manipulation, localization support, synchronization and multi-threading support, etc. -- that present a consistent, uniform, and portable API for developing applications.
- SourcePro® DB abstracts the complexity of writing database applications, yet allows developers to drill down to the native database client libraries if needed.
- SourcePro® Net lets developers create secure and non-secure networked and Internet-enabled applications by handling the granular details of socket programming and Internet protocols that expedites the timely delivery of quality applications.
- SourcePro® Analysis contains a full range of C++ components for solving mathematical problems in business and research. The algorithms they encapsulate can be relied upon for accurate and precise calculations.
(Note: the Tools.h++ libraries shipped with the Sun C++ compiler are a very early, limited OEM version of the current Rogue Wave offering).
Operating Systems
- Linux
- PC 32-bit Windows
- IBM AIX
- Solaris
- HP UX
- PC Windows
- IA64 Windows XP
Compilers
- Visual C++
- GCC
- Sun CC
- HP C++
- Intel C++
Added : 2008-10-03 Amended: 2008-11-04 Licensing : Commercial
Add a comment
rxstring - Regular expression library.
The rxstring library is an extension of the C++ stdlib string class. The rxstring class is a powerful alternative to traditional regular expression libraries. Because the syntax used by traditional regular expression packages is difficult to learn, rxstring uses a alternative notational system that is much easier to learn to read and write. Because indirection is a fundamental programming technique, rxstring regular expressions can be nested within each other using labels. Also the regular expressions can be self referential, this makes it possible to write very powerful regular expressions that can validate input just as a recursive descent parser does, but without the hassle of hand coding or resorting to a tool like yacc or bison. rxstring has much more than the usual search and match functions, There are a large number of functions that aid in validating, parsing, and modifying text. In spite of the number of functions, there is an underlying system that makes it easy to recall the entire library off the top of your head without much effort.
Operating Systems
Compilers
Added : 2001-10-18 Amended: 2001-11-01 Licensing : Commercial
Add a comment
SCSI++ Class Library - SCSI++ is a C++ OO library which simplifies access to SCSI peripherals
The SCSI++ version 2.5 SDK is now available. Quickly and easily develop SCSI control applications for Windows NT 4.0, Windows 2000, or Windows 9X using an Object Oriented Interface.
No more messing around with ASPI32 and IOCTL interfaces. No more deciphering the SCSI specification. An application can execute SCSI commands on any Windows system using the same binary. Use High Level C++ classes and methods to control any SCSI Devices. Roll your own commands easily. Update mode page data easily. Version 2.5 has the capability to control ATAPI CD-ROM and CD-R devices.
Operating Systems
Compilers
Added : 2000-05-18 Amended: 2000-05-18 Licensing : Commercial
Add a comment
SEC++ - Visual C++/MFC controls
SEC++ includes: CView derivatives for panning and zooming, image classes (DIB/GIF/JPG/PCX/TGA/TIFF), MDI alternatives, Win32 classes and control classes (maskedit, splash screen, tip of the day).
All products include source code and are royalty free. SEC++ is $395. There is a bundle with Objective Grid available for $795.
Compuserve: GO STINGRAY
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
SOFTPRO TOUCH - GUI C++ class library for OS/2:
SOFTPRO GmbH has announced its new 32bit C++ class library TOUCH-GUI 2.1 for OS/2 2.x. The product contains more than 140 classes which support windows, menu bars, multi-threading, controls (including all OS/2 2.x controls: slider, value set, notebook, container), dialog boxes, graphics, printer control, MDI, DDE, Drag and Drop, loadable resources, and management of profiles (.INI files). Other features include auxiliary classes for data manipulation and storage management. Additionally, TOUCH- GUI 2.1 contains high-level classes like formatted entry fields, tables, and complete NLS. Furthermore, TOUCH-GUI 2.1 is fully integrated in STAR CASE++, an OOA/OOD case tool (method: Coad/Yourdon), and Intersolv's PVCS (a version control system).
The product includes online (.INF) and printed documentation, a demo program, and samples.
TOUCH-GUI 2.1 costs DM 1.720,00 excl. VAT (ca. US $990), the runtime DLL's may be distributed royalty free. For upgrade prices and special project licenses (including source code of TOUCH-GUI) contact the supplier. NOTE: TOUCH-GUI 2.1 single license will be available at a special price of DM 199,00 excl. VAT (ca. US $120) during 04/01/94 - 06/30/94. Printed documentation is not shipped with the special price product, it is available for another DM 99,00 excl. VAT (ca. US $60). However, full online documentation is included.
Operating Systems
Compilers
- GCC
- Borland C++
- Watcom C++
- IBM Cset++
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
SOFTPRO TOUCH - GUI C++ class library for OS/2:- Email:ffu@softpro.de
- Tel:+49 7031 6606-0 Mr. Frank Fuchs (extension -50)
- Postal address:SOFTPRO GmbH, Stadtgrabenstr. 21, D-71032 Boeblingen, Germany
- Fax:+49 7031 6606-66
Add a comment
StarView - A Portable C++ Class Library for Graphical User Interfaces
StarView is a portable C++ Class Library for Graphical User Interfaces. StarView is one of the major parts of our total Object Oriented programming environment (we call it SOLAR system).
- portability between the operating systems MS-DOS, OS/2, Macintosh and different UNIX flavours
- at least portable between the GUI's MS-WINDOWS, MS-Presentation Manager, MacApp and OSF/Motif
- fulfillment of the requirements of the different GUI Style Guide's
- data exchange and direct communication between the applications in homogeneous and heterogeneous networks (groupware approach)
Operating Systems
Compilers
- Borland C++
- Zortech C++
- Glockenspiel C++
- MPW C++
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
StarView - A Portable C++ Class Library for Graphical User Interfaces- Email:svinfo@starlab.uucp
- Email:svinfo@stardiv.de
- Tel:++49 40 23646 500
- Tel:(800) 888-8527
- Postal address:STAR DIVISION GmbH, Andreas Jahnke, Sachsenfeld 4, D-20097 Hamburg, Germany
- Postal address:Star Division, 2180 Sand Hill Road, Suite 320, Menlo Park, CA 94025
- Fax:++49 40 23646 550
- Fax:(415) 233-0142
- Author:Andreas Meyer, STAR DIVISION
Add a comment
STL<ToolKit> - ANSI/ISO compliant cross-platform toolkit
STL<ToolKit> is an ANSI/ISO compliant cross-platform toolkit that includes:
- Standards<ToolKit> - ANSI/ISO Standard Template Library (STL). The most portable version of STL on the market today!
- ANSI/ISO String - Supports both char and wchar_t for international use!
- Time<ToolKit>- 64-bit time, date, and time zone support. Supports non-standard time zones and DST rules!
- Thread<ToolKit> - Portable interface for multi-threaded programming (Available on multi-threaded platforms)
STL<ToolKit> comes with a 350+ page user guide, full source code, 250+ examples, and absolutely no royalties.
Operating Systems
- PC 32-bit Windows
- Sparc
- SGI Irix
- Sun
- IBM AIX
- Solaris
- HP UX
- Unix
- SYSV
- PC Windows
Compilers
- Visual C++
- GCC
- Sun CC
- IBM xlC
- SGI NCC
- Borland C++
- Watcom C++
- HP C++
- Sparcworks
Added : 1996-05-22 Amended: 1996-05-22 Licensing : Commercial
Add a comment
Systems<ToolKit> - ANSI/ISO compliant cross-platform toolkit
Systems<ToolKit> is an ANSI/ISO compliant cross-platform toolkit that includes:
- Standards<ToolKit> - ANSI/ISO Standard Template Library (STL) The most portable version of STL on the market today!
- ANSI/ISO String - Supports both char and wchar_t for international use!
- Time<ToolKit> - 64-bit time, date, and time zone support. Supports non-standard time zones and DST rules!
- Thread<ToolKit> - Portable interface for multi-threaded programming (Available on multi-threaded platforms)
- Network<ToolKit> - TCP and UDP socket communications Create object-oriented internet application!
- Streaming<ToolKit> - Universal Streaming System (TM) for non-intrusive persistence and object transport Includes support for templates and STL!
- IOStream interface to I/O objects, include sockets Use familiar "cout" syntax with sockets and other devices!
- Platform<ToolKit> for UNIX - Comprehensive UNIX-specific systems programming classes. Includes process, message queue, SYSV IPC support and more!
Systems<ToolKit> comes with over 700 pages of documentation, full source code, 400+ examples, and absolutely no royalties.
Operating Systems
- PC 32-bit Windows
- Sparc
- Sun
- IBM AIX
- Solaris
- HP UX
- Unix
- SYSV
Compilers
- Visual C++
- GCC
- Sun CC
- IBM xlC
- SGI NCC
- Borland C++
- Watcom C++
- HP C++
- Sparcworks
Added : 1996-05-22 Amended: 1996-05-22 Licensing : Commercial
Add a comment
Thames Calendar Suite - Collection of functions for the modern calendar
This provides a complete collection of functions for the modern calendar.
How many days between dates?, What is 3rd Tuesday of month, How many business days in period?
Short list of features:
- Comprehensive collection for timeseries, project control, financial markets
accountancy;
- writing dates to text, interpreting dates from text in almost any format;
- tool kit to define bank holidays, incl Easter in western and eastern
churches;
- conversion between Gregorian Hebrew and Julian calendar.
Inclusive Price around 215 UK pounds ie around 340 US dollars.
C++ code is fully standard - verified by PC-lint [tm] version 7.0
Licence contains normal range of conditions - software may be used in
customers own products subject to number of straightforward conditions.
Added : 1996-11-13 Amended: 1996-11-13 Licensing : Commercial
Add a comment
Time Series API - Professional time series modelling and simulation library for C++
Time Series API is a professional C++ class library for simulating (backtesting) and deploying financial trading strategies as well as general purpose time series modelling. The library is a stand-alone time series engine that can be extended via a component object model.
Models are defined using 'formula syntax and semantics' made possible by a set of lightweight interface classes that supersede the component framework. The library supports the modelling of even the most complex ideas, is easily extended, and supports deployment in any timeframe (variable or fixed, with intervals as short as one millisecond). The library also benefits from a set of highly optimized database classes for reading and writing millions of records in seconds.
As a general purpose tool for modelling time series, Time Series API has applications in many domains, such as:
- Trading and investment strategy simulation and deployment:
- Individual market and inter-market models
- Iterative evaluations on baskets
- Evaluation on aggregates (e.g. custom indices)
- Fundamental company data models
- Economic modelling
- Time series normalization and processing:
- Normalizing neural training data
- Data transformations
- Timeframe conversions
- Data monitoring (e.g. financial, scientific):
- Notification
- Pattern recognition
- Filtering applications, (e.g. noise reduction)
- Computational modelling
- Genetic algorithms
Operating Systems
- PC DOS
- PC 32-bit Windows
- PC Windows
Compilers
- Any standard C++ compiler
Added : 2009-08-10 Amended: 2009-08-10 Licensing : Commercial
Time Series API - Professional time series modelling and simulation library for C++- Download Page
- Home Page
- Submitted by:Peter Ritter
Add a comment
Tools.h++ - Rogue Wave tools library.
Tools.h++ consists mostly of a large and rich set of concrete classes that are usable in isolation and do not depend on other classes for their implementation or semantics.
Components include Collections, String processing, Time & date handling, File space manager, B-Tree disk retrieval, bit vectors, virtual I/O streams, caching managers, virtual arrays, etc.
Added : 1995-01-01 Amended: 1996-05-22 Licensing : Commercial
Tools.h++ - Rogue Wave tools library.- Email:info@roguewave.com
- Tel:(503) 754-2311
- Postal address:Rogue Wave Software, Inc., 1325 NW 9th Street, Corvallis, OR, 97330
- Fax:(503) 757-6650
Add a comment
Undoable C++ Object Library - multi-level undo and transaction rollback
The Undoable C++ Object Library by Notation Software, Inc. supports multiple level undo and transaction rollback.
This C++ library implements an object-oriented approach for reversing transactions at the C++ object level. A transaction consists of a series of three types of operations on objects: creation, modification, and deletion. The reversal (undo) of the transaction is implemented by effectively deleting the originally created objects, restoring the state of the modified objects, and effectively re-creating the deleted objects. References between objects are properly restored. This approach can significantly reduce the cost of implementing multiple level undo in an application, compared to a ! procedural "reverse transaction" approach. Object level undo also supports transaction rollback in other scenarios such as caught C++ exceptions.
The $495 product includes a 100-page tutorial and over 300 pages of documentation in helpfile and printed format. A free demonstration version of the library can be downloaded from the Web site listed below.
Operating Systems
Compilers
Added : 1997-11-27 Amended: 1997-11-27 Licensing : Commercial
Undoable C++ Object Library - multi-level undo and transaction rollback- Email:info@notation.com
- Undoable C++ Object Library
- Tel:(425)688-0793
- Postal address:Notation Software, Inc., 317-109th Ave SE, Bellevue, WA 98004
- Fax:(425)688-0795
- Submitted by:markwa@notation.com
Add a comment
USL C++ Standard Components
Formerly developed and marketed by AT&T Bell Laboratories and UNIX System Laboratories, these are now developed and licensed by SCO.
C++ Standard Components include :
- Args - argc/argv command line parser.
- Bits - bit manipulation to arbitrary-length bitstrings.
- Block - dynamic arrays.
- Array_alg - efficient algorithms for searching, sorting, inserting etc.
- Fsm - finite state machines.
- G2++ - message formatting for inter-process communication.
- Graph - maintain arbitrary relationships between arbitrary entities.
- Graph_alg - including searching, cycle and component detection.
- ipcstream - inter-process streams.
- List - doubly-linked lists.
- Map - like arrays, except that the subscripts can be non-integral.
- Objection - like UNIX software signals.
- Path - facilities for manipulating UNIX path names and UNIX search paths.
- Pool - optimise memory allocation.
- Regex - regular expressions.
- Set - including Sets, Bags, and pointer sets.
- Stopwatch - for timing critical sections of code
- String - variable-length character strings.
- Strstream - iostreams for Strings.
- Symbol - efficient symbol table handling & sorting.
- Time - Time, Duration (time difference) and Place (geographical location).
Also included are the following tools :
- c++filt - demangles C++ names in standard input.
- dem - demangles C++ names in an argument list.
- demangle - demangles C++ names in a.out for easier debugging. fs - a tool and library to help find freestore bugs.
- g2++comp - compiles G2++ record definitions.
- hier - displays the inheritance hierarchy in a program.
- incl - displays the hierarchy of include files used in a program.
- publik - displays the public interface of a class.
Operating Systems
Added : 1995-01-01 Amended: 1996-05-22 Licensing : Commercial
Add a comment
Valentina - Fast, Cross-platform, Object-Relational SQL database
Valentina C++ SDK allows embedding of Valentina database into your C++
applications.
Valentina is an extremely fast and powerful cross-platform,
cross-application, Object-Relational SQL database. It executes operations in
hundreds and sometimes 1000 times faster than other databases. Valentina has
all types of fields from Bit to BLOB and Picture (i.e. allows you easy
create multi-media dbs). Valentina provides reach set of features: SQL, full
text indexing, RegEx search, encryption, compression, and calculation
fields. It can be used with a lot of APIs: C/C++, Java, COM, Director,
REALbasic, PHP, Objective-C, AppleScript, xCards, WebSiphon.
Operating Systems
- Linux
- PC 32-bit Windows
- PC Windows
- Mac
Compilers
- Visual C++
- GCC
- MetroWerks CodeWarrior
Added : 2003-12-29 Amended: 2003-12-29 Licensing : Commercial
Add a comment
VERSANT - Object Oriented Database
Versant markets a full-function OODBMS together with associated DBA and application developer tools. Other platforms will be announced soon. A Windows/NT port is in progress.
Interfaces to 'C', 'C++' and Smalltalk-80 are supported.
Operating Systems
- SGI Irix
- Sun
- IBM AIX
- OS/2
- Sequent
- NeXT
- Dec Ultrix
- NCR SVR4
- HP 9000
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
VERSANT - Object Oriented Database- Email:aflynn@osc.com
- Email:info@versant.com,
- Email:info@osc.com
- Tel:1-800-VERSANT
- Tel:(415) 329-7500
- Tel:415-325-2300
- Tel:(31) 2503-66373
- Tel:+31 - (0)2503 - 66851
- Tel:01276 692269
- Postal address:Versant Object Technology, 4500 Bohannon Drive, Suite 200, Menlo Park, CA 94025, Attn: Mike Mooney
- Postal address:European Office:, Versant Europe, Siriusdreet 2, P.O. Box 333, 2130 All Hoofddrop, The Netherlands
- Postal address:UK Distributor:, Admiral Software Ltd, Admiral House, 193-199 London Road, CAMBERLEY, Surrey GU15 3JT
- Fax:(415) 325-2380
- Fax:415-325-2380
- Fax:+31 - (0)2503 - 66855
Add a comment
ViewKit ObjectPak - application framework for developing OSF/Motif and CDE applications using C++
ViewKit includes generic application classes, menu, dialog, and preference classes; as well as ToolTalk and UNIX process control systems.
ViewKit ObjectPak builds on the C++/Motif programming methods established by Doug Young in his book "Object-Oriented Programming with C++ and OSF/Motif". ViewKit ObjectPak provides a variety of ready-to use components and enables developers to easily extend ViewKit by creating new component classes. With these high-level components, ViewKit ensures consistency throughout a family of applications, and promotes enterprise-wide software reuse. In addition, ViewKit supports easy and effective communication between applications by using ToolTalk(tm), the CDE standard for inter-application messaging.
ViewKit ObjectPak is available in binary and source form. Originally developed by Silicon Graphics, ViewKit is now available through ICS for most UNIX platforms.
ICS has distributors in the U.K., France, Germany, Italy, Spain, Sweden, Israel, Korea, Japan, and Australia.
Operating Systems
- Sun
- IBM AIX
- Solaris
- HP UX
- Dec Unix
- SCO Open Desktop
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
ViewKit ObjectPak - application framework for developing OSF/Motif and CDE applications using C++- Email:info@ics.com
- Tel:(617) 621-0060
- WWW http://www.ics.com/
- Postal address:Integrated Computer Solutions, Inc. 201 Broadway Cambridge, MA
- Fax:(617) 621-9555
Add a comment
Visibility for C++ - Create Windows GUI's without using any UI code
Visibility for C++ is a revolutionary new product for creating user interfaces. It enables object systems written in C++ to be visualized and interacted with via a state of the art GUI on the Windows platform and it accomplishes this without requiring any UI code to be written, generated or otherwise created. User Intefaces that would normally take weeks or even months to create, can be created in no time at all.
Visibility for C++ is the first in a series of products that utilize a new technology called Outerfacing. This new technology embodies a powerful new paradigm for creating User Interfaces for object systems called Object Visualization. This paradigm replaces the Model-View-Controller (MVC) paradigm on which almost all current UI technology is based. By utilizing the inherent structure found in an object system, it eliminates the need for the View and Controller portions of the MVC paradigm and all its attendant code requirements. In their place Object Visualization gives the objects in the object system the inherent ability to be visualized and interacted with directly.
Instead of having to write large amounts of UI code to implement the view and controller as is required with the MVC, Object Visualization places an outer face of UI elements over the object system structure and utilizes the internal state of the objects to control their appearance and behavior. This enables the entire UI for an object system to be created interactively while the program is executing without having to write any code.
Since creating the UI often accounts for over half of the entire programming effort, we firmly believe that this new paradigm is going to revolutionize the way that User Interfaces are developed.
Operating Systems
Compilers
Added : 2002-09-20 Amended: 2002-09-20 Licensing : Commercial
Add a comment
Warne's Garbage Collector (WGC)
WGC is a full-featured high-performance C++ memory manager that includes:
- an incredibly fast explicit memory manager (drop-in new/delete)
- a parallel incremental generational non-copying collector
- a transparent just-in-time heap-checker
WGC's fast explicit memory manager provides a drop-in accelerated new/delete. Using a multi-tiered parallel algorithm with the first tier inline, WGC can allocate most objects inline in less than 10 instructions! To enhance space efficiency WGC uses address-aligned storage algorithms with no per-object overhead (no linked lists!). To reduce fragmentation, WGC maintains a single process free store for all threads, modules, and DLLs.
WGC's collector implements both conservative and accurate scanning and fully supports C++ code. Classes, arrays, scalars, interior pointers, unions, cross-heap pointers, anonymous unions (really!), large objects, library code you have no control over, etc. are all supported. Plus, you can incrementally deploy automatic memory management in existing or new applications, making some classes or objects collected and some not.
WGC's just-in-time heap-checker stays active during the entire development cycle, transparently checking every new and delete. If a check fails, WGC will spawn your debugger and take you live to the line in question. To complement the live access to the line that failed a delete check, WGC provides detailed pointer/object info (allocating thread/line/file/pass count, object allocation time in microseconds, etc.) Debugging extensions allow interactive display/logging of object/pointer status and process stats.
WGC is currently available for all major C++ compilers under Windows NT, Windows 95, and OS/2. WGC is priced at $895 per developer for all platforms, with no royalties. Team & Volume discounts apply. Source available. Ports to other platforms in progress.
Hans Boehm tells me that this is no longer available.
Operating Systems
Added : 1995-01-01 Amended: 1997-12-04 Licensing : Commercial
Warne's Garbage Collector (WGC)- Email:kevinw@reflective.com
- Tel:(800) 707-7171
- Tel:(604) 683-0977
- Postal address:Reflective Software Corp 2660 Estevan Ave. Victoria, BC, CANADA, V8R 2T4
- Fax:(604) 598-9546
Add a comment
Wind/U - Cross platform Windows environment
Wind/U lets you port existing Windows applications to UNIX, OpenVMS,
OS/390, or create new applications for Windows 95, Windows NT, and UNIX
environments efficiently and cost effectively. It provides the
standard Win32 API and MFC 4 on UNIX, allowing a single set of source
code across all platforms. Wind/U applications maintain identical
functionality between Windows and non-Windows versions. Features
include ActiveX controls, OLE, COM, multithreading, Windows 95 common
controls and common dialogs, WinInet, Service APIs, OpenGL, online help,
and printing.
Operating Systems
- SGI Irix
- IBM AIX
- Solaris
- HP UX
- Dec Unix
- IBM OS/390
- Dec OpenVMS
Added : 1997-11-27 Amended: 1997-11-27 Licensing : Commercial
Add a comment
Wind/U-MFC
A Unix version of the popular Microsoft Foundation Classes shipped with Visual C++ (a 16-bit MFC 2.5 and a 32-bit MFC 2.1).
Operating Systems
Added : 1995-01-01 Amended: 1995-01-01 Licensing : Commercial
Add a comment
WinSockets++ 1.1 - A C++ class library for WinSockets.
This is more than just a wrapper for the WinSockets calls. It provides higher-level functions that make reading/writing to sockets very e |