Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

cv.cvdatagroup クラス

名前空間: cv

cvdata オブジェクトの集合

説明

cv.cvdatagroup オブジェクトには、1 つ以上の cvdata オブジェクトが含まれています。各 cvdata オブジェクトには、モデルの階層構造内のモデルのカバレッジ結果が含まれています。

Simulink® Coverage™ は、カバレッジを有効にしてモデル参照を含むモデルをシミュレーションするとき、またはモデルが外部コード ファイルを使用しておりカバレッジ解析に外部ファイルを選択した場合、cvdatagroup オブジェクトを作成します。get クラス メソッドと getAll クラス メソッドを使用して、モデル参照階層にある特定のモデルのカバレッジ データを取得します。allNames メソッドを使用して、get クラス メソッドで使用する cvdata オブジェクト名を取得します。

cv.cvdatagroup クラスは handle クラスです。

作成

説明

cvdg = cv.cvdatagroup(cvdo1,cvdo2,...) は、指定した cvdata オブジェクトが含まれる cvdatagroup オブジェクトを作成します。

入力引数

すべて展開する

カバレッジ データ。1 つ以上の cvdata オブジェクトとして指定します。

データ型: cvdata

プロパティ

すべて展開する

オブジェクト名。文字配列として指定します。

例: cvdg.name = 'myDataGroup';

属性:

GetAccess
public
SetAccess
public

データ型: char

メソッド

すべて展開する

すべて折りたたむ

この例では、cv.cvdatagroup オブジェクトから指定したカバレッジ データ オブジェクト、すべてのカバレッジ データ オブジェクト、またはすべてのカバレッジ データ オブジェクト名を取得する方法を説明します。

モデル例を読み込みます。

modelName = 'slvnvdemo_eml_model_coverage_demo';
load_system(modelName);

Simulink.SimulationInput クラスを使用して、カバレッジを有効にしてシミュレーション シナリオをセットアップします。

simIn = Simulink.SimulationInput(modelName);
simIn = setModelParameter(simIn,'CovEnable','on');
simIn = setModelParameter(simIn,'CovMetricStructuralLevel','MCDC');
simIn = setModelParameter(simIn,'CovSaveSingleToWorkspaceVar','on');
simIn = setModelParameter(simIn,'CovSaveName','covData');
simIn = setModelParameter(simIn,'CovSaveOutputData','off');

SimulationInput オブジェクトを関数 sim に渡してモデルをシミュレートした後、SimulationOutput オブジェクトからカバレッジ データを取得します。

simOut = sim(simIn);
covData = simOut.covData
covData = ... cv.cvdatagroup

  slcoverageExternalFile (simulation mode: Normal)
  slvnvdemo_eml_model_coverage_demo (simulation mode: Normal)


このモデル例には、外部 MATLAB 関数を呼び出す MATLAB® Function ブロックが含まれます。Simulink Coverage は MATLAB 関数のカバレッジ データを別の cvdata オブジェクトに返すため、sim はモデルと MATLAB 関数両方のカバレッジ結果を含む cv.cvdatagroup オブジェクトを返します。

cv.cvdatagroup 内の各 cvdata オブジェクトに関連付けられた名前を特定するには、クラス メソッド allNames を使用します。

covDataNames = allNames(covData)
covDataNames =

  2x1 cell array

    {'slcoverageExternalFile'           }
    {'slvnvdemo_eml_model_coverage_demo'}

cv.cvdatagroup には、MATLAB 関数だけでなく、モデルのカバレッジ結果も含まれます。

モデルのカバレッジ データを取得するには、get クラス メソッドを使用します。

modelCovData = get(covData,modelName)
modelCovData = ... cvdata
            version: (R2023b)
                 id: 866
               type: TEST_DATA
               test: cvtest object
             rootID: 868
           checksum: [1x1 struct]
          modelinfo: [1x1 struct]
          startTime: 04-Aug-2023 00:38:47
           stopTime: 04-Aug-2023 00:38:48
  intervalStartTime: 0
   intervalStopTime: 0
simulationStartTime: 0
 simulationStopTime: 1
             filter: 
            simMode: Normal

モデルと外部ファイル両方のカバレッジ データを取得するには、getAll クラス メソッドを使用します。

covDataArray = getAll(covData)
covDataArray =

  2x1 cell array

    {1x1 cvdata}
    {1x1 cvdata}

この例では、2 つの cvdata オブジェクトを使用して、cvdatagroup オブジェクトを作成する方法を説明します。

slvnvdemo_cv_small_controller のカバレッジを記録します。

model_1 = 'slvnvdemo_cv_small_controller';
load_system(model_1)
cvdo1 = cvsim(model_1);

slvnvdemo_powerwindow_controller のカバレッジを記録します。

model_2 = 'slvnvdemo_powerwindow_controller';
load_system(model_2)
cvdo2 = cvsim(model_2);

2 つの cvdata オブジェクトが含まれる cv.cvdatagroup オブジェクトを作成します。

cvdg = cv.cvdatagroup(cvdo1,cvdo2);

バージョン履歴

R2007b で導入