skeleton_sample_appの動作説明
目次
- 1 目次
- 2 はじめに
- 3 動作概要
- 4 動作に必要な外部ライブラリ
- 5 サンプルアプリのディレクトリパス
- 6 サンプルアプリのビルド方法(C/C++)
- 7 サンプルアプリの使用方法
- 8 補足情報
- 8.1 ・サンプルアプリについて
- 8.2 ・イベントハンドラ
- 8.3 ・メインプログラム
はじめに
i-PROカメラアプリケーション開発環境の構築が完成していることを前提に説明します。
開発環境の構築が準備できていない場合、こちらを参考に完成させてください。
また、このチュートリアルではSDKのインストールディレクトリを${SDK_DIR}
として記載します。
動作概要
skeleton_sample_appはアプリケーション開発のベースです。ビルドして実行しても、特筆するような機能はありません。
アプリケーションを新規作成する際は、skeleton_sample_appをフォルダ毎コピーして利用してください。
動作に必要な外部ライブラリ
特になし。
サンプルアプリのディレクトリパス
C/C++のソースコードは下記に格納されています。
${SDK_DIR}/src/adamapp/skeleton_sample_app
Pythonのソースコードはありません。
Pythonのアプリケーション開発のベースとなるサンプルアプリは、jpeg_app を推奨します。
${SDK_DIR}/src/adamapp-py/jpeg_app
サンプルアプリのビルド方法(C/C++)
ここでは、AdamAppとしてビルドする方法を記載しています。
Container AdamApp for Azure IoT Edgeとしてビルドする場合は下記を参照ください。
チュートリアル(Container AdamApp for Azure IoT Edge編) - Technology Partner - Confluence (atlassian.net)
Container AdamAppとしてビルドする場合は下記を参照ください。
チュートリアル(Container AdamApp) - Technology Partner - Confluence
SDKのインストールディレクトリでビルド用環境設定ファイルの読み込みを実施します。
$ cd ${SDK_DIR}
$ source setup_env.sh ipro-ambaCV2X
ビルド用環境設定は各環境に合わせて実施してください。
ここでは、ipro-ambaCV2X
を指定します。
次にサンプルアプリのディレクトリに移動し、makeします。
$ cd src/adamapp/skeleton_sample_app
$ make
${SDK_DIR}/src/adamapp/skeleton_sample_app に.extファイルが作成されていれば成功です。
カメラにインストールします(例:下記画像の緑枠からインストール可能)。作成した.extファイルを選択してインストールしてください。
アプリ画面を開きます(下記画像の赤枠ボタン)。
下記画像のような、文字列が表示されていれば成功です。
サンプルアプリの使用方法
アプリケーション開発のベースのため、特筆事項なし。
補足情報
・サンプルアプリについて
このサンプル アプリケーションには、システムに必要なイベント ハンドラーのみが含まれています。 システム イベント ループはメイン スレッドを使用します。
・イベントハンドラ
1. Stop Handler
stopApplication コマンドが要求されたときに呼び出されます。 このサンプル ハンドラーは、メイン イベント ループを終了するために ADAM_Eventloop_Exit() を呼び出します。
2. Server Request Receive Handler
sendDataToAdamApplication コマンドが要求されたときに呼び出されます。 このサンプル ハンドラーは次の値を返します。
- 同じ m_type ( s_appDataType -> r_appDataType )
- 大文字と小文字の入れ替え ( s_appData -> r_appData )
・メインプログラム
最低限の処理を行います。
1. ADAM_Open() : ADAM_APP_TYPE_SKELETON を選択
2. ADAM_Eventloop_Dispatch() : メイン イベント ループ
3. ADAM_Close() : アプリの終了