public class States extends EventGenerator
EVENT_TYPE events
 and allows to retrieve for each state its current value. Each instance can manage at most 256 states and
 each state can have a value between 0 and 255.0 and getNumberOfStates()-1| Modifier and Type | Field and Description | 
|---|---|
static int | 
EVENT_TYPE
The STATE event type returned by  
getEventType(). | 
| Constructor and Description | 
|---|
States(int[] nbValues,
      int[] initialValues)
Creates a states generator. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
int | 
buildEvent(int stateId,
          int value)
Builds a MicroUI event for the given state identifier on its value. 
 | 
int | 
getCurrentValue(int stateId)
Gets the current value of the given state. 
 | 
int | 
getEventType()
Gets the event type associated with the event generator. 
 | 
int | 
getNumberOfStates()
Gets the number of states managed by this instance. 
 | 
int | 
getNumberOfValues(int stateId)
Gets the total number of values for the given state. 
 | 
static int | 
getStateId(int event)
Gets the state's identifier held by the state event. 
 | 
static int | 
getStateValue(int event)
Gets the state's value held by the state event. 
 | 
void | 
send(int stateId,
    int value)
Stores the given state value and sends a MicroUI  
EVENT_TYPE to the States's listener. | 
addToSystemPool, get, get, get, getEventHandler, getId, removeFromSystemPool, sendEvent, setEventHandlerpublic static final int EVENT_TYPE
getEventType().public States(int[] nbValues,
              int[] initialValues)
nbValues - number of values for each state.initialValues - initial value for each state.IllegalArgumentException - if both arrays don't have the same length.IndexOutOfBoundsException - if arrays length is greater than 255.IndexOutOfBoundsException - if nbValues[i] < 0 or nbValues[i] > 255.IndexOutOfBoundsException - if initialValues[i] < 0 or initialValues[i] >= nbValues[i].public int buildEvent(int stateId,
                      int value)
stateId - the state identifier value.value - the new state valuepublic int getCurrentValue(int stateId)
stateId - the state identifier value.0 and getNumberOfValues(int)-1.IndexOutOfBoundsException - when stateId is out of [0,getNumberOfStates()-1].public int getEventType()
EVENT_TYPE.getEventType in class EventGeneratorpublic int getNumberOfStates()
public int getNumberOfValues(int stateId)
stateId - the state identifier value.IndexOutOfBoundsException - when stateId is out of [0,getNumberOfStates()-1].public static int getStateId(int event)
event - the state event to decode.0 and 255.public static int getStateValue(int event)
event - the state event to decode.0 and 255.public void send(int stateId,
                 int value)
EVENT_TYPE to the States's listener.stateId - the state identifier value.value - the new state valueIndexOutOfBoundsException - when stateId is out of [0,getNumberOfStates()-1].IndexOutOfBoundsException - when value is out of [0,getNumberOfValues(int)-1].