public class ListOfObjectives extends ListOf
Objective
objects.
The ListOfObjectives
is a container for the SBML extended Model
that lists all the possible Objective
elements in the model.
Unlike most other ListOf
subclasses in SBML, SBML Level 3 Flux
Balance Constraints Version 2 defines an additional required
attribute on ListOfObjectives: the 'activeObjective' attribute. This
attribute is of type SIdRef
and can only refer to the id of
an existing Objective
. This required attribute exists so that when
multiple Objective
's are included in a single model, the model will always
be well described i.e., there will be a single, primary objective
function which defines a single optimum and its associated solution space.
The various ListOf___ classes in SBML
are merely containers used for organizing the main components of an SBML
model. In libSBML's implementation, ListOf___
classes are derived from the
intermediate utility class ListOf
, which
is not defined by the SBML specifications but serves as a useful
programmatic construct. ListOf
is itself is in turn derived from SBase
,
which provides all of the various ListOf___
classes with common features
defined by the SBML specification, such as 'metaid' attributes and
annotations.
The relationship between the lists and the rest of an SBML model is illustrated by the following (for SBML Level 2 Version 4):
Readers may wonder about the motivations for using the ListOf___
containers in SBML. A simpler approach in XML might be to place the
components all directly at the top level of the model definition. The
choice made in SBML is to group them within XML elements named after
ListOfClassname, in part because it helps organize the
components. More importantly, the fact that the container classes are
derived from SBase
means that software tools can add information about
the lists themselves into each list container's 'annotation'.
ListOfFunctionDefinitions
,
ListOfUnitDefinitions
,
ListOfCompartmentTypes
,
ListOfSpeciesTypes
,
ListOfCompartments
,
ListOfSpecies
,
ListOfParameters
,
ListOfInitialAssignments
,
ListOfRules
,
ListOfConstraints
,
ListOfReactions
,
,
GeneProduct
,
FbcModelPlugin
ListOfObjectives
is
an additional attribute that is not present on typical ListOf
classes.
The introduction of an attribute on ListOf
is perfectly legal in SBML, but
uncommon, and software developers may have grown accustomed to ListOf
classes all having the same attributes and no others. We are belaboring
this point so that developers are more likely to notice the presence of an
additional attribute on ListOfObjectives
.
Constructor and Description |
---|
ListOfObjectives()
Creates a new
ListOfObjectives with the given SBML Level, Version, and
&ldquofbc&rdquopackage version. |
ListOfObjectives(FbcPkgNamespaces fbcns)
Creates a new
ListOfObjectives with the given FbcPkgNamespaces object. |
ListOfObjectives(ListOfObjectives other)
Copy Constructor.
|
ListOfObjectives(long level)
Creates a new
ListOfObjectives with the given SBML Level, Version, and
&ldquofbc&rdquopackage version. |
ListOfObjectives(long level,
long version)
Creates a new
ListOfObjectives with the given SBML Level, Version, and
&ldquofbc&rdquopackage version. |
ListOfObjectives(long level,
long version,
long pkgVersion)
Creates a new
ListOfObjectives with the given SBML Level, Version, and
&ldquofbc&rdquopackage version. |
Modifier and Type | Method and Description |
---|---|
int |
addObjective(Objective o)
Adds a copy the given 'Objective' to this
ListOfObjectives . |
int |
appendFrom(ListOf list)
Adds a clone of all items in the provided
ListOf to this object. |
ListOfObjectives |
cloneObject()
Creates and returns a deep copy of this
ListOfObjectives object. |
Objective |
createObjective()
Creates a new
Objective object, adds it to the
ListOfObjectives and returns the Objective object created. |
void |
delete()
Explicitly deletes the underlying native object.
|
Objective |
get(long n)
Get an
Objective from the ListOfObjectives . |
Objective |
get(String sid)
Get an
Objective from the ListOfObjectives based on its identifier. |
String |
getActiveObjective()
Returns the value of the 'activeObjective' attribute of this
ListOfObjectives . |
String |
getElementName()
Returns the XML element name of this object.
|
int |
getItemTypeCode()
Returns the libSBML type code for the objects contained in this
ListOf . |
long |
getNumObjectives()
Get the number of
Objective objects in this ListOfObjectives . |
int |
getTypeCode()
Returns the libSBML type code for this SBML object.
|
boolean |
isSetActiveObjective()
Predicate returning
true if this ListOfObjective's 'activeObjective'
attribute is set. |
Objective |
remove(long n)
Removes the nth
Objective from this ListOfObjectives
and returns a pointer to it. |
Objective |
remove(String sid)
Removes the
Objective from this ListOfObjectives with the given identifier
and returns a pointer to it. |
void |
renameSIdRefs(String oldid,
String newid)
Replaces all uses of a given
SIdRef type attribute value with another
value. |
int |
setActiveObjective(String activeObjective)
Sets the value of the 'activeObjective' attribute of this
ListOfObjectives . |
int |
unsetActiveObjective()
Unsets the value of the 'activeObjective' attribute of this
ListOfObjectives . |
append, appendAndOwn, clear, clear, connectToChild, getElementByMetaId, getElementBySId, insert, insertAndOwn, removeFromParentAndDelete, size
addCVTerm, addCVTerm, appendAnnotation, appendAnnotation, appendNotes, appendNotes, deleteDisabledPlugins, deleteDisabledPlugins, disablePackage, enablePackage, equals, getAncestorOfType, getAncestorOfType, getAnnotation, getAnnotationString, getColumn, getCVTerm, getCVTerms, getDisabledPlugin, getLevel, getLine, getListOfAllElements, getListOfAllElements, getListOfAllElementsFromPlugins, getListOfAllElementsFromPlugins, getMetaId, getModel, getModelHistory, getNamespaces, getNotes, getNotesString, getNumCVTerms, getNumDisabledPlugins, getNumPlugins, getPackageName, getPackageVersion, getParentSBMLObject, getPlugin, getPlugin, getPrefix, getResourceBiologicalQualifier, getResourceModelQualifier, getSBMLDocument, getSBOTerm, getSBOTermAsURL, getSBOTermID, getURI, getVersion, hashCode, hasValidLevelVersionNamespaceCombination, isPackageEnabled, isPackageURIEnabled, isPkgEnabled, isPkgURIEnabled, isSetAnnotation, isSetMetaId, isSetModelHistory, isSetNotes, isSetSBOTerm, isSetUserData, matchesRequiredSBMLNamespacesForAddition, matchesSBMLNamespaces, removeTopLevelAnnotationElement, removeTopLevelAnnotationElement, removeTopLevelAnnotationElement, renameMetaIdRefs, renameUnitSIdRefs, replaceTopLevelAnnotationElement, replaceTopLevelAnnotationElement, setAnnotation, setAnnotation, setMetaId, setModelHistory, setNamespaces, setNotes, setNotes, setNotes, setSBOTerm, setSBOTerm, toSBML, toXMLNode, unsetAnnotation, unsetCVTerms, unsetId, unsetMetaId, unsetModelHistory, unsetName, unsetNotes, unsetSBOTerm, unsetUserData
public ListOfObjectives(long level, long version, long pkgVersion) throws SBMLConstructorException
ListOfObjectives
with the given SBML Level, Version, and
&ldquofbc&rdquopackage version.
level
- a long integer, the SBML Level to assign to this
ListOfObjectives
version
- a long integer, the SBML Version to assign to this
ListOfObjectives
pkgVersion
- a long integer, the SBML Fbc Version to assign to
this ListOfObjectives
SBMLConstructorException
public ListOfObjectives(long level, long version) throws SBMLConstructorException
ListOfObjectives
with the given SBML Level, Version, and
&ldquofbc&rdquopackage version.
level
- a long integer, the SBML Level to assign to this
ListOfObjectives
version
- a long integer, the SBML Version to assign to this
ListOfObjectives
pkgVersion
- a long integer, the SBML Fbc Version to assign to
this ListOfObjectives
SBMLConstructorException
public ListOfObjectives(long level) throws SBMLConstructorException
ListOfObjectives
with the given SBML Level, Version, and
&ldquofbc&rdquopackage version.
level
- a long integer, the SBML Level to assign to this
ListOfObjectives
version
- a long integer, the SBML Version to assign to this
ListOfObjectives
pkgVersion
- a long integer, the SBML Fbc Version to assign to
this ListOfObjectives
SBMLConstructorException
public ListOfObjectives() throws SBMLConstructorException
ListOfObjectives
with the given SBML Level, Version, and
&ldquofbc&rdquopackage version.
level
- a long integer, the SBML Level to assign to this
ListOfObjectives
version
- a long integer, the SBML Version to assign to this
ListOfObjectives
pkgVersion
- a long integer, the SBML Fbc Version to assign to
this ListOfObjectives
SBMLConstructorException
public ListOfObjectives(FbcPkgNamespaces fbcns) throws SBMLConstructorException
ListOfObjectives
with the given FbcPkgNamespaces
object.
fbcns
- the FbcPkgNamespaces
objectSBMLConstructorException
public ListOfObjectives(ListOfObjectives other) throws SBMLConstructorException
SBMLConstructorException
public void delete()
In general, application software will not need to call this method directly. The Java language binding for libSBML is implemented as a language wrapper that provides a Java interface to libSBML's underlying C++/C code. Some of the Java methods return objects that are linked to objects created not by Java code, but by C++ code. The Java objects wrapped around them will be deleted when the garbage collector invokes the corresponding C++ finalize()
methods for the objects. The finalize()
methods in turn call the ListOfObjectives.delete()
method on the libSBML object.
This method is exposed in case calling programs want to ensure that the underlying object is freed immediately, and not at some arbitrary time determined by the Java garbage collector. In normal usage, callers do not need to invoke ListOfObjectives.delete()
themselves.
public ListOfObjectives cloneObject()
ListOfObjectives
object.
cloneObject
 in class ListOf
