public class PercentageInStateStat
extends java.lang.Object
implements java.beans.PropertyChangeListener
| Modifier and Type | Field and Description |
|---|---|
protected java.lang.Object |
currentState |
private java.lang.Object |
initialState |
protected double |
lastTime |
private java.text.NumberFormat |
numberFormat |
private java.lang.String |
propertyName |
protected int |
stateNameLength |
protected java.util.Map<java.lang.Object,java.lang.Double> |
stateStats |
| Constructor and Description |
|---|
PercentageInStateStat(java.lang.String propertyName)
Does not set the initial state.
|
PercentageInStateStat(java.lang.String propertyName,
java.lang.Object initialState)
Instantiate a PercentageInState with given name and initial state
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
getCurrentState() |
java.lang.Object |
getInitialState() |
double |
getLastTime() |
java.text.NumberFormat |
getNumberFormat() |
java.lang.Object[] |
getObservedStates() |
double |
getPercentageFor(java.lang.Object state) |
java.lang.String |
getPropertyName() |
int |
getStateNameLength() |
java.util.Map<java.lang.Object,java.lang.Double> |
getStateStats() |
void |
newObservation(java.lang.Object newState)
Update statistics on old state; set newState and lastTime
|
void |
propertyChange(java.beans.PropertyChangeEvent propertyChangeEvent)
If this is my state name, call newObservation() with newValue
|
void |
reset()
Should be called after Schedule.reset().
|
void |
setInitialState(java.lang.Object initialState) |
void |
setNumberFormat(java.text.NumberFormat numberFormat) |
void |
setPropertyName(java.lang.String propertyName) |
java.lang.String |
stateString() |
private java.text.NumberFormat numberFormat
private java.lang.Object initialState
private java.lang.String propertyName
protected java.util.Map<java.lang.Object,java.lang.Double> stateStats
protected java.lang.Object currentState
protected double lastTime
protected int stateNameLength
public PercentageInStateStat(java.lang.String propertyName,
java.lang.Object initialState)
propertyName - Name of the property to be listened forinitialState - Initial state, set in reset()public PercentageInStateStat(java.lang.String propertyName)
propertyName - Name of the property to be listened forpublic final void reset()
public void propertyChange(java.beans.PropertyChangeEvent propertyChangeEvent)
propertyChange in interface java.beans.PropertyChangeListenerpropertyChangeEvent - Heard PropertyChangeEventpublic void newObservation(java.lang.Object newState)
newState - New Statepublic java.lang.Object getInitialState()
public final void setInitialState(java.lang.Object initialState)
public java.lang.String stateString()
public java.util.Map<java.lang.Object,java.lang.Double> getStateStats()
public java.lang.Object getCurrentState()
public java.lang.String getPropertyName()
public final void setPropertyName(java.lang.String propertyName)
public double getLastTime()
public java.lang.Object[] getObservedStates()
public double getPercentageFor(java.lang.Object state)
public int getStateNameLength()
public java.text.NumberFormat getNumberFormat()
public final void setNumberFormat(java.text.NumberFormat numberFormat)