メインコンテンツ

duration 配列入力の定義

コマンド ラインまたは MATLAB® Coder™ アプリで duration 配列入力を定義できます。コード生成では、関数の引数の検証 (arguments ブロック) または前提条件 (assert ステートメント) を使用した duration 入力型のプログラムによる指定はサポートされていません。

コマンド ラインでの duration 配列入力の定義

コマンド ラインで duration 配列入力を定義するには、入力の例を提供するか duration coder 型を使用します。定数の duration 配列入力を指定することもできます。または、サンプル入力を使用してエントリポイント関数を呼び出すテスト ファイルがある場合は、coder.getArgTypes を使用して入力の型を指定できます。

duration 配列入力の例の提供

-args オプションを使用します。

D = duration(1:3,0,0);
codegen myFunction -args {D}

duration 配列の型の提供

duration 配列の型を codegen に提供するには次のようにします。

  1. duration 配列を定義します。以下に例を示します。

    D = duration(1:3,0,0);

  2. D から型を作成します。

    t = coder.typeof(D);
    

  3. -args オプションを使用して、型を codegen に渡します。

    codegen myFunction -args {t}
    

定数 duration 配列入力の提供

duration 配列入力が定数であることを指定するには、-args オプションを指定して coder.Constant を使用します。

D = duration(1:3,0,0);
codegen myFunction -args {coder.Constant(C)}

duration 配列の表現

coder 型オブジェクトは、内部状態の値を除外して、オブジェクトのプロパティの簡潔な説明を表示します。コマンド ライン インターフェイスで表示されるのは、非定数プロパティの型とサイズ、定数プロパティの値です。たとえば、1 行 12 列のサイズの coder datetime 型を作成します。

たとえば、1 行 12 列のサイズの coder duration 型を作成します。

d = duration((1:3),0,0);
dType = coder.typeof(d);

空の duration 変数の表現が coder 型オブジェクト dType に格納されます。

dType = 

   matlab.coder.type.DurationType
     1x3 duration
	Format : 1x8 char

duration coder 型の従来の coder.ClassType 表現が必要な場合は、メソッド getCoderType を使用して取得できます。たとえば、dtType オブジェクトの基になる coder.ClassType 表現を確認するには、次のコマンドを使用します。

dType.getCoderType
ans = 

coder.ClassType
   1×1 duration   
      Properties : 
      	millis : 1×:10 double
      	fmt    : 1×:12 char

オブジェクトのプロパティ

coder duration 型オブジェクトのプロパティを編集できます。オブジェクトのプロパティにスカラー値を割り当てることができます。coder 型オブジェクトのプロパティに値を割り当てると、対応する coder 型の値に暗黙的に変換されます。オブジェクト自体のサイズを変更するには、coder.resize 関数を使用するか、オブジェクトのプロパティを直接編集します。

coder.resize を使用したオブジェクトのプロパティのサイズ変更

coder.resize を使用して、duration オブジェクトのサイズとオブジェクトのプロパティのサイズを変更できます。プロパティ内で配列を作成することもできます。

たとえば、1 行 12 列のサイズの coder duration 型を作成します。

d = duration((1:3),0,0);
dType = coder.typeof(d)
dType = 

   matlab.coder.type.DurationType
     1x3 duration
	Format : 1x8 char

coder.resize を使用して、Format プロパティを上限が 12 の可変長の文字ベクトルにします。

dType.Format = coder.resize(dType.Format,[1 12],[false true])
dType = 

   matlab.coder.type.DurationType
     1x3 duration
	Format : 1x:12 char

オブジェクト サイズの直接変更

特定のタイプのオブジェクトについては、オブジェクトのプロパティを編集することでオブジェクト自体のサイズを変更することもできます。たとえば、dType オブジェクトの列数を変更するには、Size プロパティを編集します。

dType.Size = [1 10]
dType = 

   matlab.coder.type.DurationType
     1x10 duration
	Format : 1x:12 char

VarDims プロパティを使用してオブジェクトのタイプを可変サイズにすることもできます。

dType.VarDims = [false true]
dType = 

   matlab.coder.type.DurationType
     1x:10 duration
	Format : 1x:12 char

参考

| | |

トピック