Page 1 of 1
simultaneous target presentation
Posted: 14 Mar 2011, 13:49
by paolobernardis
Dear all,
here we are again..

we would like to use the BCI2000 cursor task application in a simultaneous-4target environment (the subject would choose the target between the 4, for example the bed, or a drink, or a food, and so on according to his/her wishes)instead of the usual '1target per trial' application. Is it possible to create an application similar to the one described above in an user friendly way (i.e. without working directly on the source code)?
We tried to modify, in the application module of the parameters file, from "test only the visible target" to "test all targets", but unfortunately nothing seems to change.
Thank you so much in advance.
Re: simultaneous target presentation
Posted: 15 Mar 2011, 09:31
by mellinger
Hi Paolo,
unfortunately it is not possible to display all targets without changing the source code. However, the required change is easy: In the file BCI2000/src/core/Application/CursorTask/CursorFeedbackTask.cpp, line 307 reads:
mpFeedbackScene->SetTargetVisible( State( "TargetCode" ) == i + 1, i );
Replace this with
mpFeedbackScene->SetTargetVisible( true, i );
To enable all of the targets, the "TestAllTargets" parameter should be switched on as well.
Best,
Juergen
Re: simultaneous target presentation
Posted: 15 Mar 2011, 11:50
by paolobernardis
Dear Juergen,
thank you so much for your useful, kind and quick answer!
In this way it should also be possible to assign to each target a specific image (i.e. bed, food, nurse and drink)?because until now we only see a single "target texture" in the application module, texture that is automatically applied to all the targets.
Thank you again,
best wishes.
Re: simultaneous target presentation
Posted: 15 Mar 2011, 12:16
by mellinger
Hi Paolo,
having individual target textures requires a more complicated modification. Target textures are set in the file src/core/Application/CursorTask/FeedbackScene3D.cpp, line 153. To allow individual target textures, you would need to make the TargetTexture parameter a matrix parameter. Do this by changing its parameter definition line in src/core/Application/CursorTask/CursorFeedbackTask.cpp. line 111, from
"Application:Targets string TargetTexture= % % % % "
into
"Application:Targets matrix TargetTexture= 0 1 % % % "
Also, and move lines 140-144 from src/core/Application/CursorTask/FeedbackScene3D.cpp inside the loop starting at line 146. Then, replace
Parameter( "TargetTexture" )
with
Parameter( "TargetTexture" )( i )
Best,
Juergen
Re: simultaneous target presentation
Posted: 16 Mar 2011, 06:25
by paolobernardis
thank you so much Juergen, we really needed it for our purposes, and your advice is very helpful.
thank you again,
kind regards