Libraries available to download (D-L)

Contents


Libraries available to download (D-L)

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

Added : 22/05/1996 Amended : 22/05/1996 Licensing : Education

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

Compilers

Added : 14/03/2006 Amended : 14/03/2006 Licensing : Public Domain

jjLibrary - C++ Pattern Library

jjLibrary is a C++ library which provides
  1. jjPattern : Pattern-based container class (Hash, Tree, List, Graph)
  2. jjErrno : error handling, and
  3. jjCGI : CGI library

jjPattern has unique feature which can be compared to STL.

Operating Systems

Compilers

Added : 06/09/2004 Amended : 06/09/2004 Licensing : GNU copyleft

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

Compilers

Added : 14/03/2006 Amended : 14/03/2006 Licensing : Public Domain

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

Compilers

Added : 25/05/2000 Amended : 25/05/2000 Licensing : Public Domain

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

Compilers

Added : 26/04/2000 Amended : 26/04/2000 Licensing : Copyright (other)

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 : 22/07/1998 Amended : 22/07/1998 Licensing : Freeware


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

Compilers

Added : 24/02/1998 Amended : 24/02/1998 Licensing : Copyright (other)

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

Compilers

Added : 06/12/1997 Amended : 06/12/1997 Licensing : Copyright (other)

GINA++ - An O-O application framework for C++, X11R5, and OSF/Motif

GINA++ (The Generic INteractive Application for C++) is an object- oriented application framework that facilitates the development of applications with a graphical user interface. It is written in C++ and uses OSF/Motif and X for the user interface parts. GINA++ comes as a library of C++ classes, 10 small to medium demo applications, and it is fully documented.

Components of GINA++ are:

The classes of GINA++ constitute an executable program - the generic application - which possesses the basic functionality and the user interface components common to all interactive graphical applications, but lacks any application-specific behavior. The predefined functionality and behavior is inherited by deriving subclasses from the existing GINA++ classes. Application specific behavior is implemented by adding new classes and member functions. Differences to the standard application are coded by refining virtual member functions inherited from GINA++.

Operating Systems

Compilers

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

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 : 08/02/1996 Amended : 08/02/1996 Licensing : Copyrighted freeware

libpropc++ - Add properties to C++ (widget.color = "red";)

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

Added : 31/08/2004 08:52:13 Amended : 31/08/2004 Licensing : GNU copyleft

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 : 01/01/1995 Amended : 01/01/1995 Licensing : Not known

LinAlg - C++ Linear Algebra and Optimization classlib

Current Version: 4.3, December 25, 1998

Operating Systems

Compilers

Added : 22/05/1996 Amended : 04/06/1999 Licensing : Public Domain

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 : 09/04/2003 Amended : 09/04/2003 Licensing : Public Domain

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 : 05/02/1996 Amended : 02/12/2006 Licensing : Not known


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 : 01/01/1995 Amended : 04/12/1997 Licensing : Copyrighted freeware

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 : 24/02/1998 Amended : 26/04/2000 Licensing : Copyrighted freeware

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

Compilers

Added : 27/06/2007 Amended : 27/06/2007 Licensing : GNU copyleft

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

Compilers

Added : 08/03/2002 Amended : 13/04/2004 Licensing : Copyrighted freeware

kplib - Basic but highly optimised C++ library

The library consists of the following classes:

Operating Systems

Compilers

Added : 26/04/2000 10:15:45 Amended : 22/12/2000 Licensing : Public Domain

GraphLib - Graphing library

GraphLib is a C++ library that is used to represent graphs. It supports many graph algorithms such as minumum spanning trees, shortest paths, diameters, graph traversals and more.

Operating Systems

Compilers

Added : 08/11/1999 Amended : 08/11/1999 Licensing : Public Domain

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 : 21/06/2002 Amended : 15/06/2004 Licensing : Non commercial

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

Compilers

Added : 21/12/2006 Amended : 21/12/2006 Licensing : Copyright (other)

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

Compilers

Added : 01/12/2006 Amended : 10/04/2007 Licensing : Copyrighted freeware

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

Compilers

Added : 20/04/2006 Amended : 02/12/2006 Licensing : Open Source

FEMTown - Open-Source Multi-Physics Finite Element Framework

