Main Content

MATLAB プロジェクトおよび Simulink プロジェクトのラベル管理

この例では、プログラムによってプロジェクトのラベルを管理する方法について説明します。

ファイルのラベルの確認

プロジェクト オブジェクトを作成します。

proj = currentProject;

プロジェクト内のファイルを調べます。

files = proj.Files
files=1×30 object
  1x30 ProjectFile array with properties:

    Path
    Revision
    SourceControlStatus
    Labels

このリストにあるファイルにアクセスするためのインデックスを作成します。たとえば、2 番目のファイルを取得します。各ファイルには、ファイルのパスおよびファイルに付けられたラベルを示す 2 つのプロパティがあります。

aFile = files(2);

ファイル オブジェクトの Labels プロパティにインデックスを作成して、付加されているラベルの情報を検索します。

label = aFile.Labels(1)
label = 
  Label with properties:

            File: "/tmp/Bdoc24a_2511836_2304106/tpcbac8286/simulink-ex81014015/airframe/custom_tasks/analyzeModelFiles.m"
        DataType: "none"
            Data: []
            Name: "Analysis"
    CategoryName: "Classification"

ファイルのサブセットへのラベルの付加

Classification カテゴリの Design ラベルを、拡張子が .m のすべてのファイルに付加します。

files = proj.Files;
for fileIdx = 1:numel(files)
   file = files(fileIdx); 
   [~, ~, fileExtension] = fileparts(file.Path);
   if strcmp(fileExtension,".m")
       addLabel(file,"Classification","Design");
   end
end

名前付きラベルの検索

関数findFileを使用して、rebuild_s_functions ファイルのプロジェクト ファイル オブジェクトを作成します。

pathToLocate = fullfile("utilities","rebuild_s_functions.m");
file = findFile(proj,pathToLocate);

Labels プロパティを使用して、ファイルに付加されているラベルごとに 1 つずつ、ラベル オブジェクトの配列を定義します。

labels = file.Labels
labels = 
  Label with properties:

            File: "/tmp/Bdoc24a_2511836_2304106/tpcbac8286/simulink-ex81014015/airframe/utilities/rebuild_s_functions.m"
        DataType: "none"
            Data: []
            Name: "Design"
    CategoryName: "Classification"

プロジェクト ファイル オブジェクトで関数findLabelを使用して、ラベルを検索します。

label = findLabel(file,"Classification","Design")
label = 
  Label with properties:

            File: "/tmp/Bdoc24a_2511836_2304106/tpcbac8286/simulink-ex81014015/airframe/utilities/rebuild_s_functions.m"
        DataType: "none"
            Data: []
            Name: "Design"
    CategoryName: "Classification"

新規カテゴリおよびラベルの作成

関数createCategoryを使用して、ファイルの所有者を示す Engineers というラベルのカテゴリを作成します。

createCategory(proj,"Engineers","char");
engineersCategory = findCategory(proj,"Engineers");

関数createLabelを使用して、各種ラベルを作成します。

createLabel(engineersCategory,"Sam");
createLabel(engineersCategory,"Pat");
createLabel(engineersCategory,"Alex");

Engineers カテゴリの Sam ラベルを使用して、rebuild_s_functions ファイルの所有権を Sam に割り当てます。詳細については、addLabelおよびfindLabelを参照してください。

addLabel(file,"Engineers","Sam");
label = findLabel(file,"Engineers","Sam");

ラベル データの設定

付加されたラベルに対してデータを設定します。

label.Data = "Maintenance responsibility";
disp(label)
  Label with properties:

            File: "/tmp/Bdoc24a_2511836_2304106/tpcbac8286/simulink-ex81014015/airframe/utilities/rebuild_s_functions.m"
        DataType: "char"
            Data: 'Maintenance responsibility'
            Name: "Sam"
    CategoryName: "Engineers"

関連するトピック

プロジェクト ファイルへのラベルの追加

プロジェクト ファイルの管理