EXP programs: Difference between revisions

From biophysics
Jump to navigation Jump to search
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Introduction==
==Introduction==
EXP programs are MATLAB programs for each 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.


==Standard Lab program==
!!!!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:
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.  
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);
     programPar      = TL_programParameters(version);
Line 16: Line 52:
     guihandler      = TL_guiHandler(player, programPar, experiment, hardwareSystems);
     guihandler      = TL_guiHandler(player, programPar, experiment, hardwareSystems);


At last a GUI is launched with a link to guiHandler.
At last a GUI is launched with a link to the guihandler object.
      
      
     TL_Gui(guihandler);
     TL_Gui(guihandler);
Line 35: Line 71:
The experimentPlayer object ....
The experimentPlayer object ....


===Gui handling===
===Gui handler===
The guiHandler object ....
The guiHandler object ....


===The GUI===
===The GUI===
The Gui object ...
The Gui object ...

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 ...