libSBML C# API  libSBML 5.10.0 C# API
 All Classes Namespaces Files Functions Variables Properties Pages
libsbmlcs.FbcModelPlugin Class Reference
Inheritance diagram for libsbmlcs.FbcModelPlugin:
[legend]

Detailed Description

{fbc}

fbc Implementation of the 'fbc' package extention to the Model construct.

Public Member Functions

int addFluxBound (FluxBound bound)
 Adds a copy of the given FluxBound object to the list of FluxBounds. More...
 
int addGeneAssociation (GeneAssociation association)
 Adds a copy of the given GeneAssociation object to the list of GeneAssociations. More...
 
int addObjective (Objective bound)
 Adds a copy of the given Objective object to the list of Objectives. More...
 
int appendFrom (Model model)
 
SBasePlugin clone ()
 Creates and returns a deep copy of this FbcModelPlugin object. More...
 
void connectToChild ()
 Sets the *parent* of this SBML object to child SBML objects (if any). More...
 
void connectToParent (SBase sbase)
 Sets the parent SBML object of this plugin object to this object and child elements (if any). More...
 
FluxBound createFluxBound ()
 Creates a new FluxBound object and adds it to the list of FluxBound objects and returns it. More...
 
GeneAssociation createGeneAssociation ()
 Creates a new GeneAssociation object and adds it to the list of GeneAssociation objects and returns it. More...
 
SBase createObject (XMLInputStream stream)
 Subclasses must override this method to create, store, and then return an SBML object corresponding to the next XMLToken in the XMLInputStream if they have their specific elements. More...
 
Objective createObjective ()
 Creates a new Objective object and adds it to the list of Objective objects and returns it. More...
 
override void Dispose ()
 
void divideAssignmentsToSIdByFunction (string id, ASTNode function)
 If the function of this object is to assign a value has a child 'math' object (or anything with ASTNodes in general), replace the 'math' object with the function (existing/function). More...
 
void enablePackageInternal (string pkgURI, string pkgPrefix, bool flag)
 Enables/Disables the given package with child elements in this plugin object (if any). More...
 
 FbcModelPlugin (string uri, string prefix, FbcPkgNamespaces fbcns)
 Constructor. More...
 
 FbcModelPlugin (FbcModelPlugin orig)
 Copy constructor. More...
 
Objective getActiveObjective ()
 Returns the current active objective. More...
 
string getActiveObjectiveId ()
 returns the id of the current active objective. More...
 
long getColumn ()
 Returns the column number on which this object first appears in the XML representation of the SBML document. More...
 
