Pigiis built on top of existing CAD tools that are part of the Berkeley CAD framework. An important component of this framework is
oct, which serves as the design database.
Octkeeps track of block connections, parameter values, hierarchy, and file structure, and hence moderates all accesses to designs stored on disk. The organization is shown in figure 2-6
Vemis an interactive graphical editor for
Vemprovides one of many ways to examine and edit designs stored by
oct. This chapter gives just enough information about
vemto use it with Ptolemy in simple ways. More complete documentation is contained in chapter 19, "Vem - The Graphical Editor for Oct" on page 19-1.
pigi, the Ptolemy kernel runs in a separate Unix process, called
pigiRpc, attached to
vem. Users edit designs using
vem, store their designs using
oct, and execute their application through the link to the Ptolemy kernel. The two Unix processes are shown in the shaded boxes in figure
2-6. The user interacts with both processes but only the user interface of the
pigiRpc process has been upgraded to use Tcl/Tk, as explained above. With this software architecture in mind, we can now define terms that we have been using informally.
Oct objects (which are stored on disk) are called facets. A facet is the fundamental unit that a user edits with
vem. As an analogy, we can think of a facet as a text file in a computer system and
vem as a text editor, such as
emacs. However, instead of calling system routines to access the data stored in a text file like
oct routines to access the data stored in a facet. Thus,
oct manages all data accesses to facets. Facets may define a universe or a galaxy, for example. Thus, figure
2-4 on page 2-8 shows a facet that defines a universe and a second one that defines a galaxy.
Facets may also define the physical appearance and formal terminals of icons that represent stars, galaxies, universes, and wormholes, e.g., the physical appearance of each icon in figure 2-4 is defined in another facet called the interface facet. A schematic that uses icons, by contrast, is called a contents facet. The "edit-icon" command ("I") will open the facet defining an icon. Instructions for modifying the appearance of an icon are given in "Editing Icons" on page 2-34.
A facet may also contain a palette, which is simply a collection of disconnected icons. Palettes are directories of stars, galaxies, and universes in a library. Thus, for example, figure 2-3 on page 2-6 shows two palettes, both of which contain sets of icons. Note that facet names, like file names in Unix, should not contain spaces.