モデル参照の離散サンプル時間継承の設定
System object™ に対してモデル参照の離散サンプル時間継承を許可しないようにします。この例で定義された System object には入力が 1 つあり、既定ではサンプル時間継承が許可されています。既定の設定をオーバーライドして継承を許可しないようにするため、この例のクラス定義ファイルには allowModelReferenceDiscreteSampleTimeInheritanceImpl
メソッドが含まれており、出力が false
に設定されています。
methods (Access = protected) function flag = ... allowModelReferenceDiscreteSampleTimeInheritanceImpl(obj) flag = false; end end
完全なクラス定義ファイルのメソッドを表示します。
classdef MyCounter < matlab.System % MyCounter Count values properties Threshold = 1; end properties (DiscreteState) Count end methods (Static, Access = protected) function header = getHeaderImpl header = matlab.system.display.Header('MyCounter',... 'Title','My Enhanced Counter',... 'Text', 'This counter is an enhanced version.'); end end methods (Access = protected) function flag = ... allowModelReferenceDiscreteSampleTimeInheritanceImpl(obj) flag = false end function setupImpl(obj,u) obj.Count = 0; end function y = stepImpl(obj,u) if (u > obj.Threshold) obj.Count = obj.Count + 1; end y = obj.Count; end function resetImpl(obj) obj.Count = 0; end end end