libSBML C++ API
5.18.0
|
This class of objects is defined by libSBML only and has no direct equivalent in terms of SBML components. This class is not prescribed by the SBML specifications, although it is used to implement features defined in SBML.
The use of SBasePluginCreator is a simple matter of invoking it on every object derived from SBasePlugin or SBMLDocumentPlugin (which is itself derived from SBasePlugin). The typical use is illustrated by the following code fragment:
The code above is typically placed in the implementation of the init()
method of the package class derived from SBMLExtension. (For the example above, it would be in the GroupsExtension.cpp
file.)
Public Types | |
typedef std::vector< std::string > | SupportedPackageURIList |
typedef std::vector< std::string >::iterator | SupportedPackageURIListIter |
Public Member Functions | |
virtual SBasePluginCreator * | clone () const |
Creates and returns a deep copy of this SBasePluginCreator object. More... | |
virtual SBasePluginType * | createPlugin (const std::string &uri, const std::string &prefix, const XMLNamespaces *xmlns) const |
Creats an SBasePlugin object with a given URI and namespace prefix. More... | |
unsigned int | getNumOfSupportedPackageURI () const |
Returns the number of package URIs supported by this creator object. More... | |
std::string | getSupportedPackageURI (unsigned int i) const |
Returns the URI of the ith package supported by this creator object. More... | |
const SBaseExtensionPoint & | getTargetExtensionPoint () const |
Returns an SBaseExtensionPoint object tied to this creator object. More... | |
const std::string & | getTargetPackageName () const |
Returns the target package name of this creator object. More... | |
int | getTargetSBMLTypeCode () const |
Returns a libSBML type code tied to this creator object. More... | |
bool | isSupported (const std::string &uri) const |
Returns true if a package with the given namespace URI is supported. More... | |
SBasePluginCreator (const SBaseExtensionPoint &extPoint, const std::vector< std::string > &packageURIs) | |
Constructor for SBasePluginCreator. More... | |
SBasePluginCreator (const SBasePluginCreator &orig) | |
Copy constructor for SBasePluginCreator. More... | |
virtual | ~SBasePluginCreator () |
Destroys this object. More... | |
|
inherited |
|
inherited |
|
inline |
Constructor for SBasePluginCreator.
extPoint | the SBaseExtensionPoint object that defines the extension point. |
packageURIs | a vector of XML namespace URIs that identifies the SBML package namespaces to which this extension applies. |
|
inline |
Copy constructor for SBasePluginCreator.
orig | the object to copy. |
|
inlinevirtual |
Destroys this object.
|
inlinevirtual |
Creates and returns a deep copy of this SBasePluginCreator object.
Implements SBasePluginCreatorBase.
|
inlinevirtual |
Creats an SBasePlugin object with a given URI and namespace prefix.
uri | the XML namespace URI for the SBML package implemented by this libSBML package extension. |
prefix | the XML namespace prefix of the package (e.g., "layout" , "multi" ). |
xmlns | an XMLNamespaces object that identifies namespaces in use by this package extension |
Implements SBasePluginCreatorBase.
|
inherited |
Returns the number of package URIs supported by this creator object.
|
inherited |
Returns the URI of the ith package supported by this creator object.
i | the index of the URI being sought. |
|
inherited |
Returns an SBaseExtensionPoint object tied to this creator object.
|
inherited |
Returns the target package name of this creator object.
|
inherited |
Returns a libSBML type code tied to this creator object.
|
inherited |
Returns true
if a package with the given namespace URI is supported.
uri | the XML namespace URI to test. |
true
if the URI applies to this package extension, false
otherwise.