6#ifndef YARP_OS_YARPPLUGIN_H
7#define YARP_OS_YARPPLUGIN_H
65 if (!settings.
open(*factory)) {
70 this->settings = settings;
87 if (factory->getReferenceCount() <= 0) {
101 return (factory !=
nullptr);
117 return factory->create();
132 factory->destroy(
obj);
158 return factory->getClassName();
171 return factory->getBaseClassName();
A mini-server for performing network communication in the background.
std::string getName() const override
Get name of port.
Collect hints for finding a particular plugin.
bool open(SharedLibraryFactory &factory)
Initialize a factory object based on the hints available.
void reportStatus(SharedLibraryFactory &factory) const
Give a human-readable report of the status of a factory.
Type-safe access to a plugin.
SharedLibraryClassFactory< T > * getFactory() const
bool close()
End this use of the plugin.
T * create()
Create an object using the plugin.
bool open(YarpPluginSettings &settings)
Load a library and prepare an object factory, based on the hints supplied.
void destroy(T *obj)
Destroy an object previously created using the plugin.
std::string getBaseClassName()
std::string getClassName()
virtual ~YarpPlugin()
Destructor.
An interface to the operating system, including Port based communication.