EXP programs
Introduction
EXP programs are MATLAB programs for each auditory lab with an RZ6 DSP. The software is based on the EXP framework. The EXP framework is a MATLAB toolbox developed by Ruurd Lof. The framework is a collection of classes and functions that are the basis for Lab programs. The toolbox is mainly programmed object oriented programming style. It is modular with respect to the hardware that can be used.
Each lab program is created by defining a gui and a few sub classes of certain classes in the EXP framework.
The following programs are available:
- TL_Program for the test lab
- PL_Program for the auditory perception lab (patient lab)
- EG_Program for the EEG/NIRS lab
- RA_Program for the auditory persuit lab (robot arm)
- VC_Program for the vestibular chair lab
EXP framework
The main classes in the EXP framework are:
EXP_programParameters EXP_hardwareSystems EXP_experiment EXP_recordingsHandler EXP_experimentPlayer EXP_guiHandler EXP_gui
- All programs use the same GUI that is always responsive and displays sounds, sound locations, led locations and acquisition results for every trial.
- In the GUI you select an .exp file specifies the whole experiment.
- The program outputs a .mat file for every trial (and block) with a struct called 'trialInfo'.
- There is no need for the experimenter to do any programming.
Lab program example
An example of a Lab program is the TestLabProgram. All programs have the same basic structure:
Six objects (TestLab classes are starting with TL_) are created in a fixed order and linked by passing references to the objects.
programPar = TL_programParameters; hardwareSystems = TL_hardwareSystems(programPar); experiment = TL_experiment(programPar); trialRecordings = TL_recordingsHandler(programPar, experiment, hardwareSystems); player = TL_experimentPlayer(hardwareSystems, trialRecordings, programPar, experiment); guihandler = TL_guiHandler(player, programPar, experiment, hardwareSystems);
At last a GUI is launched with a link to the guihandler object.
TL_Gui(guihandler);