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.
This is the Groups package extension of the SBMLExtension class that is used to facilitate libSBML plug-ins in the implementation of an SBMLLevel 3 package.
Public Member Functions | |
new void | addL2Namespaces (XMLNamespaces xmlns) |
Adds the package's Level 2 namespace(s). More... | |
new GroupsExtension | clone () |
Creates and returns a deep copy of this GroupsExtension object. More... | |
override void | Dispose () |
override SBase | DowncastSBase (IntPtr cPtr, bool owner) |
override SBasePlugin | DowncastSBasePlugin (IntPtr cPtr, bool owner) |
new void | enableL2NamespaceForDocument (SBMLDocument doc) |
Called to enable the package on the SBMLDocument object. More... | |
long | getCategory (long index) |
new long | getLevel (string uri) |
Returns the SBML Level for the given URI of this package. More... | |
string | getMessage (long index, long pkgVersion, string details) |
new string | getName () |
Returns the name of this SBML Level 3 package ('groups'). More... | |
int | getNumOfSBasePlugins () |
Returns the number of SBasePluginCreatorBase objects stored in this object. More... | |
long | getNumOfSupportedPackageURI () |
Returns the number of supported package namespace URIs. More... | |
new long | getPackageVersion (string uri) |
Returns the SBML Level 3 package version for the given URI of this package. More... | |
new SBMLNamespaces | getSBMLExtensionNamespaces (string uri) |
Returns a GroupsPkgNamespaces object. More... | |
long | getSeverity (long index, long pkgVersion) |
string | getShortMessage (long index) |
new string | getStringFromTypeCode (int typeCode) |
Takes a type code of the “groups” package and returns a string describing the code. More... | |
string | getSupportedPackageURI (long n) |
Returns the nth XML namespace URI. More... | |
new string | getURI (long sbmlLevel, long sbmlVersion, long pkgVersion) |
Returns a string representing the SBML XML namespace of this SBML Level 3 package. More... | |
new long | getVersion (string uri) |
Returns the Version within the SBML Level for the given URI of this package. More... | |
GroupsExtension () | |
Creates a new GroupsExtension instance. More... | |
GroupsExtension (GroupsExtension orig) | |
Copy constructor for GroupsExtension. More... | |
bool | isEnabled () |
Returns true if this package is enabled. More... | |
new bool | isInUse (SBMLDocument doc) |
Indicates whether this extension is being used by the given SBMLDocument. More... | |
bool | isSupported (string uri) |
Returns true if the given XML namespace URI is supported by this package extension. More... | |
new void | removeL2Namespaces (XMLNamespaces xmlns) |
Removes the package's Level 2 namespace(s). More... | |
bool | setEnabled (bool isEnabled) |
Enable or disable this package. More... | |
Static Public Member Functions | |
static long | getDefaultLevel () |
Returns the default SBML Level implemented by this libSBML extension. More... | |
static long | getDefaultPackageVersion () |
Returns the default version of the SBML Level 3 package implemented by this libSBML extension. More... | |
static long | getDefaultVersion () |
Returns the default SBML Version implemented by this libSBML extension. More... | |
static string | getPackageName () |
Returns the nickname of the SBML Level 3 package implemented by this libSBML extension. More... | |
static string | getXmlnsL3V1V1 () |
Returns the XML namespace URI of the SBML Level 3 package implemented by this libSBML extension. More... | |
static void | init () |
Protected Attributes | |
bool | swigCMemOwn |
libsbmlcs.GroupsExtension.GroupsExtension | ( | ) |
Creates a new GroupsExtension instance.
libsbmlcs.GroupsExtension.GroupsExtension | ( | GroupsExtension | orig | ) |
Copy constructor for GroupsExtension.
orig | the GroupsExtension instance to copy. |
|
inherited |
Adds the package's Level 2 namespace(s).
This method is related to special facilities designed to support legacy behaviors surrounding SBML Level 2 models. Due to the historical background of the SBML Layout package, libSBML implements special behavior for that package: it always creates a Layout plugin object for any SBML Level 2 document it reads in, regardless of whether that document actually uses Layout constructs. Since Level 2 does not use namespaces on the top level of the SBML document object, libSBML simply keys off the fact that the model is a Level 2 model. To allow the extensions for the Layout and Render (and possibly other) packages to support this behavior, the SBMLExtension class contains special methods to allow packages to hook themselves into the Level 2 parsing apparatus when necessary.
xmlns | an XMLNamespaces object that will be used for the annotation. Implementation should override this method with something that adds the package's namespace(s) to the set of namespaces in xmlns . For instance, here is the code from the Layout package extension: if (!xmlns->containsUri( LayoutExtension::getXmlnsL2())) xmlns->add(LayoutExtension::getXmlnsL2(), 'layout'); |
new GroupsExtension libsbmlcs.GroupsExtension.clone | ( | ) |
Creates and returns a deep copy of this GroupsExtension object.
|
virtual |
Reimplemented from libsbmlcs.SBMLExtension.
|
virtual |
Reimplemented from libsbmlcs.SBMLExtension.
|
virtual |
Reimplemented from libsbmlcs.SBMLExtension.
|
inherited |
Called to enable the package on the SBMLDocument object.
This method is related to special facilities designed to support legacy behaviors surrounding SBML Level 2 models. Due to the historical background of the SBML Layout package, libSBML implements special behavior for that package: it always creates a Layout plugin object for any SBML Level 2 document it reads in, regardless of whether that document actually uses Layout constructs. Since Level 2 does not use namespaces on the top level of the SBML document object, libSBML simply keys off the fact that the model is a Level 2 model. To allow the extensions for the Layout and Render (and possibly other) packages to support this behavior, the SBMLExtension class contains special methods to allow packages to hook themselves into the Level 2 parsing apparatus when necessary.
doc | the SBMLDocument object for the model. Implementations should override this method with something that enables the package based on the package's namespace(s). For example, here is the code from the Layout package extension: if (doc->getLevel() == 2) |
|
inherited |
|
static |
Returns the default SBML Level implemented by this libSBML extension.
|
static |
Returns the default version of the SBML Level 3 package implemented by this libSBML extension.
|
static |
Returns the default SBML Version implemented by this libSBML extension.
new long libsbmlcs.GroupsExtension.getLevel | ( | string | uri | ) |
Returns the SBML Level for the given URI of this package.
uri | the string of the URI that represents one of the versions of the 'groups' package. |
0
if the given URI is invalid, or for a different package.
|
inherited |
new string libsbmlcs.GroupsExtension.getName | ( | ) |
Returns the name of this SBML Level 3 package ('groups').
|
inherited |
Returns the number of SBasePluginCreatorBase objects stored in this object.
|
inherited |
Returns the number of supported package namespace URIs.
|
static |
Returns the nickname of the SBML Level 3 package implemented by this libSBML extension.
new long libsbmlcs.GroupsExtension.getPackageVersion | ( | string | uri | ) |
Returns the SBML Level 3 package version for the given URI of this package.
uri | the string of the URI that represents one of the versions of the 'groups' package. |
0
if the given URI is invalid, or for a different package. new SBMLNamespaces libsbmlcs.GroupsExtension.getSBMLExtensionNamespaces | ( | string | uri | ) |
Returns a GroupsPkgNamespaces object.
uri | the string of the URI that represents one of the versions of the 'groups' package. |
null
if the given URI is not defined in the 'groups' package.
|
inherited |
|
inherited |
new string libsbmlcs.GroupsExtension.getStringFromTypeCode | ( | int | typeCode | ) |
Takes a type code of the “groups” package and returns a string describing the code.
typeCode | a libSBML type code defined by the libSBML extension implementing support for the SBML Level 3 “groups” package. |
typeCode
. If the type code is unrecognized for this implementation of the libSBML “groups” package, the string returned will be '(Unknown SBML Groups Type)'
.
|
inherited |
Returns the nth XML namespace URI.
n | the index number of the namespace URI being sought. |
new string libsbmlcs.GroupsExtension.getURI | ( | long | sbmlLevel, |
long | sbmlVersion, | ||
long | pkgVersion | ||
) |
Returns a string representing the SBML XML namespace of this SBML Level 3 package.
sbmlLevel | the level of SBML. |
sbmlVersion | the version of SBML. |
pkgVersion | the version of this package. |
The namespace URI constructed by this method corresponds to the combination of the Level and Version of SBML, and the Version of the SBML Level 3 package. (At the time of this writing, the only SBML Level that supports packages is Level 3, so the value of sbmlLevel
is necessarily always 3
.)
new long libsbmlcs.GroupsExtension.getVersion | ( | string | uri | ) |
Returns the Version within the SBML Level for the given URI of this package.
uri | the string of the URI that represents one of the versions of the 'groups' package. |
0
if the given URI is invalid, or for a different package.
|
static |
Returns the XML namespace URI of the SBML Level 3 package implemented by this libSBML extension.
|
static |
|
inherited |
Returns true
if this package is enabled.
true
if this package is enabled, false
otherwise.
|
inherited |
Indicates whether this extension is being used by the given SBMLDocument.
The default implementation returns true
. This means that when a document had this extension enabled, it will not be possible to convert it to SBML Level 2 as we cannot make sure that the extension can be converted.
doc | the SBML document to test. |
|
inherited |
Returns true
if the given XML namespace URI is supported by this package extension.
true
if the given XML namespace URI (equivalent to a package version) is supported by this package extension, false
otherwise.
|
inherited |
Removes the package's Level 2 namespace(s).
This method is related to special facilities designed to support legacy behaviors surrounding SBML Level 2 models. Due to the historical background of the SBML Layout package, libSBML implements special behavior for that package: it always creates a Layout plugin object for any SBML Level 2 document it reads in, regardless of whether that document actually uses Layout constructs. Since Level 2 does not use namespaces on the top level of the SBML document object, libSBML simply keys off the fact that the model is a Level 2 model. To allow the extensions for the Layout and Render (and possibly other) packages to support this behavior, the SBMLExtension class contains special methods to allow packages to hook themselves into the Level 2 parsing apparatus when necessary.
xmlns | an XMLNamespaces object that will be used for the annotation. Implementations should override this method with something that removes the package's namespace(s) from the set of namespaces in xmlns . For instance, here is the code from the Layout package extension: for (int n = 0; n < xmlns->getNumNamespaces(); n++) { if (xmlns->getURI(n) == LayoutExtension::getXmlnsL2()) xmlns->remove(n); } |
|
inherited |
Enable or disable this package.
isEnabled | flag indicating whether to enable (if true ) or disable (false ) this package extension. |
true
if this call succeeded; false
otherwise.
|
protectedinherited |