The
abort key name cannot be unmapped with the mapping keywords as it's not a mapped
key, instead you can specify no key name with
<aikn>.
Note that binding the same key to both the request and to the abort key
will likely lead to unexpected behavior that aborts the following item
unintentionally.
Expression
variant:
Parameter and switch to specify the Abort Item
expression. Once the display queue is empty (see above) the abort item
expression is evaluated repeatedly, if it yields a true (non-zero) result the
item is aborted as outlined above. The expression syntax can be found in
the <SetCounter> keyword documentation.
The expression variant is principally provided for use in conjunction with the
<LookingTime> keyword to allow a video
sequence to be aborted if a subject looses interest and to facilitate this
counter values set by looking times will be updated any time a keystroke is
stored by the zillion response
code. Typical use to abort a trial after a baby has been looking away
(where the experimenter is pressing the A key when the baby's attention is being
held) for
more than two seconds would be:
<zil> <lt 1,-a> <aie c1 .gt. 2000>
+100 * <dv> "filename" ;
Additional functionality for <aie> comes with the jobstatus token in the expression parser. It has one of eleven values and does not necessarily go from one to the other in simple ascending sequence:
1 available
2 ready to read item-file
3 waiting for request
4 request received - schedule item
5 item is being displayed
6 waiting for a response
7 response received
8 naming task negation
9 providing feedback
10 last frame displayed
11 job terminated
However you can tell if a response has been made so if you want a video to play until a response is made the following code is useful:
<ep> <vm desktop> <id "keyboard">
<aie jobstatus .eq. 7> </ep>
0 "test aie jobstatus";
+1 * <dv> "movie.mpg";
+2 * <dv> "movie.mpg";
+3 * <dv> "movie.mpg";
That code will play the video till either the response has been made or it times out (so at most 4 seconds of that video will be played).