EXP programs: Difference between revisions

From biophysics
Jump to navigation Jump to search
 
Line 1: Line 1:
==Introduction==
==Introduction==
!!!!SOME PROGRAMS ARE STILL IN DEVELOPMENT!!!!
EXP programs are MATLAB programs for each auditory lab 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.
EXP programs are MATLAB programs for each auditory lab 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.
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
*MO_Program for mobile applications (labtop with soundcard and eventrecorder)
*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:
The main classes in the EXP framework are:

Latest revision as of 12:44, 22 August 2025

Introduction

!!!!SOME PROGRAMS ARE STILL IN DEVELOPMENT!!!!

EXP programs are MATLAB programs for each auditory lab 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
  • MO_Program for mobile applications (labtop with soundcard and eventrecorder)
  • 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

Other classes represent hardware that can be used in the experiment:

   EXP_bioxSystem
   EXP_eventRecorder 
   EXP_DCN_ledController

Each lab program has a dedicated GUI that is always responsive and displays sounds, sound locations, led locations and acquisition results like head movements for every trial.

In each program GUI you select an experiment file that can consist of several blocks with trials.

The program outputs a .mat file for every trial with a struct called 'trialInfo'.

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(version);
   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);

Program parameters

The programPar object ....

Hardware systems

The hardwareSystems object ....

Experiment

The eperiment object ....

Trial recordings

The trialRecordings object ....

Experiment player

The experimentPlayer object ....

Gui handler

The guiHandler object ....

The GUI

The Gui object ...