<< 目次を表示 >> ページ位置: シミュレーション > 外部実行の状態マシン > ソースコードの生成 |
外部実行の状態マシンのソースコード生成は、外部実行の状態マシン要素のソースコード生成のプロパティ値を参照します。対象として指定可能な言語は、Java, C, C++, C#, JavaScriptです。いずれの場合でも、すぐにコンパイル・実行可能なソースコードを生成します。ソースコードの生成から実行までに、内容の調整などの手作業は発生しません。
対象の言語
外部実行の状態マシンのソースコード生成は、次の環境・言語に対応します。
コード生成は実行環境(コンパイラ)が存在しない環境での生成にも対応します。例えば、Visual Studioがインストールされていない環境でも、モデルからソースコード生成を実行できます。ただし、シミュレーションを実行する場合には、コンパイラが必要です。
対応しているプログラム言語
外部実行の状態マシンの機能は以下のプログラム言語・プラットフォームに対応しています。
プラットフォーム |
言語 |
フレームワークへのパスの例 |
Microsoft Native |
C C++ |
C:\Program Files (x86)\Microsoft Visual Studio 12.0 C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional (あるいは他のバージョン) |
Microsoft .NET |
C# |
C:\Windows\Microsoft.NET\Framework\v3.5 (あるいは上位のバージョン) |
スクリプト |
JavaScript |
N/A |
Oracle Java |
Java |
C:\Program Files (x86)\Java\jdk1.7.0_17 (あるいは上位のバージョン) |
利用手順:
リボン |
シミュレーション > 外部実行 > 状態マシン > 生成 |
ソースコードの生成
外部実行の状態マシン要素を選択した状態で、リボンからソースコードの生成を実行できます。状態マシンのコード生成ダイアログが表示されます。なお、ダイアログの内容はソースコードの言語により変わります。
状態マシンのコード生成ダイアログ (Java ・ Windowsの例)
項目 |
説明 |
出力ディレクトリ: |
必要に応じて、出力先のディレクトリを指定します。変更すると、生成されるクラス名とファイルパスが変わります。 |
外部実行の状態マシンのターゲット |
ローカルを選択します。 |
JDKのインストールディレクトリ |
JDKのインストール位置を指定します。 |
状態マシンのコード生成ダイアログ (Java ・ Linuxの例)
項目 |
説明 |
出力ディレクトリ: |
必要に応じて、出力先のディレクトリを指定します。変更すると、生成されるクラス名とファイルパスが変わります。 |
外部実行の状態マシンのターゲット |
リモートを選択します。 |
O/S |
Linuxを選択します。 |
ポート |
シミュレーションを実行するホストと、通信するポートを指定します。 |
状態マシンのコード生成ダイアログ (その他の言語)
なお、同時にシステム出力サブウィンドウが開き、「外部実行の状態マシン連携 出力」タブが開きます。コード生成時に発生した問題は、このタブに出力されます。ダイアログの「要素」欄と「言語」欄は対象の要素と言語の情報が表示されます。
項目 |
説明 |
ソースコードの生成先の指定 |
「出力ディレクトリ」の欄にソースコードの生成先のディレクトリを指定して下さい。 |
ビルド環境 |
外部実行の状態マシン要素のプロパティの「プログラム言語」の内容に応じて表示される内容が変わります。ソースコードを生成するために利用する対象フレームワークへのパスが必要になります。 |
作成されるファイル
C#の場合における生成されるソースファイルは以下のようになります。他の言語でも類似の生成結果になります。
また、外部実行の状態マシン要素にプロパティとして配置したクラス要素についてのソースコードも生成されます。
ソースコードの生成と同時に、動作解析の設定も自動的に作成されます。動作解析サブウィンドウから確認できます。
ソースコードのビルド
生成したソースコードをビルドする方法は以下のいずれかとなります。なお、JavaScriptの場合にはビルドは不要です。
項目 |
説明 |
動作解析の設定から実行 [Ctrl+Shift+F12] |
自動生成される動作解析の設定を動作解析サブウィンドウ内で右クリックして表示されるメニューから、ビルドを実行できます。 |
外部実行の状態マシン要素から実行 |
外部実行の状態マシン要素を右クリックし、「ソースコードの生成と読み込み | 外部実行の状態マシン | ビルド」 を実行すると、自動生成したソースコードをビルドします。 |
生成から実行までのまとめて実施 |
外部実行の状態マシン要素を右クリックし、「ソースコードの生成と読み込み | 外部実行の状態マシン | 生成・ビルドと実行」 を選択すると、ソースコードの生成からビルド・実行までをまとめて行うことができます。生成やビルドが失敗しないことが確認できている場合には便利です。 |
ビルド時の出力 |
ビルド中に発生した問題は、システム出力サブウィンドウに表示されます。 |
既存のコードとの連携
外部実行の状態マシンのソースコードは、Enterprise Architectで生成され、実行されます。クラスを持たないような既存のコードと連携する場合、その関数を呼び出す操作のみを持つような抽象的なクラスを定義します。そして、状態マシンのクラスとそのクラスを汎化の関係で結び、継承します。動作解析の設定にも、必要な設定を追加します。例えばJavaでは.jarファイルに対象のクラスのパスを追加します。C++であればDLLをリンク対象に含めます。
参照: