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.
The library is compatible with a large range of C++ compilers. It even compiles with Visual C++ v5.0!
Added : 01/01/1995 Amended : 08/03/2002 Licensing : Not known
Added : 21/06/1999 10:08:14 Amended : 21/06/1999 Licensing : Freeware
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
Systems : Unix-like OS on (moderate) multiprocessor machines
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.
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.
Added : 01/01/1995 Amended : 05/12/1997
Licensing : Not known
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 :
The following fields are covered:
Recent changes include
Visit the website for FAQs, API docs, and to download any of over a dozen ports (as tar/gzip, zip, stuffit, and Linux RPM).
Features:
The July 93 release offers:
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 : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
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.
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.
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: The library is open-source and free when derived code is
reciprocated; for others, licensing is $99 (Personal) or $499
(Corporate).
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
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.
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 : 22/07/1998 Amended : 04/06/1999
Licensing : GNU copyleft
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".
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.
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.
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.
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
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.]
Objdce makes it easier to write DCE applications by abstracting some of the more complex aspects of DCE. A class is included that can manage an RPC server, interacting with the DCE Name Service and Security Service as desired. Another class manages a client's binding to a server and encapsulates Name Service lookups. Other classes allow the programmer to use threads and various forms of mutual-exclusion locks, report errors consistently, utilize Access Control Lists, handle timestamps from the DCE Time Service, and perform UUID manipulation.
Objtran is built on top of Objdce, and adds support for the Encina distributed transaction service. It is intended to be used with C++ programs instead of the "Transactional C" macro package. It fully encapsulates the Encina TRAN and TRPC facilities with a few easy-to-use classes. It also provides an efficient recovery service for proper control of distributed transactions, and has support for the TM/XA service, allowing interoperability with XA-compliant databases. Support for the Encina Monitor is being implemented so programs may, with very few code changes, use either the smaller and more efficient bare Objtran environment or the more sophisticated Monitor.
This software is Copyright 1993-1994 by Citibank, N.A. Permission is granted to use, copy, modify and distribute the software and its documentation without fee. The software is distributed with no warranty of any kind.
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Copyrighted freeware
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:
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.
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
A Web form for submissions to this list
Copyright (c) 2008 Nikki Locke, Trumphurst Ltd.Operating Systems
Compilers
Added : 01/01/1995 Amended : 06/01/2001
Licensing : Not known
Presto - C++ routines for lightweight threads on multiprocessors.
C++ routines for fine-grained parallel programming (lightweight threads) on multiprocessors. Tuned for the Sequent machines, but highly adaptable and customizable.
Operating Systems
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
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
Compilers
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Non commercial
MixGCI - A library useful in easily creating CGI programs
Features:
Operating Systems
Compilers
Added : 12/05/2000 10:14:29 Amended : 12/05/2000
Licensing : GNU copyleft
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
Added : 03/12/1998 Amended : 03/12/1998
Licensing : Non commercial
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
Added : 01/01/1995 Amended : 27/09/2002
Licensing : Copyrighted freeware
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.
Operating Systems
Compilers
Added : 21/06/1999 Amended : 21/06/1999
Licensing : Public Domain
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 : 13/07/1999 14:40:40 Amended : 13/07/1999
Licensing : Freeware
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.
Operating Systems
Compilers
Added : 15/07/1999 Amended : 15/07/1999
Licensing : Public Domain
molbio++ - A C++ library for molecular biosequence analysis
Major features include:
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.
Operating Systems
Compilers
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Copyright (other)
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 vectorized implementation in Assembler ensures not only superior
speed; in many instances, the numerical accuracy is improved as well.
Operating Systems
Compilers
Added : 27/07/1998 Amended : 08/12/2003
Licensing : Shareware
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.
Operating Systems
Compilers
Added : 27/07/1998 Amended : 28/07/2000
Licensing : Open Source
OffiX - Framework for interactive applications in the Unix / X environment
The OffiX API is a Framework for interactive applications in the Unix / X environment.
Alpha release
Stefan Seefeld
Operating Systems
Compilers
Added : 24/07/1998 Amended : 03/12/1998
Licensing : GNU copyleft
MTL110JE.ZIP - Multithreading class library
DOS PC/Borland C++ specific.
Operating Systems
Compilers
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
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.
Operating Systems
Compilers
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
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 : 19/03/1997 Amended : 03/12/1998
Licensing : Copyrighted freeware
OBST - Persistent object management system
The persistent object management system OBST was developed by Forschungszentrum Informatik (FZI) as a contribution to the STONE project.
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
Compilers
Added : 01/01/1995 Amended : 01/01/1995
Licensing : GNU copyleft
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.
Operating Systems
Compilers
Added : 24/02/1998 Amended : 24/02/1998
Licensing : Public Domain
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.
Operating Systems
Compilers
Added : 05/02/1996 Amended : 08/08/1996
Licensing : Commercial
macstl - Modern generic programming for SIMD and the Mac
Operating Systems
Compilers
Added : 23/07/2003 17:26:41 Amended : 08/02/2005
Licensing : Copyright (other)
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.
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 : 24/02/1998 Amended : 24/02/1998
Licensing : Shareware
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.
P++ - Parallel Programming Classes for C++
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.
Operating Systems
Added : 08/01/2003 15:19:46 Amended : 09/01/2003
Licensing : GNU copyleft
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.
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
Added : 22/07/1998 Amended : 22/07/1998
Licensing : Shareware
ooMPEG - Berkeley MPEG decoder
A reentrant, multi-threaded version of the Berkeley MPEG decoder
Operating Systems
Added : 05/02/1996 Amended : 05/02/1996
Licensing : Non commercial
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.
Operating Systems
Compilers
Added : 22/05/1996 Amended : 22/05/1996
Licensing : Copyright (other)
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
Operating Systems
Compilers
Added : 24/02/1998 Amended : 24/02/1998
Licensing : GNU copyleft
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.
Compilers
Added : 24/02/1998 Amended : 24/02/1998
Licensing : Public Domain
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.
Operating Systems
Compilers
Added : 18/06/2002 Amended : 20/08/2002
Licensing : Copyrighted freeware
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.
Operating Systems
Compilers
Added : 24/02/1998 Amended : 24/02/1998
Licensing : Shareware
pC++ - A preprocessor for C++ that implements a data parallel extension
Operating Systems
Added : 01/01/1995 Amended : 01/01/1995
Licensing : Not known
MatClass - a C++ class for numerical computation
Very complete.
Documents : Very thorough tex manual, with discussion of design philosophy. Currently the manual does not cover all the features of the I/O.
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.
Compilers
Added : 04/12/1997 Amended : 24/07/1998
Licensing : Public Domain
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
Compilers
Added : 27/11/1997 Amended : 27/11/1997
Licensing : Public Domain
Objtran and Objdce
Objtran is a set of C++ class libraries that provide a higher-level abstraction for programmers developing applications using OSF's DCE and Transarc's Encina. Objtran actually consists of two separate libraries -- Objdce and Objtran.
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.
Operating Systems
Compilers
Added : 13/11/1996 Amended : 10/04/1997
Licensing : GNU copyleft
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.
Operating Systems
Compilers
Added : 19/03/1997 Amended : 19/03/1997
Licensing : Copyrighted freeware
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
Compilers
Added : 19/03/1997 Amended : 19/03/1997
Licensing : Copyrighted freeware
ParLib++ - Parallel Programming Classes for C++:
Trumphurst Home Page
C++ Usenet Newsgroup
Mail the author for permission to distribute
Permission is granted to distribute over the Internet without charge.
The author's permission is required (and usually given) to distribute
in any other way, including on CD.