public class ListOfGradientStops extends ListOf
GradientStop objects.
The ListOfGradientStops is used in linear and radial gradient objects to
store the GradientStop objects that define the gradient. A valid gradient
should have two or more gradient stops.
The ListOfGradientStops is a container for the GradientStop elements of a
GradientBase object.
Note that the ListOfGradientStops class is only defined in libsbml for
convenience: GradientStop objects are actually direct children of
GradientBase-derived objects (i.e., LinearGradient or RadialGradient
objects).
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):
SBML Level 3 Version 1 has essentially the same structure as Level 2 Version 4, depicted above, but SBML Level 3 Version 2 allows containers to contain zero or more of the relevant object, instead of requiring at least one. As such, libsbml will write out an otherwise-empty ListOf___ element that has any optional attribute set (such as 'id' or 'metaid'), that has an optional child (such as a 'notes' or 'annotation'), or that has attributes or children set from any SBML Level 3 package, whether or not the ListOf___ has any other children.
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,
This class of objects is defined by libSBML only and has no direct
equivalent in terms of SBML components. This class is not prescribed by
the SBML specifications, although it is used to implement features
defined in SBML.
,
GradientStop,
GradientBase,
LinearGradient,
RadialGradient| Constructor and Description |
|---|
ListOfGradientStops()
Creates a new
ListOfGradientStops using the given SBML Level, Version and
“render” package version. |
ListOfGradientStops(ListOfGradientStops orig)
Copy constructor for
ListOfGradientStops. |
ListOfGradientStops(long level)
Creates a new
ListOfGradientStops using the given SBML Level, Version and
“render” package version. |
ListOfGradientStops(long level,
long version)
Creates a new
ListOfGradientStops using the given SBML Level, Version and
“render” package version. |
ListOfGradientStops(long level,
long version,
long pkgVersion)
Creates a new
ListOfGradientStops using the given SBML Level, Version and
“render” package version. |
ListOfGradientStops(RenderPkgNamespaces renderns)
Creates a new
ListOfGradientStops using the given RenderPkgNamespaces
object. |
ListOfGradientStops(XMLNode node)
Creates a new
ListOfGradientStops object from the given XMLNode object. |
ListOfGradientStops(XMLNode node,
long l2version)
Creates a new
ListOfGradientStops object from the given XMLNode object. |
| Modifier and Type | Method and Description |
|---|---|
int |
addGradientStop(GradientStop gs)
Adds a copy of the given
GradientStop to this ListOfGradientStops. |
ListOfGradientStops |
cloneObject()
Creates and returns a deep copy of this
ListOfGradientStops object. |
GradientStop |
createGradientStop()
Creates a new
GradientStop object, adds it to this ListOfGradientStops
object and returns the GradientStop object created. |
void |
delete()
Explicitly deletes the underlying native object.
|
SBase |
get(long n)
Get a
GradientStop from the ListOfGradientStops. |
GradientStop |
get(java.lang.String sid)
Get a
GradientStop from the ListOfGradientStops based on its identifier. |
java.lang.String |
getElementName()
Returns the XML element name of this
ListOfGradientStops object. |
int |
getItemTypeCode()
Returns the libSBML type code for the SBML objects contained in this
ListOfGradientStops object. |
long |
getNumGradientStops()
Get the number of
GradientStop objects in this ListOfGradientStops. |
int |
getTypeCode()
Returns the libSBML type code for this
ListOfGradientStops object. |
SBase |
remove(long n)
Removes the nth
GradientStop from this ListOfGradientStops and returns a
pointer to it. |
GradientStop |
remove(java.lang.String sid)
Removes the
GradientStop from this ListOfGradientStops based on its
identifier and returns a pointer to it. |
XMLNode |
toXML()
Creates an
XMLNode object from this ListOfGradientStops object. |
append, appendAndOwn, appendFrom, clear, clear, connectToChild, getElementByMetaId, getElementBySId, insert, insertAndOwn, removeFromParentAndDelete, sizeaddCVTerm, addCVTerm, appendAnnotation, appendAnnotation, appendNotes, appendNotes, deleteDisabledPlugins, deleteDisabledPlugins, disablePackage, enablePackage, equals, getAncestorOfType, getAncestorOfType, getAnnotation, getAnnotationString, getColumn, getCVTerm, getCVTerms, getDisabledPlugin, 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, removeTopLevelAnnotationElement, removeTopLevelAnnotationElement, removeTopLevelAnnotationElement, renameMetaIdRefs, renameSIdRefs, 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, unsetUserDatapublic ListOfGradientStops(long level, long version, long pkgVersion) throws SBMLConstructorException
ListOfGradientStops using the given SBML Level, Version and
“render” package version.
level - a long integer, the SBML Level to assign to this
ListOfGradientStops.
version - a long integer, the SBML Version to assign to this
ListOfGradientStops.
pkgVersion - a long integer, the SBML Render Version to assign to
this ListOfGradientStops.
SBMLConstructorExceptionSBMLDocument 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 ListOfGradientStops(long level, long version) throws SBMLConstructorException
ListOfGradientStops using the given SBML Level, Version and
“render” package version.
level - a long integer, the SBML Level to assign to this
ListOfGradientStops.
version - a long integer, the SBML Version to assign to this
ListOfGradientStops.
pkgVersion - a long integer, the SBML Render Version to assign to
this ListOfGradientStops.
SBMLConstructorExceptionSBMLDocument 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 ListOfGradientStops(long level) throws SBMLConstructorException
ListOfGradientStops using the given SBML Level, Version and
“render” package version.
level - a long integer, the SBML Level to assign to this
ListOfGradientStops.
version - a long integer, the SBML Version to assign to this
ListOfGradientStops.
pkgVersion - a long integer, the SBML Render Version to assign to
this ListOfGradientStops.
SBMLConstructorExceptionSBMLDocument 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 ListOfGradientStops() throws SBMLConstructorException
ListOfGradientStops using the given SBML Level, Version and
“render” package version.
level - a long integer, the SBML Level to assign to this
ListOfGradientStops.
version - a long integer, the SBML Version to assign to this
ListOfGradientStops.
pkgVersion - a long integer, the SBML Render Version to assign to
this ListOfGradientStops.
SBMLConstructorExceptionSBMLDocument 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 ListOfGradientStops(RenderPkgNamespaces renderns) throws SBMLConstructorException
ListOfGradientStops using the given RenderPkgNamespaces
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.
renderns - the RenderPkgNamespaces object.
SBMLConstructorExceptionSBMLDocument 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 ListOfGradientStops(XMLNode node, long l2version) throws SBMLConstructorException
ListOfGradientStops object from the given XMLNode object.
The XMLNode object has to contain a valid XML representation of a
ListOfGradientStops object as defined in the render extension specification.
This method is normally called when render information is read from a file and
should normally not have to be called explicitly.
node - the XMLNode object reference that describes the ListOfGradientStops
object to be instantiated.
l2version - an integer indicating the version of SBML Level 2SBMLConstructorExceptionpublic ListOfGradientStops(XMLNode node) throws SBMLConstructorException
ListOfGradientStops object from the given XMLNode object.
The XMLNode object has to contain a valid XML representation of a
ListOfGradientStops object as defined in the render extension specification.
This method is normally called when render information is read from a file and
should normally not have to be called explicitly.
node - the XMLNode object reference that describes the ListOfGradientStops
object to be instantiated.
l2version - an integer indicating the version of SBML Level 2SBMLConstructorExceptionpublic ListOfGradientStops(ListOfGradientStops orig) throws SBMLConstructorException
ListOfGradientStops.
orig - the ListOfGradientStops instance to copy.SBMLConstructorExceptionpublic 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 ListOfGradientStops.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 ListOfGradientStops.delete() themselves.
public ListOfGradientStops cloneObject()
ListOfGradientStops object.
cloneObject in class ListOfListOfGradientStops object.public SBase get(long n)
GradientStop from the ListOfGradientStops.
get in class ListOfn - a long integer representing the index of the GradientStop to
retrieve.
GradientStop in this ListOfGradientStops.
If the index n is invalid, null is returned.
ListOfGradientStops.addGradientStop(GradientStop object),
ListOfGradientStops.createGradientStop(),
ListOfGradientStops.get(String sid),
ListOfGradientStops.getNumGradientStops(),
ListOfGradientStops.remove(String sid),
ListOfGradientStops.remove(long n)public GradientStop get(java.lang.String sid)
GradientStop from the ListOfGradientStops based on its identifier.
sid - a string representing the identifier of the GradientStop to
retrieve.
GradientStop in this ListOfGradientStops with the given sid
or null if no such GradientStop exists.
ListOfGradientStops.addGradientStop(GradientStop object),
ListOfGradientStops.createGradientStop(),
ListOfGradientStops.get(long n),
ListOfGradientStops.getNumGradientStops(),
ListOfGradientStops.remove(String sid),
ListOfGradientStops.remove(long n)public SBase remove(long n)
GradientStop from this ListOfGradientStops and returns a
pointer to it.
remove in class ListOfn - a long integer representing the index of the GradientStop to
remove.
GradientStop in this ListOfGradientStops.
ListOfGradientStops.addGradientStop(GradientStop object),
ListOfGradientStops.createGradientStop(),
ListOfGradientStops.get(String sid),
ListOfGradientStops.get(long n),
ListOfGradientStops.getNumGradientStops(),
ListOfGradientStops.remove(String sid)ListOf#appendAndOwn() or ListOf#insertAndOwn()
functions. All other functions in libsbml add a copy of the element,
and do not transfer ownership of the pointer.
public GradientStop remove(java.lang.String sid)
GradientStop from this ListOfGradientStops based on its
identifier and returns a pointer to it.
sid - a string representing the identifier of the GradientStop to
remove.
GradientStop in this ListOfGradientStops based on the
identifier or null if no such GradientStop exists.
ListOfGradientStops.addGradientStop(GradientStop object),
ListOfGradientStops.createGradientStop(),
ListOfGradientStops.get(String sid),
ListOfGradientStops.get(long n),
ListOfGradientStops.getNumGradientStops(),
ListOfGradientStops.remove(long n)ListOf#appendAndOwn() or ListOf#insertAndOwn()
functions. All other functions in libsbml add a copy of the element,
and do not transfer ownership of the pointer.
public int addGradientStop(GradientStop gs)
GradientStop to this ListOfGradientStops.
gs - the GradientStop object to add.
LIBSBML_OPERATION_SUCCESS
LIBSBML_OPERATION_FAILED
LIBSBML_INVALID_OBJECT
LIBSBML_LEVEL_MISMATCH
LIBSBML_VERSION_MISMATCH
LIBSBML_PKG_VERSION_MISMATCH
LIBSBML_DUPLICATE_OBJECT_ID
ListOfGradientStops.createGradientStop(),
ListOfGradientStops.get(String sid),
ListOfGradientStops.get(long n),
ListOfGradientStops.getNumGradientStops(),
ListOfGradientStops.remove(String sid),
ListOfGradientStops.remove(long n)create)
for alternatives that do not lead to these issues.
public long getNumGradientStops()
GradientStop objects in this ListOfGradientStops.
GradientStop objects in this ListOfGradientStops.
ListOfGradientStops.addGradientStop(GradientStop object),
ListOfGradientStops.createGradientStop(),
ListOfGradientStops.get(String sid),
ListOfGradientStops.get(long n),
ListOfGradientStops.remove(String sid),
ListOfGradientStops.remove(long n)public GradientStop createGradientStop()
GradientStop object, adds it to this ListOfGradientStops
object and returns the GradientStop object created.
GradientStop object instance.
ListOfGradientStops.addGradientStop(GradientStop object),
ListOfGradientStops.get(String sid),
ListOfGradientStops.get(long n),
ListOfGradientStops.getNumGradientStops(),
ListOfGradientStops.remove(String sid),
ListOfGradientStops.remove(long n)public java.lang.String getElementName()
ListOfGradientStops object.
For ListOfGradientStops, the XML element name is always
'listOfGradientStops'.
getElementName in class ListOf'listOfGradientStops'.public int getTypeCode()
ListOfGradientStops object.
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()
The exception to this is lists: all SBML-style list elements have the type
SBML_LIST_OF, regardless of what package they
are from.
getTypeCode in class ListOfSBML_LIST_OF.
ListOf.getItemTypeCode(),
ListOf.getElementName(),
SBase.getPackageName()ListOf.getItemTypeCode()).public int getItemTypeCode()
ListOfGradientStops object.
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()
The exception to this is lists: all SBML-style list elements have the type
SBML_LIST_OF, regardless of what package they
are from.
getItemTypeCode in class ListOfSBML_RENDER_GRADIENT_STOP.
ListOfGradientStops.getElementName(),
SBase.getPackageName()ListOf.getItemTypeCode()).
public XMLNode toXML()
XMLNode object from this ListOfGradientStops object.
XMLNode with the XML representation for the
ListOfGradientStops object.