public class FunctionTerm extends SBase
Each FunctionTerm
is associated with a result and with a Boolean function
inside a Math element that can be used to set the conditions under which
this term is selected.
Constructor and Description |
---|
FunctionTerm()
Creates a new
FunctionTerm with the given level, version, and package version. |
FunctionTerm(FunctionTerm orig)
Copy constructor for
FunctionTerm . |
FunctionTerm(long level)
Creates a new
FunctionTerm with the given level, version, and package version. |
FunctionTerm(long level,
long version)
Creates a new
FunctionTerm with the given level, version, and package version. |
FunctionTerm(long level,
long version,
long pkgVersion)
Creates a new
FunctionTerm with the given level, version, and package version. |
FunctionTerm(QualPkgNamespaces qualns)
Creates a new
FunctionTerm with the given QualPkgNamespaces object. |
Modifier and Type | Method and Description |
---|---|
FunctionTerm |
cloneObject()
Creates and returns a deep copy of this
FunctionTerm object. |
void |
delete()
Explicitly deletes the underlying native object.
|
java.lang.String |
getElementName()
Returns the XML name of this object.
|
ASTNode |
getMath()
Returns the 'math' element of this
FunctionTerm . |
int |
getResultLevel()
Returns the value of the 'resultLevel' attribute of this
FunctionTerm . |
int |
getTypeCode()
Returns the libSBML type code of this object instance.
|
boolean |
hasRequiredAttributes()
Predicate returning
true if all the required attributes
for this FunctionTerm object have been set. |
boolean |
hasRequiredElements()
Predicate returning
true if all the required elements
for this FunctionTerm object have been set. |
boolean |
isSetMath()
Predicate returning
true or false depending on whether this
FunctionTerm 's 'math' element has been set. |
boolean |
isSetResultLevel()
Predicate returning
true or false depending on whether this
FunctionTerm 's 'resultLevel' attribute has been set. |
void |
renameSIdRefs(java.lang.String oldid,
java.lang.String newid)
Replaces all uses of a given
SIdRef type attribute value with another
value. |
int |
setMath(ASTNode math)
Sets the 'math' element of this
FunctionTerm . |
int |
setResultLevel(int resultLevel)
Sets the value of the 'resultLevel' attribute of this
FunctionTerm . |
int |
unsetMath()
Unsets the 'math' element of this
FunctionTerm . |
int |
unsetResultLevel()
Unsets the value of the 'resultLevel' attribute of this
FunctionTerm . |
addCVTerm, addCVTerm, appendAnnotation, appendAnnotation, appendNotes, appendNotes, connectToChild, deleteDisabledPlugins, deleteDisabledPlugins, disablePackage, enablePackage, equals, getAncestorOfType, getAncestorOfType, getAnnotation, getAnnotationString, getColumn, getCVTerm, getCVTerms, getDisabledPlugin, getElementByMetaId, getElementBySId, getId, getIdAttribute, getLevel, getLine, getListOfAllElements, getListOfAllElements, getListOfAllElementsFromPlugins, getListOfAllElementsFromPlugins, getMetaId, getModel, getModelHistory, getName, getNamespaces, getNotes, getNotesString, getNumCVTerms, getNumDisabledPlugins, getNumPlugins, getPackageCoreVersion, getPackageName, getPackageVersion, getParentSBMLObject, getPlugin, getPlugin, getPrefix, getResourceBiologicalQualifier, getResourceModelQualifier, getSBMLDocument, getSBOTerm, getSBOTermAsURL, getSBOTermID, getURI, getVersion, hashCode, hasValidLevelVersionNamespaceCombination, isPackageEnabled, isPackageURIEnabled, isPkgEnabled, isPkgURIEnabled, isSetAnnotation, isSetId, isSetIdAttribute, isSetMetaId, isSetModelHistory, isSetName, isSetNotes, isSetSBOTerm, isSetUserData, matchesRequiredSBMLNamespacesForAddition, matchesSBMLNamespaces, removeFromParentAndDelete, removeTopLevelAnnotationElement, removeTopLevelAnnotationElement, removeTopLevelAnnotationElement, renameMetaIdRefs, renameUnitSIdRefs, replaceTopLevelAnnotationElement, replaceTopLevelAnnotationElement, setAnnotation, setAnnotation, setId, setIdAttribute, setMetaId, setModelHistory, setName, setNamespaces, setNotes, setNotes, setNotes, setSBOTerm, setSBOTerm, toSBML, toXMLNode, unsetAnnotation, unsetCVTerms, unsetId, unsetIdAttribute, unsetMetaId, unsetModelHistory, unsetName, unsetNotes, unsetSBOTerm, unsetUserData
public FunctionTerm(long level, long version, long pkgVersion) throws SBMLConstructorException
FunctionTerm
with the given level, version, and package version.
level
- a long integer, the SBML Level to assign to this FunctionTerm
.
version
- a long integer, the SBML Version to assign to this FunctionTerm
.
pkgVersion
- a long integer, the SBML Qual Version to assign to this FunctionTerm
.
SBMLConstructorException
SBMLDocument
having a different
combination of SBML Level, Version and XML namespaces than the object
itself will result in an error at the time a caller attempts to make the
addition. A parent object must have compatible Level, Version and XML
namespaces. (Strictly speaking, a parent may also have more XML
namespaces than a child, but the reverse is not permitted.) The
restriction is necessary to ensure that an SBML model has a consistent
overall structure. This requires callers to manage their objects
carefully, but the benefit is increased flexibility in how models can be
created by permitting callers to create objects bottom-up if desired. In
situations where objects are not yet attached to parents (e.g.,
SBMLDocument
), knowledge of the intented SBML Level and Version help
libSBML determine such things as whether it is valid to assign a
particular value to an attribute. For packages, this means that the
parent object to which this package element is being added must have
been created with the package namespace, or that the package namespace
was added to it, even if that parent is not a package object itself.public FunctionTerm(long level, long version) throws SBMLConstructorException
FunctionTerm
with the given level, version, and package version.
level
- a long integer, the SBML Level to assign to this FunctionTerm
.
version
- a long integer, the SBML Version to assign to this FunctionTerm
.
pkgVersion
- a long integer, the SBML Qual Version to assign to this FunctionTerm
.
SBMLConstructorException
SBMLDocument
having a different
combination of SBML Level, Version and XML namespaces than the object
itself will result in an error at the time a caller attempts to make the
addition. A parent object must have compatible Level, Version and XML
namespaces. (Strictly speaking, a parent may also have more XML
namespaces than a child, but the reverse is not permitted.) The
restriction is necessary to ensure that an SBML model has a consistent
overall structure. This requires callers to manage their objects
carefully, but the benefit is increased flexibility in how models can be
created by permitting callers to create objects bottom-up if desired. In
situations where objects are not yet attached to parents (e.g.,
SBMLDocument
), knowledge of the intented SBML Level and Version help
libSBML determine such things as whether it is valid to assign a
particular value to an attribute. For packages, this means that the
parent object to which this package element is being added must have
been created with the package namespace, or that the package namespace
was added to it, even if that parent is not a package object itself.public FunctionTerm(long level) throws SBMLConstructorException
FunctionTerm
with the given level, version, and package version.
level
- a long integer, the SBML Level to assign to this FunctionTerm
.
version
- a long integer, the SBML Version to assign to this FunctionTerm
.
pkgVersion
- a long integer, the SBML Qual Version to assign to this FunctionTerm
.
SBMLConstructorException
SBMLDocument
having a different
combination of SBML Level, Version and XML namespaces than the object
itself will result in an error at the time a caller attempts to make the
addition. A parent object must have compatible Level, Version and XML
namespaces. (Strictly speaking, a parent may also have more XML
namespaces than a child, but the reverse is not permitted.) The
restriction is necessary to ensure that an SBML model has a consistent
overall structure. This requires callers to manage their objects
carefully, but the benefit is increased flexibility in how models can be
created by permitting callers to create objects bottom-up if desired. In
situations where objects are not yet attached to parents (e.g.,
SBMLDocument
), knowledge of the intented SBML Level and Version help
libSBML determine such things as whether it is valid to assign a
particular value to an attribute. For packages, this means that the
parent object to which this package element is being added must have
been created with the package namespace, or that the package namespace
was added to it, even if that parent is not a package object itself.public FunctionTerm() throws SBMLConstructorException
FunctionTerm
with the given level, version, and package version.
level
- a long integer, the SBML Level to assign to this FunctionTerm
.
version
- a long integer, the SBML Version to assign to this FunctionTerm
.
pkgVersion
- a long integer, the SBML Qual Version to assign to this FunctionTerm
.
SBMLConstructorException
SBMLDocument
having a different
combination of SBML Level, Version and XML namespaces than the object
itself will result in an error at the time a caller attempts to make the
addition. A parent object must have compatible Level, Version and XML
namespaces. (Strictly speaking, a parent may also have more XML
namespaces than a child, but the reverse is not permitted.) The
restriction is necessary to ensure that an SBML model has a consistent
overall structure. This requires callers to manage their objects
carefully, but the benefit is increased flexibility in how models can be
created by permitting callers to create objects bottom-up if desired. In
situations where objects are not yet attached to parents (e.g.,
SBMLDocument
), knowledge of the intented SBML Level and Version help
libSBML determine such things as whether it is valid to assign a
particular value to an attribute. For packages, this means that the
parent object to which this package element is being added must have
been created with the package namespace, or that the package namespace
was added to it, even if that parent is not a package object itself.public FunctionTerm(QualPkgNamespaces qualns) throws SBMLConstructorException
FunctionTerm
with the given QualPkgNamespaces
object.
The package namespaces object used in this constructor is derived from a
SBMLNamespaces
object, which encapsulates SBML Level/Version/namespaces
information. It is used to communicate the SBML Level, Version, and
package version and name information used in addition to SBML Level 3 Core. A
common approach to using libSBML's SBMLNamespaces
facilities is to create an
package namespace object somewhere in a program once, then hand that object
as needed to object constructors of that package that accept it as and
argument, such as this one.
qualns
- the QualPkgNamespaces
object.
SBMLConstructorException
SBMLDocument
having a different
combination of SBML Level, Version and XML namespaces than the object
itself will result in an error at the time a caller attempts to make the
addition. A parent object must have compatible Level, Version and XML
namespaces. (Strictly speaking, a parent may also have more XML
namespaces than a child, but the reverse is not permitted.) The
restriction is necessary to ensure that an SBML model has a consistent
overall structure. This requires callers to manage their objects
carefully, but the benefit is increased flexibility in how models can be
created by permitting callers to create objects bottom-up if desired. In
situations where objects are not yet attached to parents (e.g.,
SBMLDocument
), knowledge of the intented SBML Level and Version help
libSBML determine such things as whether it is valid to assign a
particular value to an attribute. For packages, this means that the
parent object to which this package element is being added must have
been created with the package namespace, or that the package namespace
was added to it, even if that parent is not a package object itself.public FunctionTerm(FunctionTerm orig) throws SBMLConstructorException
FunctionTerm
.
orig
- the FunctionTerm
instance to copy.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 FunctionTerm.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 FunctionTerm.delete()
themselves.
public FunctionTerm cloneObject()
FunctionTerm
object.
cloneObject
 in class SBase
