www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@calibrationdata/@calibration/pDoSetValue.m

    function pDoSetValue(obj, valuesI)
%PDOSETVALUE  Private method.

%  Implementation for setValue.

%  Copyright 2000-2005 The MathWorks, Inc.


% Get identifiers of inbound (I) and existing (E) items
identifiersI = get(valuesI, {'Identifier'}); % identifiers of incoming items
valuesE = obj.Values; % existing items
identifiersE = get(valuesE, {'Identifier'});

if numel(valuesI) > 1 && obj.phHasDuplicates(identifiersI)
    % Items to add have duplicate identifiers
    error(message('mbc:calibrationdata:calibration:InvalidOperation19'))
else
    [match, position] = ismember(identifiersI, identifiersE);
    if any(~match)
        error(message('mbc:calibrationdata:calibration:ObjectNotFound12'))
    else
        % Copy
        valuesI = copy(valuesI);
        % Strip out calibration interface
        valuesI.pClearCalibrationInterface;
        % Set
        valuesE(position) = valuesI;
        obj.Values = valuesE;
    end
end