Closed moiri closed 3 years ago
A first version v0.1.0 was implemented and published on http://phhum-a209-cp.unibe.ch:10012/SMX/SMX-boxes/smx_prc_fsm.
A static FSM is defined by a config file which is loaded during the initialisation.
In a version 0.2.0 this concept was extended to allow to load multiple FSMs. A FSM is then selected depending on the current trial id
How should event names be handled? There are a few things to consider:
Event messages are separated int events
and triggers
. Events are produced by a box and triggers are consumed by a box. The name has the following structure:
<source>-[evt|ack|nak]-<event_name>
where
<source>
is the name of the box implementation which produced the event[evt|ack|nak]
: evt
is used for any event, ack
and nak
are used as a reply to a req
trigger.<event_name>
is the name of the event<target>
is the name or ID of the net or the name of the box implementation which is targeted by the trigger. *
can be used to target everything.[tgr|req]
: when using tgr
the box silently (except for logs) computes the trigger, when using req
the box produces an event ack
or nak
depending whether the trigger was computed successfully or not.<trigger_name>
is the name of the trigger
A box implementation that allows to control a Stremix network with a configurable Finite-State-Machine (FSM).