BrainStreamBlockFile
Topics and keys for block files
In your block files, two topics are always required: DataSources with key <datasource>, and Files with keys ExperimentDefinitionFile and OutFolder. You can add as many topics with corresponding keys as you like as long as you don't use any of the topics used by BrainStream. This is an overview of topics and keys and their meaning. Keys indicated with an asterisk are obligatory.
[DataSources]
*<datasource>:
defines the name and type of each data source. A data source can be a hardware device, a recorded data file or simulated data (see Connecting Data Sources). This key is obligatory.
<datasource> = '<buffer address>:<port>:<device>' %acquisition device
<datasource> = '<data file>:<device>' %recorded data file
<datasource> = 'simulate:<device>' %simulated data
[RunMode]
*Subject: (automatically included if starting using the GUI)
just before BrainStream stops executing your block, BrainStream copies the final state to the OutFolder. The state contains all information BrainStream requires for its internal processing. This Subject's name is incorporated in the name of the corresponding mat-file.
Subject = 'a_subjects_name'
DataSource:
This key is deprecated, define under topic [ DataSources ] instead.
SampleRateAfterDecimation:
This key is deprecated, define in configuration file instead.
screenoutputlevel:
This key is deprecated, use VerbosityLevel instead.
VerbosityLevel:
sets the amount of information that is displayed during processing.
VerbosityLevel = 'ERROR' % (default) only displays errors and approximately every 10 seconds it indicates progress made.
VerbosityLevel = 'INFO' % also displays which markers' actions are currently being processed in Matlab command window.
VerbosityLevel = 'WARNING' % also displays warning messages.
VerbosityLevel = 'DEBUG' % also displays extra information about processed actions (use only in case debugging is required).
RealTime:
This key is deprecated.
Parallel:
set to true to enable parallel processing of markers' actions. In the experiment definition table it needs to be specified which markers actions are allowed to be processed in parallel. See .... for more details.
Parallel = true % (or 1, default = false)
NumCores:
in case BrainStreams parallel running mode is set to true, this key specifies the number of cores BrainStream should utilize for its parallel processing. Every additional core will then run a separate Matlab session. The Matlab session running BrainStream itself will dedicate jobs to these extra `matlab sessions dependent of how users have configured their experiment definition tables. See .... for more details.
Numcores = 4
Cap:
This key is deprecated. Specify under topic [ <datasource> ] or [ <device> ] instead.
DataType:
defines type of raw data retrieved from BrainStream.
DataType = 'single' (default)
DataType = 'double'
[Files]
*ReferenceFolder: (automatically included if starting using the GUI)
defines the folder where the experiment definition file is located. Inside the tables relative path names are translated to absolute path names relative to this ReferenceFolder. This key is obligatory.
ReferenceFolder = '/Volumes/bci_stims/my_experiment/'
*OutFolder:
defines path to location where BrainStream can store output. This key is obligatory.
OutFolder = '/Volumes/bci_data/my_experiment/'
*ExperimentDefinitionFile:
the file containing the experiment definition tables (.xls or .edt). This key is obligatory.
ExperimentDefinitionFile = '/Volumes/bci_stims/my_experiment/myblock.xls'
ExperimentDefinitionData:
This key is deprecated.
ExperimentDefinitionSubFile:
This key is deprecated.
StimulusFile:
This key is deprecated.
ActiviewConfigFile:
This key is deprecated.
[Experiment]
*Block:
name descriptive for the sub-experiment (i.e. block) to run
Block = 'speller'MatlabPathFnc:
specify function to call by BrainStream for setting Matlab path
MatlabPathFnc = 'setREPOSpath('get_app_folders({myexperiment}))'MatlabPathAdd:
specify list of extra folders to add to Matlab path
MatlabPathAdd = {'/Volumes/code/my_experiments/',fullfile(get_repos_root,'/own_experiments/visual/')}
[Clients]
<name of client>:
translates client name (descriptive for the actions that execute parallel-wise) into DNS name or ip-number.
client1 = '131.174.123.456'
client2 = 'eegstim.mydomain.nl'
client3 = 'core1' % dedicate/reserve specific core
client4 = 'cores' % BrainStream picks first available core
client5 = 'local' % execute serial-wise (overruled; no parallel execution)
[<client>] (name of the client specified under topic [ Clients ])
MatlabPathAdd:
specify list of extra folders to add to the clients Matlab path
MatlabPathAdd = {'/Volumes/code/my_experiments/'}
[<datasource>] (name of the data source specified under topic [ DataSources ])
Cap:
defines which cap will be used for systems that can use multiple caps, e.g. BioSemi. For systems that can use only one cap type, e.g. Emotiv, specify under topic [<device>]. User functions are responsible for changing hdr and current cap information after changing the cap (for example after spatial downsampling).
Cap = 'cap256.txt'
Cap = 'cap64.txt'
[<device>] (name of the acquisition device specified under topic [ DataSources ])
Cap:
defines which cap will be used for systems that can use only one cap type, e.g. Emotiv. For systems that can use multiple caps, e.g. BioSemi, specify under topic [<datasource>]. User functions are responsible for changing hdr and current cap information after changing the cap (for example after spatial downsampling).
Cap = 'cap_emotiv_epoch.txt'
Cap = 'cap_neurosky_thinkgear.txt'
SendMarkerFnc:
defines which sndMarker function will be used for inserting markers via the hardware. Default is 'sndBufferMarker', which inserts all markers via the FieldTrip buffer (i.e. not via the hardware). For more information about inserting markers via the hardware or the FieldTrip buffer, click [.DocsSectionsMarkerHandling here].
SendMarkerFnc = 'sndBufferMarker' %default