ListOfObjectives
object.public Objective get(long n)
Objective
from the ListOfObjectives
.
get
 in class ListOf
n
- the index number of the Objective
to get.
Objective
in this ListOfObjectives
.
ListOf.size()
public Objective get(String sid)
Objective
from the ListOfObjectives
based on its identifier.
sid
- a string representing the identifier of the Objective
to get.
Objective
in this ListOfObjectives
with the given id or null if
no such Objective
exists.
ListOfObjectives.get(long n)
,
ListOf.size()
public int addObjective(Objective o)
ListOfObjectives
.
o
- the Objective
object to add
public long getNumObjectives()
Objective
objects in this ListOfObjectives
.
Objective
objects in this ListOfObjectives
public Objective createObjective()
Objective
object, adds it to the
ListOfObjectives
and returns the Objective
object created.
Objective
object instance
ListOfObjectives.addObjective(Objective o)
public Objective remove(long n)
Objective
from this ListOfObjectives
and returns a pointer to it.
The caller owns the returned item and is responsible for deleting it.
remove
 in class ListOf
n
- the index of the Objective
to remove.
ListOf.size()
public Objective remove(String sid)
Objective
from this ListOfObjectives
with the given identifier
and returns a pointer to it.
The caller owns the returned item and is responsible for deleting it.
If none of the items in this list have the identifier sid
, then
null
is returned.
public String getElementName()
For ListOfObjectives
, the XML element name is always 'listOfObjectives'.
getElementName
 in class ListOf
