Ptolemy Package Dependencies
In Ptolemy II 7.0, the package dependencies are encoded in the makefiles. For more information, please see this page.
This page discusses internal package Ptolemy II package dependencies. See also Ptolemy II Third Party Package Dependencies.
In Ptolemy II 7.0, the package dependencies are encoded in the makefiles. For example, to run a non-graphical model from the Ptolemy II SVN development tree, use the following command (note that the fsm.jar is needed because of a recent bug):
java -classpath "ptolemy/ptsupport.jar:ptolemy/domains/fsm/fsm.jar:ptolemy/domains/sdf/sdf.jar" ptolemy.actor.gui.MoMLSimpleApplication ptolemy/actor/lib/test/auto/Ramp1.xml
To list the subjars needed for ptsupport.jar, use the following:
$PTII/ptolemy/makefile
- Include these jars in PTAUXALLJAR
- plotmlapplet pulls in the com/microstar/xml and util/ classes
PTAUXALLJARS = \ actor/actor.jar \ configs/configs.jar \ data/data.jar \ gui/gui.jar \ graph/graph.jar \ kernel/kernel.jar \ math/math.jar \ media/media.jar \ moml/moml.jar \ plot/plotmlapplet.jar \ util/util.jar
Each of the makefiles in the corresponding subdirectories includes similar text.
In this way, we can build JAR files that include some, but not all .class files and other necessary files such as image files.
List of Packages and Issues
The term Ptolemy Kore refers to the smallest useful set of Ptolemy code. Each of the packages is categorized:
Category | |
---|---|
Kore |
Small runtime - no actors or domains |
Actor Kore |
Execution Semantics - still no actors or domains |
Actor Lib Kore |
Common domain polymorphic actors. No GUI actors |
Actor Lib GUI Kore | Common domain polymorphic GUI actors. No special actors like JAI or JMF. |
Ptiny Domains |
Domains shipped in Ptiny or Kepler |
Development GUI Kore |
Vergil Graph Editor |
ptolemy.kernel
Package |
Description |
Kore? |
Dependencies |
ptolemy.kernel.util |
42 Java files - NamedObj |
Kore |
depends on ptolemy.util |
ptolemy.kernel |
8 Java files - Entity, ComponentEntity, CompositeEntity, Port |
Kore |
Depends only on kernel.util and kernel.attributes (CompositeEntity depends on kernel.attributes.VersionAttribute) |
ptolemy.kernel.attributes |
5 Java files - Various attributes and interfaces, used for file access |
Kore |
Depends on kernel.util and util |
ptolemy.kernel.undo |
Undo/Redo |
Kore |
Depends on kernel.util and kernel |
ptolemy.data
Package |
Description |
Kore? |
Dependencies |
ptolemy.data |
38 Java Files - Tokens |
Kore |
Depends on data.expr, data.type, data.unit, graph, kernel, kernel.util, math, util |
ptolemy.data.expr |
74 Java Files - Expressions |
Kore |
Depends on data, data.type, graph, kernel, kernel.util, math, util |
ptolemy.data.type |
15 Java Files - Types |
Kore |
Depends on data, graph, kernel.util, math |
ptolemy.data.properties |
Experimental, maybe move? |
|
|
ptolemy.data.unit |
Unit system, not Kore, but used by data |
Kore |
Depends on data, data.expr, kernel, kernel.util, util |
ptolemy.graph
Package |
Description |
Kore? |
Dependencies |
ptolemy.graph (and subpackages) |
7 packages, 81 Java classes - Used by ptolemy.actor and ptolemy.data. |
Kore |
Depends on ptolemy.kernel.util for Exceptions. Has trivial dependency on NamedObj for better error messages. |
ptolemy.math
Package |
Description |
Kore? |
Dependencies |
ptolemy.math |
35 Java files - Math classes |
Kore |
Has no dependencies on other Ptolemy packages |
ptolemy.util
Package |
Description |
Kore? |
Dependencies |
ptolemy.util |
10 Java files - String, File and Class utilities |
Kore |
Has no dependencies on other Ptolemy packages |
ptolemy.actor
Package |
Description |
Kore? |
|
ptolemy.actor |
Actor Semantics |
Actor Kore |
Depends on actor.parameters, data, data.expr, data.type, graph, kernel, kernel.util, math, util(trivial) |
ptolemy.actor.gui |
Classes that invoke models |
Actor Kore |
Depends on actor, data.expr, data.type, data.unit, graph, gui, kernel, kernel.attributes, kernel.undo, kernel.util, moml, plot, util |
ptolemy.actor.gui.exec |
Not used, could be removed |
|
|
ptolemy.actor.gui.jnlp |
Used to create WebStart applications, not Kore |
|
|
ptolemy.actor.gui.ptjacl |
Not used, could be removed |
|
|
ptolemy.actor.gui.python |
Not used, could be removed |
|
|
ptolemy.actor.gui.style |
Used by dialogs |
GUI Kore |
Depends on actor.gui, data, data.type, data.expr, kernel.attributes, kernel.util, moml |
ptolemy.actor.gui.run |
Experimental run control panel - not Kore |
|
|
ptolemy.actor.lib |
Domain polymorphic actors |
Actor Lib Kore |
Depends on actor, actor.util, data, data.expr, data.type, kernel, kernel.util, math, util |
ptolemy.actor.lib.gui |
Graphical actors |
Actor GUI Kore |
FIXME: refactor so that we can use non-graphical actors. Depends on actor, actor.gui, actor.parameters, data, data.expr, data.type, gui, kernel, kernel.util, plot |
ptolemy.actor.lib.{comm,conversion,hoc,image,io,logic,net,string} |
More Domain Polymorphic actors |
Actor Lib Kore_ |
Depends on actor, actor.gui, actor.lib, actor.parameters, actor.util, data, data.expr, data.type, graph, kernel, kernel.util, math, media, hoc imports moml, util |
ptolemy.actor.lib.colt |
Colt Random Actors |
Actor Lib Kore? |
requires ptcolt.jar |
ptolemy.actor.lib.python |
Python Actors |
Actor Lib Kore |
requires jython.jar, actor, kernel, kernel.util, util |
ptolemy.actor.lib.{jni,security,vhdl} |
Less useful domain polymorphic actors not Kore |
|
|
ptolemy.actor.lib.{jai,jmf,joystick,jxta,x10} |
Domain Polymorphic actors that require special external code - not Kore |
|
|
ptolemy.actor.parameters |
ParameterPort, PortParameter other specialized parameters. CompositeActor depends on ParameterPort |
Actor Kore |
Depends on actor, data, data.expr, data.type, kernel, kernel.util, util |
ptolemy.actor.process |
Classes for Process Oriented Domains (PN) |
Actor Kore |
Depends on actor, data, kernel, kernel.util |
ptolemy.actor.sched |
Scheduling classes, needed by ptolemy.actor |
Actor Kore |
Depends on actor, actor.util, data, data.expr, data.type, graph, kernel, kernel.util |
ptolemy.actor.util |
Actor utilities, needed by ptolemy.actor |
Actor Kore |
|
ptolemy.actor.gt |
Graph Transformation - not Kore |
|
|
ptolemy.actor.ptalon |
Ptalon actor description language - not Kore |
|
|
ptolemy.media
ptolemy.media |
3 Java Files |
Used by audio actors |
Actor Core |
ptolemy.moml
ptolemy.moml |
MoMLParser - not strictly required to run, but frequently used |
Kore |
actor, actor.parameters, data.expr, kernel, kernel.util, kernel.undo, util |
ptolemy.moml.filter |
Used MoMLParser |
Kore |
actor, data, data.expr, kernel, kernel.util, moml, util |
ptolemy.moml.jxta |
Experimental, little used, not Kore |
|
|
ptolemy.plot
ptolemy.plot (and subpackages) |
The Plotter, used by ptolemy.actor.lib.gui |
Actor Lib GUI Kore |
ptolemy.gui, ptolemy.util |
com.microstar.xml
com.microstar.xml |
Used by ptolemy.moml and ptolemy.plot |
Kore |
Has no dependencies on ptolemy packages. |
ptolemy.configs
ptolemy.configs |
Files for configurations. ptolemy.actor.gui refers to these directories. Controls what actors appear in Vergil. No Java files, just xml and docs |
Development GUI Kore |
ptolemy.gui
ptolemy.gui |
GUI files for Query and Runtime |
Actor Lib GUI Kore |
Depends on ptolemy.util |
ptolemy.domains
ptolemy.domains.{ct,ddf,fsm,hdf,pn,rendezvous,sdf,sr} |
Domains used in Ptiny |
|
ptolemy.domains.{ct,ddf,fsm,pn,sdf} |
Domains used by Kepler |
Kepler Domains |
ptolemy.vergil
ptolemy.vergil (and subdirectories) |
Exclude certain packages |
Development GUI Kore |