FunctionTerm
object.public int getResultLevel()
FunctionTerm
.
FunctionTerm
as a integer.public boolean isSetResultLevel()
true
or false
depending on whether this
FunctionTerm
's 'resultLevel' attribute has been set.
true
if this FunctionTerm
's 'resultLevel' attribute has been set,
otherwise false
is returned.public int setResultLevel(int resultLevel)
FunctionTerm
.
resultLevel
- int value of the 'resultLevel' attribute to be set.
public int unsetResultLevel()
FunctionTerm
.
public ASTNode getMath()
FunctionTerm
.
FunctionTerm
, or null
if the math is not set.public boolean isSetMath()
true
or false
depending on whether this
FunctionTerm
's 'math' element has been set.
true
if this FunctionTerm
's 'math' element has been set,
otherwise false
is returned.public int setMath(ASTNode math)
FunctionTerm
.
math
- ASTNode
math of the 'resultLevel' attribute to be set.
public int unsetMath()
FunctionTerm
.
public void renameSIdRefs(java.lang.String oldid, java.lang.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 identifier.newid
- the new identifier.public java.lang.String getElementName()
getElementName
 in class SBase
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
method on the object.
SBase.getPackageName()
getTypeCode
 in class SBase
SBML_QUAL_FUNCTION_TERM
FunctionTerm.getElementName()
,
SBase.getPackageName()
public boolean hasRequiredAttributes()
true
if all the required attributes
for this FunctionTerm
object have been set.
hasRequiredAttributes
 in class SBase
FunctionTerm
object are:
public boolean hasRequiredElements()
true
if all the required elements
for this FunctionTerm
object have been set.
hasRequiredElements
 in class SBase
FunctionTerm
object are: