|
STLport Portfolio - Real World Projects
Many people still won't consider using STL in industrial projects.
The reason is often that the code could may turn out to be nonportable,
while it must also be compiled with some legacy compiler X on platform Y
. With STLport, you can use single tested STL codebase in a
multiplatform project. Below is very incomplete list of software
projects using STLport (thanks to all contributors who have
submitted the information).
Coming soon : Add Your Project
Organization: Moscow Center for
SPARC Technology
Project : CPU Architecture Simulation
- Description :
- Scalable set of compatible VLIW ISA CPU simulators varying in
speed/accuracy. Team of 6, extensive use of STL utilities and
concepts.
- Platforms/compilers used:
- Solaris 2.x/SunPro CC 4.2, to be ported to Windows NT/VC++.
Organization: Mark of the Unicorn,
Inc.
Product : "Composer's Mosaic"
Description :
State-of-the-art music desktop publishing software for the
Macintosh. Provides a WYSIWYG environment in which you can produce
publication-quality music notation, from lead sheets to full
orchestra scores. Includes real-time MIDI playback and recording,
using the transcription engine that Keyboard magazine called
"The best we've ever seen". Also supports convenient
step-record and mouse and keyboard note entry. Supports standard
MIDI file format. Unlimited voices, staves, and voices per staff.
Unlimited Undo/Redo.
Platforms/compilers used:
Mac/CodeWarrior Pro 1
Availability : demo version coming in a few weeks.
Organization: Mark of the Unicorn,
Inc.
Product : "FreeStyle"
Description :
Trackless MIDI sequencing and notation program for songwriters and
arrangers, combining simplicity and ease-of-use with sophisticated
features that allow users to work in musically intuitive ways.
Platforms/compilers used:
Mac/CodeWarrior Pro 1 , Windows/Borland C++
Availability : demo version coming in a few weeks.
Organization: University of
Southern California
Description :
Face recognition system called FLAVOR(formerly called Eidos),
which uses an elastic graph matching algorithm.
Platforms/compilers used:
IRIX 6.2 on SGI Power Challenge XL/SGI MipsPro C++ v. 7.1,
Wintel port coming.
Organization: University of
California at Los Angeles , Computer
Science Department
VLSI CAD Laboratory - ABKGroup
Project : VLSI placement/routing
Description :
Extensively use most aspects of STL in algorithm research for
placement and routing of VLSI circuits. Developers at site: 5.
Working code using STL: exceeds 20,000 lines.
Platforms/compilers used:
SunPro CC4.2 (Solaris) and MSVC++ 5.0 (Windows NT/'95)
Contact email: <abk@cs.ucla.edu> <imarkov@cs.ucla.edu>
Organization:Askesis
B.V
Product : "ICAS"
Description :
A client/server patient database management system for the
intensive care departement in the hospital of the University of
Nijmegen in the Netherlands. Includes a TCP/IP Winsocket, an ODBC
class library and a code generator for creating the database code
based on the ODBC class library. Uses the container classes heavily.
Platforms/compilers used:
IBM Visual Age C++ for Windows, DB/2 for Windows NT, Windows
NT/Windows 95 and Windows 3.11.
Availability :
The TCP/IP and ODBC database libary with the code generator will
be released in under GNU Library Genereral Public Licence within a
few weeks.
Organization: Entegrity
Solutions Inc
Product : "Security Development Platform"
Description :
A comprehensive framework/library for developping secure
applications. Includes symmetric and assymetric cryptography and
complete public key infrastructure (CA) functionality. Extensive use
of STL throughout the project.
Platforms/compilers used:
Solaris 2.5 with SunCC 4.2 using STL adaption + extra basic_string.
Windows NT4 with MS Visual C++ 5.0 using MS STL implementation.
Compatibility between MS STL and STL adaption is good when limiting
usage to common classes.
Availability :
Beta release (NT only) due end of September.
Organization: Case Western
Reserve University School of Medicine,
Department of Molecular and
Genetic Epidemiology, S.A.G.E. Group
Product : "S.A.G.E. (Statistical Analysis for Genetic
Epidemiology)"
Description :
For detailed package information, see http://darwin.cwru.edu.
Use of the STL : in upcoming 4.0 release, ~50k+ lines of code relies
heavily on the standard library containers and to a lesser degree on
the standard algorithms. Code also compiles with Kuck &
Associate's modified Moderna STL and DeltaLogic's XTL.
Platforms/compilers used:
Alpha Digital Unix 4.0/g++ 2.7.2.1, Digital C++ 5.5 ; Sparc
Solaris 2.5/g++ 2.7.2.1, SunPro C++; i386 Linux 2.x/g++ 2.7.2.1
Availability : check S.A.G.E
homepage.
Contact e-mail: jacobs@darwin.cwru.edu
Organization: Formatek
Inc.
Product : "Softmap"
Description :
SoftMap is a GIS software bundled to a set of standard maps
(topographic maps, city maps, thematic maps) on CD-ROM to which
complementary georeferenced data can be added: topologically
structured nodes, vectors, polygons, icons and texts. As SoftMap is
a multimedia software, it is possible to link to the above graphic
elements attributes, images, external files, data base records etc.
Platforms/compilers used:
Windows/Borland C++
Availability : check http://www.naturinfo.com.
Contact e-mail: info@formatek.com
Organization: Interactive Network
Technologies, Inc (INT)
Product : "Carnac", Graphics Toolkit
Description :
Carnac is a multi-platform high-performance graphics
toolkit written in C++ targeted at handling of huge volumes of
graphics information: maps, geoscience, satellite images and so on.
Carnac includes database components (spatial-organized geometry,
visual attributes), view management, data management, distributed
components and platform-specific drivers..
Platforms/compilers used:
Microsoft Windows NT, Sun Solaris, SGI IRIX and IBM AIX. Other
platforms may be added.
Availability:
check the Carnac
Web Page.
Comments from Carnac developers:
To handle this diversity and to keep our code-base reasonably
small and manageable we use internally a lot of new features of
upcoming ANSI C++ standard: templates, exception handling, standard
library based on STL. The biggest problem of our multi-platform
project was a diversity of C++ compilers. They have a variety of
different bugs and "features", and somewhat incompatible
interpretations of templates. Some of them didn't support HP STL we
started with. HP STL had a limited set of containers (notably it
lacks hash-based containers). ObjectSpace STL was modeled after HP
STL and had the same problems. We decided to go with SGI STL as most
comprehensive STL implementation available. While it worked fine on
Windows NT and SGI, we had troubles with other platforms. Adaptation
of SGI STL (STLport) really improved this situation. We use original
SGI STL 2.03 on Windows NT and SGI IRIX and SGI STL port 2.03 on Sun
Solaris and IBM AIX. Both libraries work out-of-box on these
platforms. I should add that STLport has very important features ---
it incorporates a debug mode, which is crucial for big projects,
thread-safety and exception safety. SGI STL and STLport are free,
easy-to-use, up-to-date and evolving, close to ANSI C++ draft
standard and THEY WORK ON EXISTING COMPILERS!!! That's why we chose
SGI STL for our project.
Eugene Lazutkin, Senior Software Analyst
Interactive Network Technologies, Inc.
Organization: Claris Corporation
Project : ClarisWorks New Code Base
Description :
ClarisWorks is a productivity package that includes
word-processing, drawing, spreadsheet, and paint capabilities all
integrated in one package. It is currently available on MacOS
as well as Windows 95/NT.
MacWeek rates us 4.5 diamonds (out of five). PCWeek says we are all
the Office you need.
Platforms/compilers used:
MacOS/CodeWarrior Pro 2
Win32/Visual
C++ 5.0 sp2
WinCE/Visual
C++ 5.0 sp2
Availability :
You can buy ClarisWorks 5.0 currently, although it is not written
using STLport, you can get a look at what we are working on.
Organization: University
of Paderborn, Germany
Description :
PadFEM is a project of the University of Paderborn,
Germany, dealing
with parallel adaptive finite element simulations.
Platforms/compilers used:
g++ compiler (2.7.2 and 2.8.0) on Sun workstations (Solaris) and
massive parallel computers.
Availability :
More informations are available on the PadFEM homepage at
http://www.uni-paderborn.de/cs/padfem/.
|