Embedded C++
Home Hardware Services Software Services Partners Free Software Links & Resources Contact Us

Up

Jcl Embedded C++ Library

The Jcl C++ library contains a large range of functions and interfaces such as: threading, streamio, fileio, socketio, parsing, database support, etc. See below for details.  In addition, numerous third-party package have been integrated.

The Jcl Library is distributed as part of the Shift-Right Open Repository, but can be used independently from the rest of the Repository.  


Jcl Top Level Interfaces/Modules

asx
Automated Script Expander. This utility takes a set of input values and a template file and generates an output file by replacing token markers in the template file with the set of input values.
 
cmdline
Command Line argument parser. Object based paradigm for parsing command line arguments.
 
containers
A collection of lists, sets, maps, etc. All containers are intrusive as they require the contained objects to provide the storage for the 'container links'.
 
ctl
IO and Command infrastructure for the Command Text Language (CTL) protocol. CTL is a simple text based request/response protocol for communication between clients and servers.
 
db.metakit
 Multi-threaded Wrapper for the Metakit database
 
debug.shell
 A socket based 'debug shell' that can be easily integrated into a server application to provide debugging, status, backdoor functionality.
 
devtests
Developer tests for packages in the Jcl namespace.
 
errors
Error Handling interface and infrastructure suitable for multi-threaded embedded applications.
 
fileio
Platform independent file IO interfaces. Also contains implementations of the interfaces for Posix compliant system (Linux, Solaris, etc.), and Win32.
 
logging
Logging interface and infrastructure suitable for multi-threaded embedded applications.
 
memory
Interfaces for memory allocations. Emphasis has been placed on the ability to statically allocate memory for future dynamic object creation.
 
mt
Provides platform independent interfaces for threading and inter-thread communications. Also contains implementations of the interfaces for Posix compliant systems (Linux, Solaris, etc.), XMK, eCos, and Win32.
 
parsing
Parsing and formatting engines.
 
streamio
Platform independent stream IO interfaces. Also contains implementations of the interfaces for Posix compliant systems (Linux, Solaris, etc.), and Win32.
 
strings
Yet another String Interface. The interface is defined to be neutral on how memory is allocated for the concrete String object. Contains concrete class for both fixed and dynamic allocated memory models.
 
system.exec
Platform independent interface to execute a system command. Also contains implementations of the interfaces for Posix compliant systems (Linux, Solaris, etc.), and Win32.
 
system.sleep
Platform independent interface to pause/sleep a single threaded application. Also contains implementations of the interfaces for Posix compliant systems (Linux, Solaris, etc.), and Win32.
 
time
Interface and wrappers for the ansi-c time routines. The wrappers provide the ability to make the time routines thread-safe.
 
timers.async
Interface and platform independent implementation for asynchronous timers.
 
types
Collection of general purpose data types and definitions.
 
xml.dom.tinyxml
Wrapper to L. Thomason’s TinyXml package.

Third-Party Source Code & Tools

eCos
eCos, the embedded Configurable operating system, is an open source real-time operating system for deeply embedded applications.

 

Metakit
MetaKit is an efficient embedded database library with a small footprint. It fills the gap between flat-file, relational, object-oriented, and tree-structured databases, supporting relational joins, serialization, nested structures, and instant schema evolution.

 

Expat
Expat is an XML parser library written in C. It is a stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags).

 

TinyXML
TinyXml is a simple, small, C++ XML parser that can be easily integrating into other programs.

 

PCRE
The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5. PCRE has its own native API, as well as a set of wrapper functions that correspond to the POSIX regular expression API.

 

fastdep
fastdep is a preprocessor which generates dependency information suitable for Makefile inclusion from C or C++ source files. Meant to run on slower hardware, it is several orders of magnitude faster than gcc.

 

fgetopt
fgetopt is a drop-in replacement for the POSIX getopt_long(..) routine, except that it's not quite as slick.

[Home] [Hardware Services] [Software Services] [Partners] [Free Software] [Links & Resources] [Contact Us][Site Map]
Send mail to webmaster@shift-right.com with questions or comments about this web site.
Copyright © 2004 Shift-Right Technologies, LLC
Last modified: 07/05/04