www.gusucode.com > mbcdata 工具箱 matlab 源码程序 > mbcdata/@cgoppoint/canEvaluate.m
function ok = canEvaluate(op,fact_i) %CANEVALUATE % Copyright 2000-2008 The MathWorks, Inc. and Ford Global Technologies, Inc. if isempty(fact_i) ok = []; else % flag currently 0, valid pointer, not a value, not linked, not in group ok = zeros(1,length(fact_i)); val = find(isvalid(op.ptrlist(fact_i))); for i = 1:length(val) this_i = fact_i(val(i)); % Not a cgvalue; % not linked; % not in a group; % not a created variable (eg an error) if ~op.ptrlist(this_i).isddvariable & ... ~isvalid(op.linkptrlist(this_i)) & ... op.group(this_i)==0 & ... op.created_flag(this_i)~=1 if op.overwrite(this_i)==1 % Not already set to evaluate. Should be a tick by Treat as Input ok(val(i)) = 1; else % Is already set to evaluate, so the menu item needs % a tick by it ok(val(i)) = 2; end end end end