Personal tools
You are here: Home Developer Reference Ptolemy Package Dependencies

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 
  1. Include these jars in PTAUXALLJAR
  2. 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

Document Actions