The actual factory. @parm C The derived class (the actual plugin) @parm B The base class interface for the plugin. More...
#include <meta_object.hpp>
Public Member Functions | |
B * | create () const |
The factory interface to generate an object. The object has type C in reality, though a pointer of the base class type is returned. More... | |
MetaObject (const std::string &class_name, const std::string &base_class_name) | |
Constructor for the class. More... | |
Public Member Functions inherited from class_loader::impl::AbstractMetaObject< B > | |
AbstractMetaObject (const std::string &class_name, const std::string &base_class_name) | |
A constructor for this class. More... | |
Public Member Functions inherited from class_loader::impl::AbstractMetaObjectBase | |
AbstractMetaObjectBase (const std::string &class_name, const std::string &base_class_name) | |
Constructor for the class. More... | |
void | addOwningClassLoader (ClassLoader *loader) |
Associates a ClassLoader owner with this factory,. More... | |
std::string | baseClassName () const |
gets the base class for the class this factory represents More... | |
std::string | className () const |
Gets the literal name of the class. More... | |
ClassLoaderVector | getAssociatedClassLoaders () |
std::string | getAssociatedLibraryPath () |
Gets the path to the library associated with this factory. More... | |
bool | isOwnedBy (const ClassLoader *loader) |
Indicates if the factory is within the usable scope of a ClassLoader. More... | |
bool | isOwnedByAnybody () |
Indicates if the factory is within the usable scope of any ClassLoader. More... | |
void | removeOwningClassLoader (const ClassLoader *loader) |
Removes a ClassLoader that is an owner of this factory. More... | |
void | setAssociatedLibraryPath (std::string library_path) |
Sets the path to the library associated with this factory. More... | |
std::string | typeidBaseClassName () const |
Gets the name of the class as typeid(BASE_CLASS).name() would return it. More... | |
~AbstractMetaObjectBase () | |
Destructor for the class. THIS MUST NOT BE VIRTUAL AND OVERRIDDEN BY TEMPLATE SUBCLASSES, OTHERWISE THEY WILL PULL IN A REDUNDANT METAOBJECT DESTRUCTOR OUTSIDE OF libclass_loader WITHIN THE PLUGIN LIBRARY! T. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from class_loader::impl::AbstractMetaObjectBase | |
virtual void | dummyMethod () |
Protected Attributes inherited from class_loader::impl::AbstractMetaObjectBase | |
ClassLoaderVector | associated_class_loaders_ |
std::string | associated_library_path_ |
std::string | base_class_name_ |
std::string | class_name_ |
std::string | typeid_base_class_name_ |
The actual factory. @parm C The derived class (the actual plugin) @parm B The base class interface for the plugin.
Definition at line 181 of file meta_object.hpp.
|
inline |
Constructor for the class.
Definition at line 187 of file meta_object.hpp.
|
inlinevirtual |
The factory interface to generate an object. The object has type C in reality, though a pointer of the base class type is returned.
Implements class_loader::impl::AbstractMetaObject< B >.
Definition at line 196 of file meta_object.hpp.