www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@cgoptimoutput/private/pParseGetOptions.m

    function opts = pParseGetOptions(varargin)
%PPARSEGETOPTIONS Parse a set of getXXXSolution options and return a structure.
%
%   OPTS = PPARSEGETOPTIONS(PARAM, VALUE, ...) parses a set of
%   parameter-value pairs for the getXXXSolution methods and returns a
%   structure that contains logical flags indicating what was asked for.

%   Copyright 2005-2006 The MathWorks, Inc.


% Default options
opts = struct( ...
    'ConcatenateOutput', false, ...
    'OutputContents', 1, ...
    'OutputFreeVars', 1, ...
    'OutputFixedVars', 2, ...
    'OutputObjectives', 3, ...
    'OutputConstraints', 4, ...
    'OutputConstraintLHS', 5, ...
    'OutputConstraintRHS', 6, ...
    'OutputConstraintFeas', 7);
    
for n = 1:2:length(varargin)
    switch lower(varargin{n})
        case 'outputformat'
            opts.ConcatenateOutput = strcmpi(varargin{n+1}, 'matrix');
        case 'outputcontents'
            ValidOut = {'freevars', 'fixedvars', 'objectives', ...
                'constraints', 'constraintlhs', 'constraintrhs', 'constraintfeas'};
            [IsValid, OutIdx] = ismember(lower(varargin{n+1}), ValidOut);
            if ~all(IsValid)
                OutIdx = OutIdx(IsValid);
                warning(message('mbc:cgoptimoutput:InvalidArgument10')); 
            end
            opts.OutputContents = OutIdx;
            
        otherwise
            error(message('mbc:cgoptimoutput:InvalidArgument11', varargin{ n }));
    end
end