FEMTown is designed to solve partial differential equations (PDE) using spatial finite-element discretizations. FEMTown provides

  1. an extensive library of elements,
  2. variable interpolation schemes (p-adaptivity),
  3. shape-function calculations,
  4. numerical integration,
  5. sparse and dense matrix manipulations,
  6. assembly routines,
  7. numerical solvers,
  8. exchange of common file formats

<h4>Applications</h4> FEMTown also includes open-source end-user applications:

  1. contribution calculations for acoustics and
  2. visco-elastic materials.

Operating Systems

Compilers

Added : 28/09/2001 Amended : 28/09/2001 Licensing : Public Domain

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&reg;), OpenGL, and WIN32 (Microsoft&reg; Windows&reg; 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:

Operating Systems

Compilers

Added : 26/04/2000 Amended : 26/04/2000 Licensing : GNU copyleft

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 : 31/01/2001 08:34:10 Amended : 31/01/2001 Licensing : GNU copyleft

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 : 22/01/2001 10:12:32 Amended : 22/01/2001 Licensing : GNU copyleft

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

Compilers

Added : 26/04/2000 14:18:37 Amended : 10/07/2003 Licensing : GNU copyleft

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

Added : 03/07/2006 09:27:19 Amended : 03/07/2006 Licensing : Commercial

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 : 26/04/2000 Amended : 26/04/2000 Licensing : Shareware

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 : 01/01/1995 Amended : 01/01/1995 Licensing : GNU copyleft

GNU libplot - A library for exporting 2-D vector graphics in many file formats.

The GNU libplot library can export 2-D vector graphics in many file formats, and perform vector graphics simulations under the X Window System. It has both a C binding and a C++ binding. The C++ binding is a full-fledged class library, not just a wrapper. It defines a Plotter class, which is subclassed according to the desired export format or display type. Supported formats include PNM, pseudo-GIF, Illustrator, idraw-editable Postscript, PCL5, xfig, HP-GL/2, Tektronix, and GNU Metafile. Graphical objects that any Plotter can draw include lines, arcs, Bezier curves, circles, ellipses, and text strings. GNU libplot is distributed as the centrepiece of the GNU Plotting Utilities package, which also includes several command-line programs for plotting scientific data. The package includes a 150-page manual, in texinfo format.

Operating Systems

Compilers

Added : 01/07/1999 Amended : 01/07/1999 Licensing : GNU copyleft

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 : 21/06/1999 10:01:46 Amended : 21/06/1999 Licensing : Shareware

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 : 15/06/1999 Amended : 15/06/1999 Licensing : GNU copyleft

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 : 01/01/1995 Amended : 01/01/1995 Licensing : Non commercial

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 : 01/01/1995 Amended : 01/01/1995 Licensing : Not known


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 : 04/06/1999 13:07:35 Amended : 04/06/1999 Licensing : Shareware

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 : 01/01/1995 Amended : 01/01/1995 Licensing : Not known


Elemental - Elemental is a very young C++ library

I am told this library is now obsolete.

Unfortunately, the author doesn't tell me what the library is for, or what ot does. All he says is:
Like most other C++ libraries, it is Object Oriented. Like few other C++ libraries, it is Generic. Unlike any other C++ libraries, its design includes an abstract layer. In this layer, all classes are abstract, and all of the types that appear in the interfaces to those classes are also abstract.

Elemental is distributed under a license which is remarkably similar to the Netscape Public License. I welcome comments and suggestions, but working code are better! (There is lots of juicy designing and coding left to do.)

Added : 03/12/1998 Amended : 26/04/2000 Licensing : Copyrighted freeware


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 : 01/01/1995 Amended : 01/01/1995 Licensing : Public Domain

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.

Operating Systems

Compilers

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

Gnans - Simulation of stochastic and deterministic dynamical systems

A program (and language) for dynamical systems. Includes simple scripting language. Graphical user interface.

Operating Systems

Added : 01/01/1995 Amended : 01/01/1995 Licensing : GNU copyleft

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 : 24/07/1998 Amended : 29/07/2003 Licensing : Shareware

Kalman - A class library for Kalman filtering

Contains lumatrix.c++ etc.

Compilers

Added : 01/01/1995 Amended : 20/10/2003 Licensing : Not known

GRAS - A Graph-Oriented Database System for SE Applications

Copyright (C) 1987-1992 Lehrstuhl Informatik III, RWTH Aachen This library is free software under the terms of the GNU Library General Public License.

The system GRAS with interfaces for the programming languages Modula-2 and C is available as public domain software for Sun3/Sun4 workstations (the GRAS system itself is implemented in Modula-2 and consists of many layers which might be reusable for the implementation of other systems):

There are several files contain documentation, sources, binaries, and libraries. All binaries are for Sun/4 machines. Sun/3 binaries are shipped only if explicitly requested.

Operating Systems

Added : 01/01/1995 Amended : 01/01/1995 Licensing : GNU copyleft

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 : 27/11/1997 Amended : 21/06/1999 Licensing : GNU copyleft

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 : 01/01/1995 Amended : 05/02/1996 Licensing : Not known


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 : 22/07/1998 Amended : 22/07/1998 Licensing : Freeware


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 : 01/01/1995 Amended : 01/01/1995 Licensing : Not known


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 : 27/07/1998 Amended : 26/04/2000 Licensing : GNU copyleft

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 : 01/01/1995 Amended : 01/01/1995 Licensing : Not known


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

Compilers

Added : 22/05/1996 Amended : 19/03/1997 Licensing : Public Domain

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 : 27/11/1997 Amended : 27/11/1997 Licensing : Shareware

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 : 01/01/1995 Amended : 30/07/1996 Licensing : Not known


Engine Room CORBA - CORBA Development Package

Engine Room CORBA v1.21 is a CORBA development kit including ORBS written in C++, C & Java and an IDL compiler which produces stubs in C++, C and Java. The IDL compiler is written entirely in Java. Source code for the C and C++ ORBs is provided. As well as Win95/NT, the package also runs on Linux. The ORBs are interoperable with other vendors ORBs (e.g. JKD1.2, ORBACUS, Visibroker).

Special requirements: Java 1.1 to run.

Operating Systems

Compilers

Added : 11/08/1999 18:16:28 Amended : 11/08/1999 Licensing : Freeware

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

RELEASES:

New releases are made almost every day. Check at the site. Probably, cvs access will be provided in the future.

Operating Systems

Compilers

Added : 24/07/1998 Amended : 03/12/1998 Licensing : Copyrighted freeware

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 : 01/01/1995 Amended : 04/06/1999 Licensing : Education

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 : 03/12/1998 Amended : 13/03/2003 Licensing : Copyrighted freeware


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.

Compilers

Added : 01/01/1995 Amended : 01/01/1995 Licensing : GNU copyleft

eNITL - the Network Improv Template Language

A scripting language engine for C++ applications which require flexible, user-configurable output generation and internal scripting. The eNITL engine is embeddable, extensible, fast, thread-safe, cross-platform, and open source. The language itself is user-friendly, simple, and template-oriented.

eNITL is especially applicable to server-based Internet/intranet applications which employ HTTP, SMTP, HTML, XML, SGML, Plain Text and other text-based protocols and data formats.

eNITL is designed for use in commercial software applications, which demand ease-of-use, high performance and reliability.

Operating Systems

Compilers

Added : 04/06/1999 11:57:24 Amended : 04/06/1999 Licensing : Copyrighted freeware

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 : 19/03/1997 Amended : 19/03/1997 Licensing : Shareware

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 : 01/01/1995 Amended : 01/01/1995 Licensing : Not known

ET++ - A large GUI library and other C++ tools developed in Europe

The Authors are both with Taligent now.

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


FastGL - Enhanced C/C++ SVGA library for DOS,LINUX,QNX

FastGL is a fast and easy to use C/C++ SVGA library. It is intended for developing graphics-intensive applications or games. You can write source code under MS-DOS and later compile it under LINUX or QNX operating systems unless any source has changed. A low level layer of this library is writen in the assembler and uses MMX extensions where possible. FastGL uses Windows and event drivent philosophy. Mouse pointer, Buttons, Edit Boxes and more.

Operating Systems

Added : 13/07/1999 14:44:35 Amended : 13/07/1999 Licensing : Freeware

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 : 21/07/1999 11:44:21 Amended : 09/08/2000 Licensing : Non commercial

Trumphurst Home Page
C++ Usenet Newsgroup

A Web form for submissions to this list
Mail the author for permission to distribute

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