Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Gliffy
nameexampleUnitt

Specifications of an onCore Unit

  • Units have attributes which can be modified by the user or other Units.
  • Units can exchange data via cables. Think of them as small 'tunnels' where data can travel between the Units.
  • Cables are usually connected/disconnected by the user, but there are also situations where cables between Units are automatically re-created.
  • On the right and/or left side of each Unit there are small circles and triangles. These are the connection points of cables and they are called Trigger Ports, Input Ports and Output Ports.

Gliffy
nameaddTwoNumbers

Fictional Example of an onCore Unit

  • On the left is a very simple example of a Unit. It just adds two numbers and provides the result.
  • Trigger Ports are omitted in this example, they are explained laterin the chapter → Unit Triggers & Events.

Unit Ports

Gliffy
nameunitDatAnatomy

There are three types of Ports:

  1. Trigger
Ports
  1. Port: Trigger the execution of the Unit (= Execute Trigger) or the next Unit which is connected to the outgoing Trigger (= Complete Trigger). See chapter Unit Triggers & Events.
  2. Input Port: These Ports accept data from the User or other Units. They can also represent the attributes of a Unit. Not all Input Ports can be modified by the User, some of them only accept data from other Units as their input, i.e. a cable has to be connected to them (for example Structure-based Units).
  3. Output Port: These Ports output data and may be connected to other Units.



Unit Types

Units can roughly be categorized in three types. Of course the exception proves the rule.

...

Here's a simplified schematic on how Units can interact with each other. Trigger Ports are omitted in this example, they are explained laterexplained in the chapter → Unit Triggers & Events.

Gliffy
namesmallWkfl

Note

The data and execution flow happens from left to right. That means that Cables cannot transmit data "backwards" and also the execution flow cannot happen backwards.