31 #include <boost/noncopyable.hpp> 32 #include <boost/scoped_ptr.hpp> 33 #include <boost/shared_ptr.hpp> 35 #include "rsc/rscexports.h" 53 class RSC_EXPORT
Plugin : boost::noncopyable {
62 const std::string& getName()
const;
74 void load(
bool wrapExceptions =
true);
85 void unload(
bool wrapExceptions =
true);
93 std::string getLibrary()
const;
98 boost::scoped_ptr<Impl>
impl;
102 static boost::shared_ptr<Plugin> create(
const std::string& name,
103 const std::string& library);
Instances of this class represent pieces of functionality which can be loaded into a program at runti...
const std::string PLUGIN_INIT_SYMBOL
const std::string PLUGIN_SHUTDOWN_SYMBOL
boost::shared_ptr< Plugin > PluginPtr
Instances of this class manages plugin search path entries and plugins.
boost::scoped_ptr< Impl > impl