|
Aquelibs:C++ Features Aquelibs:C++ libraries are extremely rich in features. There's a lot to tell about so here's a quick list. Core Libray Features - Application building framework offering abstract application classes, environment, argument processing, safe-static initialization to create robust, agile applications.
- Argument processing classes to facilitate flexible functions with variable arguments with type safety and ability to allow or deny types.
- Threading classes with atomic operations, mutexes, semaphores, thread-local storage, locks and guards.
- Config operations to read/write INI based configuration files.
- Diagnostics – Powerful diagnostics operations to allow severity based diagnostics for files and streams, compile info and unix syslog abstractions.
- Exceptions- Exception framework derived from std::exception and integrated with diagnostics and compile info to provide robust exception mechanisms.
- File/Dir Handling – File and directory based operations with sym-link support and memory file abstractions.
- Portability – Portable exec() abstractions for spawning execution and sub-process.
- Utility Classes – Providing several utility operations like byte-swapping, and operations for standard library containers.
- Datatypes – Platform portable data-type mappings like 32-bit Integer AQInt32.
- DateTime – Date/Time related operations like timespan, stopwatch, date-time class with nano-second precision.
- Plugin Manager – Plug-in framework to write portable plug-in infrastructure for your applications.
- Memory Management – Pointer management classes with reference counting semantics and generic AQObject base class.
- Containers/Data Structures – Data containers like registry, meta-registries, object containers, singleton object store and large binary object operations.
- Portable Streams – Portable Read/Write and Read-Write streams.
- Process Management – Cross platform process related operations, DLL/Shared library handling and stack tracing operations (where supported).
- String – Classes to support std::string providing comparisons, tokenizer, temporary string and UTF-8 string.
Utils Libray Features - Argument Support – Extension to aque:core with support for regular expressions in arguments.
- Streams – File/stream/memory reader/writers providing functionality for byte/chunk operations.
- Checksum – File CRC32 and MD5 checksum operations.
- Ranges – Range operations like time-line and interval trees.
- Compression – Compression support with file/stream operations for reading/writing ZIP/BZip2 and TAR files.
- Parser – Query parse tree and query execution classes for custom query language creation.
- Threading – Advanced threading operations like thread pools, blocking execution thread queue and non-stop (daemon) thread.
- Strings – Light weight string class, Boyer-Moore matching algorithm and Unicode translations.
- Regular Expressions – Perl compatible Regular Expression support.
- Cache – Generic cache implementation framework complete with cache cleaner thread.
- Image –Image operations with support for BMP, GIF, JPEG, PNG, SGI, TIFF, XPM and RAW formats.
- Miscellaneous – Classes for various types of dictionaries, linked set/multiset, weak map, generic table with row/column level operations, mutex pool, resource pools, request control operations, rotating log, random number generation, obsolete file remover, transmission reader/writer, matrix class for mathematical operations, object multiplexing/demultiplexing support.
Html Libray Features - Classes representing HTML elements to generate valid HTML without knowledge or HTML coding or misalignment of closing tags.
- Auto-indenting streams to write well formed HTML.
- Support for form controls like buttons, queries, text boxes, pop-up menus using embedded java-script.
- CGI library to support complex interactions with support for sessions and cookies.
- Exception model to handle Html/CGI run-time errors.
- Integrated Diagnostics operations available using Html comments.
- Integrated pagers to handle navigation functions.
Fast DB Libray Features - Complete support for BDB file management and file dumping.
- Support for large binary objects (BLOB) with blob caching and utility functions.
- Simple query mechanism to extract objects from BDB database.
- Comprehensive datatype support using high level datatypes for easy operation and cross platform availability.
- Support for transactions.
- Simple SQLite wrapper with callbacks to help implement SQLite operations with easy.
Net Libray Features - Network buffer operation wrappers to enable read/write/append operations to buffers with in-place semantics.
- Network connectors with callback operations.
- Network pipe classes with named-pipe server/client classes to write simple server/client applications.
- Socket classes with pollable interface, listening socket and datagram socket.
- Network streams wrapped over pipers, sockets, connections, ftp etc to allow easy network programming.
- Several utility functions for various network functionalities.
- Integrated aque diagnostics model.
- Support for sendmail API (where available).
- Servers with threaded model and light-weight operations with connection pooling and load-balancing.
- Grid computing framework with grid enabled client server model, task scheduling, task based worker-client execution and load balancing.
- Caching support for grid computing framework
Database Libray Features - Support for native MySQL, Microsoft SQL Server, Sybase, ODBC, SQLite3 databases with additional functionality from FreeTDS drivers.
- Driver manager based API to manage drivers available to an application.
- High level datatype abstraction like AQDBBit, AQDBTinyInt, AQDBVarchar, AQDBWString, AQDBDatetime for easy interoperability amongst multiple databases.
- Powerful AQDBVariant datatype to allow unknown datatype support.
- Support for parameter binding.
- High level C++ database constructs like readers, cursors, statements, callable statements, result sets and result set metadata, bulk operations.
- Support for Binary large objects (BLOB).
- Custom exception hierarchy to handle database related errors including Multi-exception to capture multiple exceptions thrown in a single execution.
- Easy to use interface without sacrificing full power of any database.
|