Access/CPN

You can use Access/CPN with or without Eclipse. We strongly recommend using Eclipse.

Get binary releases from the CPN Tools Download page.

The source is available from

(Note that you get a security error when clicking on the link; this is because the Subversion server uses encryption with a self-signed certificate.)

Plug-in Overview

You will not need all plug-ins for normal operation. Here is an overview of available plug-ins, their dependencies, the operation they provide, and how likely it is you will need them.

Plug-in Dependencies Description You need this…
model EMF Provides an object model for CP-nets Always
model.import model, model.highlevel Load models created with CPN Tools When loading models from CPN Tools
model.export model, model.import, model.highlevel Save models to CPN Tools (preliminary) When exporting models to CPN Tools
engine engine.protocol Provides simulator engine binaries and Java interface for connecting to them When doing simulation
engine.protocol -, new in 3.0; earlier part of engine Abstract representation of the low-level protocol When doing simulation or using simulator extensions
engine.highlevel engine, model Provides bridging between the object model and the engine Almost always
cosimulation engine, engine.highlevel, model Performs cosimulation between CPN models and Java objects Only if you need to do cosimulation
engine.proxy engine, engine.highlevel, model Interact with a model loaded using CPN Tools Rarely
model.tests all other Tests and demo programs Only during development

The abridged version: You'll almost always need model, engine, and engine.highlevel. Pick any of the import/export/proxy plug-ins you need.

An easy way to use the cosimulation plug-in is using ProM (recent nightly builds or 6.1 required) and the package Cosimulation available from the package manager.

Examples

The model.tests plug-in contains some demos and test code of Access/CPN. Here is a quick run-down of the different interesting parts:

» default package «
Misc. tests, the most interesting is StateSpaceTool, which is explained in our paper The Access/CPN Framework: A Tool for Interacting with the CPN Tools Simulator (see Publications for full bibliographical info).

demos

Larger demos in subdirectories.

demos.sillytime

Simple example showing importing a model loaded in CPN Tools and updating the GUI of CPN Tools from Java. Described in this blog post.

demos.statespacegenerator

A parallel state-space generator. The code is messy but fairly efficient (it is possible to generate more than 107-108 states on a standard computer).

Checking Out Access/CPN

Using Eclipse

  1. You need a recent version of Eclipse (tested with Helios) and EMF
  2. You need a Subversion client for Eclipse.
  3. Use https://svn.win.tue.nl/repos/cpntools/AccessCPN/trunk/ as root and check each out each plug-in you need. Each come packaged as a valid Eclipse project.
  4. Create your own plug-in and depend on the plug-ins you need. See the model.tests plug-in for examples.

Without Eclipse

  1. Even if you are not using Eclipse for development, we suggest using Eclipse for building Access/CPN. If you do not want this, you are on your own.
  2. Follow the instructions for Eclipse check out.
  3. Export the required plug-ins as Deployable plug-ins and fragments.
  4. In addition to the .jar-files created in the previous step, you need Java 6, and EMF 2.6. Check the EMF FAQ for detailed information about what you need. You do not need EMF.Edit functionality nor to register the plug-ins unless you know what XMI serialization is and need it.

Video Demonstrations