By Blackadder - 1/5/2015
We only have a limited number of Cedrus response boxes in our lab. Hence, programming and testing of experiments is mostly done on our office computers without a Cedrus device attached. We just add both Cedrus and keyboard codes as valid/correct responses. With Inquisit 3, changing one single line in the <defaults> section of a script allowed to switch between XID devices and keyboard. With the new <xid> element in Inquisit 4 we have to delete the whole XID element to test or run scripts on non-lab computers.
It would be nice if Inquisit could throw an XID error only if the xid device was used as an "/ inputdevice" somewhere, and give just a warning message otherwise.
Kind regards, Malte
|
By Dave - 1/5/2015
Since the <xid> element allows for interfacing (w/ e.g. a stimtracker) even if the respective device is *not* designated as inputdevice anywhere in the script, I'm personally not sure whether merely emitting a warning would be advisable. This would open the road to data loss in cases where a device is supposed to be present (i.e. in your "lab" configuration), but Inquisit is unable to communicate with it.
One alternative I can think of is to use conditional <include> elements with e.g. a "special" subject id to automatically run your non-lab vs. lab configuration. This would require *zero* changes to the actual script (minimal example attached; use subject id "test").
Hope this helps.
|
By Blackadder - 1/9/2015
This is a great idea! I wasn't aware that conditional include statements were even possible.
This solves the problem, indeed with minimal changes.
Thanks a lot! Malte
|
|