SBase getElementByMetaId (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...
 
SBase getElementBySId (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...
 
string getElementNamespace ()
 Returns the XML namespace (URI) of the package extension of this plugin object. More...
 
FluxBound getFluxBound (long n)
 Returns the FluxBound object that belongs to the given index. More...
 
FluxBound getFluxBound (string sid)
 Returns the FluxBound object based on its identifier. More...
 
ListOfFluxBounds getFluxBoundsForReaction (string reaction)
 
GeneAssociation getGeneAssociation (long n)
 Returns the GeneAssociation object that belongs to the given index. More...
 
GeneAssociation getGeneAssociation (string sid)
 Returns the GeneAssociation object based on its identifier. More...
 
long getLevel ()
 Returns the SBML level of the package extension of this plugin object. More...
 
long getLine ()
 Returns the line number on which this object first appears in the XML representation of the SBML document. More...
 
SBaseList getListOfAllElements (ElementFilter filter)
 
SBaseList getListOfAllElements ()
 
ListOfFluxBounds getListOfFluxBounds ()
 Returns the ListOfFluxBounds in this plugin object. More...
 
ListOfGeneAssociations getListOfGeneAssociations ()
 Returns the ListOfObjectives in this plugin object. More...
 
ListOfObjectives getListOfObjectives ()
 Returns the ListOfObjectives in this plugin object. More...
 
long getNumFluxBounds ()
 Returns the number of FluxBound object in this plugin object. More...
 
int getNumGeneAssociations ()
 Returns the number of GeneAssociation object in this plugin object. More...
 
long getNumObjectives ()
 Returns the number of Objective object in this plugin object. More...
 
Objective getObjective (long n)
 Returns the Objective object that belongs to the given index. More...
 
Objective getObjective (string sid)
 Returns the Objective object based on its identifier. More...
 
string getPackageName ()
 Returns the package name of this plugin object. More...
 
long getPackageVersion ()
 Returns the package version of the package extension of this plugin object. More...
 
SBase getParentSBMLObject ()
 Returns the parent SBase object to which this plugin object connected. More...
 
string getPrefix ()
 Returns the prefix of the package extension of this plugin object. More...
 
SBMLDocument getSBMLDocument ()
 Returns the parent SBMLDocument of this plugin object. More...
 
SBMLNamespaces getSBMLNamespaces ()
 
string getURI ()
 Gets the URI to which this element belongs to. More...
 
long getVersion ()
 Returns the SBML version of the package extension of this plugin object. More...
 
bool hasIdentifierBeginningWith (string prefix)
 Check to see if the given prefix is used by any of the IDs defined by extension elements. More...
 
bool hasRequiredElements ()
 Checks if this plugin object has all the required elements. More...
 
void logUnknownElement (string element, long sbmlLevel, long sbmlVersion, long pkgVersion)
 Helper to log a common type of error for elements. More...
 
void multiplyAssignmentsToSIdByFunction (string id, ASTNode function)
 If this assignment assigns a value to the 'id' element, replace the 'math' object with the function (existing*function). More...
 
int prependStringToAllIdentifiers (string prefix)
 Add the given string to all identifiers in the object. More...
 
bool readOtherXML (SBase parentObject, XMLInputStream stream)
 Parses Gene Annotation Extension. More...
 
FluxBound removeFluxBound (long n)
 Removes the nth FluxBound object from this plugin object and returns a pointer to it. More...
 
FluxBound removeFluxBound (string sid)
 Removes the FluxBound object with the given sid attribute from this plugin object and returns a pointer to it. More...
 
GeneAssociation removeGeneAssociation (long n)
 Removes the nth GeneAssociation object from this plugin object and returns a pointer to it. More...
 
GeneAssociation removeGeneAssociation (string sid)
 Removes the GeneAssociation object with the given sid attribute from this plugin object and returns a pointer to it. More...
 
Objective removeObjective (long n)
 Removes the nth Objective object from this plugin object and returns a pointer to it. More...
 
Objective removeObjective (string sid)
 Removes the Objective object with the given sid attribute from this plugin object and returns a pointer to it. More...
 
void replaceSIDWithFunction (string id, ASTNode function)
 If this object has a child 'math' object (or anything with ASTNodes in general), replace all nodes with the name 'id' with the provided function. More...
 
int setActiveObjectiveId (string objectiveId)
 Sets the id of the active objective. More...
 
int setElementNamespace (string uri)
 Sets the XML namespace to which this element belongs to. More...
 
bool stripPackage (string pkgPrefix, bool flag)
 
int transformIdentifiers (IdentifierTransformer sidTransformer)
 
void unsetActiveObjectiveId ()
 Unsets the active objective. More...
 
void writeAttributes (XMLOutputStream stream)
 This function is a bit tricky. More...
 

Protected Attributes

bool swigCMemOwn
 

Constructor & Destructor Documentation

libsbmlcs.FbcModelPlugin.FbcModelPlugin ( string  uri,
string  prefix,
FbcPkgNamespaces  fbcns 
)

Constructor.

libsbmlcs.FbcModelPlugin.FbcModelPlugin ( FbcModelPlugin  orig)

Copy constructor.

Creates a copy of this FbcModelPlugin object.

Member Function Documentation

int libsbmlcs.FbcModelPlugin.addFluxBound ( FluxBound  bound)

Adds a copy of the given FluxBound object to the list of FluxBounds.

Parameters
boundthe FluxBound object to be added to the list of FluxBounds.
Returns
integer value indicating success/failure of the operation. The possible return values are:
int libsbmlcs.FbcModelPlugin.addGeneAssociation ( GeneAssociation  association)

Adds a copy of the given GeneAssociation object to the list of GeneAssociations.

Parameters
associationthe GeneAssociation object to be added to the list of GeneAssociations.
Returns
integer value indicating success/failure of the operation. The possible return values are:
int libsbmlcs.FbcModelPlugin.addObjective ( Objective  bound)

Adds a copy of the given Objective object to the list of Objectives.

Parameters
boundthe Objective object to be added to the list of Objectives.
Returns
integer value indicating success/failure of the operation. The possible return values are:
int libsbmlcs.FbcModelPlugin.appendFrom ( Model  model)
SBasePlugin libsbmlcs.FbcModelPlugin.clone ( )

Creates and returns a deep copy of this FbcModelPlugin object.

Returns
a (deep) copy of this FbcModelPlugin object
void libsbmlcs.FbcModelPlugin.connectToChild ( )

Sets the *parent* of this SBML object to child SBML objects (if any).

(Creates a child-parent relationship by the parent)

See also
setSBMLDocument
enablePackageInternal
void libsbmlcs.FbcModelPlugin.connectToParent ( SBase  sbase)

Sets the parent SBML object of this plugin object to this object and child elements (if any).

(Creates a child-parent relationship by this plugin object)

This function is called when this object is created by the parent element. Subclasses must override this this function if they have one or more child elements.Also, SBasePlugin::connectToParent() must be called in the overridden function.

Parameters
sbasethe SBase object to use
See also
setSBMLDocument
enablePackageInternal
FluxBound libsbmlcs.FbcModelPlugin.createFluxBound ( )

Creates a new FluxBound object and adds it to the list of FluxBound objects and returns it.

Returns
a newly created FluxBound object
GeneAssociation libsbmlcs.FbcModelPlugin.createGeneAssociation ( )

Creates a new GeneAssociation object and adds it to the list of GeneAssociation objects and returns it.

Returns
a newly created GeneAssociation object
SBase libsbmlcs.FbcModelPlugin.createObject ( XMLInputStream  stream)

Subclasses must override this method to create, store, and then return an SBML object corresponding to the next XMLToken in the XMLInputStream if they have their specific elements.

Returns
the SBML object corresponding to next XMLToken in the XMLInputStream or null if the token was not recognized.
Objective libsbmlcs.FbcModelPlugin.createObjective ( )

Creates a new Objective object and adds it to the list of Objective objects and returns it.

Returns
a newly created Objective object
override void libsbmlcs.FbcModelPlugin.Dispose ( )
virtual

Reimplemented from libsbmlcs.SBasePlugin.

void libsbmlcs.SBasePlugin.divideAssignmentsToSIdByFunction ( string  id,
ASTNode  function 
)
inherited

If the function of this object is to assign a value has a child 'math' object (or anything with ASTNodes in general), replace the 'math' object with the function (existing/function).

Note
This function does nothing itself–subclasses with ASTNode subelements must override this function.
void libsbmlcs.FbcModelPlugin.enablePackageInternal ( string  pkgURI,
string  pkgPrefix,
bool  flag 
)

Enables/Disables the given package with child elements in this plugin object (if any).

(This is an internal implementation invoked from SBase::enablePackageInternal() function)

Note
Subclasses in which one or more SBase derived elements are defined must override this function.
See also
setSBMLDocument
connectToParent
Objective libsbmlcs.FbcModelPlugin.getActiveObjective ( )

Returns the current active objective.

string libsbmlcs.FbcModelPlugin.getActiveObjectiveId ( )

returns the id of the current active objective.

long libsbmlcs.SBasePlugin.getColumn ( )
inherited

Returns the column number on which this object first appears in the XML representation of the SBML document.

Returns
the column number of the underlying SBML object.
Note
The column number for each construct in an SBML model is set upon reading the model. The accuracy of the column number depends on the correctness of the XML representation of the model, and on the particular XML parser library being used. The former limitation relates to the following problem: if the model is actually invalid XML, then the parser may not be able to interpret the data correctly and consequently may not be able to establish the real column number. The latter limitation is simply that different parsers seem to have their own accuracy limitations, and out of all the parsers supported by libSBML, none have been 100% accurate in all situations. (At this time, libSBML supports the use of libxml2, Expat and Xerces.)
See also
getLine()
SBase libsbmlcs.FbcModelPlugin.getElementByMetaId ( 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.

Parameters
metaidstring representing the metaid of objects to find
Returns
a pointer to the SBase element with the given metaid.
SBase libsbmlcs.FbcModelPlugin.getElementBySId ( 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.

Parameters
idstring representing the id of objects to find
Returns
a pointer to the SBase element with the given id.
string libsbmlcs.SBasePlugin.getElementNamespace ( )
inherited

Returns the XML namespace (URI) of the package extension of this plugin object.

Returns
the URI of the package extension of this plugin object.
FluxBound libsbmlcs.FbcModelPlugin.getFluxBound ( long  n)

Returns the FluxBound object that belongs to the given index.

If the index is invalid, null is returned.

Parameters
nthe index number of the FluxBound to get.
Returns
the nth FluxBound in the ListOfFluxBounds.
FluxBound libsbmlcs.FbcModelPlugin.getFluxBound ( string  sid)

Returns the FluxBound object based on its identifier.

Parameters
sida string representing the identifier of the FluxBound to get.
Returns
FluxBound in the ListOfFluxBounds with the given sid or null if no such FluxBound exists.
See also
getFluxBound(long n)
getListOfFluxBounds()
ListOfFluxBounds libsbmlcs.FbcModelPlugin.getFluxBoundsForReaction ( string  reaction)
GeneAssociation libsbmlcs.FbcModelPlugin.getGeneAssociation ( long  n)

Returns the GeneAssociation object that belongs to the given index.

If the index is invalid, null is returned.

Parameters
nthe index number of the GeneAssociation to get.
Returns
the nth GeneAssociation in the ListOfGeneAssociations.
GeneAssociation libsbmlcs.FbcModelPlugin.getGeneAssociation ( string  sid)

Returns the GeneAssociation object based on its identifier.

Parameters
sida string representing the identifier of the GeneAssociation to get.
Returns
GeneAssociation in the ListOfGeneAssociations with the given sid or null if no such GeneAssociation exists.
See also
getGeneAssociation(long n)
getListOfGeneAssociations()
long libsbmlcs.SBasePlugin.getLevel ( )
inherited

Returns the SBML level of the package extension of this plugin object.

Returns
the SBML level of the package extension of this plugin object.
long libsbmlcs.SBasePlugin.getLine ( )
inherited

Returns the line number on which this object first appears in the XML representation of the SBML document.

Returns
the line number of the underlying SBML object.
Note
The line number for each construct in an SBML model is set upon reading the model. The accuracy of the line number depends on the correctness of the XML representation of the model, and on the particular XML parser library being used. The former limitation relates to the following problem: if the model is actually invalid XML, then the parser may not be able to interpret the data correctly and consequently may not be able to establish the real line number. The latter limitation is simply that different parsers seem to have their own accuracy limitations, and out of all the parsers supported by libSBML, none have been 100% accurate in all situations. (At this time, libSBML supports the use of libxml2, Expat and Xerces.)
See also
getColumn()
SBaseList libsbmlcs.SBasePlugin.getListOfAllElements ( ElementFilter  filter)
inherited
SBaseList libsbmlcs.SBasePlugin.getListOfAllElements ( )
inherited
ListOfFluxBounds libsbmlcs.FbcModelPlugin.getListOfFluxBounds ( )

Returns the ListOfFluxBounds in this plugin object.

Returns
ListOfFluxBounds object in this plugin object.
ListOfGeneAssociations libsbmlcs.FbcModelPlugin.getListOfGeneAssociations ( )

Returns the ListOfObjectives in this plugin object.

Returns
ListOfObjectives object in this plugin object.
ListOfObjectives libsbmlcs.FbcModelPlugin.getListOfObjectives ( )

Returns the ListOfObjectives in this plugin object.

Returns
ListOfObjectives object in this plugin object.
long libsbmlcs.FbcModelPlugin.getNumFluxBounds ( )

Returns the number of FluxBound object in this plugin object.

Returns
the number of FluxBound object in this plugin object.
int libsbmlcs.FbcModelPlugin.getNumGeneAssociations ( )

Returns the number of GeneAssociation object in this plugin object.

Returns
the number of GeneAssociation object in this plugin object.
long libsbmlcs.FbcModelPlugin.getNumObjectives ( )

Returns the number of Objective object in this plugin object.

Returns
the number of Objective object in this plugin object.
Objective libsbmlcs.FbcModelPlugin.getObjective ( long  n)

Returns the Objective object that belongs to the given index.

If the index is invalid, null is returned.

Parameters
nthe index number of the Objective to get.
Returns
the nth Objective in the ListOfObjectives.
Objective libsbmlcs.FbcModelPlugin.getObjective ( string  sid)

Returns the Objective object based on its identifier.

Parameters
sida string representing the identifier of the Objective to get.
Returns
Objective in the ListOfObjectives with the given id or null if no such Objective exists.
See also
getObjective(long n)
getListOfObjectives()
string libsbmlcs.SBasePlugin.getPackageName ( )
inherited

Returns the package name of this plugin object.

Returns
the package name of this plugin object.
long libsbmlcs.SBasePlugin.getPackageVersion ( )
inherited

Returns the package version of the package extension of this plugin object.

Returns
the package version of the package extension of this plugin object.
SBase libsbmlcs.SBasePlugin.getParentSBMLObject ( )
inherited

Returns the parent SBase object to which this plugin object connected.

Returns
the parent SBase object to which this plugin object connected.
string libsbmlcs.SBasePlugin.getPrefix ( )
inherited

Returns the prefix of the package extension of this plugin object.

Returns
the prefix of the package extension of this plugin object.
SBMLDocument libsbmlcs.SBasePlugin.getSBMLDocument ( )
inherited

Returns the parent SBMLDocument of this plugin object.

Returns
the parent SBMLDocument object of this plugin object.
SBMLNamespaces libsbmlcs.SBasePlugin.getSBMLNamespaces ( )
inherited
string libsbmlcs.SBasePlugin.getURI ( )
inherited

Gets the URI to which this element belongs to.

For example, all elements that belong to SBML Level 3 Version 1 Core must would have the URI 'http://www.sbml.org/sbml/level3/version1/core'; all elements that belong to Layout Extension Version 1 for SBML Level 3 Version 1 Core must would have the URI 'http://www.sbml.org/sbml/level3/version1/layout/version1/'

Unlike getElementNamespace, this function first returns the URI for this element by looking into the SBMLNamespaces object of the document with the its package name. if not found it will return the result of getElementNamespace

Returns
the URI this elements
See also
getPackageName()
getElementNamespace()
SBMLDocument::getSBMLNamespaces()
getSBMLDocument()
long libsbmlcs.SBasePlugin.getVersion ( )
inherited

Returns the SBML version of the package extension of this plugin object.

Returns
the SBML version of the package extension of this plugin object.
bool libsbmlcs.SBasePlugin.hasIdentifierBeginningWith ( string  prefix)
inherited

Check to see if the given prefix is used by any of the IDs defined by extension elements.

A package that defines its own 'id' attribute for a core element would check that attribute here.

bool libsbmlcs.FbcModelPlugin.hasRequiredElements ( )

Checks if this plugin object has all the required elements.

Subclasses should override this function if they have their specific elements.

Returns
true if this plugin object has all the required elements, otherwise false will be returned.
void libsbmlcs.SBasePlugin.logUnknownElement ( string  element,
long  sbmlLevel,
long  sbmlVersion,
long  pkgVersion 
)
inherited

Helper to log a common type of error for elements.

void libsbmlcs.SBasePlugin.multiplyAssignmentsToSIdByFunction ( string  id,
ASTNode  function 
)
inherited

If this assignment assigns a value to the 'id' element, replace the 'math' object with the function (existing*function).

int libsbmlcs.SBasePlugin.prependStringToAllIdentifiers ( string  prefix)
inherited

Add the given string to all identifiers in the object.

If the string is added to anything other than an id or a metaid, this code is responsible for tracking down and renaming all *idRefs in the package extention that identifier comes from.

bool libsbmlcs.FbcModelPlugin.readOtherXML ( SBase  parentObject,
XMLInputStream  stream 
)

Parses Gene Annotation Extension.

FluxBound libsbmlcs.FbcModelPlugin.removeFluxBound ( long  n)

Removes the nth FluxBound object from this plugin object and returns a pointer to it.

The caller owns the returned object and is responsible for deleting it.

Parameters
nthe index of the FluxBound object to remove
Returns
the FluxBound object removed. As mentioned above, the caller owns the returned object. null is returned if the given index is out of range.
FluxBound libsbmlcs.FbcModelPlugin.removeFluxBound ( string  sid)

Removes the FluxBound object with the given sid attribute from this plugin object and returns a pointer to it.

The caller owns the returned object and is responsible for deleting it.

Parameters
sidthe id attribute of the FluxBound object to remove
Returns
the FluxBound object removed. As mentioned above, the caller owns the returned object. null is returned if the given index is out of range.
GeneAssociation libsbmlcs.FbcModelPlugin.removeGeneAssociation ( long  n)

Removes the nth GeneAssociation object from this plugin object and returns a pointer to it.

The caller owns the returned object and is responsible for deleting it.

Parameters
nthe index of the GeneAssociation object to remove
Returns
the GeneAssociation object removed. As mentioned above, the caller owns the returned object. null is returned if the given index is out of range.
GeneAssociation libsbmlcs.FbcModelPlugin.removeGeneAssociation ( string  sid)

Removes the GeneAssociation object with the given sid attribute from this plugin object and returns a pointer to it.

The caller owns the returned object and is responsible for deleting it.

Parameters
sidthe id attribute of the GeneAssociation object to remove
Returns
the GeneAssociation object removed. As mentioned above, the caller owns the returned object. null is returned if the given index is out of range.
Objective libsbmlcs.FbcModelPlugin.removeObjective ( long  n)

Removes the nth Objective object from this plugin object and returns a pointer to it.

The caller owns the returned object and is responsible for deleting it.

Parameters
nthe index of the Objective object to remove
Returns
the Objective object removed. As mentioned above, the caller owns the returned object. null is returned if the given index is out of range.
Objective libsbmlcs.FbcModelPlugin.removeObjective ( string  sid)

Removes the Objective object with the given sid attribute from this plugin object and returns a pointer to it.

The caller owns the returned object and is responsible for deleting it.

Parameters
sidthe id attribute of the Objective object to remove
Returns
the Objective object removed. As mentioned above, the caller owns the returned object. null is returned if the given index is out of range.
void libsbmlcs.SBasePlugin.replaceSIDWithFunction ( string  id,
ASTNode  function 
)
inherited

If this object has a child 'math' object (or anything with ASTNodes in general), replace all nodes with the name 'id' with the provided function.

Note
This function does nothing itself–subclasses with ASTNode subelements must override this function.
int libsbmlcs.FbcModelPlugin.setActiveObjectiveId ( string  objectiveId)

Sets the id of the active objective.

int libsbmlcs.SBasePlugin.setElementNamespace ( string  uri)
inherited

Sets the XML namespace to which this element belongs to.

For example, all elements that belong to SBML Level 3 Version 1 Core must set the namespace to 'http://www.sbml.org/sbml/level3/version1/core'; all elements that belong to Layout Extension Version 1 for SBML Level 3 Version 1 Core must set the namespace to 'http://www.sbml.org/sbml/level3/version1/layout/version1/'

Returns
integer value indicating success/failure of the function. The possible values returned by this function are:
bool libsbmlcs.SBasePlugin.stripPackage ( string  pkgPrefix,
bool  flag 
)
inherited
int libsbmlcs.SBasePlugin.transformIdentifiers ( IdentifierTransformer  sidTransformer)
inherited
void libsbmlcs.FbcModelPlugin.unsetActiveObjectiveId ( )

Unsets the active objective.

void libsbmlcs.FbcModelPlugin.writeAttributes ( XMLOutputStream  stream)

This function is a bit tricky.

This function is used only for setting annotation element in case gene associations are used. Thus, no attribute is written by this function.

Member Data Documentation

bool libsbmlcs.SBasePlugin.swigCMemOwn
protectedinherited