Main Content

Simulink.CloneDetection.Results クラス

名前空間: Simulink.CloneDetection

クローンの検索結果

R2021a 以降

説明

Simulink.CloneDetection.Results クラスのオブジェクトを使用して、クローンの検索操作の結果を解析します。

作成

説明

関数 Simulink.CloneDetection.findClones を実行すると、Simulink.CloneDetection.Results クラスのオブジェクトが作成されます。関数 Simulink.CloneDetection.replaceClones の入力引数としてこのオブジェクトを使用できます。

メモ

クローンの置換関数の誤った実行を避けるため、Simulink.CloneDetection.Results オブジェクトを書き込まないようにしてください。

プロパティ

すべて展開する

検出されたクローンの情報。構造体として指定します。

CloneGroupsSimilarClonesExactClones の数、および PotentialReusePercentage。構造体として返されます。

モデル内の同一のクローン パターンの数。uint32 整数として指定します。

モデル内の類似クローンの数。uint32 整数として指定します。

モデル内の厳密クローンの数。uint32 整数として指定します。

モデル内のクローンの総数。uint32 整数として指定します。

モデル内の再利用の可能性 (%)。次のフィールドをもつ構造体として指定します。

  • Overall — 存在するクローンの全体的な割合 (%)

  • Exact — 存在する厳密クローンの割合 (%)

  • Similar — 存在する類似クローンの割合 (%)

クローンと見なされるサブシステム。構造体として指定します。

クローン グループの名前。文字ベクトルとして指定します。

クローン グループの概要。次のフィールドをもつ構造体として指定します。

  • ParameterDifferences — パラメーターの違いのリスト

  • Clones — 特定のクローン グループ内のサブシステム クローンの数

  • BlocksPerClone — クローン内のブロック要素の数

  • CloneType — クローンが Similar クローンなのか Exact クローンなのか

  • BlockDifference — ブロック値の違い

サブシステム クローンのリスト。次のフィールドをもつ構造体として指定します。

  • Name — クローン領域名

  • PatternBlocks — クローン パターンを形成するブロックのリスト

  • DataTypeMatch — ライブラリ サブシステムの入力端子データ型がモデル内のクローンの入力端子データ型に一致しているかどうか

ExceptionLog には、クローンの検索操作における例外と警告が含まれます。文字ベクトルの配列として指定します。

すべて折りたたむ

  1. この例では、クローンの検索操作の結果を解析する方法を示します。モデル例については、ex_detect_clones を参照してください。

    関数 Simulink.CloneDetection.findClones は情報を cloneResults オブジェクトに格納します。

    openExample('ex_detect_clones');
    cloneResults = Simulink.CloneDetection.findClones('ex_detect_clones')
    cloneResults = 
      Results with properties:
                Clones: [1×1 struct]
          ExceptionLog: ''
     cloneResults.Clones
      struct with fields:
    
            Summary: [1×1 struct]
        CloneGroups: [1×2 struct]

  2. cloneResults の概要を表示します。

     cloneResults.Clones.Summary
      struct with fields:
    
                     CloneGroups: 2
                   SimilarClones: 5
                     ExactClones: 0
                          Clones: 5
        PotentialReusePercentage: [1×1 struct]
     cloneResults.Clones.CloneGroups
      1×2 struct array with fields:
    
        Name
        Summary
        CloneList
     cloneResults.Clones.CloneGroups(1)
      struct with fields:
    
             Name: 'Similar Clone Group 1'
          Summary: [1×1 struct]
        CloneList: {3×1 cell}

  3. 最初のクローン グループの概要を表示します。

     cloneResults.Clones.CloneGroups(1).Summary
      struct with fields:
    
        ParameterDifferences: [1×1 struct]
                      Clones: 3
              BlocksPerClone: 8
                   CloneType: 'Similar'
             BlockDifference: 1

バージョン履歴

R2021a で導入