...
An onCore Unit can be seen as a graphical representation of a function (as in traditional programming). It has one or several multiple attributes and abilities.
gliffy Image Added
|
name | exampleUnitt |
Specifications of an onCore UnitExemplary onCore Unit- This exemplary Unit adds two numbers and provides the result.
- 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 - is able to 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 left and 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 |
---|
| name | addTwoNumbers |
Simplified Example of an onCore
Unit
...
Ports
...
Unit Ports
...
Image Added
| There are three types of Ports: - Trigger Port: Trigger the execution of the a Unit (= Execute Trigger) or trigger the next Unit which is connected to one of the outgoing Trigger Triggers (= Complete Success/Fail Trigger).
See chapter → Unit Triggers & Events. - 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). Once a Port is connected with a Cable, it can not be altered by the user anymore.
See chapter → Unit Attributes. - 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.
Unit Type | Description | Example |
---|
Provider Unit | They only have one or multiple Output Ports and "provide" something. | Variable Getter, System Timestamp |
Processing Unit | They have one or multiple Input and Output Ports and process or modify their input. | String Replace, String to Time |
Consumer Unit | They only have one or multiple Input Ports and "consume" data. | Print String, Variable Setter |
Unit Interaction Example
Here's a simplified schematic on how Units can interact with each other. Trigger Ports are omitted in this example, they are explained in the chapter → Unit Triggers & Events.
...
Warning |
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 Info |
---|
There may be Units which do not fall under only one category. |