Click on a state to view descriptions
Start Up (Batch)
This state is automatically entered when the program is started. The default module list (XML) is parsed which creates an initial set of module controls (1 per module described in the list). The program exits this state when the parsing is complete.
Transition from Start Up to Initialization
Triggered by: Automatic
Initialization (Batch)
This state is entered when the module manager constructor is called. The initial set of module controls is copied from the parser into the manager and the manger panel populates its listbox with the label for each module in that set. The program exists this state when the module manager panel is setup and ready to be displayed.
Transition from Initialization to Configure Mode
Triggered by: Automatic
Configure Mode (Interactive)
In this state the user can interact with the GUI to create and modify module configurations. Including which modules are active and how they are linked, where links represent the flow of images or mouse events. See User’s View for an overview of the how the user interacts with the program in this or Execute Mode. All changes made by the user are saved in the manager’s set of IEModuleControl objects but the IEModules themselves are not running.
Transition from Configure Mode to Execute Mode
Triggered by: User selects 'Start Modules' from the popup menu
The manager asks each active, source IEModuleControl to start up its IEModule. When the source IEModuleControls start their IEModules they will also start any modules which receive images from them. This continues downstream until all active modules are running.
Transition from Configure Mode to Save Configuration
Triggered by: User selects 'Save Config' from the popup menu
Transition from Configure Mode to Load Configuration
Triggered by: User selects 'Load Config' from the popup menu
Transition from Configure Mode to Close
Triggered by: User closes the window
Execute Mode (Interactive)
Same as Configure Mode except that changes made to IEModuleControl objects are reflected in their resp. IEModules and the user control forms associated with the active IEModules are also displayed or removed as needed.
Transition from Execute Mode to Configure Mode
Triggered by: User selects 'Stop Modules' from the popup menu
The manager instructs each IEModuleControl to kill its IEModule.
Transition from Execute Mode to Save Configuration
Triggered by: User selects 'Save Config' from the popup menu
Transition from Execute Mode to Load Configuration
Triggered by: User selects 'Load Config' from the popup menu
The current configuration is stopped as if the user selected 'Stop Modules'.
Transition from Execute Mode to Close
Triggered by: User closes the window
Note: It takes longer in this case for the modules to stop running but they eventually do.
Save Configuration (Batch)
The user is prompted to provide a location and name for the configuration file. Then a new XML document is created with the name, index, and set of image and mouse listener names for each active module. The document is saved to the configuration file indicated by the user.
Transition from Save Configuration to Configure Mode
Triggered by: Automatic
Transition from Save Configuration to Execute Mode
Triggered by: Automatic
Load Configuration (Batch)
The user is prompted for the location of the configuration file. Then the manager is reset to its original state by deactivating all module controls, removing all links, and removing any duplicate module controls. The specified configuration file is read in using a DOM scanner and the configuration settings are applied.
Transition from Load Configuration to Configure Mode
Triggered by: Automatic
Transition from Load Configuration to Execute Mode
Triggered by: Automatic
Close (Batch)
The program is closed.