掲示板一覧 - トピック一覧 EA API シミュレーション機能とアドインの同期について |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | トピック |
---|---|
umesan | 投稿日時: 2018-5-8 13:59 |
EA Administrator 投稿: 1515 |
シミュレーション機能とアドインの同期についてサポート宛にいただきましたご質問の要約です。
○ご質問 アドインから「Repository.Simulation.Start()」を呼び出してシミュレーションを実行しています。しかし以下のコードをアドインで実行した場合、「シミュレーションデータの準備中」段階で「シミュレーション終了」と表示する動作となってしまっています。 -----アドイン内の処理の例----- Repository.WriteOutput("シミュレーション", "シミュレーション開始", 0); Repository.Simulation.Start(); Repository.WriteOutput("シミュレーション", "シミュレーション終了", 0); アクティビティ図の開始から終了まで完了後、「シミュレーション終了」と表示する処理として実行させていと考えております。 「IsSimulatorRunning()」のAPIを使用しても想定の動作になりません。 ○回答 弊社環境でさまざま試したところ、おそらく、お客様の状況は把握できたのではないかと思います。 頂きましたソースコードの処理を、おそらくアドインのイベント(EAから呼ばれるEA_MenuClick()などのメソッド)の中に記述されているのではないかと推測いたします。 EA側は、アドインのイベントの処理が終了するまで、他の処理が行えません。 ですので、アドインのイベントの処理の中で、「Simulation.Start()」が呼ばれた場合は、「Simulation.Start()」の中で「シミュレーションデータの準備」が終了するまで処理を行い、引き続きのシミュレーション動作はアドインのイベントの処理が終了してから、行うことになります。 上記のような状況のため、頂いたような動作となっているのではないかと推測いたします。 頂きましたコードの記述場所が、アドインのイベントの中でない場合は、再度ご連絡頂けますようお願いいたします。 また、弊社環境で試しましたところ、「Repository.Simulation.Start()」直後から「IsSimulatorRunning()」の値は true を戻しておりました。 以上ご確認よろしくお願い致します。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |