libSBML C++ API
5.18.0
|
The MultiCompartmentPlugin object is used to extend the standard SBML Compartment base object with an optional "compartmentType" attribute, a required "isType" Boolean attribute, and a child ListOfCompartmentReferences. The "isType" attribute flags whether this Compartment should be treated as a standard SBML Compartment (if false
), or as a more generic rule-based "type" of Compartment (if true
). A compartment "type" is a template (in the sense of prototype) for all Compartment objects referencing it (via "compartmentType" attributes). A Species object directly referencing a compartment type is not a "fully
defined" species, but rather a "template" species. If the value of the "isType" attribute is false
, the Compartment object is a "not-a-type" compartment, and it is similar to a SBML core Compartment except it can reference a compartment type and can have a ListOfCompartmentReferences child. Each child CompartmentReference in the ListOfCompartmentReferences defines a subcompartment of the parent Compartment. The "compartmentType" attribute identifies this Compartment as the CompartmentType defined elsewhere in the Model. If the "compartmentType" attribute is set, the "isType" attribute must be true
.
Public Member Functions | |
int | addCompartmentReference (const CompartmentReference *compartmentReference) |
Adds a copy of the given CompartmentReference object to the ListOfCompartmentReferences. More... | |
virtual MultiCompartmentPlugin * | clone () const |
Creates and returns a deep copy of this MultiCompartmentPlugin object. More... | |
CompartmentReference * | createCompartmentReference () |
Creates a new CompartmentReference object and adds it to the ListOfCompartmentReferences. More... | |
virtual List * | getAllElements (ElementFilter *filter=NULL) |
Returns a List of all child SBase objects, including those nested to an arbitary depth. More... | |
const CompartmentReference * | getCompartmentReference (unsigned int n) const |
Returns the nth CompartmentReference object from the ListOfCompartmentReferences. More... | |
CompartmentReference * | getCompartmentReference (unsigned int n) |
Returns the nth CompartmentReference object from the ListOfCompartmentReferences. More... | |
const CompartmentReference * | getCompartmentReference (const std::string &sid) const |
Returns the CompartmentReference with the given identifier sid . More... | |
CompartmentReference * | getCompartmentReference (const std::string &sid) |
Returns the CompartmentReference with the given identifier sid . More... | |
virtual const std::string & | getCompartmentType () const |
Returns the value of the "compartmentType" attribute of this compartment. More... | |
virtual SBase * | getElementByMetaId (const std::string &metaid) |
Return the first child object found with a given meta identifier. More... | |
virtual SBase * | getElementBySId (const std::string &id) |
Return the first child object found with a given identifier. More... | |
const std::string & | getElementNamespace () const |
Returns the namespace URI of the package to which this plugin object belongs. More... | |
virtual bool | getIsType () const |
Returns the value of the "isType" attribute. More... | |
unsigned int | getLevel () const |
Returns the SBML Level of the package extension of this plugin object. More... | |
const ListOfCompartmentReferences * | getListOfCompartmentReferences () const |
Returns the ListOfCompartmentReferences object. More... | |
ListOfCompartmentReferences * | getListOfCompartmentReferences () |
Returns the ListOfCompartmentReferences object. More... | |
unsigned int | getNumCompartmentReferences () const |
Returns the number of CompartmentReference objects in the ListOfCompartmentReferences. More... | |
const std::string & | getPackageName () const |
Returns the short-form name of the package to which this plugin object belongs. More... | |
unsigned int | getPackageVersion () const |
Returns the package version of the package extension of this plugin object. More... | |
SBase * | getParentSBMLObject () |
Returns the parent object to which this plugin object is connected. More... | |
const SBase * | getParentSBMLObject () const |
Returns the parent object to which this plugin object is connected. More... | |
const std::string & | getPrefix () const |
Returns the XML namespace prefix of the package to which this plugin object belongs. More... | |
SBMLDocument * | getSBMLDocument () |
Returns the SBMLDocument object containing this object instance. More... | |
const SBMLDocument * | getSBMLDocument () const |
Returns the SBMLDocument object containing this object instance. More... | |
std::string | getURI () const |
Returns the XML namespace URI for the package to which this object belongs. More... | |
unsigned int | getVersion () const |
Returns the Version within the SBML Level of the package extension of this plugin object. More... | |
virtual bool | hasRequiredElements () const |
Returns true if this object has all the required elements. More... | |
virtual bool | isSetCompartmentType () const |
Returns true if this compartment's "compartmentType" attribute has been set. More... | |
virtual bool | isSetIsType () const |
Returns true if this compartment's "isType" attribute has been set. More... | |
virtual bool | isValidTypeForList (SBase *item) const |
MultiCompartmentPlugin (const std::string &uri, const std::string &prefix, MultiPkgNamespaces *multins) | |
Creates a new MultiCompartmentPlugin object. More... | |
MultiCompartmentPlugin (const MultiCompartmentPlugin &orig) | |
Copy constructor for MultiCompartmentPlugin. More... | |
MultiCompartmentPlugin & | operator= (const MultiCompartmentPlugin &rhs) |
Assignment operator for MultiCompartmentPlugin. More... | |
CompartmentReference * | removeCompartmentReference (unsigned int n) |
Removes the nth CompartmentReference object from the ListOfCompartmentReferences. More... | |
CompartmentReference * | removeCompartmentReference (const std::string &sid) |
Removes the CompartmentReference object with the given identifier from the ListOfCompartmentReferences. More... | |
virtual void | renameMetaIdRefs (const std::string &oldid, const std::string &newid) |
Replaces all uses of a given meta identifier attribute value with another value. More... | |
virtual void | renameSIdRefs (const std::string &oldid, const std::string &newid) |
Replaces all uses of a given SIdRef type attribute value with another value. More... | |
virtual void | renameUnitSIdRefs (const std::string &oldid, const std::string &newid) |
Replaces all uses of a given UnitSIdRef type attribute value with another value. More... | |
virtual int | setCompartmentType (const std::string &compartmentType) |
Sets the value of the "compartmentType" attribute on this compartment. More... | |
int | setElementNamespace (const std::string &uri) |
Sets the XML namespace to which this object belongs. More... | |
virtual int | setIsType (bool isType) |
Sets the value of the "isType" attribute. More... | |
virtual int | unsetCompartmentType () |
Unsets the value of the "compartmentType" attribute. More... | |
virtual int | unsetIsType () |
Unsets the value of the "isType" attribute. More... | |
virtual | ~MultiCompartmentPlugin () |
Destructor for MultiCompartmentPlugin. More... | |
MultiCompartmentPlugin::MultiCompartmentPlugin | ( | const std::string & | uri, |
const std::string & | prefix, | ||
MultiPkgNamespaces * | multins | ||
) |
Creates a new MultiCompartmentPlugin object.
"http://www.sbml.org/sbml/level3/version1/core"
. Individual SBML Level 3 packages define their own XML namespaces; for example, all elements belonging to the SBML Level 3 Layout Version 1 package must be placed in the XML namespace "http://www.sbml.org/sbml/level3/version1/layout/version1/"
.uri | the URI of the SBML Level 3 package implemented by this libSBML package extension. |
prefix | the XML namespace prefix being used for the package. |
multins | the namespaces object for the package. |
MultiCompartmentPlugin::MultiCompartmentPlugin | ( | const MultiCompartmentPlugin & | orig | ) |
Copy constructor for MultiCompartmentPlugin.
orig | the MultiCompartmentPlugin instance to copy. |
|
virtual |
Destructor for MultiCompartmentPlugin.
int MultiCompartmentPlugin::addCompartmentReference | ( | const CompartmentReference * | compartmentReference | ) |
Adds a copy of the given CompartmentReference object to the ListOfCompartmentReferences.
compartmentReference | the CompartmentReference object to add. |
|
virtual |
Creates and returns a deep copy of this MultiCompartmentPlugin object.
Reimplemented from SBasePlugin.
CompartmentReference * MultiCompartmentPlugin::createCompartmentReference | ( | ) |
Creates a new CompartmentReference object and adds it to the ListOfCompartmentReferences.
|
virtual |
Returns a List of all child SBase objects, including those nested to an arbitary depth.
filter | a pointer to an ElementFilter, which causes the function to return only elements that match a particular set of constraints. If NULL (the default), the function will return all child objects. |
Reimplemented from SBasePlugin.
const CompartmentReference * MultiCompartmentPlugin::getCompartmentReference | ( | unsigned int | n | ) | const |
Returns the nth CompartmentReference object from the ListOfCompartmentReferences.
n | the index number of the CompartmentReference to get. |
NULL
if the index n
is out of range. CompartmentReference * MultiCompartmentPlugin::getCompartmentReference | ( | unsigned int | n | ) |
Returns the nth CompartmentReference object from the ListOfCompartmentReferences.
n | the index number of the CompartmentReference to get. |
NULL
if the index n
is out of range. const CompartmentReference * MultiCompartmentPlugin::getCompartmentReference | ( | const std::string & | sid | ) | const |
Returns the CompartmentReference with the given identifier sid
.
sid | the identifier of the CompartmentReference object to get from the ListOfCompartmentReferences. |
NULL
if no such CompartmentReference exists. CompartmentReference * MultiCompartmentPlugin::getCompartmentReference | ( | const std::string & | sid | ) |
Returns the CompartmentReference with the given identifier sid
.
sid | the identifier of the CompartmentReference object to get from the ListOfCompartmentReferences. |
NULL
if no such CompartmentReference exists.
|
virtual |
Returns the value of the "compartmentType" attribute of this compartment.
|
virtualinherited |
Return the first child object found with a given meta identifier.
This method searches all the subobjects under this one, compares their meta identifiers to metaid
, and returns the first one that machines.
metaid | string, the metaid of the object to find. |
metaid
. Reimplemented in QualModelPlugin, GroupsModelPlugin, CompModelPlugin, CompSBasePlugin, and CompSBMLDocumentPlugin.
|
virtualinherited |
Return the first child object found with a given identifier.
This method searches all the subobjects under this one, compares their identifiers to id
, and returns the first one that machines. It uses SBasePlugin::getAllElements(ElementFilter* filter) to get the list of identifiers, so the order in which identifiers are searched is the order in which they appear in the results returned by that method.
Normally, SId
type identifier values are unique across a model in SBML. However, in some circumstances they may not be, such as if a model is invalid because of multiple objects having the same identifier.
id | string representing the identifier of the object to find. |
id
. Reimplemented in QualModelPlugin, GroupsModelPlugin, CompModelPlugin, CompSBasePlugin, and CompSBMLDocumentPlugin.
|
inherited |
Returns the namespace URI of the package to which this plugin object belongs.
|
virtual |
Returns the value of the "isType" attribute.
|
inherited |
Returns the SBML Level of the package extension of this plugin object.
const ListOfCompartmentReferences * MultiCompartmentPlugin::getListOfCompartmentReferences | ( | ) | const |
Returns the ListOfCompartmentReferences object.
ListOfCompartmentReferences * MultiCompartmentPlugin::getListOfCompartmentReferences | ( | ) |
Returns the ListOfCompartmentReferences object.
unsigned int MultiCompartmentPlugin::getNumCompartmentReferences | ( | ) | const |
Returns the number of CompartmentReference objects in the ListOfCompartmentReferences.
|
inherited |
Returns the short-form name of the package to which this plugin object belongs.
|
inherited |
Returns the package version of the package extension of this plugin object.
|
inherited |
Returns the parent object to which this plugin object is connected.
|
inherited |
Returns the parent object to which this plugin object is connected.
|
inherited |
Returns the XML namespace prefix of the package to which this plugin object belongs.
|
inherited |
Returns the SBMLDocument object containing this object instance.
This method allows the caller to obtain the SBMLDocument for the current object.
|
inherited |
Returns the SBMLDocument object containing this object instance.
This method allows the caller to obtain the SBMLDocument for the current object.
|
inherited |
Returns the XML namespace URI for the package to which this object belongs.
"http://www.sbml.org/sbml/level3/version1/core"
. Individual SBML Level 3 packages define their own XML namespaces; for example, all elements belonging to the SBML Level 3 Layout Version 1 package must be placed in the XML namespace "http://www.sbml.org/sbml/level3/version1/layout/version1/"
.This method first looks into the SBMLNamespaces object possessed by the parent SBMLDocument object of the current object. If this cannot be found, this method returns the result of getElementNamespace().
|
inherited |
Returns the Version within the SBML Level of the package extension of this plugin object.
|
virtual |
Returns true
if this object has all the required elements.
true
if this object has all the elements required by the package specification; otherwise, false
will be returned.
|
virtual |
Returns true
if this compartment's "compartmentType" attribute has been set.
true
if the "compartmentType" attribute has been set; otherwise, false
is returned.
|
virtual |
Returns true
if this compartment's "isType" attribute has been set.
true
if the "isType" attribute has been set; otherwise, false
is returned.
|
virtualinherited |
MultiCompartmentPlugin & MultiCompartmentPlugin::operator= | ( | const MultiCompartmentPlugin & | rhs | ) |
Assignment operator for MultiCompartmentPlugin.
rhs | the object whose values are used as the basis of the assignment |
CompartmentReference * MultiCompartmentPlugin::removeCompartmentReference | ( | unsigned int | n | ) |
Removes the nth CompartmentReference object from the ListOfCompartmentReferences.
n | the index of the CompartmentReference to remove. |
NULL
if the given index n
is out of range. Note that the caller owns the returned object and is responsible for deleting it. CompartmentReference * MultiCompartmentPlugin::removeCompartmentReference | ( | const std::string & | sid | ) |
Removes the CompartmentReference object with the given identifier from the ListOfCompartmentReferences.
sid | the id of the CompartmentReference to remove. |
NULL
if no such CompartmentReference exists. Note that the caller owns the returned object and is responsible for deleting it.
|
virtualinherited |
Replaces all uses of a given meta identifier attribute value with another value.
ID
; the SBML object attribute itself is typically named metaid
. All attributes that hold values referring to values of type ID
are of the XML data type IDREF
. They are also sometimes informally referred to as "metaid refs", in analogy to the SBML-defined type SIdRef
.This method works by looking at all meta-identifier attribute values, comparing the identifiers to the value of oldid
. If any matches are found, the matching identifiers are replaced with newid
. The method does not descend into child elements.
oldid | the old identifier. |
newid | the new identifier. |
|
virtualinherited |
Replaces all uses of a given SIdRef
type attribute value with another value.
In SBML, object identifiers are of a data type called SId
. In SBML Level 3, an explicit data type called SIdRef
was introduced for attribute values that refer to SId
values; in previous Levels of SBML, this data type did not exist and attributes were simply described to as "referring to an identifier", but the effective data type was the same as SIdRef
in Level 3. These and other methods of libSBML refer to the type SIdRef
for all Levels of SBML, even if the corresponding SBML specification did not explicitly name the data type.
This method works by looking at all attributes and (if appropriate) mathematical formulas in MathML content, comparing the referenced identifiers to the value of oldid
. If any matches are found, the matching values are replaced with newid
. The method does not descend into child elements.
oldid | the old identifier. |
newid | the new identifier. |
Reimplemented in FbcReactionPlugin.
|
virtualinherited |
Replaces all uses of a given UnitSIdRef
type attribute value with another value.
UnitSId
. In SBML Level 3, an explicit data type called UnitSIdRef
was introduced for attribute values that refer to UnitSId
values; in previous Levels of SBML, this data type did not exist and attributes were simply described to as "referring to a unit identifier", but the effective data type was the same as UnitSIdRef
in Level 3. These and other methods of libSBML refer to the type UnitSIdRef
for all Levels of SBML, even if the corresponding SBML specification did not explicitly name the data type.This method works by looking at all unit identifier attribute values (including, if appropriate, inside mathematical formulas), comparing the referenced unit identifiers to the value of oldid
. If any matches are found, the matching values are replaced with newid
. The method does not descend into child elements.
oldid | the old identifier. |
newid | the new identifier. |
|
virtual |
Sets the value of the "compartmentType" attribute on this compartment.
compartmentType | the new value for the attribute. |
|
inherited |
Sets the XML namespace to which this object belongs.
"http://www.sbml.org/sbml/level3/version1/core"
. Individual SBML Level 3 packages define their own XML namespaces; for example, all elements belonging to the SBML Level 3 Layout Version 1 package must be placed in the XML namespace "http://www.sbml.org/sbml/level3/version1/layout/version1/"
.uri | the URI to assign to this object. |
|
virtual |
Sets the value of the "isType" attribute.
isType | the new value of the attribute. |
|
virtual |
Unsets the value of the "compartmentType" attribute.
|
virtual |
Unsets the value of the "isType" attribute.