frysk.gui.register
Class RegisterWindowFactory
java.lang.Object
frysk.gui.register.RegisterWindowFactory
public class RegisterWindowFactory
- extends Object
Factory for creating RegisterWindows - allows multiple RegisterWindows to be
instantiated for different processes, and disallows multiple windows on the
same process. Uses a ProcBlockCounter to co-ordinate the un-blocking of the
process between the Memory and SourceWindows if the other two are also
running on that process. A singleton class dynamically creating RegisterWindows.
Method Summary |
static void |
createRegisterWindow(Proc proc,
SteppingEngine steppingEngine)
Performs checks to ensure no other RegisterWindow is running on this Task;
if not, assigns a ProcBlockCounter and attaches an Observer if there is
no other Window already running on this Task. |
static void |
setRegWin(Proc proc)
Used by the SourceWindow to assign the static regWin object which it
uses to ensure there is only one RegisterWindow running for its Task. |
regWin
public static RegisterWindow regWin
RegisterWindowFactory
public RegisterWindowFactory()
createRegisterWindow
public static void createRegisterWindow(Proc proc,
SteppingEngine steppingEngine)
- Performs checks to ensure no other RegisterWindow is running on this Task;
if not, assigns a ProcBlockCounter and attaches an Observer if there is
no other Window already running on this Task.
- Parameters:
proc
- The Proc to be examined by the new RegisterWindow.
setRegWin
public static void setRegWin(Proc proc)
- Used by the SourceWindow to assign the static regWin object which it
uses to ensure there is only one RegisterWindow running for its Task.
- Parameters:
proc
- The Proc used to find the RegisterWindow representing it.