|
ABLE 2.0.0 07/02/2003 10:25:01 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.ibm.able.data.AbleLhs | +--com.ibm.able.data.AbleVariable | +--com.ibm.able.data.AbleGenericVariable | +--com.ibm.able.data.AbleTypedVariable | +--com.ibm.able.data.AbleDiscreteVariable
This class defines the Able data discrete variable.
Discrete variables are essentially numeric variables, but rather than assuming any arbitrary number as the current value, a discrete variable can be assigned only 1 of N pre-defined numbers.
Field Summary | |
---|---|
protected double |
myInitialValue
The initial double value used to reset this variable |
protected double |
myMaxValue
The maximum value in myValueList, if known. |
protected boolean |
myMaxValueKnown
A flag that indicates whether the maximum value in myValueList has been determined. |
protected double |
myMinValue
The minimum value in myValueList, if known. |
protected boolean |
myMinValueKnown
A flag that indicates whether the minimum value in myValueList has been determined. |
protected double |
myValue
The current value of the variable. |
protected java.util.Vector |
myValueList
The list of possible values that this variable can assume. |
Fields inherited from class com.ibm.able.data.AbleTypedVariable |
---|
myDataTypeClass, myDataTypeClassName, myDataTypeName, myInitialParms |
Fields inherited from class com.ibm.able.data.AbleVariable |
---|
myBoundFlag, myChgSupport, myComment, myContext, myDataType, myGlobalFlag, myId, myName, myPrompt, myReferences, myStaticFlag, myTemplateFlag, myValueInitial |
Constructor Summary | |
---|---|
AbleDiscreteVariable(java.lang.Object[] theValueList)
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers. |
|
AbleDiscreteVariable(java.lang.Object[] theValueList,
double theInitialValue)
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers with specified initial value. |
|
AbleDiscreteVariable(java.lang.String theName)
Create a new discrete variable. |
|
AbleDiscreteVariable(java.lang.String theName,
boolean theStaticFlag,
boolean theGlobalFlag,
java.util.Vector theValueList)
Create a new discrete variable over the specified numbers. |
|
AbleDiscreteVariable(java.lang.String theName,
java.util.Vector theValueList)
Create a new discrete variable over the specified numbers. |
|
AbleDiscreteVariable(java.util.Vector theValueList)
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers. |
|
AbleDiscreteVariable(java.util.Vector theValueList,
double theInitialValue)
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers with specified initial value. |
Method Summary | |
---|---|
void |
addValue(double theValue)
Add a value to the list of pre-defined values. |
java.lang.String |
arlDclString()
Return a formal ARL "declaration" string that describes this data object. |
void |
asgnEq(AbleRd theRhs)
Assignment: assign the current value of theRhs to this data object. |
boolean |
cmpEq(AbleRd theRhs)
Comparison, equal to: compare the current value of this data object to the current value of theRhs. |
boolean |
cmpGt(AbleRd theRhs)
Comparison, greater than: compare the current value of this data object to the current value of theRhs. |
boolean |
cmpGtEq(AbleRd theRhs)
Comparison, greater than or equal to: compare the current value of this data object to the current value of theRhs. |
boolean |
cmpLt(AbleRd theRhs)
Comparison, less than: compare the current value of this data object to the current value of theRhs. |
boolean |
cmpLtEq(AbleRd theRhs)
Comparison, less than or equal to: compare the current value of this data object to the current value of theRhs. |
boolean |
cmpNeq(AbleRd theRhs)
Comparison, not equal to: compare the current value of this data object to the current value of theRhs. |
boolean |
getBooleanValue()
Retrieve the value of this data object as a boolean value. |
java.lang.Class |
getDataTypeClass()
Retrieve the actual class of this object's underlying data type. |
java.lang.String |
getDataTypeClassName()
Retrieve the name of the class of this object's underlying data type. |
AbleFuzzySet |
getFuzzyValue()
Retrieve the value of this data object as a fuzzy value. |
java.lang.Object |
getGenericValue()
Retrieve the value of this data object as an Object. |
int |
getIndexOf(double theValue)
Retrieve the index of a value in the list of pre-defined values. |
java.lang.Class |
getLiteralClass()
Retrieve the class of this variable's related AbleLiteral data type. |
double |
getMaxValue()
Retrieve the maximum value in the list of pre-defined values. |
double |
getMinValue()
Retrieve the minimum value in the list of pre-defined values. |
double |
getNumericValue()
Retrieve the value of this data object as a numeric value. |
java.lang.Object |
getRawValue()
Retrieve the variable's current value. |
java.lang.String |
getStringValue()
Retrieve the value of this data object as a string value. |
AbleLiteral |
getValue()
Retrieve the value of this data object as a literal. |
double |
getValueAt(int theIndex)
Retrieve the value at a specific location in the list of pre-defined values. |
java.util.Vector |
getValueList()
Retrieve the list of pre-defined values for this variable. |
int |
getValueListSize()
Retrieve the number of pre-defined values for this variable. |
java.lang.String |
getValueString()
Retrieve the variable's current value as a string. |
void |
init()
Init the variable to its initial state. |
void |
removeValue(double theValue)
Remove a value from the list of pre-defined values. |
void |
reset()
Reset the variable to its intial state. |
void |
setBooleanValue(boolean theNewValue)
Set the value of this data object from a boolean value. |
void |
setFuzzyValue(AbleFuzzySet theNewValue)
Set the value of this data object from a fuzzy value. |
void |
setGenericValue(java.lang.Object theNewValue)
Set the value of this data object from an object. |
void |
setInitialValue(AbleRd theInitialValue)
Set the initial value for this variable |
void |
setNumericValue(double theNewValue)
Set the value of this data object from a numeric value. |
void |
setStringValue(java.lang.String theNewValue)
Set the value of this data object from a string value. |
void |
setValue(AbleLiteral theNewValue)
Set the value of this data object from a literal object. |
void |
setValueList(java.util.Vector theNewValueList)
Set the list of pre-defined values, any one of which may be assigned to the current value of this variable. |
void |
setValueString(java.lang.String theNewValue)
Set the variable's current value from a string. |
java.lang.String |
toString()
Retrieve a string describing (the contents of) the object. |
java.lang.String |
traceString(int theTraceStringFlavor)
Retrieve a string describing (the contents of) the object. |
boolean |
valueExist(double theValue)
Determine whether a value exists in the list of pre-defined values. |
java.lang.String |
xmlDclString()
Return a formal XML "declaration" string that describes this data object. |
Methods inherited from class com.ibm.able.data.AbleTypedVariable |
---|
getDataTypeName, setRawValue |
Methods inherited from class com.ibm.able.data.AbleGenericVariable |
---|
cmpIs, compDivide, compMinus, compMultiply, compPlus, compUnaryMinus, replaceValues |
Methods inherited from class com.ibm.able.data.AbleVariable |
---|
arlCRdString, arlInitializerString, getArlComment, getChgSupport, getComment, getContext, getDataType, getDataTypeAsString, getId, getName, getPrompt, getPromptString, getReferences, getReferent, getReferents, getTemplateString, isBound, isConstant, isGlobal, isLocal, isStatic, isTemplate, notStatic, setChgSupport, setComment, setContext, setId, setPrompt, setReferences, setStatic, setTemplate, xmlCRdString, xmlCWrString, xmlInitializerString |
Methods inherited from class com.ibm.able.data.AbleLhs |
---|
asgnIs, asgnIs, bitwiseAND, bitwiseNOT, bitwiseOR, bitwiseShiftLeft, bitwiseShiftRight, bitwiseShiftRightZeroFill, bitwiseXOR, compModulo, Copyright, logicalAND, logicalNOT, logicalOR |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected double myValue
Initialized to Double.NaN.
protected java.util.Vector myValueList
protected double myInitialValue
protected boolean myMaxValueKnown
protected double myMaxValue
protected boolean myMinValueKnown
protected double myMinValue
Constructor Detail |
public AbleDiscreteVariable(java.lang.Object[] theValueList) throws AbleDataException
The initial value of this variable is set to Double.NaN.
theValueList
- A list of numbers (AbleLiteral objects representing numeric values),
any one of which can be the current value of this variable.
public AbleDiscreteVariable(java.util.Vector theValueList) throws AbleDataException
The initial value of this variable is set to Double.NaN.
theValueList
- A list of numbers (Double objects),
any one of which can be the current value of this variable.
The list is cloned.
public AbleDiscreteVariable(java.lang.Object[] theValueList, double theInitialValue) throws AbleDataException
theValueList
- A list of numbers (AbleLiteral objects representing Double value),
any one of which can be the current value of this variable.
theInitialValue
- The initial value for this variable. Must be a member of
theValueList.public AbleDiscreteVariable(java.util.Vector theValueList, double theInitialValue) throws AbleDataException
theValueList
- A list of numbers (Double objects),
any one of which can be the current value of this variable.
The list is cloned.
theInitialValue
- The initial value for this variable. Must be a member of
theValueList.public AbleDiscreteVariable(java.lang.String theName, java.util.Vector theValueList)
The initial value of this variable cannot be specified and is set to Double.NaN.
theName
- The unique name of the variable.
theValueList
- A list of numbers (Double objects), any one of which
can be the current value of this variable.
The list is cloned.
public AbleDiscreteVariable(java.lang.String theName, boolean theStaticFlag, boolean theGlobalFlag, java.util.Vector theValueList)
The initial value of this variable cannot be specified and is set to Double.NaN.
theName
- The unique name of the variable.
theStaticFlag
- Use true if this variable is to be marked as
static, which means that it will ignore future reset
requests; use false if the variable can be
reset to its initial value when requested.
theGlobalFlag
- Use true if this variable is to be considered
global;
use false if the variable is to be considered
local.
theValueList
- A list of numbers (Double objects), any one of which
can be the current value of this variable.
The list is cloned.
public AbleDiscreteVariable(java.lang.String theName)
The initial value of this variable cannot be specified and is set to Double.NaN.
theName
- The unique name of the variable.
Method Detail |
public boolean getBooleanValue() throws AbleDataException
getBooleanValue
in class AbleGenericVariable
AbleDataException
- If the value of this object cannot be represented as
a boolean value.public AbleFuzzySet getFuzzyValue() throws AbleDataException
getFuzzyValue
in class AbleGenericVariable
AbleDataException
- If the value of this object cannot be represented as
a fuzzy value.public java.lang.Object getGenericValue() throws AbleDataException
getGenericValue
in class AbleGenericVariable
AbleDataException
- If the value of this object cannot be represented as
an Object.public double getNumericValue() throws AbleDataException
getNumericValue
in class AbleGenericVariable
AbleDataException
- If the value of this object cannot be represented as
a numeric value.public java.lang.String getStringValue() throws AbleDataException
getStringValue
in class AbleGenericVariable
AbleDataException
- If the value of this object cannot be represented as
a string value.public AbleLiteral getValue() throws AbleDataException
getValue
in class AbleGenericVariable
AbleDataException
- If the value of this object cannot be represented as
a literal.public void asgnEq(AbleRd theRhs) throws AbleDataException
asgnEq
in class AbleGenericVariable
theRhs
- The right-hand, or source, side of the assignment.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and assigned to this data object.public boolean cmpEq(AbleRd theRhs) throws AbleDataException
"==" is used for numeric and boolean compares; equals() is used for Object compares; and Collator.equals() is used for String compares.
cmpEq
in class AbleGenericVariable
theRhs
- The right-hand side of the comparison.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and compared to this data object.public boolean cmpGt(AbleRd theRhs) throws AbleDataException
">" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.
cmpGt
in class AbleGenericVariable
theRhs
- The right-hand side of the comparison.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and compared to this data object.public boolean cmpGtEq(AbleRd theRhs) throws AbleDataException
">=" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.
cmpGtEq
in class AbleGenericVariable
theRhs
- The right-hand side of the comparison.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and compared to this data object.public boolean cmpLt(AbleRd theRhs) throws AbleDataException
"<" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.
cmpLt
in class AbleGenericVariable
theRhs
- The right-hand side of the comparison.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and compared to this data object.public boolean cmpLtEq(AbleRd theRhs) throws AbleDataException
"<=" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.
cmpLtEq
in class AbleGenericVariable
theRhs
- The right-hand side of the comparison.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and compared to this data object.public boolean cmpNeq(AbleRd theRhs) throws AbleDataException
"!=" is used for numeric and boolean compares; ! equals() is used for Object compares; and ! Collator.equals() is used for String compares.
cmpNeq
in class AbleGenericVariable
theRhs
- The right-hand side of the comparison.
AbleDataException
- If the right-hand side cannot be converted (if
necessary) and compared to this data object.public void setBooleanValue(boolean theNewValue) throws AbleDataException
setBooleanValue
in class AbleGenericVariable
theNewValue
- A boolean value.
If the new value is true the variable is set to
1.0, but only if 1.0 is a valid pre-defined number for
this variable;
if the new value is false the variable is set to
0.0, but only if 0.0 is a valid pre-defined number;
in all other cases an exception is thrown.
AbleDataException
- If the value of this object cannot be represented as
a boolean value.public void setFuzzyValue(AbleFuzzySet theNewValue) throws AbleDataException
setFuzzyValue
in class AbleGenericVariable
theNewValue
- A fuzzy set.
AbleDataException
- If the value of this object cannot be represented as
a fuzzy value.public void setGenericValue(java.lang.Object theNewValue) throws AbleDataException
setGenericValue
in class AbleGenericVariable
theNewValue
- Any type of Object.
AbleDataException
- If the value of this object cannot be derived from
the specified Object.public void setNumericValue(double theNewValue) throws AbleDataException
setNumericValue
in class AbleGenericVariable
theNewValue
- Any number.
The variable is set to the new value, but only if that
value is a pre-defined number of the variable;
otherwise an exception is thrown.
AbleDataException
- If the value of this object cannot be represented as
a numeric value.public void setStringValue(java.lang.String theNewValue) throws AbleDataException
setStringValue
in class AbleTypedVariable
theNewValue
- A string.
The variable is set to the value of the string, but
only if the string can be parsed to a double and that
number is a pre-defined number of the variable;
otherwise an exception is thrown.
AbleDataException
- If the value of this object cannot be represented as
a string value.public void setValue(AbleLiteral theNewValue) throws AbleDataException
setValue
in class AbleGenericVariable
theNewValue
- An Able literal of any type. An attempt is made to
convert the literal to an appropriate type before
assigning it to this "writable" object.
AbleDataException
- If the value of this object cannot be determined
from the literal object.public java.lang.String arlDclString()
arlDclString
in class AbleTypedVariable
public java.lang.String xmlDclString()
xmlDclString
in class AbleTypedVariable
public void setValueString(java.lang.String theNewValue) throws AbleDataException
setValueString
in class AbleGenericVariable
public java.lang.String getValueString()
getValueString
in class AbleGenericVariable
public void reset() throws AbleDataException
reset
in class AbleTypedVariable
public void init() throws AbleDataException
init
in class AbleTypedVariable
public java.lang.Class getDataTypeClass()
AbleLhs
getDataTypeClass
in class AbleTypedVariable
com.ibm.able.data.AbleLhs
public java.lang.String getDataTypeClassName()
AbleLhs
getDataTypeClassName
in class AbleTypedVariable
com.ibm.able.data.AbleLhs
public java.lang.Class getLiteralClass()
getLiteralClass
in class AbleGenericVariable
public void setInitialValue(AbleRd theInitialValue) throws AbleDataException
setInitialValue
in class AbleVariable
theInitialValue
- An AbleCategoricalVariable used to set the initial valuepublic java.lang.Object getRawValue()
public void setValueList(java.util.Vector theNewValueList)
If the current value of this variable does not appear in the new value list, the current value is set to Double.NaN.
theNewValueList
- A list where each element is a Double object.
The input list is cloned and saved.
public java.util.Vector getValueList()
public int getValueListSize()
public boolean valueExist(double theValue)
theValue
- A value whose existence in the list of pre-defined
values is to be determined.
public void addValue(double theValue) throws AbleDataException
theValue
- A value to add to the list of pre-defined values.
AbleDataException
- if the specified value already exists in the list.public void removeValue(double theValue) throws AbleDataException
If the current value of this variable corresponds to the value being removed, the current value is set to Double.NaN.
theValue
- A value to remove from the list of pre-defined
values.
AbleDataException
- if the specified value does not exist in the list.public int getIndexOf(double theValue) throws AbleDataException
theValue
- A value whose index is to be returned.
AbleDataException
- if the specified value does not exist in the list.public double getValueAt(int theIndex) throws AbleDataException
theIndex
- The location whose value is to be returned.
AbleDataException
- if the specified location is out of bounds.public double getMaxValue()
If the value is already known, it is simply returned. If the value is not known, it is computed, which can possibly be time consuming depending on the size of the list of pre-defined values. Any change to the list, by adding or removing elements with the provided methods, means that the value will need to be recomputed.
If the user obtains a direct reference to the list by means of the getValueList() method, and then manipulates the list directly, this method will not return the correct value.
public double getMinValue()
If the value is already known, it is simply returned. If the value is not known, it is computed, which can possibly be time consuming depending on the size of the list of pre-defined values. Any change to the list, by adding or removing elements with the provided methods, means that the value will need to be recomputed.
If the user obtains a direct reference to the list by means of the getValueList() method, and then manipulates the list directly, this method will not return the correct value.
public java.lang.String toString()
toString
in class AbleTypedVariable
public java.lang.String traceString(int theTraceStringFlavor)
traceString
in class AbleTypedVariable
theFlavor
- An Able.TraceStringFlavor value.
|
ABLE 2.0.0 07/02/2003 10:25:01 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |