Class ExtensionManager
Defined in File extension_manager.hpp
Derived Type
public holoscan::gxf::GXFExtensionManager(Class GXFExtensionManager)
- 
class ExtensionManager
 Class to manage extensions.
This class is a helper class to manage extensions.
Subclassed by holoscan::gxf::GXFExtensionManager
Public Functions
- 
inline explicit ExtensionManager(void *context)
 Construct a new ExtensionManager object.
- Parameters
 context – The context.
- 
virtual ~ExtensionManager() = default
 Destroy the ExtensionManager object.
- 
inline virtual void reset_context(void *context)
 Reset the extension manager with the context.
- Parameters
 context – The context.
- 
inline virtual void refresh()
 Refresh the extension list.
Based on the current context, construct the internal extension list.
- 
inline virtual bool load_extension(const std::string &file_name, bool no_error_message = false, const std::string &search_path_envs = "HOLOSCAN_LIB_PATH")
 Load an extension.
This method loads an extension and stores the extension handler so that it can be unloaded when the class is destroyed.
- Parameters
 file_name – The file name of the extension (e.g. libmyextension.so).
no_error_message – If true, no error message will be printed if the extension is not found.
search_path_envs – The environment variable names that contains the search paths for the extension. The environment variable names are separated by a comma (,). (default: “HOLOSCAN_LIB_PATH”).
- Returns
 true if the extension is loaded successfully, false otherwise.
- 
inline virtual bool load_extensions_from_yaml(const YAML::Node &node, bool no_error_message = false, const std::string &search_path_envs = "HOLOSCAN_LIB_PATH", const std::string &key = "extensions")
 Load extensions from a yaml file.
The yaml file should contain a list of extension file names under the key “extensions”.
For example:
extensions: - /path/to/extension1.so - /path/to/extension2.so - /path/to/extension3.so
- Parameters
 node – The yaml node.
no_error_message – If true, no error message will be printed if the extension is not found.
search_path_envs – The environment variable names that contains the search paths for the extension. The environment variable names are separated by a comma (,). (default: “HOLOSCAN_LIB_PATH”).
key – The key in the yaml node that contains the extension file names (default: “extensions”).
- Returns
 true if the extension is loaded successfully, false otherwise.
Protected Attributes
- 
void *context_ = nullptr
 The context.
- 
inline explicit ExtensionManager(void *context)