Standard Masala Plugins
Loading...
Searching...
No Matches
Standard Masala Plugins

Description

The Standard Masala Plugins library version 1.0 contains discrete cost function network (CFN) and continuous real-valued local (RVL) optimizers. It also contains a framework for defining scoring functions, file interpreters, and selectors.

Authors

Library organization

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 standard_masala_plugins, 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:

Using this library as a conventional library linked at compilation time

If you choose the link this library at compilation time, it is only safe to directly call functions or instantiate classes in the auto-generated API namespaces. 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 libraries are not part of the API, and can change without warning.

Using this library as a dynamically-linked library only provided at runtime

As an alternative, you may choose only to link the Masala Core library. In that case, you can use the masala::base::managers::plugin_module::MasalaPluginLibraryManager to load the Standard Masala Plugins at runtime, which will trigger registration of all plugin modules in this library that have API definitions with the masala::base::managers::plugin_module::MasalaPluginModuleManager, which your code may interrogate to obtain Masala plugins. The interface for plugin modules may be accessed through the masala::base::api::MasalaObjectAPIDefinition for each plugin module.