org.primordion.cellontro.app
Class XhCell

java.lang.Object
  extended byorg.primordion.xholon.base.Xholon
      extended byorg.primordion.xholon.base.XholonWithPorts
          extended byorg.primordion.cellontro.app.XhCell
All Implemented Interfaces:
IBioXholon, IXholon

public class XhCell
extends XholonWithPorts
implements IBioXholon

An instance of XhCell represents some biological entity, and exists as a node in a composite structure hierarchy tree. Each such Xholon object goes through an initial configure() process, and may subsequently go through a regular act() process at each time step.

At configure() time (Basic Cell Model):

At act() time (Basic Cell Model):

An enzyme active object is a simple abstraction of a biological enzyme that acts on small molecules contained within the same internal space. A bilayer is a simple abstraction of a biological membrane (lipid bilayer) that moves small molecules between its internal space and the space external to it. A transport protein is a simple abstraction that acts much like a bilayer.

TODO Align this application with XhAbstractSbml, and with Xh apps generated from external SBML.

TODO Allow the kinetics to be readily exportable in SBML format.

Since:
0.1 (Created on July 8, 2005)
Author:
Ken Webb

Field Summary
static int P_SM_ACT1
           
static int P_SM_COE1
           
static int P_SM_COE2
           
static int P_SM_EXT1
           
static int P_SM_EXT2
           
static int P_SM_EXT3
           
static int P_SM_EXT4
           
static int P_SM_INH1
           
static int P_SM_INT1
           
static int P_SM_INT2
           
static int P_SM_INT3
           
static int P_SM_INT4
           
static int P_SM_PRD1
           
static int P_SM_PRD2
           
static int P_SM_SUB1
           
static int P_SM_SUB2
           
 double pheneVal
           
 java.lang.String roleName
           
 java.lang.SecurityException securityException
           
 int state
           
 
Fields inherited from class org.primordion.xholon.base.XholonWithPorts
port
 
Fields inherited from class org.primordion.xholon.base.Xholon
DEFAULT_LEVEL, interaction, interactionsEnabled
 
Fields inherited from interface org.primordion.xholon.base.IXholon
DEFAULT_SIZE_MSG_Q, NINCLUDE_PSC, NINCLUDE_PSx, NINCLUDE_PxC, NINCLUDE_Pxx, NINCLUDE_xSC, NINCLUDE_xSx, NINCLUDE_xxC, NINCLUDE_xxx
 
Constructor Summary
XhCell()
          Constructor.
 
Method Summary
 void act()
          Do some action during this time step.
 void configure()
          Perform some action, typically once at start up; MAY be overridden.
 void decPheneVal(double decAmount)
          Decrement the phene value by incAmount.
 int getNumModifiers()
          Get maximum number of modifiers (activator, inhibitor) that any xholon instance may have in this model.
 int getNumProducts()
          Get maximum number of products that any xholon instance may have in this model.
 int getNumReactants()
          Get maximum number of reactants (substrates) that any xholon instance may have in this model.
 double getPheneVal()
          Get phene value.
 java.lang.String getRoleName()
          Get name of the role played by this Xholon within a specific context.
 double getVal()
          Get the value of a "double" maintained by this xholon instance.
 void incPheneVal(double incAmount)
          Increment the phene value by incAmount.
 void initialize()
          Initialize the tree node.
 void postAct()
          Do any required work after doing the main action during a time step.
 void preAct()
          Do any setup required before doing the main action during a time step.
 void setNumModifiers(int numM)
          Set maximum number of modifiers (activator, inhibitor) that any xholon instance may have in this model.
 void setNumProducts(int numP)
          Set maximum number of products that any xholon instance may have in this model.
 void setNumReactants(int numR)
          Set maximum number of reactants (substrates) that any xholon instance may have in this model.
 void setRoleName(java.lang.String roleName)
          Set name of the role played by this Xholon within a specific context.
 java.lang.String toString()
          Search for instances of Xholon with ports that reference this instance.
 
Methods inherited from class org.primordion.xholon.base.XholonWithPorts
getMaxPorts, getPort, isActiveObject, isBound, isContainer, isPassiveObject, postConfigure, setMaxPorts, setPorts, terminate
 
