Hello,
We are trying to implement our P300 project which
(1) intensifies P300 alphabet symbol by symbol instead of intensifying column(row) by column(row), and
(2) chooses from multiple menus to be intensified instead of traversing the whole alphabet every time.
There seems to be already some way of choosing among multiple menus in the current implementation of P3SpellerTask, and I played with it a bit but didn't figure out how to make it work.
Can anyone give us some advice how to quickly get (1) and (2) working? Thanks very much!
Ray
P300 alphabet
-
mellinger
- Posts: 1341
- Joined: 12 Feb 2003, 11:06
Ray,
(1) may be achieved by a slight modification to the function P3SpellerTask::LoadMenu() in BCI2000/src/core/Application/P3Speller/P3SpellerTask.cpp. In the loop starting from line 998, stimuli are associated with rows and columns. For your purposes, each stimulus needs its own stimulus code rather than being part of a row and a column.
This can be done by modifying the code as follows:
Comment out lines 1002-1003. In their place, add a line
Comment out lines 1023-1024. In their place, add
Similarly, for lines 1042-1043, add
And for lines 1055-1056:
(2) I don't understand what you intend to to. Do you want to present different menus during a single intensification sequence?
HTH,
Juergen
(1) may be achieved by a slight modification to the function P3SpellerTask::LoadMenu() in BCI2000/src/core/Application/P3Speller/P3SpellerTask.cpp. In the loop starting from line 998, stimuli are associated with rows and columns. For your purposes, each stimulus needs its own stimulus code rather than being part of a row and a column.
This can be done by modifying the code as follows:
Comment out lines 1002-1003. In their place, add a line
Code: Select all
Association& stimSet = ioAssociations[ i + 1 ];Code: Select all
stimSet.Add( pTarget );Code: Select all
stimSet.Add( pTextStimulus );Code: Select all
stimSet.Add( pIcon );HTH,
Juergen
-
Ray Ma
- Posts: 14
- Joined: 15 Feb 2010, 16:39
-
Ray Ma
- Posts: 14
- Joined: 15 Feb 2010, 16:39
Well, I've found that by manipulating the mSequence and mSequencePos members, one should be able to display arbitrary subset of the alphabet. Thanks!
Ray Ma wrote:Hi Juergen,
Thanks very much for your timely reply! Your answer for (1) worked very well, and I've been successfully intensifying the symbols individually.
As for (2), I guess I just need to know how I can only intensify a subset of the alphabet, say {A, B, C, D}.
Thanks a lot!
Ray
Who is online
Users browsing this forum: No registered users and 0 guests
