frysk.gui.disassembler
Class DisassemblyWindowFactory

java.lang.Object
  extended by frysk.gui.disassembler.DisassemblyWindowFactory

public class DisassemblyWindowFactory
extends Object

Factory for creating DisassemblyWindows - allows multiple DisassemblyWindows 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 Register and SourceWindows if the other two are also running on that process. A singleton class dynamically creating DisassemblyWindows.


Field Summary
static DisassemblyWindow disWin
           
 
Constructor Summary
DisassemblyWindowFactory()
           
 
Method Summary
static void createDisassemblyWindow(Proc proc, SteppingEngine steppingEngine)
          Performs checks to ensure no other DisassemblyWindow is running on this Task; if not, assigns a ProcBlockCounter and attaches an Observer if there is no other Window already running on this Proc.
static void setDisWin(Proc proc)
          Used by the SourceWindow to assign the static memWin object which it uses to ensure there is only one DisassemblyWindow running for its Proc.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

disWin

public static DisassemblyWindow disWin
Constructor Detail

DisassemblyWindowFactory

public DisassemblyWindowFactory()
Method Detail

createDisassemblyWindow

public static void createDisassemblyWindow(Proc proc,
                                           SteppingEngine steppingEngine)
Performs checks to ensure no other DisassemblyWindow is running on this Task; if not, assigns a ProcBlockCounter and attaches an Observer if there is no other Window already running on this Proc.

Parameters:
proc - The Proc to be examined by the new DisassemblyWindow.

setDisWin

public static void setDisWin(Proc proc)
Used by the SourceWindow to assign the static memWin object which it uses to ensure there is only one DisassemblyWindow running for its Proc.

Parameters:
proc - The Proc used to find the DisassemblyWindow representing it.