OpenCPN Partial API docs
PluginHandler Class Reference

Public Member Functions

bool isPluginWritable (std::string name)
 Check if given plugin can be installed/updated.
 
const std::vector< PluginMetadatagetInstalled ()
 Return list of all installed and loaded plugins.
 
std::vector< std::string > GetInstalldataPlugins ()
 Return list of installed plugins lower case names, not necessarily loaded.
 
void SetInstalledMetadata (const PluginMetadata &pm)
 Set metadata for an installed plugin.
 
const std::vector< PluginMetadatagetAvailable ()
 Update catalog and return list of available, not installed plugins.
 
std::vector< PluginMetadatagetCompatiblePlugins ()
 Return list of available, unique and compatible plugins from configured XML catalog. More...
 
const std::map< std::string, int > getCountByTarget ()
 Map of available plugin targets -> number of occurences.
 
std::string getPluginByLibrary (const std::string &filename)
 Return plugin containing given filename or "" if not found.
 
std::string getMetadataPath ()
 Return path to metadata XML file.
 
void setMetadata (std::string path)
 Set path to metadata XML file.
 
bool installPlugin (PluginMetadata plugin)
 Download and install a new, not installed plugin.
 
bool installPlugin (PluginMetadata plugin, std::string path)
 Install a new, downloaded but not installed plugin tarball.
 
bool ExtractMetadata (const std::string &path, PluginMetadata &metadata)
 Extract metadata in given tarball path.
 
bool installPlugin (const std::string &path)
 
bool uninstall (const std::string plugin)
 Uninstall an installed and loaded plugin.
 
bool ClearInstallData (const std::string plugin_name)
 Remove installation data for not loaded plugin.
 
bool installPluginFromCache (PluginMetadata plugin)
 Install plugin tarball from local cache.
 
std::string getLastErrorMsg ()
 
CatalogDataGetCatalogData ()
 

Static Public Member Functions

static PluginHandlergetInstance ()
 
static void cleanup (const std::string &filelist, const std::string &plugname)
 Cleanup failed installation attempt using filelist for plugin.
 
static void cleanupFiles (const std::string &manifestFile, const std::string &plugname)
 
static std::string pluginsInstallDataPath ()
 Return base directory for installation data.
 
static std::string fileListPath (std::string name)
 Return path to installation manifest for given plugin.
 
static std::string versionPath (std::string name)
 Return path to file containing version for given plugin.
 
static std::string ImportedMetadataPath (std::string name)
 Return path to imported metadata for given plugin.
 
static std::vector< std::string > GetImportPaths ()
 List of paths for imported plugins metadata.
 
static bool isCompatible (const PluginMetadata &metadata, const char *os=PKG_TARGET, const char *os_version=PKG_TARGET_VERSION)
 Return true if given plugin is loadable on given os/version.
 

Public Attributes

EventVar evt_download_ok
 
EventVar evt_download_failed
 

Detailed Description

Definition at line 88 of file plugin_handler.h.

Member Function Documentation

◆ getCompatiblePlugins()

std::vector< PluginMetadata > PluginHandler::getCompatiblePlugins ( )

Return list of available, unique and compatible plugins from configured XML catalog.

Compare two PluginMetadata objects, a named c++ requirement.

Definition at line 1046 of file plugin_handler.cpp.


The documentation for this class was generated from the following files: