Home > functions > gui > bm_editor > bm_processor > bm_processor_process.m

bm_processor_process

PURPOSE ^

process brain model

SYNOPSIS ^

function [new_model_cell] = bm_processor_process(obj, brain_data_cell, parm_type, parm)

DESCRIPTION ^

 process brain model
 [USAGE]
   [new_model_cell] = 
       bm_processor_process(<obj>, <brain_data_cell>, <parm_type>, <parm>)
 [IN]
                obj : bm_processor object
    brain_data_cell : cell of brain_data object.
          parm_type : processing parameter type
               parm : parameter structure
 [OUT]
    new_model_cell  : cell of processed brain_data object

 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:

SOURCE CODE ^

0001 function [new_model_cell] = bm_processor_process(obj, brain_data_cell, parm_type, parm)
0002 % process brain model
0003 % [USAGE]
0004 %   [new_model_cell] =
0005 %       bm_processor_process(<obj>, <brain_data_cell>, <parm_type>, <parm>)
0006 % [IN]
0007 %                obj : bm_processor object
0008 %    brain_data_cell : cell of brain_data object.
0009 %          parm_type : processing parameter type
0010 %               parm : parameter structure
0011 % [OUT]
0012 %    new_model_cell  : cell of processed brain_data object
0013 %
0014 % Copyright (C) 2011, ATR All Rights Reserved.
0015 % License : New BSD License(see VBMEG_LICENSE.txt)
0016 
0017 %
0018 % --- Previous check
0019 %
0020 if ~exist('obj', 'var'), error('obj is a required parameter.'); end
0021 if ~exist('brain_data_cell', 'var')
0022     error('brain_data_cell is a required parameter.');
0023 end
0024 if ~exist('parm_type', 'var')
0025     error('parm_type is a required parameter.');
0026 end
0027 if ~exist('parm', 'var'), error('parm is a required parameter.'); end
0028 
0029 %
0030 % --- Main Procedure
0031 %
0032 brain_data = brain_data_cell{1};
0033 
0034 history = brain_data_get_history(brain_data);
0035 const = define_bm_edit_app;
0036 type = const.parm_type;
0037 new_model_cell = cell(0);
0038 
0039 proc_str = [];
0040 switch(parm_type)
0041     case type.SURF_SMOOTH_PARM
0042         new_model_cell{1} = bm_processor_surf_smooth(obj, brain_data, parm);
0043         proc_str = 'vb_surf_smooth()';
0044     case type.SURF_SMOOTH_EXPAND_PARM
0045         new_model_cell{1} = bm_processor_surf_smooth_expand(obj, brain_data, parm);
0046         proc_str = 'vb_surf_smooth_expand()';
0047     case type.SURF_TO_FILLED_MASK_PARM
0048         new_model_cell{1} = bm_processor_surf_to_filled_mask(obj, brain_data, parm);
0049         proc_str = 'vb_surf_to_filled_mask()';
0050     case type.SEPARATE_SURF_PARM
0051         new_model_cell = bm_processor_separate_surf(obj, brain_data, parm);
0052         proc_str = 'vb_separate_surf()';
0053     case type.COMBINE_SURF_PARM
0054         new_model_cell{1} = bm_processor_combine_surf(obj, brain_data_cell, []);
0055         proc_str = 'vb_combine_surf() : ';
0056         Nmodel = length(brain_data_cell);
0057         for k=1:Nmodel
0058             data = brain_data_cell{k};
0059             model_name = brain_data_get_model_name(data);
0060             proc_str = [proc_str, model_name];
0061             if k ~= Nmodel
0062                proc_str = [proc_str, ' & '];
0063             end
0064         end
0065         history = history_new;
0066     case type.CLOSE_SURF_PARM
0067         new_model_cell{1} = bm_processor_close_surf(obj, brain_data, parm);
0068         proc_str = 'vb_close_surf()';
0069     case type.MORPHOLOGY_OPERATION_PARM
0070         new_model_cell{1} = bm_processor_morphology_operation(obj, brain_data, parm);
0071         proc_str = 'vb_morphology_operation()';
0072     case type.SURF_EXTRACT_PARM
0073         new_model_cell{1} = bm_processor_surf_extract(obj, brain_data, parm);
0074         proc_str = 'vb_surf_extract()';
0075 end
0076 
0077 Nmodel = length(new_model_cell);
0078 for k=1:Nmodel
0079     copied_history = history;
0080     copied_history = history_add_item(copied_history, proc_str, parm);
0081     new_model_cell{k} = brain_data_set_history(new_model_cell{k}, copied_history);
0082 end

Generated on Tue 27-Aug-2013 11:46:04 by m2html © 2005