Methods inherited from class org.primordion.xholon.base.Xholon
appendChild, appendChild, appendChild, cleanup, configure, createStructure, decVal, decVal, depth, draw, getChildNodes, getFirstChild, getFirstSibling, getId, getLastChild, getLastSibling, getName, getNeighbors, getNextId, getNextSibling, getNthChild, getNthSibling, getNumChildren, getNumSiblings, getParentNode, getPreviousSibling, getRootNode, getSiblings, getSizeMessageQ, getUid, getVal_boolean, getVal_byte, getVal_char, getVal_double, getVal_float, getVal_int, getVal_long, getVal_Object, getVal_short, getVal_String, getXhc, getXhcId, getXhcName, getXhType, handleNodeSelection, hasAncestor, hasChildNodes, hasChildOrSiblingNodes, hasNextSibling, hasParentNode, height, incVal, incVal, initStatics, inOrderPrint, insertAfter, insertBefore, insertFirstChild, isExternal, isInternal, isLeaf, isRootNode, performActivity, performActivity, performBooleanActivity, performBooleanActivity, performDoubleActivity, performGuard, performVoidActivity, postOrderPrint, postReconfigure, preConfigure, preOrderPrint, preReconfigure, print, println, processMessageQ, processReceivedMessage, reconfigure, remove, removeChild, resetNextId, sendMessage, sendMessage, sendMessage, setAttributeVal, setFactory, setFirstChild, setId, setNextSibling, setParentChildLinks, setParentNode, setParentSiblingLinks, setSizeMessageQ, setUid, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVariableValue, setXhc, swapNode, treeSize, writeXml
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.primordion.xholon.base.IXholon
appendChild, appendChild, appendChild, cleanup, configure, createStructure, decVal, decVal, depth, draw, getChildNodes, getFirstChild, getFirstSibling, getId, getLastChild, getLastSibling, getName, getNeighbors, getNextSibling, getNthChild, getNthSibling, getNumChildren, getNumSiblings, getParentNode, getPort, getPreviousSibling, getRootNode, getSiblings, getUid, getVal_boolean, getVal_byte, getVal_char, getVal_double, getVal_float, getVal_int, getVal_long, getVal_Object, getVal_short, getVal_String, getXhc, getXhcId, getXhcName, getXhType, handleNodeSelection, hasAncestor, hasChildNodes, hasChildOrSiblingNodes, hasNextSibling, hasParentNode, height, incVal, incVal, initStatics, inOrderPrint, insertAfter, insertBefore, insertFirstChild, isActiveObject, isBound, isContainer, isExternal, isInternal, isLeaf, isPassiveObject, isRootNode, performActivity, performActivity, performBooleanActivity, performBooleanActivity, performDoubleActivity, performGuard, performVoidActivity, postConfigure, postOrderPrint, postReconfigure, preConfigure, preOrderPrint, preReconfigure, print, println, processMessageQ, processReceivedMessage, reconfigure, remove, removeChild, sendMessage, sendMessage, sendMessage, setAttributeVal, setFirstChild, setId, setNextSibling, setParentChildLinks, setParentNode, setParentSiblingLinks, setPorts, setUid, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVariableValue, setXhc, swapNode, terminate, treeSize, writeXml
 

Field Detail

P_SM_EXT1

public static final int P_SM_EXT1
See Also:
Constant Field Values

P_SM_EXT2

public static final int P_SM_EXT2
See Also:
Constant Field Values

P_SM_EXT3

public static final int P_SM_EXT3
See Also:
Constant Field Values

P_SM_EXT4

public static final int P_SM_EXT4
See Also:
Constant Field Values

P_SM_INT1

public static final int P_SM_INT1
See Also:
Constant Field Values

P_SM_INT2

public static final int P_SM_INT2
See Also:
Constant Field Values

P_SM_INT3

public static final int P_SM_INT3
See Also:
Constant Field Values

P_SM_INT4

public static final int P_SM_INT4
See Also:
Constant Field Values

P_SM_SUB1

public static final int P_SM_SUB1
See Also:
Constant Field Values

P_SM_SUB2

public static final int P_SM_SUB2
See Also:
Constant Field Values

P_SM_COE1

public static final int P_SM_COE1
See Also:
Constant Field Values

P_SM_PRD1

public static final int P_SM_PRD1
See Also:
Constant Field Values

P_SM_PRD2

public static final int P_SM_PRD2
See Also:
Constant Field Values

P_SM_COE2

public static final int P_SM_COE2
See Also:
Constant Field Values

P_SM_ACT1

public static final int P_SM_ACT1
See Also:
Constant Field Values

P_SM_INH1

public static final int P_SM_INH1
See Also:
Constant Field Values

state

public int state

roleName

public java.lang.String roleName

pheneVal

public double pheneVal

securityException

public java.lang.SecurityException securityException
Constructor Detail

XhCell

public XhCell()
Constructor.

Method Detail

initialize

public void initialize()
Description copied from interface: IXholon
Initialize the tree node. Typically this is only used to re-initialize a node, such as when it is reused through the TreeNodeFactoryStatic.

Specified by:
initialize in interface IXholon
Overrides:
initialize in class XholonWithPorts

getVal

public double getVal()
Description copied from interface: IXholon
Get the value of a "double" maintained by this xholon instance. If a class that implements this interface does not maintain such a value, it should return 0.0 This method can be used in place of getVal_double()

Specified by:
getVal in interface IXholon
Overrides:
getVal in class Xholon

getPheneVal

public double getPheneVal()
Description copied from interface: IBioXholon
Get phene value.

Specified by:
getPheneVal in interface IBioXholon
Returns:
The phenotype value.

incPheneVal

public void incPheneVal(double incAmount)
Description copied from interface: IBioXholon
Increment the phene value by incAmount.

Specified by:
incPheneVal in interface IBioXholon
Parameters:
incAmount - The amount by which to increment the phenotype value.

decPheneVal

public void decPheneVal(double decAmount)
Description copied from interface: IBioXholon
Decrement the phene value by incAmount.

Specified by:
decPheneVal in interface IBioXholon
Parameters:
decAmount - The amount by which to decrement the phenotype value.

getNumReactants

public int getNumReactants()
Description copied from interface: IBioXholon
Get maximum number of reactants (substrates) that any xholon instance may have in this model.

Specified by:
getNumReactants in interface IBioXholon
Returns:
Maximum number of reactants.

setNumReactants

public void setNumReactants(int numR)
Description copied from interface: IBioXholon
Set maximum number of reactants (substrates) that any xholon instance may have in this model.

Specified by:
setNumReactants in interface IBioXholon
Parameters:
numR - Maximum number of reactants.

getNumProducts

public int getNumProducts()
Description copied from interface: IBioXholon
Get maximum number of products that any xholon instance may have in this model.

Specified by:
getNumProducts in interface IBioXholon
Returns:
Maximum number of products.

setNumProducts

public void setNumProducts(int numP)
Description copied from interface: IBioXholon
Set maximum number of products that any xholon instance may have in this model.

Specified by:
setNumProducts in interface IBioXholon
Parameters:
numP - Maximum number of products.

getNumModifiers

public int getNumModifiers()
Description copied from interface: IBioXholon
Get maximum number of modifiers (activator, inhibitor) that any xholon instance may have in this model.

Specified by:
getNumModifiers in interface IBioXholon
Returns:
Maximum number of modifiers.

setNumModifiers

public void setNumModifiers(int numM)
Description copied from interface: IBioXholon
Set maximum number of modifiers (activator, inhibitor) that any xholon instance may have in this model.

Specified by:
setNumModifiers in interface IBioXholon
Parameters:
numM - Maximum number of modifiers.

setRoleName

public void setRoleName(java.lang.String roleName)
Description copied from interface: IXholon
Set name of the role played by this Xholon within a specific context.

Specified by:
setRoleName in interface IXholon
Overrides:
setRoleName in class Xholon

getRoleName

public java.lang.String getRoleName()
Description copied from interface: IXholon
Get name of the role played by this Xholon within a specific context.

Specified by:
getRoleName in interface IXholon
Overrides:
getRoleName in class Xholon

configure

public void configure()
Description copied from interface: IXholon
Perform some action, typically once at start up; MAY be overridden. Recursive; application should call this only for root.

Specified by:
configure in interface IXholon
Overrides:
configure in class XholonWithPorts

preAct

public void preAct()
Description copied from interface: IXholon
Do any setup required before doing the main action during a time step.

Specified by:
preAct in interface IXholon
Overrides:
preAct in class Xholon

act

public void act()
Description copied from interface: IXholon
Do some action during this time step. Typically all nodes in the tree will do their pre-actions (optional), then all will do their actions, and then all will do their post-actions (optional).

Specified by:
act in interface IXholon
Overrides:
act in class Xholon

postAct

public void postAct()
Description copied from interface: IXholon
Do any required work after doing the main action during a time step.

Specified by:
postAct in interface IXholon
Overrides:
postAct in class Xholon

toString

public java.lang.String toString()
Search for instances of Xholon with ports that reference this instance.

Overrides:
toString in class Xholon