#include <plugin.h>
Classes | |
struct | AllocationInfo |
Public Member Functions | |
template<typename T > | |
T * | create (const std::string &base_class, const std::string &derived_class) |
void * | create (const std::string &base_class, const std::string &derived_class) |
template<typename T > | |
boost::shared_ptr< T > | createShared (const std::string &base_class, const std::string &derived_class) |
boost::shared_ptr< void > | createShared (const std::string &base_class, const std::string &derived_class) |
void | destroy (void *mem) |
const V_ClassEntry * | getClassEntries (const std::string &base_class) const |
const ClassEntryPtr & | getClassEntry (const std::string &base_class, const std::string &derived_class) const |
YAML::Node & | getDescription () |
const std::string & | getDescriptionPath () const |
PluginStatusSignal & | getLoadedSignal () |
PluginStatusSignal & | getLoadingSignal () |
const std::string & | getName () |
const std::string & | getPackageName () const |
PluginStatusSignal & | getUnloadedSignal () |
PluginStatusSignal & | getUnloadingSignal () |
bool | hasClass (const std::string &base_class, const std::string &derived_class) const |
bool | isLoaded () |
void | load () |
void | loadDescription (const std::string &description_path) |
bool | ownsAllocation (void *mem) |
Plugin () | |
void | unload () |
~Plugin () | |
Private Types | |
typedef std::map< void *, AllocationInfo > | M_AllocationInfo |
Private Member Functions | |
void | unload (bool allow_throw) |
Private Attributes | |
M_AllocationInfo | allocations_ |
M_ClassEntry | class_entries_ |
std::string | description_path_ |
YAML::Node * | doc_ |
rve_dynlib::Handle | library_ |
std::string | library_path_ |
bool | loaded_ |
PluginStatusSignal | loaded_signal_ |
PluginStatusSignal | loading_signal_ |
std::string | name_ |
std::string | package_name_ |
std::string | package_path_ |
PluginStatusSignal | unloaded_signal_ |
PluginStatusSignal | unloading_signal_ |
typedef std::map<void*, AllocationInfo> rve_pluginloader::Plugin::M_AllocationInfo [private] |
Definition at line 48 of file plugin.cpp.
Definition at line 55 of file plugin.cpp.
void * rve_pluginloader::Plugin::create | ( | const std::string & | base_class, |
const std::string & | derived_class | ||
) | [inline] |
void* rve_pluginloader::Plugin::create | ( | const std::string & | base_class, |
const std::string & | derived_class | ||
) |
boost::shared_ptr< void > rve_pluginloader::Plugin::createShared | ( | const std::string & | base_class, |
const std::string & | derived_class | ||
) | [inline] |
boost::shared_ptr<void> rve_pluginloader::Plugin::createShared | ( | const std::string & | base_class, |
const std::string & | derived_class | ||
) |
void rve_pluginloader::Plugin::destroy | ( | void * | mem | ) |
Definition at line 298 of file plugin.cpp.
const V_ClassEntry * rve_pluginloader::Plugin::getClassEntries | ( | const std::string & | base_class | ) | const |
Definition at line 160 of file plugin.cpp.
const ClassEntryPtr & rve_pluginloader::Plugin::getClassEntry | ( | const std::string & | base_class, |
const std::string & | derived_class | ||
) | const |
Definition at line 244 of file plugin.cpp.
YAML::Node& rve_pluginloader::Plugin::getDescription | ( | ) | [inline] |
const std::string& rve_pluginloader::Plugin::getDescriptionPath | ( | ) | const [inline] |
PluginStatusSignal& rve_pluginloader::Plugin::getLoadedSignal | ( | ) | [inline] |
PluginStatusSignal& rve_pluginloader::Plugin::getLoadingSignal | ( | ) | [inline] |
const std::string& rve_pluginloader::Plugin::getName | ( | ) | [inline] |
const std::string& rve_pluginloader::Plugin::getPackageName | ( | ) | const [inline] |
bool rve_pluginloader::Plugin::hasClass | ( | const std::string & | base_class, |
const std::string & | derived_class | ||
) | const |
Definition at line 230 of file plugin.cpp.
bool rve_pluginloader::Plugin::isLoaded | ( | ) |
Definition at line 225 of file plugin.cpp.
void rve_pluginloader::Plugin::load | ( | ) |
Definition at line 120 of file plugin.cpp.
void rve_pluginloader::Plugin::loadDescription | ( | const std::string & | description_path | ) |
Definition at line 62 of file plugin.cpp.
bool rve_pluginloader::Plugin::ownsAllocation | ( | void * | mem | ) |
Definition at line 305 of file plugin.cpp.
void rve_pluginloader::Plugin::unload | ( | ) |
Definition at line 171 of file plugin.cpp.
void rve_pluginloader::Plugin::unload | ( | bool | allow_throw | ) | [private] |
Definition at line 176 of file plugin.cpp.
std::string rve_pluginloader::Plugin::description_path_ [private] |
YAML::Node* rve_pluginloader::Plugin::doc_ [private] |
std::string rve_pluginloader::Plugin::library_path_ [private] |
bool rve_pluginloader::Plugin::loaded_ [private] |
std::string rve_pluginloader::Plugin::name_ [private] |
std::string rve_pluginloader::Plugin::package_name_ [private] |
std::string rve_pluginloader::Plugin::package_path_ [private] |