ptolemy.actor.parameters
Class IntRangeParameter
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.util.Attribute
ptolemy.kernel.util.AbstractSettableAttribute
ptolemy.data.expr.Variable
ptolemy.data.expr.Parameter
ptolemy.actor.parameters.IntRangeParameter
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, HasTypeConstraints, Typeable, Changeable, Debuggable, DebugListener, Derivable, ModelErrorHandler, MoMLExportable, Moveable, Nameable, Settable, ValueListener
public class IntRangeParameter
- extends Parameter
This is a parameter with type integer with a limited range.
Its value is an integer token that is constrained to lie
within the boundaries specified by its two parameters,
min and max. These specify the minimum and maximum values.
A user interface will typically use this
information to represent the parameter value using a slider.
The default values for min and max are 0 and 100,
respectively, and the default value for this parameter is 50.
- Since:
- Ptolemy II 3.0
- Version:
- $Id: IntRangeParameter.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- Edward A. Lee
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Field Summary |
private boolean |
_inCheck
Indicator that we are in the middle of a check, so skip
circular dependency. |
Parameter |
max
The maximum value. |
Parameter |
min
The minimum value. |
Fields inherited from class ptolemy.kernel.util.NamedObj |
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
Constructor Summary |
IntRangeParameter(NamedObj container,
java.lang.String name)
Construct an attribute with the given name contained by the
specified container. |
Method Summary |
protected void |
_setTokenAndNotify(Token newToken)
Set the token value and type of the variable, and notify the
container that the value (and type, if appropriate) has changed. |
void |
attributeChanged(Attribute attribute)
React to a change in an attribute by ensuring that the current
value remains within the range given by min and max. |
int |
getCurrentValue()
Return the current value of this parameter as an integer. |
int |
getMaxValue()
Return the maximum value of this parameter as an integer. |
int |
getMinValue()
Return the minimum value of this parameter. |
Methods inherited from class ptolemy.data.expr.Variable |
_description, _evaluate, _notifyValueListeners, _parseIfNecessary, _propagate, _propagateToValueListeners, _propagateValue, _setToken, addValueListener, clone, getDeclaredType, getExpression, getFreeIdentifiers, getParserScope, getScope, getScope, getToken, getType, getTypeTerm, getValueAsString, getVariable, getVisibility, invalidate, isKnown, isLazy, isStringMode, isTypeAcceptable, removeValueListener, reset, setContainer, setExpression, setLazy, setName, setParseTreeEvaluator, setStringMode, setToken, setToken, setTypeAtLeast, setTypeAtLeast, setTypeAtMost, setTypeEquals, setTypeSameAs, setUnknown, setVisibility, stringRepresentation, toString, typeConstraintList, typeConstraints, validate, valueChanged |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getElementName, getFullName, getModelErrorHandler, getName, getName, getPrototypeList, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateExistence, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, uniqueName, validateSettables, workspace |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
max
public Parameter max
- The maximum value. This is has an integer value, and defaults to 100.
min
public Parameter min
- The minimum value. This is has an integer value, and defaults to 0.
_inCheck
private boolean _inCheck
- Indicator that we are in the middle of a check, so skip
circular dependency.
IntRangeParameter
public IntRangeParameter(NamedObj container,
java.lang.String name)
throws IllegalActionException,
NameDuplicationException
- Construct an attribute with the given name contained by the
specified container. The container argument must not be null, or a
NullPointerException will be thrown. This attribute will use the
workspace of the container for synchronization and version counts.
If the name argument is null, then the name is set to the empty
string. Increment the version of the workspace.
- Parameters:
container
- The container.name
- The name of this attribute.
- Throws:
IllegalActionException
- If the attribute is not of an
acceptable class for the container, or if the name contains a period.
NameDuplicationException
- If the name coincides with
an attribute already in the container.
attributeChanged
public void attributeChanged(Attribute attribute)
throws IllegalActionException
- React to a change in an attribute by ensuring that the current
value remains within the range given by min and max.
- Overrides:
attributeChanged
in class NamedObj
- Parameters:
attribute
- The attribute that changed.
- Throws:
IllegalActionException
- If the change is not acceptable
to this container (should not be thrown).
getCurrentValue
public int getCurrentValue()
throws IllegalActionException
- Return the current value of this parameter as an integer.
- Returns:
- The current value.
- Throws:
IllegalActionException
- If the expression cannot
be parsed or cannot be evaluated, or if the result of evaluation
violates type constraints, or if the result of evaluation is null
and there are variables that depend on this one.
getMaxValue
public int getMaxValue()
throws IllegalActionException
- Return the maximum value of this parameter as an integer.
- Returns:
- The maximum value.
- Throws:
IllegalActionException
- If the expression cannot
be parsed or cannot be evaluated, or if the result of evaluation
violates type constraints, or if the result of evaluation is null
and there are variables that depend on this one.
getMinValue
public int getMinValue()
throws IllegalActionException
- Return the minimum value of this parameter.
- Returns:
- The minimum value.
- Throws:
IllegalActionException
- If the expression cannot
be parsed or cannot be evaluated, or if the result of evaluation
violates type constraints, or if the result of evaluation is null
and there are variables that depend on this one.
_setTokenAndNotify
protected void _setTokenAndNotify(Token newToken)
throws IllegalActionException
- Description copied from class:
Variable
- Set the token value and type of the variable, and notify the
container that the value (and type, if appropriate) has changed.
Also notify value dependents that they need to be re-evaluated,
and notify any listeners that have been registered with
addValueListener().
If setTypeEquals() has been called, then attempt to convert
the specified token into one of the appropriate type, if needed,
rather than changing the type.
- Overrides:
_setTokenAndNotify
in class Variable
- Parameters:
newToken
- The new value of the variable.
- Throws:
IllegalActionException
- If the token type is not
compatible with specified constraints, or if you are attempting
to set to null a variable that has value dependents.