dw1dvmod.m
上传用户:haiyisale
上传日期:2013-01-09
资源大小:3246k
文件大小:21k
源码类别:

波变换

开发平台:

Matlab

  1. function [out1,out2,out3,out4,out5,out6] = ...
  2.                   dw1dvmod(option,win_dw1dtool,in3,in4,in5,in6,in7,in8,in9)
  3. %DW1DVMOD Discrete wavelet 1-D view mode manager.
  4. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 12-Mar-96.
  5. %   Last Revision: 16-Jul-1999.
  6. %   Copyright 1995-2002 The MathWorks, Inc.
  7. %   $Revision: 1.20 $
  8. % Subfunction(s): 
  9. %----------------
  10. % SSSTRING.
  11. %--------------------------------------
  12. % mode 1 : scroll mode        = 'scr'
  13. % mode 2 : decomposition mode = 'dec'
  14. % mode 3 : separate mode      = 'sep'
  15. % mode 4 : superimposed mode  = 'sup'
  16. % mode 5 : tree mode          = 'tre'
  17. % mode 6 : cfs mode           = 'cfs'
  18. %--------------------------------------
  19. % MemBloc1 of stored values.
  20. %---------------------------
  21. n_param_anal   = 'DWAn1d_Par_Anal';
  22. ind_sig_name   = 1;
  23. ind_sig_size   = 2;
  24. ind_wav_name   = 3;
  25. ind_lev_anal   = 4;
  26. ind_axe_ref    = 5;
  27. ind_act_option = 6;
  28. ind_ssig_type  = 7;
  29. ind_thr_val    = 8;
  30. nb1_stored     = 8;
  31. % Default values.
  32. %----------------
  33. max_lev_anal = 12;
  34. % Tag property of objects.
  35. %-------------------------
  36. tag_pop_viewm   = 'View_Mode';
  37. tag_pus_dispopt = 'Pus_Options';
  38. tag_valapp_scr  = 'ValApp_Scr';
  39. tag_txtapp_scr  = 'TxtApp_Scr';
  40. tag_valdet_scr  = 'ValDet_Scr';
  41. tag_txtdet_scr  = 'TxtDet_Scr';
  42. tag_declev      = 'Pop_DecLev';
  43. tag_txtdeclev   = 'Txt_DecLev';
  44. % Handles of tagged objects.
  45. %---------------------------
  46. uic_handles = findobj(win_dw1dtool,'type','uicontrol');
  47. txt_handles = findobj(uic_handles,'Style','text');
  48. pop_handles = findobj(uic_handles,'Style','popupmenu');
  49. pus_dispopt = findobj(uic_handles,'tag',tag_pus_dispopt);
  50. % Local MemBloc of stored values.
  51. %---------------------------
  52. ind_scrm_1 =  1;
  53. ind_scrm_2 =  2;
  54. ind_decm_1 =  3;
  55. ind_decm_2 =  4;
  56. ind_sepm_1 =  5;
  57. ind_sepm_2 =  6;
  58. ind_supm_1 =  7;
  59. ind_supm_2 =  8;
  60. ind_trem_1 =  9;
  61. ind_trem_2 = 10;
  62. ind_cfsm_1 = 11;
  63. ind_cfsm_2 = 12;
  64. nb_stored  = 12;
  65. switch option
  66.     case 'ini_vm'
  67.         %*****************************************************************%
  68.         %** OPTION = 'ini_vm' - Default & Current values for every mode **%
  69.         %*****************************************************************%
  70.         % mode 1 : scroll mode        = 'scr'
  71.         % mode 2 : decomposition mode = 'dec'
  72.         % mode 3 : separate mode      = 'sep'
  73.         % mode 4 : superimposed mode  = 'sup'
  74.         % mode 5 : tree mode          = 'tre'
  75.         % mode 6 : cfs  mode          = 'cfs'
  76.         %--------------------------------------
  77.         scrm = [1 1 1 1 0 1 0 0 1 1];
  78.         decm = [1 0 1];
  79.         sepm = [1 1 1 1 0 ones(1,max_lev_anal) 1 0 ones(1,max_lev_anal) 1];
  80.         supm = [1 1 1 1 0 ones(1,max_lev_anal) 0 0 ones(1,max_lev_anal) 1];
  81.         trem = [1 0 1];
  82.         cfsm = [1 1 1 1 0 1 0 0 1 1];
  83.         memB = cell(1,nb_stored);
  84.         memB(ind_scrm_1) = {scrm};
  85.         memB(ind_scrm_2) = {scrm};
  86.         memB(ind_decm_1) = {decm};
  87.         memB(ind_decm_2) = {decm};
  88.         memB(ind_sepm_1) = {sepm};
  89.         memB(ind_sepm_2) = {sepm};
  90.         memB(ind_supm_1) = {supm};
  91.         memB(ind_supm_2) = {supm};
  92.         memB(ind_trem_1) = {trem};
  93.         memB(ind_trem_2) = {trem};
  94.         memB(ind_cfsm_1) = {cfsm};
  95.         memB(ind_cfsm_2) = {cfsm};
  96.         set(pus_dispopt,'Userdata',memB);
  97.     case 'set_vm'
  98.         %**************************************************%
  99.         %** OPTION = 'set_vm' - set View Mode Parameters **%
  100.         %**************************************************%
  101.         % mode 1 : scroll mode        = 'scr'
  102.         % mode 2 : decomposition mode = 'dec'
  103.         % mode 3 : separate mode      = 'sep'
  104.         % mode 4 : superimposed mode  = 'sup'
  105.         % mode 5 : tree mode          = 'tre'
  106.         % mode 6 : cfs  mode          = 'cfs'
  107.         %--------------------------------------
  108.         % in3 = mode
  109.         %------------
  110.         switch in3
  111.             case {1,'1','scr'}
  112.                 new_vm = [in4 in5 in6 in7 in8 in9];
  113.                 index  = ind_scrm_2;
  114.             case {2,'2','dec'}
  115.                 new_vm = [in4 in5];
  116.                 index  = ind_decm_2;
  117.             case {3,'3','sep'}
  118.                 Level_Anal = wmemtool('rmb',win_dw1dtool,n_param_anal,ind_lev_anal);
  119.                 plus = ones(1,max_lev_anal-Level_Anal);
  120.                 new_vm = [in4 in5 in6 plus in7 in8 plus in9];
  121.                 index  = ind_sepm_2;
  122.             case {4,'4','sup'}
  123.                 Level_Anal = wmemtool('rmb',win_dw1dtool,n_param_anal,ind_lev_anal);
  124.                 plus = ones(1,max_lev_anal-Level_Anal);
  125.                 new_vm = [in4 in5 in6 plus in7 in8 plus in9];
  126.                 index  = ind_supm_2;
  127.             case {5,'5','tre'}
  128.                 new_vm = [in4 in5];
  129.                 index  = ind_trem_2;
  130.             case {6,'6','cfs'}
  131.                 new_vm = [in4 in5 in6 in7 in8 in9];
  132.                 index  = ind_cfsm_2;
  133.         end
  134.         memB = get(pus_dispopt,'Userdata');
  135.         old_vm  = memB{index};
  136.         if find(new_vm~=old_vm)
  137.             out1 = 1;
  138.             memB(index) = {new_vm};
  139.             set(pus_dispopt,'Userdata',memB);
  140.         else
  141.             out1 = 0;
  142.         end
  143.     case 'get_vm'
  144.         %**************************************************%
  145.         %** OPTION = 'get_vm' - get View Mode Parameters **%
  146.         %**************************************************%
  147.         % mode 1 : scroll mode          = 'scr'
  148.         % mode 2 : decomposition mode   = 'dec'
  149.         % mode 3 : separate mode        = 'sep'
  150.         % mode 4 : superimposed mode    = 'sup
  151.         % mode 5 : tree mode            = 'tre'
  152.         % mode 6 : cfs  mode            = 'cfs'
  153.         %--------------------------------------
  154.         % in3 = mode
  155.         % in4 optional
  156.         % if nargin=4 , initial options
  157.         %------------------------------
  158.         memB = get(pus_dispopt,'Userdata');
  159.         if nargin==3 , indplus = 1 ; else , indplus = rem(in4,2); end
  160.         switch in3
  161.             case {1,'1','scr'}
  162.                 viewm = memB{ind_scrm_1+indplus};
  163.                 out1  = viewm(1:3);
  164.                 out2  = viewm(4:5);
  165.                 out3  = viewm(6);
  166.                 out4  = viewm(7:8);
  167.                 out5  = viewm(9);
  168.                 out6  = viewm(10);
  169.             case {2,'2','dec'}
  170.                 viewm = memB{ind_decm_1+indplus};
  171.                 out1  = viewm(1:2);
  172.                 out2  = viewm(3);
  173.             case {3,'3','sep'}
  174.                 Level_Anal = wmemtool('rmb',win_dw1dtool,n_param_anal,ind_lev_anal);
  175.                 viewm = memB{ind_sepm_1+indplus};
  176.                 out1  = viewm(1:3);
  177.                 out2  = viewm(4:5);
  178.                 out3  = viewm(6:max_lev_anal+5);
  179.                 out3  = out3(1:Level_Anal);
  180.                 out4  = viewm(max_lev_anal+6:max_lev_anal+7);
  181.                 out5  = viewm(max_lev_anal+8:2*max_lev_anal+7);
  182.                 out5  = out5(1:Level_Anal);
  183.                 out6  = viewm(2*max_lev_anal+8);
  184.             case {4,'4','sup'}
  185.                 Level_Anal = wmemtool('rmb',win_dw1dtool,n_param_anal,ind_lev_anal);
  186.                 viewm = memB{ind_supm_1+indplus};
  187.                 out1  = viewm(1:3);
  188.                 out2  = viewm(4:5);
  189.                 out3  = viewm(6:max_lev_anal+5);
  190.                 out3  = out3(1:Level_Anal);
  191.                 out4  = viewm(max_lev_anal+6:max_lev_anal+7);
  192.                 out5  = viewm(max_lev_anal+8:2*max_lev_anal+7);
  193.                 out5  = out5(1:Level_Anal);
  194.                 out6  = viewm(2*max_lev_anal+8);
  195.             case {5,'5','tre'}
  196.                 viewm = memB{ind_trem_1+indplus};
  197.                 out1  = viewm(1:2);
  198.                 out2  = viewm(3);
  199.             case {6,'6','cfs'}
  200.                 viewm = memB{ind_cfsm_1+indplus};
  201.                 out1  = viewm(1:3);
  202.                 out2  = viewm(4:5);
  203.                 out3  = viewm(6);
  204.                 out4  = viewm(7:8);
  205.                 out5  = viewm(9);
  206.                 out6  = viewm(10);
  207.         end
  208.     case 'ch_vm'
  209.         %***********************************************%
  210.         %** OPTION = 'ch_vm' - Change Mode  View Mode **%
  211.         %***********************************************%
  212.         % in3 = 1 (optional) - clean
  213.         % in3 = 2 (optional) - clean + redraw (return comp & deno)
  214.         %----------------------------------------------------------
  215.         % Handles of tagged objects.
  216.         %---------------------------
  217.         [btnHeight,ySpacing] = mextglob('get','Def_Btn_Height','Y_Spacing');
  218.         pop_viewm   = findobj(pop_handles,'tag',tag_pop_viewm);
  219.         pop_app_scr = findobj(pop_handles,'Tag',tag_valapp_scr);
  220.         pop_det_scr = findobj(pop_handles,'Tag',tag_valdet_scr);
  221.         pop_lev_dec = findobj(pop_handles,'Tag',tag_declev);
  222.         txt_app_scr = findobj(txt_handles,'Tag',tag_txtapp_scr);
  223.         txt_det_scr = findobj(txt_handles,'Tag',tag_txtdet_scr);
  224.         txt_lev_dec = findobj(txt_handles,'Tag',tag_txtdeclev);
  225.         hdl_col     = utcolmap('handles',win_dw1dtool,'all','true');
  226.         hdl_col     = hdl_col(:)';
  227.         
  228.         if nargin==2 , in3 = 0; end
  229.         old_mode = get(pop_viewm,'Userdata');
  230.         new_mode = get(pop_viewm,'Value');
  231.         %-------------------------------------------------------------%
  232.         %-- pour deno et comp on ne change que le signal synthetise --%
  233.         %-- sinon oter cette partie                                 --%
  234.         %-------------------------------------------------------------%
  235.         if in3==2
  236.             % Begin waiting.
  237.             %---------------
  238.             wwaiting('msg',win_dw1dtool,'Wait ... computing');
  239.             switch new_mode
  240.               case {2,'2','dec',5,'5','tre'}
  241.                   val = dw1dvmod('get_vm',win_dw1dtool,new_mode);
  242.                   ss_type = wmemtool('rmb',win_dw1dtool,n_param_anal,ind_ssig_type);
  243.                   str_ss  = ssString(ss_type);
  244.                   set(pus_dispopt, ...
  245.                         'Value',val(2),                   ...
  246.                         'String',sprintf('Show %s Sig.', str_ss) ...
  247.                         );
  248.             end
  249.             switch new_mode
  250.                 case {1,'1','scr'} , fname = 'dw1dscrm';
  251.                 case {2,'2','dec'} , fname = 'dw1ddecm';
  252.                 case {3,'3','sep'} , fname = 'dw1dsepm';
  253.                 case {4,'4','sup'} , fname = 'dw1dsupm';
  254.                 case {5,'5','tre'} , fname = 'dw1dtrem';
  255.                 case {6,'6','cfs'} , fname = 'dw1dcfsm';
  256.             end
  257.             feval(fname,'del_ss',win_dw1dtool);
  258.             % clean_val = -0;    % reset axes history. 
  259.             clean_val = -1;      % preserve axes history.
  260.             feval(fname,'view',win_dw1dtool,clean_val)
  261.             % End waiting.
  262.             %---------------
  263.             wwaiting('off',win_dw1dtool);
  264.             return;
  265.         end
  266.         %-------------------------------------------------------------%
  267.         if (old_mode==new_mode)
  268.             if in3==0
  269.                 return ;
  270.             elseif in3==1 | in3==2
  271.                 new_mode  = 1;
  272.                 set(pop_viewm,'Value',new_mode,'Userdata',new_mode);
  273.                 clear_val = 0;
  274.             end
  275.         else
  276.             clear_val = new_mode;
  277.             set(pop_viewm,'Userdata',new_mode);
  278.         end
  279.         % Begin waiting.
  280.         %---------------
  281.         wwaiting('msg',win_dw1dtool,'Wait ... computing');
  282.         % Borders and double borders.
  283.         %----------------------------
  284.         win_units = get(win_dw1dtool,'units');
  285.         deltay    = btnHeight+4*ySpacing;;
  286.         if ~strcmp(win_units,'pixels')
  287.             [dx,deltay] = wfigutil('prop_size',win_dw1dtool,1,deltay);
  288.         end
  289.         pos_pop_viewm   = get(pop_viewm,'Position');
  290.         pos_opt = get(pus_dispopt,'Position');
  291.         switch old_mode
  292.             case {1,'1','scr'}
  293.                 set([txt_app_scr,txt_det_scr,pop_app_scr,pop_det_scr, ...
  294.                      pus_dispopt],'Visible','off');
  295.                 feval('dw1dscrm','clear',win_dw1dtool,clear_val);
  296.             case {2,'2','dec'}
  297.                 set([txt_lev_dec,pop_lev_dec,pus_dispopt],'Visible','off');
  298.                 set(pus_dispopt,'Style','pushbutton');
  299.                 feval('dw1ddecm','clear',win_dw1dtool);
  300.                 drawnow;
  301.             case {3,'3','sep'}
  302.                 if (new_mode==1) | (new_mode==2)
  303.                     set(pus_dispopt,'Visible','off');
  304.                 end
  305.                 feval('dw1dsepm','clear',win_dw1dtool);
  306.                 drawnow;
  307.             case {4,'4','sup'}
  308.                 if (new_mode==1) | (new_mode==2)
  309.                     set(pus_dispopt,'Visible','off');
  310.                 end
  311.                 feval('dw1dsupm','clear',win_dw1dtool,clear_val);
  312.             case {5,'5','tre'}
  313.                 set([pus_dispopt],'Visible','off');
  314.                 set(pus_dispopt,'Style','pushbutton');
  315.                 feval('dw1dtrem','clear',win_dw1dtool);
  316.                 drawnow;
  317.             case {6,'6','cfs'}
  318.                 set([txt_app_scr,txt_det_scr,pop_app_scr,pop_det_scr, ...
  319.                      pus_dispopt],'Visible','off');
  320.                 feval('dw1dcfsm','clear',win_dw1dtool,clear_val);
  321.         end
  322.         
  323.         if ((new_mode==2) & find(old_mode==[1 3 4 5 6])) | ...
  324.            ((new_mode==5) & find(old_mode==[1 2 3 4 6]))
  325.             val = dw1dvmod('get_vm',win_dw1dtool,new_mode);
  326.             ss_type = wmemtool('rmb',win_dw1dtool,n_param_anal,ind_ssig_type);
  327.             str_ss  = ssString(ss_type);
  328.             if new_mode==2 , fname = 'dw1ddecm'; else , fname = 'dw1dtrem'; end 
  329.             cba_disp = [fname '(''ssig'',' ...
  330.                             int2str(win_dw1dtool) ',' ...
  331.                             num2mstr(pus_dispopt) ');'];
  332.             set(pus_dispopt,...
  333.                            'Style','checkbox',...
  334.                            'Value',val(2),...
  335.                            'String',sprintf('Show %s Sig.', str_ss), ...
  336.                            'Callback',cba_disp);
  337.         elseif ((old_mode==2) & find(new_mode==[1 3 4 5 6])) | ...
  338.                ((old_mode==5) & find(new_mode==[1 2 3 4 6]))
  339.             cba_disp = ['dw1ddisp(''create'',' int2str(win_dw1dtool) ');'];
  340.             set(pus_dispopt,...
  341.                            'Style','pushbutton',            ...
  342.                            'String',xlate('More Display Options'), ...
  343.                            'Callback',cba_disp);
  344.         end
  345.         switch new_mode
  346.             case {1,'1','scr'}
  347.                 pos_txt1   = get(txt_app_scr,'Position');
  348.                 pos_opt(2) = pos_txt1(2)-deltay;
  349.                 set(pus_dispopt,'Position',pos_opt);
  350.                 set([txt_app_scr, txt_det_scr, ...
  351.                      pop_app_scr, pop_det_scr, ...
  352.                      pus_dispopt, hdl_col],    ...
  353.                      'Visible','on');
  354.                 drawnow
  355.                 if (clear_val==0) & (in3==1) , return; end
  356.                 feval('dw1dscrm','view',win_dw1dtool,old_mode);
  357.             case {2,'2','dec'}
  358.                 pos_txt1   = get(txt_lev_dec,'Position');
  359.                 pos_opt(2) = pos_txt1(2)-deltay;
  360.                 set(pus_dispopt,'Position',pos_opt);
  361.                 set([txt_lev_dec, pop_lev_dec,pus_dispopt],'Visible','on');
  362.                 set([hdl_col],'Visible','off');         
  363.                 drawnow
  364.                 lev = get(pop_lev_dec,'Value'); 
  365.                 feval('dw1ddecm','view',win_dw1dtool,old_mode,lev);
  366.             case {3,'3','sep'}
  367.                 pos_opt(2) = pos_pop_viewm(2)-deltay;
  368.                 set(pus_dispopt,'Position',pos_opt);
  369.                 set([pus_dispopt,hdl_col],'Visible','on');
  370.                 drawnow
  371.                 feval('dw1dsepm','view',win_dw1dtool,old_mode);
  372.             case {4,'4','sup'}
  373.                 pos_opt(2) = pos_pop_viewm(2)-deltay;
  374.                 set(pus_dispopt,'Position',pos_opt);
  375.                 set([pus_dispopt,hdl_col],'Visible','on');
  376.                 drawnow
  377.                 feval('dw1dsupm','view',win_dw1dtool,old_mode);
  378.             case {5,'5','tre'}
  379.                 pos_txt1   = get(txt_lev_dec,'Position');
  380.                 pos_opt(2) = pos_txt1(2)-deltay;
  381.                 set(pus_dispopt,'Position',pos_opt);
  382.                 set([pus_dispopt],'Visible','on');
  383.                 set([hdl_col],'Visible','off');         
  384.                 drawnow
  385.                 lev = get(pop_lev_dec,'Value');
  386.                 feval('dw1dtrem','view',win_dw1dtool,old_mode,lev);
  387.             case {6,'6','cfs'}
  388.                 pos_txt1   = get(txt_app_scr,'Position');
  389.                 pos_opt(2) = pos_txt1(2)-deltay;
  390.                 set(pus_dispopt,'Position',pos_opt);
  391.                 set([txt_app_scr, txt_det_scr, ...
  392.                      pop_app_scr, pop_det_scr, ...
  393.                      pus_dispopt],    ...
  394.                      'Visible','on');
  395.                 set([hdl_col],'Visible','off');         
  396.                 drawnow
  397.                 if (clear_val==0) & (in3==1) , return; end
  398.                 feval('dw1dcfsm','view',win_dw1dtool,old_mode);
  399.         end
  400.         % End waiting.
  401.         %---------------
  402.         wwaiting('off',win_dw1dtool);
  403.     case 'ss_vm'
  404.         %*******************************************************%
  405.         %** OPTION = 'ss_vm' - set Visibility of synth signal **%
  406.         %*******************************************************%
  407.         % mode 1 : scroll mode        = 'scr'
  408.         % mode 2 : decomposition mode = 'dec'
  409.         % mode 3 : separate mode      = 'sep'
  410.         % mode 4 : superimposed mode  = 'sup'
  411.         % mode 5 : tree mode          = 'tre'
  412.         % mode 6 : cfs  mode          = 'cfs'
  413.         %-----------------------------------------
  414.         % in3 = view_mode (s)
  415.         % in4 = 0 (invisible) or in4 = 1 (visible)
  416.         % in5 = 0 (invisible) or in5 = 1 (visible)
  417.         %------------------------------------------
  418.         if nargin==4 , in5 = in4; end
  419.         memB = get(pus_dispopt,'Userdata');
  420.         if find(in3==1)
  421.             viewm            = memB{ind_scrm_2};
  422.             viewm(5)         = in4;
  423.             viewm(8)         = in5;
  424.             memB(ind_scrm_2) = {viewm};
  425.         end
  426.         if find(in3==2)
  427.             viewm            = memB{ind_decm_2};
  428.             viewm(2)         = in4;
  429.             memB(ind_decm_2) = {viewm};
  430.         end
  431.         if find(in3==3)
  432.             viewm                 = memB{ind_sepm_2};
  433.             viewm(5)              = in4;
  434.             viewm(max_lev_anal+7) = in5;
  435.             memB(ind_sepm_2)      = {viewm};
  436.         end
  437.         if find(in3==4)
  438.             viewm                 = memB{ind_supm_2};
  439.             viewm(5)              = in4;
  440.             viewm(max_lev_anal+7) = in5;
  441.             memB(ind_supm_2)      = {viewm};
  442.         end
  443.         if find(in3==5)
  444.             viewm            = memB{ind_trem_2};
  445.             viewm(2)         = in4;
  446.             memB(ind_trem_2) = {viewm};
  447.         end
  448.         if find(in3==6)
  449.             viewm            = memB{ind_cfsm_2};
  450.             viewm(5)         = in4;
  451.             viewm(8)         = in5;
  452.             memB(ind_cfsm_2) = {viewm};
  453.         end
  454.         set(pus_dispopt,'Userdata',memB);
  455.     case 'ccfs_vm'
  456.         %*************************************************%
  457.         %** OPTION = 'ccfs_vm' - get coloration options **%
  458.         %*************************************************%
  459.         % mode 1 : scroll mode        = 'scr'
  460.         % mode 2 : decomposition mode = 'dec'
  461.         % mode 3 : separate mode      = 'sep'
  462.         % mode 4 : superimposed mode  = 'sup'
  463.         % mode 5 : tree mode          = 'tre'
  464.         % mode 6 : cfs  mode          = 'cfs'
  465.         %--------------------------------------
  466.         % in3 = mode
  467.         %------------------------------
  468.         memB = get(pus_dispopt,'Userdata');
  469.         switch in3
  470.             case {1,'1','scr'}
  471.                 viewm = memB{ind_scrm_2};
  472.                 out1  = viewm(10);
  473.             case {2,'2','dec'}
  474.                 viewm = memB{ind_decm_2};
  475.                 out1  = viewm(3);
  476.             case {3,'3','sep'}
  477.                 viewm = memB{ind_sepm_2};
  478.                 out1  = viewm(2*max_lev_anal+8);
  479.             case {4,'4','sup'}
  480.                 viewm = memB{ind_supm_2};
  481.                 out1  = viewm(2*max_lev_anal+8);
  482.             case {5,'5','tre'}
  483.                 viewm = memB{ind_trem_2};
  484.                 out1  = viewm(3);
  485.             case {6,'6','cfs'}
  486.                 viewm = memB{ind_cfsm_2};
  487.                 out1  = viewm(10);
  488.         end
  489.     otherwise
  490.         errargt(mfilename,'Unknown Option','msg');
  491.         error('*');
  492. end
  493. %--------------------------------------
  494. function s = ssString(ss_type)
  495. switch ss_type
  496.     case 'ss', s = 'Synthesized';
  497.     case 'ds', s = 'De-noised';
  498.     case 'cs', s = 'Compressed';
  499. end
  500. %--------------------------------------