www.gusucode.com > mbcdesign 工具箱 matlab 源码程序 > mbcdesign/@designdev/reorderDesignTree.m

    function dd = reorderDesignTree(dd,Index,Level)
%REORDERDESIGNTREE reorder storage of design tree
% 
% dd = reorderDesignTree(dd,Index,Level)
%   This routine is used by the command-line to ensure that assignment of
%   lists do not change the order of designs

%  Copyright 2007 The MathWorks, Inc.

if nargin<3
    Level= length(dd);
end

% get correct level designdev
Dcell= DesignDev2Cell(dd);
D= Dcell{Level};

if any(diff(Index)~=1)

    D.DesignTree.designs = D.DesignTree.designs(Index);
    D.DesignTree.parents= D.DesignTree.parents(Index);
    if D.DesignTree.chosen>1
        D.DesignTree.chosen = Index(D.DesignTree.chosen);
    end
    Dcell{Level}= D;
    dd= Cell2DesignDev(Dcell);
end