OpenCPN Partial API docs
AbstractBlacklist Class Referenceabstract

Plugins could be blacklisted in runtime if they are unloadable or in hardcoded, compile-time list. More...

#include <plugin_blacklist.h>

Inheritance diagram for AbstractBlacklist:
PlugBlacklist

Public Member Functions

virtual plug_status get_status (const std::string &name, int _major, int _minor)=0
 Return status for given official plugin name and version.
 
virtual plug_status get_status (const plug_data pd)=0
 Return status for given official plugin name and version.
 
virtual plug_data get_library_data (const std::string &library_file)=0
 Best effort attempt to get data for a library file.
 
virtual bool mark_unloadable (const std::string &path)=0
 Given a path, mark filename as unloadable. More...
 
virtual bool mark_unloadable (const std::string &name, int major, int minor)=0
 Given plugin name and version mark it as unloadable. More...
 
virtual bool is_loadable (const std::string path)=0
 Return true iff plugin (a path) is loadable.
 
virtual std::string get_message (plug_status sts, const plug_data &data)=0
 Return plugin-specific message, possibly "".
 

Detailed Description

Plugins could be blacklisted in runtime if they are unloadable or in hardcoded, compile-time list.

Unloadable plugins are blocked using the complete filename (basename).

Loadable plugins are blacklisted using the official name and a version, possibly covering also all older versions.

Definition at line 68 of file plugin_blacklist.h.

Member Function Documentation

◆ mark_unloadable() [1/2]

virtual bool AbstractBlacklist::mark_unloadable ( const std::string &  name,
int  major,
int  minor 
)
pure virtual

Given plugin name and version mark it as unloadable.

Returns
true if plugin was already marked, else false.

Implemented in PlugBlacklist.

◆ mark_unloadable() [2/2]

virtual bool AbstractBlacklist::mark_unloadable ( const std::string &  path)
pure virtual

Given a path, mark filename as unloadable.

Returns
true if filename was already marked, else false.

Implemented in PlugBlacklist.


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