Main Content

getInputDimensionConstraintImpl

クラス: matlab.System

Dataflow Subsystem で用いる入力の次元制約を定義

構文

constraints = getInputDimensionConstraintImpl(obj)
constraints = getInputDimensionConstraintImpl(obj,index)

説明

constraints = getInputDimensionConstraintImpl(obj) は、最初の入力について入力の次元制約を定義します。

constraints = getInputDimensionConstraintImpl(obj,index) は、index 番目の入力端子について obj の入力の次元制約を定義します。

メソッドのオーサリングのヒント

  • このメソッドでは Access = protected と設定しなければなりません。

  • getInputDimensionConstraintImpl メソッドを指定する場合は、getOutputDimensionConstraintImpl メソッドも指定しなければなりません。

入力引数

すべて展開する

オブジェクト固有のプロパティ、状態、およびメソッドへのアクセスに使用される System object ハンドル。getInputDimensionConstraintImpl メソッドがこのオブジェクトを使用しない場合、この入力を ~ に置き換えることができます。

入力端子のインデックス。スカラー整数として指定します。

出力引数

すべて展開する

入力の次元制約オブジェクト。マルチスレッド シミュレーションとコード生成での Dataflow Subsystem の自動分割を最適化するために、データフローによって使用されます。

inputDimensionConstraint メソッドを使用して、次元制約オブジェクトの以下のプロパティを指定します。

  • 'MinimumSize' - 実行に必要な最小サンプル数。非負のスカラー整数として指定します。

  • 'Concatenable' - オブジェクトが最小サイズの倍数を受け入れるかどうか。boolean として指定します。'Concatenable' の既定値は false です。

    'Concatenable' が true に設定されていると、入力が System object にバッファーされる場合があります。'Concatenable' が false に設定されていると、すべての受信データを処理するためにブロックが複数回実行される場合があります。

すべて展開する

System object の最初の入力で、必要とされる入力次元を指定します。

function dc = getInputDimensionConstraintImpl(obj)
    dc = inputDimensionConstraint(obj, 'MinimumSize', obj.NumBins, 'Concatenable', true);
end

最初の入力端子以外の入力端子に入力次元を指定するには、コンストラクターで端子番号を指定します。

function dc = getInputDimensionConstraintImpl(obj, index)
    if index == 1
        dc = inputDimensionConstraint(obj, 'MinimumSize', obj.NumBins, 'Concatenable', true);
    else
        dc = inputDimensionConstraint(obj, 'MinimumSize', 1, 'Concatenable', true);
    end
end

既定の動作

このメソッドが上書きされない場合、MATLAB System ブロックは入力の次元制約を未指定に設定します。未指定の設定によって、データフロー スケジューラで、最適化に保守的な仮定を立てられるようになります。

バージョン履歴

R2018b で導入