Home > vbmeg > functions > device > eeg > vb_job_eeg_gateway.m

vb_job_eeg_gateway

PURPOSE ^

This is a gateway function to job_eeg.

SYNOPSIS ^

function vb_job_eeg_gateway(proj_root, meg_parm)

DESCRIPTION ^

 This is a gateway function to job_eeg.
 [usage]
   vb_job_eeg_gateway(proj_root, meg_parm)
 [input]
   proj_root : <required> path for imported VBMEG files ['']
             :  this is not used.
    meg_parm : <required> <<struct>>
             :  .Measurement      : measurement type ['EEG']
             :  .device           : device name ['BIOSEMI']
             :  .measurement_file : input (BDF) file (.bdf)
             :  .pos_file         : position file (.pos.mat)
             :  .output_file      : output file (.eeg.mat)
             :                    : ['(yyyymmdd_HHMMSS).eeg.mat']
             :  .bin_data_dir     : output directory for binary data files
             :                    : this is a relative path from output_file
             :  .eeginfo_version  : version of EEGinfo - unused []
             :  .verbose_swt      : <<boolean>> [false]
 [output]
   none
 [note]
   @see vb_job_meg.m
   @see vb_job_eeg_biosemi.m
   @see vb_job_eeg_brainamp.m
   read_bdf_spec is a struct for the destination function vb_job_eeg_biosemi.m
   which has fields as follows
     .bdf_file     : BDF file with valid path
     .pos_file     : POS-MAT file with valid path
     .device       : device name. 'BIOSEMI'
     .output_dir   : output directory for EEG-MAT files ['.']
     .eeg_file     : ['<date>.eeg.mat'] EEG-MAT file name
     .bin_data_dir : output directory for binary data files
                   : this is a relative path from output_dir
     .eeginfo_version : <optional> [] version of EEGinfo - unused yet
 [history]
   2008-02-14 (Sako) initial version
   2008-02-26 (Sako) supported POS-MAT file
   2008-03-26 (Sako) modified how to apply proj_root
   2008-05-28 (Sako) changed format of meg_parm for EEG
   2010-02-02 (Sako) modified default value of meg_parm.output_file

 Copyright (C) 2011, ATR All Rights Reserved.
 License : New BSD License(see VBMEG_LICENSE.txt)

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SUBFUNCTIONS ^

SOURCE CODE ^

0001 function vb_job_eeg_gateway(proj_root, meg_parm)
0002 % This is a gateway function to job_eeg.
0003 % [usage]
0004 %   vb_job_eeg_gateway(proj_root, meg_parm)
0005 % [input]
0006 %   proj_root : <required> path for imported VBMEG files ['']
0007 %             :  this is not used.
0008 %    meg_parm : <required> <<struct>>
0009 %             :  .Measurement      : measurement type ['EEG']
0010 %             :  .device           : device name ['BIOSEMI']
0011 %             :  .measurement_file : input (BDF) file (.bdf)
0012 %             :  .pos_file         : position file (.pos.mat)
0013 %             :  .output_file      : output file (.eeg.mat)
0014 %             :                    : ['(yyyymmdd_HHMMSS).eeg.mat']
0015 %             :  .bin_data_dir     : output directory for binary data files
0016 %             :                    : this is a relative path from output_file
0017 %             :  .eeginfo_version  : version of EEGinfo - unused []
0018 %             :  .verbose_swt      : <<boolean>> [false]
0019 % [output]
0020 %   none
0021 % [note]
0022 %   @see vb_job_meg.m
0023 %   @see vb_job_eeg_biosemi.m
0024 %   @see vb_job_eeg_brainamp.m
0025 %   read_bdf_spec is a struct for the destination function vb_job_eeg_biosemi.m
0026 %   which has fields as follows
0027 %     .bdf_file     : BDF file with valid path
0028 %     .pos_file     : POS-MAT file with valid path
0029 %     .device       : device name. 'BIOSEMI'
0030 %     .output_dir   : output directory for EEG-MAT files ['.']
0031 %     .eeg_file     : ['<date>.eeg.mat'] EEG-MAT file name
0032 %     .bin_data_dir : output directory for binary data files
0033 %                   : this is a relative path from output_dir
0034 %     .eeginfo_version : <optional> [] version of EEGinfo - unused yet
0035 % [history]
0036 %   2008-02-14 (Sako) initial version
0037 %   2008-02-26 (Sako) supported POS-MAT file
0038 %   2008-03-26 (Sako) modified how to apply proj_root
0039 %   2008-05-28 (Sako) changed format of meg_parm for EEG
0040 %   2010-02-02 (Sako) modified default value of meg_parm.output_file
0041 %
0042 % Copyright (C) 2011, ATR All Rights Reserved.
0043 % License : New BSD License(see VBMEG_LICENSE.txt)
0044 
0045 % --- CHECK ARGUMENTS --- %
0046 if ~exist('proj_root', 'var'), proj_root = []; end
0047 if ~exist('meg_parm', 'var'), meg_parm = []; end
0048 [proj_root, meg_parm] = inner_check_arguments(proj_root, meg_parm);
0049 
0050 % --- MAIN PROCEDURE --------------------------------------------------------- %
0051 %
0052 switch(meg_parm.device)
0053     case 'BIOSEMI'
0054         % ----- make read_bdf_spec from meg_parm
0055         read_bdf_spec.bdf_file = meg_parm.measurement_file;
0056         read_bdf_spec.pos_file = meg_parm.pos_file;
0057         read_bdf_spec.device = meg_parm.device;
0058         read_bdf_spec.output_dir = proj_root;
0059         read_bdf_spec.eeg_file = meg_parm.output_file;
0060         read_bdf_spec.bin_data_dir = meg_parm.bin_data_dir;
0061         read_bdf_spec.eeginfo_version = meg_parm.eeginfo_version;
0062         vb_job_eeg_biosemi(read_bdf_spec, meg_parm.verbose_swt);
0063         eegfile = fullfile(proj_root, meg_parm.output_file);
0064         vb_save(eegfile, 'meg_parm');
0065     case 'BRAINAMP'
0066         % ---- make brain_amp_spec from meg_parm
0067         read_brain_amp_spec.bamp_file    = meg_parm.measurement_file;
0068         read_brain_amp_spec.pos_file     = meg_parm.pos_file;
0069         read_brain_amp_spec.device       = meg_parm.device;
0070         read_brain_amp_spec.output_dir   = proj_root;
0071         read_brain_amp_spec.eeg_file     = meg_parm.output_file;
0072         read_brain_amp_spec.bin_data_dir = '';
0073         read_brain_amp_spec.eeginfo_version = meg_parm.eeginfo_version;
0074         vb_job_eeg_brainamp(read_brain_amp_spec, meg_parm.verbose_swt);
0075         eegfile = fullfile(proj_root, meg_parm.output_file);
0076         vb_save(eegfile, 'meg_parm');
0077 end
0078 return;
0079 %
0080 % --- END OF MAIN PROCEDURE -------------------------------------------------- %
0081 
0082 % --- INNER FUNCTIONS -------------------------------------------------------- %
0083 %
0084 % --- inner_check_arguments()
0085 %
0086 function [proj_root, meg_parm] = inner_check_arguments(proj_root, meg_parm)
0087 func_ = mfilename;
0088 if isempty(meg_parm)
0089   error('(%s)meg_parm is a required parameter', func_);
0090 end
0091 
0092 proj_root = vb_rm_trailing_slash(proj_root);
0093 
0094 % ----- set default values as needed
0095 %    meg_parm : <required> <<struct>>
0096 %             :  .Measurement      : measurement type ['EEG']
0097 %             :  .device           : device name ['BIOSEMI']
0098 %             :  .measurement_file : input (BDF) file (.bdf)
0099 %             :  .pos_file         : position file (.pos.mat)
0100 %             :  .output_file      : output file (.eeg.mat)
0101 %             :  .bin_data_dir     : output directory for binary data files
0102 %             :                    : this is a relative path from output_file
0103 %             :  .eeginfo_version  : version of EEGinfo - unused []
0104 %             :  .verbose_swt      : <<boolean>> [false]
0105 
0106 % if ~isfield(meg_parm, 'Measurement') || isempty(meg_parm.Measurement)
0107 %   meg_parm.Measurement = 'EEG';
0108 % end
0109 
0110 if ~isfield(meg_parm, 'device') || isempty(meg_parm.device)
0111   meg_parm.device = 'BIOSEMI';
0112 end
0113 
0114 if ~isfield(meg_parm, 'measurement_file') || isempty(meg_parm.measurement_file)
0115   error('(%s)meg_parm.measurement_file is a required field', func_);
0116 end
0117 
0118 if ~isfield(meg_parm, 'pos_file') || isempty(meg_parm.pos_file)
0119   meg_parm.pos_file = [];
0120 end
0121 
0122 if ~isfield(meg_parm, 'output_file') || isempty(meg_parm.output_file)
0123   meg_parm.output_file = '';
0124 end
0125 
0126 if ~isfield(meg_parm, 'bin_data_dir') || isempty(meg_parm.bin_data_dir)
0127   meg_parm.bin_data_dir = '';
0128 end
0129 
0130 if ~isfield(meg_parm, 'eeginfo_version')
0131   meg_parm.eeginfo_version = [];
0132 end
0133 
0134 if ~isfield(meg_parm, 'verbose_swt') || isempty(meg_parm.verbose_swt)
0135   meg_parm.verbose_swt = false;
0136 end
0137 return;
0138 %
0139 % --- end of inner_check_arguments()
0140 %
0141 % --- END OF INNER FUNCTIONS ------------------------------------------------- %
0142 
0143 %%% END OF FILE %%%

Generated on Mon 22-May-2023 06:53:56 by m2html © 2005