12.01.2014 Views

User Interface Service Software Developerís Guide - Hitech Projects

User Interface Service Software Developerís Guide - Hitech Projects

User Interface Service Software Developerís Guide - Hitech Projects

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

January 2008<br />

Public<br />

interface inputs. They can also retrieve information about a current view that is active in the<br />

user interface. Further, PI-components must implement interface IUIClient in order to receive<br />

information about state changes, changes with respect to the valid value range or to be<br />

informed when a specific piece of information is not shown. Moreover, the IP-components are<br />

informed via this interface what information is to be shown on the screen and which navigation<br />

options the user has.<br />

<strong>Interface</strong> I<strong>User</strong>Management is used to attach user management components. Form the user<br />

profile the user specific navigation model is retrieved.<br />

<strong>Interface</strong> IKnowledgeBase is exploited to interface knowledge bases to the system. Via this<br />

interface, new knowledge can be added to the system. This covers adding concepts and<br />

statements. Finally, information can be retrieved from the knowledge base via this interface as<br />

well.<br />

The interface IUI<strong>Service</strong>Control can be used to control the behavior of the UI-service. For<br />

example, using this interface, PI-components can be coupled, user can be logged in or out<br />

and statements can be added to the environmental model. If PI-components are coupled, they<br />

behave the same. I.e., the show the same information to the user and also present him or her<br />

with the same navigation options. This may be useful if there are several display in the range<br />

of the user giving him or her the options to freely choose between the them. Moreover, the<br />

user may even change the interaction device on the fly.<br />

3.9.2 Classes of the UI-<strong>Service</strong><br />

Figure 6 shows the main classes of the UI-service. Class UIMain implements the singleton<br />

pattern. The appropriate instance is created via the Activator class. UIMain creates further<br />

objects needed by the service. Important classes of the UI-service are:<br />

• <strong>Service</strong> Manager: The service manager also belongs to the singleton pattern. It is<br />

responsible for administration and communication with services and devices. <strong>Service</strong>s<br />

inform the <strong>Service</strong>Manager about state changes using class <strong>Service</strong>ActionManager.<br />

• <strong>Service</strong>ActionManager: There is also only a single instance of class<br />

SeviceActionManager. The class receives information about changes of internal<br />

variables of services or devices. The instance then determines those PI-components<br />

that are affected by the propagated change und further propagates the information to<br />

other components.<br />

• Internal<strong>Service</strong>List: This class is used to manage the registered services.<br />

• UIClientManger: This class implements the interface to register PI-components. For<br />

each registered component this class generates a VirtualUIClient instance which is<br />

used to control the component.<br />

• VirtualUIClient: Instances of the class VirtualUIClient represent PI-components. Hence,<br />

for each PI-component an instance is created to control the component. Class<br />

VirtualUIClient implements IUIConnector which is used for communication with the<br />

associated PI-component.<br />

• <strong>User</strong>InputManager: All user input is processed by an instance of <strong>User</strong>InputManager. If<br />

the user is operating a navigation element, then the instance informs the corresponding<br />

instances of class VirtualUIClient. Otherwise, if the input changes a value, then the<br />

input is forwarded to the appropriate instance of class <strong>Service</strong>Manager.<br />

• UI<strong>Service</strong>Controller: This class can be used to control the behavior of the UI-service.<br />

For example, PI-components can be coupled, user can be logged in or out and<br />

statements can be added to the environmental model.<br />

Amigo IST-2004-004182 103/114

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!