Main Content

生成される C/C++ コードにコメントを含める

このチュートリアルについて

学習目的

このチュートリアルでは以下を含むコードの生成方法について説明します。

  • 関数バナーの形式の関数シグネチャと関数のヘルプ テキスト。

  • トレーサビリティ タグを含むコメントの形式の MATLAB® ソース コード。コード生成レポートでは、トレーサビリティ タグが対応する MATLAB ソース コードにリンクしています。

前提条件

このチュートリアルを実行するには、以下の製品が必要です。

  • MATLAB

  • MATLAB Coder™

  • Embedded Coder®

  • C コンパイラ

サポートされているコンパイラのリストについては、サポートされるコンパイラを参照してください。

MATLAB ソース ファイルの作成

書き込み可能なフォルダーに、以下のコードを含む MATLAB ソース ファイル polar2cartesian.m を作成します。

function [x y] = polar2cartesian(r,theta)
%#codegen
% Convert polar to Cartesian
x = r * cos(theta);
y = r * sin(theta);

ビルド パラメーターの構成

coder.EmbeddedCodeConfig コード生成構成オブジェクトを作成し、以下のプロパティを true に設定します。

  • GenerateComments。生成されるコードでコメントを有効にします。

  • MATLABSourceComments。トレーサビリティ タグを含むコメントとして MATLAB ソース コードを生成します。コード生成レポートでは、タグが対応する MATLAB コードにリンクしています。このプロパティが true の場合、コード ジェネレーターによって関数バナーで関数シグネチャも生成されます。

  • MATLABFcnDesc。関数バナーで関数のヘルプ テキストを生成します。

cfg = coder.config('lib', 'ecoder', true);
cfg.GenerateComments = true;
cfg.MATLABSourceComments = true;
cfg.MATLABFcnDesc = true;

C コードの生成

C コード生成するには、関数 codegen を呼び出します。次のオプションを設定します。

  • -config: コード生成構成オブジェクト cfg を渡します。

  • -report: コード生成レポートを作成します。

  • -args: 入力パラメーターのクラス、サイズおよび実数/複素数を指定します。

codegen -config cfg  -report polar2cartesian -args {0, 0}

codegen によって、C のスタティック ライブラリ polar2cartesian.lib および C コードが /codegen/lib/polar2cartesian サブフォルダーに生成されます。レポートの生成を選択したため、codegen によってレポートへのリンクが提供されます。

生成された C コードの表示

コード生成レポートで、生成されたコードを表示します。

  1. コード生成レポートを開くには、[レポートの表示] をクリックします。

  2. [Generated Code] ペインで、polar2cartesion.c をクリックします。

    生成されたコードには次が含まれます。

    • 関数バナーの形式の関数シグネチャと関数のヘルプ テキスト。

    • 生成された C/C++ コードに対応する MATLAB ソースを含むコメント。コメントには元の MATLAB コードにリンクするトレーサビリティ タグが含まれます。

生成される関数バナーもコード生成テンプレート (CGT) ファイルに応じて異なります。既定の CGT の場合、コード ジェネレーターでは関数バナーに引数に関する情報が配置されます。関数バナーは CGT を変更することでカスタマイズできます。Generate Custom File and Function Banners for C/C++ Codeを参照してください。

生成されたコードから MATLAB コードへのトレース

トレーサビリティ タグは、生成されたコードから元の MATLAB コードにトレースするのに役立つ情報とリンクを提供します。たとえば、コード x = r * cos(theta); の前にあるトレーサビリティ タグをクリックします。

レポートで polar2cartesian.m が開き、4 行目が強調表示されます。

MATLAB ソース コードと生成された C/C++ コードを隣り合わせで表示し、それらを対話形式でトレースするには、レポートで [コードのトレース] をクリックします。Interactively Trace Between MATLAB Code and Generated C/C++ Codeを参照してください。

関連するトピック