libSBML C++ API
libSBML 5.12.0 C++ API
|
{comp}
comp Convenience class.The Replacing class does not exist officialy in the the Hierarchical Model Composition package (“comp”), but is implemented here as a convenience subclass of the ReplacedElement and ReplacedBy classes, since both of those classes define a 'submodelRef' attribute.
The required attribute "submodelRef" takes a value of type SIdRef, which must be the identifier of a Submodel object in the containing model. The model referenced by the Submodel object establishes the object namespaces for the "portRef", "idRef", "unitRef" and "metaIdRef" attributes: only objects within the Model object may be referenced by those attributes.
Public Member Functions | |
virtual void | clearReferencedElement () |
Removes the saved referenced element, if it had been saved earlier. More... | |
virtual SBaseRef * | clone () const |
Creates and returns a deep copy of this SBaseRef object. More... | |
SBaseRef * | createSBaseRef () |
Creates a new, empty SBaseRef, adds it to this SBaseRef and returns the created SBaseRef. More... | |
virtual List * | getAllElements (ElementFilter *filter=NULL) |
Returns a List of all child SBase* objects, including those nested to an arbitrary depth. More... | |
virtual SBase * | getElementByMetaId (const std::string &metaid) |
Returns the first child element it can find with the given metaid , or itself if it has the given metaid , or NULL if no such object is found. More... | |
virtual SBase * | getElementBySId (const std::string &id) |
Returns the first child element found that has the given id in the model-wide SId namespace, or NULL if no such object is found. More... | |
virtual const std::string & | getElementName () const |
Returns the XML element name of this SBML object. More... | |
virtual const std::string & | getIdRef () const |
Returns the value of the "idRef" attribute of this SBaseRef. More... | |
virtual const std::string & | getMetaIdRef () const |
Returns the value of the "metaIdRef" attribute of this SBaseRef. More... | |
virtual int | getNumReferents () const |
Returns how many elements are being referred to by this SBaseRef. More... | |
virtual const std::string & | getPortRef () const |
Returns the value of the "portRef" attribute of this SBaseRef. More... | |
virtual SBase * | getReferencedElement () |
Returns the object pointed to by this element. More... | |
virtual SBase * | getReferencedElementFrom (Model *model) |
Examines the referenced Model for the referenced object, and returns it, if found. More... | |
const SBaseRef * | getSBaseRef () const |
Get the child sBaseRef of this sBaseRef. More... | |
SBaseRef * | getSBaseRef () |
Get the child sBaseRef of this SBaseRef. More... | |
virtual const std::string & | getSubmodelRef () const |
Returns the value of the "submodelRef" attribute of this SBaseRef. More... | |
virtual int | getTypeCode () const |
Returns the libSBML type code of this object instance. More... | |
virtual const std::string & | getUnitRef () const |
Returns the value of the "unitRef" attribute of this SBaseRef. More... | |
virtual bool | hasRequiredAttributes () const |
Returns true if getNumReferents() is exactly 1 and if the submodelRef is set. More... | |
virtual bool | isSetIdRef () const |
Predicate returning true or false depending on whether this SBaseRef's "idRef" attribute has been set. More... | |
virtual bool | isSetMetaIdRef () const |
Predicate returning true or false depending on whether this SBaseRef's "metaIdRef" attribute has been set. More... | |
virtual bool | isSetPortRef () const |
Predicate returning true or false depending on whether this SBaseRef's "portRef" attribute has been set. More... | |
bool | isSetSBaseRef () const |
Predicate for testing whether the sBaseRef for this SBaseRef is set. More... | |
virtual bool | isSetSubmodelRef () const |
Predicate returning true or false depending on whether this SBaseRef's "submodelRef" attribute has been set. More... | |
virtual bool | isSetUnitRef () const |
Predicate returning true or false depending on whether this SBaseRef's "unitRef" attribute has been set. More... | |
Replacing & | operator= (const Replacing &source) |
Assignment operator. More... | |
virtual int | performDeletion () |
DEPRECATED FUNCTION: DO NOT USE. More... | |
virtual int | performReplacement () |
DEPRECATED FUNCTION: DO NOT USE. More... | |
virtual int | removeFromParentAndDelete () |
Finds this SBaseRef's parent, which can either be a List or can be another SBaseRef, and tells it to remove this. More... | |
virtual void | renameSIdRefs (const std::string &oldid, const std::string &newid) |
Replacing (unsigned int level=CompExtension::getDefaultLevel(), unsigned int version=CompExtension::getDefaultVersion(), unsigned int pkgVersion=CompExtension::getDefaultPackageVersion()) | |
Creates a new Replacing with the given level, version, and package version. More... | |
Replacing (CompPkgNamespaces *compns) | |
Creates a new Replacing with the given CompPkgNamespaces object. More... | |
Replacing (const Replacing &source) | |
Copy constructor. More... | |
virtual int | saveReferencedElement () |
Finds and stores the referenced object. More... | |
virtual int | setIdRef (const std::string &id) |
Sets the value of the "idRef" attribute of this SBaseRef. More... | |
virtual int | setMetaIdRef (const std::string &id) |
Sets the value of the "metaIdRef" attribute of this SBaseRef. More... | |
virtual int | setPortRef (const std::string &id) |
Sets the value of the "portRef" attribute of this SBaseRef. More... | |
int | setSBaseRef (const SBaseRef *sBaseRef) |
Sets the sBaseRef definition of this SBaseRef to a copy of the given SBaseRef object instance. More... | |
virtual int | setSubmodelRef (const std::string &id) |
Sets the value of the "submodelRef" attribute of this SBaseRef. More... | |
virtual int | setUnitRef (const std::string &id) |
Sets the value of the "unitRef" attribute of this SBaseRef. More... | |
virtual int | unsetIdRef () |
Unsets the value of the "idRef" attribute of this SBaseRef. More... | |
virtual int | unsetMetaIdRef () |
Unsets the value of the "metaIdRef" attribute of this SBaseRef. More... | |
virtual int | unsetPortRef () |
Unsets the value of the "portRef" attribute of this SBaseRef. More... | |
virtual int | unsetSBaseRef () |
Unsets the child SBaseRef of this SBaseRef. More... | |
virtual int | unsetSubmodelRef () |
Unsets the value of the "SubmodelRef" attribute of this SBaseRef. More... | |
virtual int | unsetUnitRef () |
Unsets the value of the "unitRef" attribute of this SBaseRef. More... | |
virtual | ~Replacing () |
Destructor. More... | |
Protected Member Functions | |
virtual int | performReplacementAndCollect (std::set< SBase * > *removed, std::set< SBase * > *toremove)=0 |
An internal flattening routine, necessarily overridden by any subclass, to rename the necessary elements, perform any conversions, and add the now-redundant element to the 'toremove' list. More... | |
Replacing::Replacing | ( | unsigned int | level = CompExtension::getDefaultLevel() , |
unsigned int | version = CompExtension::getDefaultVersion() , |
||
unsigned int | pkgVersion = CompExtension::getDefaultPackageVersion() |
||
) |
Creates a new Replacing with the given level, version, and package version.
level | the SBML Level |
version | the Version within the SBML Level |
pkgVersion | the version of the package |
Replacing::Replacing | ( | CompPkgNamespaces * | compns | ) |
Creates a new Replacing with the given CompPkgNamespaces object.
compns | the namespace to use |
Replacing::Replacing | ( | const Replacing & | source | ) |
Copy constructor.
|
virtual |
Destructor.
|
virtualinherited |
Removes the saved referenced element, if it had been saved earlier.
|
virtualinherited |
Creates and returns a deep copy of this SBaseRef object.
Reimplemented in ReplacedElement, Deletion, Port, and ReplacedBy.
|
inherited |
|
virtualinherited |
Returns a List of all child SBase* objects, including those nested to an arbitrary depth.
|
virtualinherited |
Returns the first child element it can find with the given metaid
, or itself if it has the given metaid
, or NULL
if no such object is found.
metaid | string representing the metaid of objects to find |
metaid
.
|
virtualinherited |
Returns the first child element found that has the given id
in the model-wide SId namespace, or NULL
if no such object is found.
id | string representing the id of objects to find |
id
.
|
virtualinherited |
Returns the XML element name of this SBML object.
Reimplemented in ReplacedElement, Deletion, Port, and ReplacedBy.
|
virtualinherited |
|
virtualinherited |
|
virtualinherited |
Returns how many elements are being referred to by this SBaseRef.
A valid SBaseRef will have exactly one. Possible referents are portRef, idRef, unitRef, and metaIdRef.
Reimplemented in ReplacedElement.
|
virtualinherited |
|
virtualinherited |
Returns the object pointed to by this element.
If that element was previously found and set with 'saveReferencedElement', that element is returned; otherwise, 'saveReferencedElement' is called first, and the found element is returned.
Examines the referenced Model for the referenced object, and returns it, if found.
Reimplemented in ReplacedElement.
|
inherited |
|
inherited |
|
virtual |
|
virtualinherited |
Returns the libSBML type code of this object instance.
SBML_
. The set of possible type codes for core elements is defined in the enumeration SBMLTypeCode_t, and in addition, libSBML plug-ins for SBML Level 3 packages define their own extra enumerations of type codes (e.g., SBMLLayoutTypeCode_t for the Level 3 Layout package). Note that different Level 3 package plug-ins may use overlapping type codes; to identify the package to which a given object belongs, call the getPackageName()
method on the object.Reimplemented in ReplacedElement, Deletion, Port, and ReplacedBy.
|
virtualinherited |
|
virtual |
Returns true if getNumReferents() is exactly 1 and if the submodelRef is set.
Reimplemented from SBaseRef.
|
virtualinherited |
|
virtualinherited |
|
virtualinherited |
|
inherited |
|
virtual |
|
virtualinherited |
|
virtualinherited |
DEPRECATED FUNCTION: DO NOT USE.
Deletes the referenced object, plus any other elements that element points to through ReplacedElement or ReplacedBy children. Instead of calling this function directly, use 'CompModelPlugin::instantiateSubmodels' instead, which deals with all the intricacies of replacements and deletions, and gives you access to the non-flattened hierarchical form of the model.
|
virtual |
DEPRECATED FUNCTION: DO NOT USE.
To retain old functionality, this function calls performReplacementAndCollect, and then actually removes the now-redundant element. However, this can lead to doubly-deleted elements, as well as the incorrect interpretation of some models. The replacement function performReplacementAndCollect has been marked protected, in the hopes that people will instead simply use CompModelPlugin::instantiateSubmodels, which hides all the complexity while still allowing access to a non-flattened version of a hierarchical model.
|
protectedpure virtual |
An internal flattening routine, necessarily overridden by any subclass, to rename the necessary elements, perform any conversions, and add the now-redundant element to the 'toremove' list.
Implemented in ReplacedElement, and ReplacedBy.
|
virtualinherited |
Finds this SBaseRef's parent, which can either be a List or can be another SBaseRef, and tells it to remove this.
Reimplemented in ReplacedBy.
|
virtual |
Reimplemented from SBaseRef.
Reimplemented in ReplacedElement.
|
virtual |
|
virtualinherited |
Sets the value of the "idRef" attribute of this SBaseRef.
This method fails if the id is not a valid syntax for an SIdRef (LIBSBML_INVALID_ATTRIBUTE_VALUEendif
|
virtualinherited |
Sets the value of the "metaIdRef" attribute of this SBaseRef.
This method fails if the id is not a valid syntax for an IDREF (LIBSBML_INVALID_ATTRIBUTE_VALUEendif
|
virtualinherited |
Sets the value of the "portRef" attribute of this SBaseRef.
Fails if the id is not a valid syntax for a PortSIdRef (LIBSBML_INVALID_ATTRIBUTE_VALUEendif
Reimplemented in Port.
|
inherited |
|
virtual |
Sets the value of the "submodelRef" attribute of this SBaseRef.
Fails if the id is not a valid syntax for an SIdRef.
|
virtualinherited |
Sets the value of the "unitRef" attribute of this SBaseRef.
This method fails if the id is not a valid syntax for a UnitSIdRef (LIBSBML_INVALID_ATTRIBUTE_VALUEendif
|
virtualinherited |
Unsets the value of the "idRef" attribute of this SBaseRef.
|
virtualinherited |
Unsets the value of the "metaIdRef" attribute of this SBaseRef.
|
virtualinherited |
Unsets the value of the "portRef" attribute of this SBaseRef.
|
virtualinherited |
|
virtual |
Unsets the value of the "SubmodelRef" attribute of this SBaseRef.
|
virtualinherited |
Unsets the value of the "unitRef" attribute of this SBaseRef.