Graham also received some more of the hardware components and has started constructing the headset. In the meantime, I am working on the central router application.

As well as the routing capabilities, I have created a simple state machine. A configuration file, containing a list of state transitions, can be loaded by the application and events triggered (or even routing of components) would depend on the current state. Changing state when the user is within a certain radius of specified locations is something else planned for this aspect of the program, as we foresee that (location based state changes) to be an integral part of a large number of potential applications. For example, the waypoint demonstration application could be almost entirely implemented using only a number of state transitions.
The state transition configuration file is described in more detail in the functional specification. The basic layout is a list of entries (one per line), in the following syntax:
current_state x y z radius next_stateThis means that a transition occurs from state current_state to next_state if the person is within radius of the position (x, y, z). To create the waypoint application, a state transition file would simply be set up to contain a sequential list of state transitions.
The application also gets notified when a state transition occurs, so that it can perform some extra action when it happens.
No comments:
Post a Comment