Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

A complex example for using KLighD technology, the Ptolemy Visualization project is about generating transient views of Ptolemy II models. Ptolemy II is an open source program developed at UC Berkeley for experimenting with actor-oriented modelling. Actors are graphical representations of components with a certain functionality that generate output as a function of the inputs they receive. To use the output of one actor as the input of another, actors can be connected by links. A typical Ptolemy model might for instance look like this:

Insert picture of a typical Ptolemy model here.

In some respect, Ptolemy models are a typical example of graphical modelling languages:

  • Actors are represented as boxes, with edges connecting the actors to each other. The edges are routed orthogonally: each edge segment is aligned either horizontally or vertically.
  • Actors can have more than one input, and more than one output. To be able to distinguish the data coming in and going out, inputs and outputs are routed to dedicated connection points, called ports. Thus, links never connect two actors directly, but rather connect them through their ports.
  • Actors can contain further models that define their functionality (we call such actors hierarchical actors). To be able to see the model inside an actor, Ptolemy provides the possibility to look inside the actor. This effectively opens a new Ptolemy window displaying the actor's implementation.

However, Ptolemy models have some features that are not that common:

  • Ports are not restricted to be either input ports or output ports: they can be both. As a consequence, links are undirected and can transport data in both directions.
  • Models have a director that defines the model of computation used to execute the model. In fact, if an actor in turn has another model inside it, that model, too, has a director. One of the research goals of the Ptolemy project is to find out how different models of computation can be composed.
  • All edges are part of relations. A relation is a set of edges that are treated as a hyperedge: an edge that connects not two, but arbitrarily many ports.

KLighD Visualization

With our KLighD visualization, we aim to develop a Ptolemy model browser that is particularly good for reading through Ptolemy models. It is able to directly open Ptolemy files and display them in a way very similar to what Ptolemy users are used to seeing. 

  • Easy to use.
  • Directly open Ptolemy models in .moml and .xml files.
  • Have the rendering resemble the Ptolemy rendering as closely as possible.
  • Capability to open hierarchical actors in-place, without opening a new window.

Extend this section.

Try This

Open and browse a Ptolemy model:

  1. Start Eclipse with the KIELER Ptolemy Viewer feature installed.
  2. Import the CarTracking Ptolemy model. TODO: WHERE DO PEOPLE GET THE MODEL?
  3. Open the model by double-clicking it in Eclipse.
  4. Open and close some of the hierarchical actors by double-clicking them.

How Does This Stuff Work?

Write this section.

  • No labels