Home

Awesome

Advanced Developer Async Programming Toolkit (ADAPT)

ADAPT is a foundation library intended to be used at the heart of your projects for the purpose of providing extremely powerful, multi-threaded (and thread-safe) capabilities.

It supercedes the LaKraven Studios Standard Library (LKSL), improves upon it, expands up on it, and resolves many of its fundamental architectural issues.

Much of ADAPT's distinct features are derrived from the "Another Game Engine" (AGE) project (soon to be made publicly available on GitHub) and have been collected together into this public library because they are extremely useful in other contexts beyond a Game Engine.

Installation

On Windows, don't forget to run INSTALL.BAT to register the necessary Environment Variables.

Environment Variables registered by INSTALL.BAT on Windows:

Variable NamePoints to Path
ADAPT_HOME\
ADAPT_PASCAL\Source\Lib\Pascal

Features:

FeatureDescription
Base TypesSpecial Common Base Types. Used throughout the ADAPT Library.
Event EngineA very powerful system for producing Multi-Threaded, Asynchronous and Event-Driven programs.
Generics CollectionsHighly efficient Collection Types (Lists, Trees, Maps etc.)
High Precision ThreadsA special Thread Base Type designed to provide supremely High Precision Tick Rates.
Math LibraryA library for Unit Conversion, special calculation and other useful mathematics routines.
Package EngineExtension of the Streamables Engine supporting the packaging of files together (a VFS of sorts)
Shared Streams Library100% Thread-Safe Stream Classes (Interfaced too) allowing read/write from multiple Threads.
Stream Handling LibraryMakes working with Streams much easier! Handles Deleting, Inserting, Reading and Writing data.
Streamables EngineA system to serialize Object Instances into Streams, and to dynamically reconstitute them, too.

Where possible/rational, every implemented Class Type in the ADAPT library is complemented by a Thread-Safe counterpart. These Class Type Names are suffixed with TS.

Support Matrix:

FeatureDelphi (XE2+)C++ Builder (XE2+)FreePascal 3.x+
Base TypesYesSoonSoon/Untested
Event EngineYesSoonSoon/Untested
Generics CollectionsYesSoonSoon/Untested
High Precision ThreadsYesSoonSoon/Untested
Math LibraryYesSoonSoon/Untested
Package EngineSoonSoonSoon/Untested
Shared Streams LibraryYesSoonSoon/Untested
Stream Handling LibraryYesSoonSoon/Untested
Streamables EngineYesSoonSoon/Untested

Documentation:

Coming soon, not yet available.

License:

See the LICENSE.MD file for full details.