A C++ cross-platform library.
[Get Vault on Github] [API Documentation]
The Code Vault is stable at 4.1 (July 2016) and only needs occasional minor updates.
It was developed over a period of about 15 years, starting well before the C++11/14/17 changes. As such,
it does not take advantage of nor rely on those language features. It is therefore somewhat of a snapshot
in time, but it continues to provide a straightforward, readable API and wouldn't gain much from rewriting the
internals using the latest language features. The Code Vault provides a lot of utility, across platforms, in
a consistent way. It is actively used in mission-critical environments around the world.
C++ can give you the best of several worlds: close-to-the-metal performance, high-level object-oriented design, and simple deterministic object lifecycles. But historically the compiler tools, standard libraries, and platform APIs have conspired to make it challenging to create large scale code that compiles and runs right out of the box on any platform. In addition, a variety of basic necessities for programs are only provided by each OS's different low-level native procedural APIs, making cross-platform development a big undertaking.
The Code Vault, or “Vault” for short, provides a cross-platform foundation library under your code that not only protects you from the many little compiler/library/platform quirks, allowing your C++ to easily build and run on multiple platforms, but also provides a powerful toolkit for building cross-platform O-O code for networking, i/o, threading, messaging, logging, and more.
Vault supports Mac OS X, iOS, Linux, and Windows, and is provided under an MIT license.
Toolchain Independence
|
Unified Stream I/O
|
High-Level Containers
|
Client and Server Support
|
Thread Objects
|
Time Support
|
Logging
|
Unit Testing
|
A sampling of some of the other classes Vault provides: VBento Bento structured hierarchical data. VPoint, VRect, VPolygon, VPoint3D, VSize, VLine Floating-point and integer-based geometry types/utilities with Qt conversion. VColor, VColorPair, VColorPalette For defining and mapping colors. VException, VSystemError, VStackTraceException Exceptions with cross-platform system error handling and stack traces. VHex Hex dump generation and i/o.
It’s all about leveraging a unified, consistent API across the entire library, and letting you build upon it.
Copyright ©1997-2019 Trygve Isaacson. All Rights Reserved.