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

波变换

开发平台:

Matlab

  1. function varargout = dguicf1d(varargin)
  2. %DGUICF1D Demonstrates 1-D wavelet coefficients selection GUI tools in the Wavelet Toolbox.
  3. %
  4. % This is a slideshow file for use with wshowdrv.m
  5. % To see it run, type 'wshowdrv dguicf1d', 
  6. %   M. Misiti, Y. Misiti, G. Oppenheim, J.M. Poggi 03-Jul-99.
  7. %   Last Revision: 03-Feb-2003.
  8. %   Copyright 1995-2004 The MathWorks, Inc.
  9. %   $Revision: 1.7.4.2 $  $Date: 2004/03/15 22:37:04 $
  10. % Initialization and Local functions if necessary.
  11. if nargin>0
  12. action = varargin{1};
  13. switch action
  14.   case 'auto'    , wshowdrv('#autoMode',mfilename,'close');
  15.   case 'gr_auto' , wshowdrv('#gr_autoMode',mfilename,'close');
  16.   case 'getFigParam'
  17. figName  = 'Wavelet GUI Demo: Coefficients 1-D selection';
  18. showType = 'command';
  19. varargout = {figName,showType};
  20.   case 'slidePROC_Init'
  21. figHandle = varargin{2};
  22.     localPARAM = wtbxappdata('get',figHandle,'localPARAM');
  23.     if ~isempty(localPARAM)
  24.    active_fig = localPARAM{1};
  25.    delete(active_fig);
  26.        wtbxappdata('del',figHandle,'localPARAM');
  27.     end
  28.   case 'slidePROC'
  29.   [figHandle,idxSlide]  = deal(varargin{2:end});
  30.   localPARAM = wtbxappdata('get',figHandle,'localPARAM');
  31.   if isempty(localPARAM)
  32.   active_fig = cf1dtool;
  33.   wenamngr('Inactive',active_fig);
  34.   toolATTR = wfigmngr('getValue',active_fig,'ToolATTR');
  35.   hdl_UIC  = toolATTR.hdl_UIC;
  36.   chk_sho  = hdl_UIC.chk_sho;
  37.   cba_chk  = get(chk_sho,'Callback');
  38.   localPARAM = {active_fig,chk_sho,cba_chk};
  39.   wtbxappdata('set',figHandle,'localPARAM',localPARAM);
  40.   wshowdrv('#modify_cbClose',figHandle,active_fig,'cf1dtool');
  41.   else
  42.   [active_fig,chk_sho,cba_chk] = deal(localPARAM{:});
  43.   end
  44.   numDEM = idxSlide-1;
  45.   switch numDEM
  46.   case 1 , paramDEM = {'freqbrk','db5',5,{'Global'}};
  47.   case 2 , paramDEM = {'noisbloc','sym4',5,{'Global'}};
  48.   case 3 , paramDEM = {'noisbloc','sym4',5,{'Stepwise'}};
  49.   case 4 , paramDEM = {'noisbump','sym4',5,{'Stepwise'}};
  50.   case 5 , paramDEM = {'nelec','db3',5,{'Global'}};
  51.   end
  52.   cf1dtool('demo',active_fig,paramDEM{:});
  53.   wenamngr('Inactive',active_fig);
  54.   if ismember(numDEM,[1,2,5])
  55.   set(chk_sho,'value',1);
  56.   eval(cba_chk);
  57.   end
  58. end
  59. return
  60. end
  61. if nargout<1,
  62.   wshowdrv(mfilename)
  63. else
  64.   idx = 0; slide(1).code = {}; slide(1).text = {};
  65.   
  66.   %========== Slide 1 ==========
  67.   idx = idx+1;
  68.   slide(idx).code = {
  69.   'figHandle = gcf;',
  70.   [mfilename ,'(''slidePROC_Init'',figHandle);'],
  71.   '' };
  72.   
  73.   %========== Slide 2 to 6 ==========
  74.   for idx = 2:6
  75.   slide(idx).code = {
  76.   [mfilename ,'(''slidePROC'',figHandle,', int2str(idx), ');']
  77.   };
  78.   end
  79.   
  80.   varargout{1} = slide;
  81.   
  82. end