software must have similar abilities as existing
software applying common approaches for creating
test scenarios.
3.3 Performance
A delay between start of a stimulus and sending of a
synchronisation signal to electroencephalograph
must be around 1ms. The delay cannot exceed 5ms
to not affect experiment results.
4 DESIGN OF ERP
EXPERIMENTS
PreSti uses the concept of visual programming
(Johnston, Hanna, & Millar, 2004). A visual
programming language consists of graphical
symbols. It is possible to set properties to the
symbols and connect them together to create a flow
diagram describing a test scenario. This simple
concept allows users without programming
knowledge to design test scenarios and to make test
scenarios more comprehensible.
4.1 Visual Programming Symbols
Design of visual programming symbols has been
focused on generality, extensibility and simplicity.
Each visual programming symbol represents one
function block, e.g.: stimulus, loop construction,
conditions, input/output device. It is possible to set
properties to symbols according to symbol type. A
symbol can have different shapes and consists of 4
different types of ports which provide connectivity
to the other symbols. The shape of symbols is used
only for resolution between different symbol types
and doesn’t have any impact on function.
4.1.1 Port Types
An example of port types placed on three different
symbols is in Figure 1. Description of ports is listed
in the following list where letters belong to letters in
the figure.
a) Getter – It is possible to get out properties from
symbols using a getter port.
b) Setter – A setter port gives possibility to change
properties of symbols according to behaviour of
other symbols.
c) Event – A symbol uses event ports to inform
other symbols about an event
d) Action – An action is a reaction to an event
from the other symbols.
Figure 1: Four port types of different symbols.
Ports can be placed anywhere on the shape but
all the shapes in PreSti keep the rule to place events
on the left, actions on the right, getters at the bottom
and setters on the top of the symbol. This rule
assures that program flow is going from the left side
of the diagram to the right side and that values are
transferred from the top to the bottom.
4.2 Connections between Symbols
The flow of the program is made by creating
connections between symbols. There are two types
of connections:
1) Transfer – This connection is made between
getter and setter. It is used to transfer a value of
property from one symbol to another. The transfer
connection is depicted as a solid line.
2) Trigger – This connection is made between
event and action. The trigger has one property –
delay. Using of delays is very often in the special
case of test scenarios. The trigger connection is
depicted as an arrow.
4.3 Creating Test Scenarios
The program is equipped with a set of symbols with
standard functionality. There are symbols for
stimuli, flow control and input/output hardware.
This set can be extended with custom symbols (see
Chapter 4.4).
A user can choose symbols from a palette, place
them in design space and connect them together with
connectors. Every symbol has various properties
which can be set statically in graphical user interface
or dynamically using transfer connections.
PRESTI - Neuroscience Stimuli Presentation Software
391