Fish constists out of the following components:
graph TD;
A[Start Cycletimer] --> B;
B[Wait for input data structure to be ready] --> C;
C[Lock input data structure] --> D;
D[Choose Execution Engine] --> E;
D[Choose Execution Engine] --> F;
E[Calculate filters] --> G;
F[output values from direct mode] --> G;
G[Release Input data structure] --> H;
H[Construct output packages] --> I;
I[Stop Cycle timer] --> J;
J[Send state to UI] --> K;
K[Wait until 2ms prior to the next required cycle] --> A;