Skip to main content

Register

📄️ Alias

This macro can be used to register an alias for a named element. Both the name registered under the element registration macro (e.g., SSTELIREGISTER_COMPONENT) and with this macro will point to the same element. Note that sst-info will display the element under its non-aliased name but will show the alias as an alternative. This macro is especially useful for changing an element name without breaking existing configuration files. The old name should be registered using the alias macro and the new name should be used in the element registration macro.

📄️ Component Derived Base

This macro registers the inheritance chain for a class that does not directly inherit from SST::Component and is not itself intended to be an SST Component, but will be the base class for an SST Component. Registering these classes allows SST to identify which ELI information should be inherited by a child Component. The names provided to the macro must be the fully qualified class names. ELI documentation macros declared by this class will be inherited by child classes.

📄️ Module API

A module API defines the API for a particular variety of SST Modules. This macro is used to register a class that defines a module API with the SST Core. This class should also inherit from SST::Module. If instead this class inherits from another Module API, the SSTELIREGISTERMODULEDERIVEDAPI. A class may be both a module API and a module itself and include both registration macros. Modules that inherit from the registered API will also inherit any ELI documented by the API class.

📄️ SubComponent

All SubComponents must register themselves with SST using this macro. The library and name strings provided in this macro will be used by SST to identify the subcomponent as "library.name". The version, description, and category are displayed by sst-info to document the version and purpose of the SubComponent. The interface declares which SubComponent API this subcomponent implements which is used to check compatibility with SubComponent slots. The interface must also be registered with SST using the SSTELIREGISTERSUBCOMPONENTAPI or SSTELIREGISTERSUBCOMPONENTDERIVEDAPI macro.