DRCL JavaSim API

drcl.comp
Class ForkManager

java.lang.Object
  |
  +--drcl.DrclObj
        |
        +--drcl.comp.ForkManager
All Implemented Interfaces:
java.lang.Cloneable, ObjectDuplicable, java.io.Serializable
Direct Known Subclasses:
ACARuntime

public abstract class ForkManager
extends DrclObj

Defines the base class that manages "fork" events for a component system. One may organize multiple fork managers in a runtime in a hierarchical structure.

See Also:
Serialized Form

Field Summary
protected  boolean debug
           
protected  java.lang.String name
           
protected  ForkManager parent
          Parent manager in the manager hierarchy.
protected  ACARuntime runtime
          The associated runtime instance.
 
Constructor Summary
ForkManager()
           
ForkManager(java.lang.String name_)
           
 
Method Summary
abstract  java.lang.String a_info(boolean listEvent_)
          Asynchronous version of info(boolean).
 java.lang.String a_list()
          Asynchronous version of list().
protected abstract  void childManager(ForkManager child_, double time_)
          Sets up an event for childManager.
 java.lang.String getName()
           
 ForkManager getParent()
           
 ACARuntime getRuntime()
           
 java.lang.String info(boolean listEvent_)
          Lists the fork event queue (optional) and all other information regarding this manager.
 boolean isDebugEnabled()
           
 java.lang.String list()
          Lists the fork event queue and all other information regarding this manager.
protected abstract  void off(ACATimer handle_)
          Cancels a fork event.
protected abstract  void process(WorkerThread current_, double now_)
          For a parent fork manager to notify its child manager of processing expired fork events.
protected abstract  ACATimer receive(Port p_, java.lang.Object evt_, double duration_)
          Sets up a "receive" event.
protected abstract  ACATimer receiveAt(Port p_, java.lang.Object evt_, double time_)
          Sets up a "receive" event.
 void reset()
           
protected abstract  ACATimer send(Port p_, java.lang.Object evt_, double duration_)
          Sets up a "send" event.
protected abstract  ACATimer sendAt(Port p_, java.lang.Object evt_, double time_)
          Sets up a "send" event.
 void setDebugEnabled(boolean debug_)
           
 void setName(java.lang.String name_)
           
 void setParent(ForkManager parent_)
           
 void setRuntime(ACARuntime runtime_)
           
 void takeover(Component c_)
          Takes over as the fork manager of the component system under c_.
 void takeover(Component c_, boolean asParent_)
          Takes over as the fork manager of the component system under c_.
 java.lang.String toString()
           
 
Methods inherited from class drcl.DrclObj
clone, duplicate
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

debug

protected boolean debug

name

protected java.lang.String name

runtime

protected ACARuntime runtime
The associated runtime instance.

parent

protected ForkManager parent
Parent manager in the manager hierarchy.
Constructor Detail

ForkManager

public ForkManager()

ForkManager

public ForkManager(java.lang.String name_)
Method Detail

toString

public java.lang.String toString()
Overrides:
toString in class DrclObj

setDebugEnabled

public void setDebugEnabled(boolean debug_)

isDebugEnabled

public boolean isDebugEnabled()

getName

public java.lang.String getName()

setName

public void setName(java.lang.String name_)

takeover

public void takeover(Component c_)
Takes over as the fork manager of the component system under c_.

takeover

public void takeover(Component c_,
                     boolean asParent_)
Takes over as the fork manager of the component system under c_.

reset

public void reset()

list

public final java.lang.String list()
Lists the fork event queue and all other information regarding this manager.

info

public final java.lang.String info(boolean listEvent_)
Lists the fork event queue (optional) and all other information regarding this manager.

a_list

public final java.lang.String a_list()
Asynchronous version of list().

a_info

public abstract java.lang.String a_info(boolean listEvent_)
Asynchronous version of info(boolean).

receive

protected abstract ACATimer receive(Port p_,
                                    java.lang.Object evt_,
                                    double duration_)
Sets up a "receive" event.
Returns:
a handle to cancel the event.

receiveAt

protected abstract ACATimer receiveAt(Port p_,
                                      java.lang.Object evt_,
                                      double time_)
Sets up a "receive" event.
Returns:
a handle to cancel the event.

send

protected abstract ACATimer send(Port p_,
                                 java.lang.Object evt_,
                                 double duration_)
Sets up a "send" event.
Returns:
a handle to cancel the event.

sendAt

protected abstract ACATimer sendAt(Port p_,
                                   java.lang.Object evt_,
                                   double time_)
Sets up a "send" event.
Returns:
a handle to cancel the event.

childManager

protected abstract void childManager(ForkManager child_,
                                     double time_)
Sets up an event for childManager. A child manager calls this method of its parent to sets itself up in parent's event queue.

off

protected abstract void off(ACATimer handle_)
Cancels a fork event.

process

protected abstract void process(WorkerThread current_,
                                double now_)
For a parent fork manager to notify its child manager of processing expired fork events.

getParent

public ForkManager getParent()

setParent

public void setParent(ForkManager parent_)

setRuntime

public void setRuntime(ACARuntime runtime_)

getRuntime

public ACARuntime getRuntime()

DRCL JavaSim API

Copyright © 2001 - DRCL, OSU     ~ Back to JavaSim Home ~