|
Masala Core
|
The Masala Core library version 1.1 defines the plugin system, the API definition system, and static singletons for managing shared resources like memory, output loggers (tracers), disk i/o, CPU threads, and MPI processes. It also defines base classes for certain types of Masala plugin modules.
This library is divided into hand-written sub-libraries and auto-generated API sub-libraries. All sub-libraries are in appropriately named sub-directories of the src/ directory; all namespaces start with masala, and then follow the directory structure. The namespaces of the hand-written sub-libraries are:
The corresponding auto-generated libraries are in the following namespaces:
If you link this library at compilation time, it is only safe to directly call functions or instantiate classes in the auto-generated API namespaces, or in the masala::base namespace. These have stable APIs that will be preserved in future versions of the Standard Masala Plugins library, or deprecated in a manner that provides ample warning. Handwritten sub-libraries other than the base sub-libarry are not part of the API, and can change without warning.