'listOfObjectives'.
public boolean isSetActiveObjective()
true
if this ListOfObjective's 'activeObjective'
attribute is set.
true
if this ListOfObjective's 'activeObjective' attribute has been set,
otherwise false
is returned.public int setActiveObjective(String activeObjective)
ListOfObjectives
.
public String getActiveObjective()
ListOfObjectives
.
ListOfObjectives
.public int unsetActiveObjective()
ListOfObjectives
.
public int getTypeCode()
LibSBML attaches an identifying code to every kind of SBML object. These
are integer constants known as SBML type codes. The names of all
the codes begin with the characters SBML_
.
In the Java language interface for libSBML, the
type codes are defined as static integer constants in the interface class
libsbmlConstants
. 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.
getTypeCode
 in class ListOf
SBML_LIST_OF
(default).
ListOfObjectives.getElementName()
,
SBase.getPackageName()
public int getItemTypeCode()
ListOf
.
LibSBML attaches an identifying code to every kind of SBML object. These
are integer constants known as SBML type codes. The names of all
the codes begin with the characters SBML_
.
In the Java language interface for libSBML, the
type codes are defined as static integer constants in the interface class
libsbmlConstants
. 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.
getItemTypeCode
 in class ListOf
ListOf
instance: SBML_FBC_OBJECTIVE
(default).
ListOfObjectives.getElementName()
,
SBase.getPackageName()
public int appendFrom(ListOf list)
ListOf
to this object.
This means that when this ListOf
is destroyed, the original items will
not be destroyed. In addition, copy over the input ListOfObjectives
'
'activeObjective' attribute, if none is set for this element.
appendFrom
 in class ListOf
list
- A list of items to be added.
ListOf.append(SBase item)
public void renameSIdRefs(String oldid, String newid)
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.
renameSIdRefs
 in class SBase
oldid
- the old identifiernewid
- the new identifier