www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@cgoptimrunner/loadobj.m

    function optimrun = loadobj(optimrun)
%LOADOBJ Load-time object actions
%
%   OBJ = LOADOBJ(OBJ)

%  Copyright 2006-2015 The MathWorks, Inc. 

if optimrun.Version < 2
    optimrun.DCT = 0;
    optimrun.DCTJobParams = struct('FileDependencies', {{}}, 'PathDependencies', {{}});
end


if optimrun.Version < 3
    % add application point sets
    optimrun.Constraints.Datasets = zeros(1,length(optimrun.Constraints.Items));
    optimrun.Objectives.Datasets = zeros(1,length(optimrun.Objectives.Items));
    if ~isempty(optimrun.DataSetData)
        % convert structure to a cgstaticdataset object
        optimrun.DataSetData = cgstaticdataset.createFromStruct(optimrun.DataSetData);
    end
end

if optimrun.Version < 4
    % convert to PCTAPI2 property names
    params.AttachedFiles = optimrun.DCTJobParams.FileDependencies;
    params.AdditionalPaths = optimrun.DCTJobParams.PathDependencies;
    optimrun.DCTJobParams = params;
end

if optimrun.Version < 5
    % add ModelRangeInfo
    optimrun.ModelRangeInfo = [];
end
if optimrun.Version < 6
    % remove DCT properties
    optimrun = rmfield(optimrun,'DCT');
    optimrun = rmfield(optimrun,'DCTJobParams');
end

optimrun.Version = 6;

if isstruct(optimrun)
    optimrun = cgoptimrunner(optimrun);
end