AutomationConnectIQ-サンプル2

Automation Connect IQ SDK

シミュレーターの起動を行うサンプル。

# AutomationConnectIQ.Libの記述が面倒なので以下の設定をしておく
using namespace AutomationConnectIQ.Lib;

# SDK環境の作成
$sdk = New-Object GarminSDK -Property @{
	Key = "developer_key"
}
# プロジェクトファイルの読み込み
$proj = New-Object Jungle("DigiFuse\monkey.jungle")

$deviceName = "fr45"

# プロジェクトのビルド
# 実行形式はプロジェクトの下のbinの下に配置。
$sdk.BuildProgram($proj, $deviceName)

ここまでは前回からのサンプルで解説があった部分になる。
異なるのは、デバイス名の指定に変数を使用した点。

# シミュレーターの起動と起動待ち
$sim = New-Object Simulator($sdk)
$sim.WaitForInput()

# シミュレーターにプログラムをロードとロード完了待ち
$sdk.StartProgram($proj.DefaultProgramPath, $deviceName)
$sim.WaitForDeviceStart()

# シミュレーターを終了させる
$sim.Close()

上記の部分が、シミュレーター起動に関する肝の部分。

  • 2,3行目で、シミュレーターの起動。
    WaitForInpuptでシミュレーターで入力ができる状態になるまで待つ。
    Win32APIで作成する画面でも同様なAPIがありそれに似せて作成してある。
  • 6,7行目で、シミュレーターにプログラムをロードして表示させている。
    WaitForDeviceStartは、シミュレーターにプログラムがロードされるまで待つ。
  • DefaultProgramPathは、$sdk.BuildProgram($proj, $deviceName)でビルドされたプログラムのパスを表しているものになる。
  • 最後の行はシミュレーターを停止し終了させるコード。
    なので、このスクリプトを実行すると、ちょっとだけシミュレーターが開いて、すぐ閉じるといった動作になっている。

コメント

タイトルとURLをコピーしました