org.primordion.xholon.samples
Class AppPingPong

java.lang.Object
  extended byorg.primordion.xholon.base.Xholon
      extended byorg.primordion.xholon.app.Application
          extended byorg.primordion.xholon.samples.AppPingPong
All Implemented Interfaces:
IApplication, IXholon

public class AppPingPong
extends Application

Ping Pong. This is a sample Xholon application.

Two active objects of the same class collaborate to count from 0 to 19. They coordinate their behaviors by writing directly into each others public variables, through ports. Compare this with the Hello World tutorial in which two active objects collaborate by passing messages through ports.

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

Nested Class Summary
 
Nested classes inherited from class org.primordion.xholon.app.Application
Application.GridViewerDetails
 
Field Summary
 
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
AppPingPong()
          Constructor.
 
Method Summary
static void main(java.lang.String[] args)
          main
 void process()
          Process time steps during the lifetime of the application.
 
Methods inherited from class org.primordion.xholon.app.Application
about, appMain, getApplication, getAppM, getAppRoot, getClass, getClassDetailsFile, getCompositeStructureHierarchyFile, getControllerState, getDataPlotterParams, getErrorM, getGraphicalNetworkViewerClassName, getGraphicalNetworkViewerParams, getGraphicalTreeViewerParams, getGridPanelClassName, getHistogramPlotterParams, getInfoM, getInformationFile, getInheritanceHierarchyFile, getInteractionParams, getJavaActivityClassName, getJavaClassName, getJavaXhClassClassName, getJavaXhClassName, getMaxActivities, getMaxPorts, getMaxProcessLoops, getMaxStateMachineEntities, getMaxXholonClasses, getMaxXholons, getModelName, getRandomNumberSeed, getRoot, getSaveSnapshots, getSizeMessageQueue, getSnapshotParams, getTimeStepInterval, getTreeNodeFactoryDynamic, getUseDataPlotter, getUseGnuplot_Hist, getUseGnuplot, getUseGraphicalNetworkViewer, getUseGraphicalTreeViewer, getUseGridViewer, getUseHistogramPlotter, getUseInteractions, getUseJFreeChart_Hist, getUseJFreeChart, getUseTextTree, getUseVrml, getVrmlParams, getVrmlWriterClassName, getXhymAgent, getXincludePath, information, initControl, initGui, initialize, initViewers, invokeDataPlotter, invokeGraphicalNetworkViewer, invokeGraphicalNetworkViewer, invokeGraphicalTreeViewer, invokeGraphicalTreeViewer, invokeHistogramPlotter, invokeInteraction, readConfigFromFileXml, resetViewers, saveSnapshot, setApplication, setAppM, setClassDetailsFile, setCompositeStructureHierarchyFile, setControllerState, setDataPlotterParams, setErrorM, setGraphicalNetworkViewerClassName, setGraphicalNetworkViewerParams, setGraphicalTreeViewerParams, setGridPanelClassName, setGridViewerParams, setHistogramPlotterParams, setInfoM, setInformationFile, setInheritanceHierarchyFile, setInteractionParams, setJavaActivityClassName, setJavaClassName, setJavaXhClassClassName, setJavaXhClassName, setMaxActivities, setMaxPorts, setMaxProcessLoops, setMaxStateMachineEntities, setMaxXholonClasses, setMaxXholons, setModelName, setParam, setRandomNumberSeed, setSaveSnapshots, setSizeMessageQueue, setSnapshotParams, setTimeStepInterval, setTreeNodeFactoryDynamic, setUseDataPlotter, setUseGraphicalNetworkViewer, setUseGraphicalTreeViewer, setUseGridViewer, setUseHistogramPlotter, setUseInteractions, setUseTextTree, setUseVrml, setVrmlParams, setVrmlWriterClassName, setXhymAgent, setXincludePath, wrapup
 
Methods inherited from class org.primordion.xholon.base.Xholon
act, appendChild, appendChild, appendChild, cleanup, configure, configure, createStructure, decVal, decVal, depth, draw, getChildNodes, getFirstChild, getFirstSibling, getId, getLastChild, getLastSibling, getName, getNeighbors, getNextId, getNextSibling, getNthChild, getNthSibling, getNumChildren, getNumSiblings, getParentNode, getPort, getPreviousSibling, getRoleName, getRootNode, getSiblings, getSizeMessageQ, getUid, getVal_boolean, getVal_byte, getVal_char, getVal_double, getVal_float, getVal_int, getVal_long, getVal_Object, getVal_short, getVal_String, getVal, getXhc, getXhcId, getXhcName, getXhType, handleNodeSelection, hasAncestor, hasChildNodes, hasChildOrSiblingNodes, hasNextSibling, hasParentNode, height, incVal, incVal, initialize, initStatics, inOrderPrint, insertAfter, insertBefore, insertFirstChild, isActiveObject, isBound, isContainer, isExternal, isInternal, isLeaf, isPassiveObject, isRootNode, performActivity, performActivity, performBooleanActivity, performBooleanActivity, performDoubleActivity, performGuard, performVoidActivity, postAct, postConfigure, postOrderPrint, postReconfigure, preAct, preConfigure, preOrderPrint, preReconfigure, print, println, processMessageQ, processReceivedMessage, reconfigure, remove, removeChild, resetNextId, sendMessage, sendMessage, sendMessage, setAttributeVal, setFactory, setFirstChild, setId, setNextSibling, setParentChildLinks, setParentNode, setParentSiblingLinks, setPorts, setRoleName, setSizeMessageQ, setUid, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVariableValue, setXhc, swapNode, terminate, toString, 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
act, appendChild, appendChild, appendChild, cleanup, configure, configure, createStructure, decVal, decVal, depth, draw, getChildNodes, getFirstChild, getFirstSibling, getId, getLastChild, getLastSibling, getName, getNeighbors, getNextSibling, getNthChild, getNthSibling, getNumChildren, getNumSiblings, getParentNode, getPort, getPreviousSibling, getRoleName, getRootNode, getSiblings, getUid, getVal_boolean, getVal_byte, getVal_char, getVal_double, getVal_float, getVal_int, getVal_long, getVal_Object, getVal_short, getVal_String, getVal, getXhc, getXhcId, getXhcName, getXhType, handleNodeSelection, hasAncestor, hasChildNodes, hasChildOrSiblingNodes, hasNextSibling, hasParentNode, height, incVal, incVal, initialize, initStatics, inOrderPrint, insertAfter, insertBefore, insertFirstChild, isActiveObject, isBound, isContainer, isExternal, isInternal, isLeaf, isPassiveObject, isRootNode, performActivity, performActivity, performBooleanActivity, performBooleanActivity, performDoubleActivity, performGuard, performVoidActivity, postAct, postConfigure, postOrderPrint, postReconfigure, preAct, preConfigure, preOrderPrint, preReconfigure, print, println, processMessageQ, processReceivedMessage, reconfigure, remove, removeChild, sendMessage, sendMessage, sendMessage, setAttributeVal, setFirstChild, setId, setNextSibling, setParentChildLinks, setParentNode, setParentSiblingLinks, setPorts, setRoleName, setUid, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVal, setVariableValue, setXhc, swapNode, terminate, treeSize, writeXml
 

Constructor Detail

AppPingPong

public AppPingPong()
Constructor.

Method Detail

process

public void process()
Description copied from interface: IApplication
Process time steps during the lifetime of the application.

Specified by:
process in interface IApplication
Overrides:
process in class Application

main

public static void main(java.lang.String[] args)
main

Parameters:
args - One optional command line argument.