#include <ApplicationController.h>
Public メソッド | |
CApplicationController () | |
コンストラクタ | |
virtual | ~CApplicationController () |
デストラクタ | |
long | GetApplicationName (std::string &sName) |
アプリケーション名を取得する | |
long | ExitApplication () |
アプリケーションを終了する。 | |
long | GetRequestList (AsyncReqList &reqList) |
要求一覧を取得する。 | |
long | ExecApplication (std::string sName) |
アプリケーションを実行する。 | |
long | ExecApplication (std::string sName, std::vector< std::string > argv) |
アプリケーションを実行する。 | |
long | GetApplicationList (ApplicationList &appList) |
導入済みアプリケーションのリストを取得する。 | |
long | GetApplicationInfo (std::string sName, ApplicationInfo &appInfo) |
導入済みアプリケーションを取得する。 | |
long | GetApplicationInfo (ApplicationInfo &appInfo) |
導入済みアプリケーションを取得する。(自アプリケーション) | |
long | SetPriority (long priority) |
アプリケーションの優先度を設定する。 | |
long | Lock () |
専有を開始する。 | |
long | Unlock () |
専有を終了する。 | |
long | GetLockStatus (long &status) |
専有状態を取得する。 | |
long | GetDirPath (long dirType, std::string appName, std::string &path) |
指定されたアプリケーションの各種ディレクトリパスの文字列を返す。 | |
long | GetDirPath (long dirType, std::string &path) |
自アプリケーションの各種ディレクトリパスの文字列を返す。 |
アプリケーションの動作に関するメソッドを提供する。
long Sapie::CApplicationController::GetApplicationName | ( | std::string & | sName | ) |
アプリケーション名を取得する
[out] | sName | アプリケーション名 |
long Sapie::CApplicationController::ExitApplication | ( | ) |
アプリケーションを終了する。
本メソッドをコールすることにより、アプリケーションの終了処理が開始される。 アプリケーションの終了処理では、まず Sapie::EVTYP_FINALIZE イベントが発生する。 このイベント中にアプリケーションは、中断処理や、必要な資源の解放を行わなければならない。 それらが完了しない状態で Sapie::EVTYP_FINALIZE イベントを完了させてはならない。
Sapie::EVTYP_FINALIZE イベントが完了後、API層の終了処理が始まる。 Sapie::EVTYP_FINALIZE イベントを含むすべてのイベントの完了が確認された後、 Sapie::CApplicationInitializer へ渡したアプリケーションポインタのdeleteが 実行され、アプリケーションプロセスは終了する。
long Sapie::CApplicationController::GetRequestList | ( | AsyncReqList & | reqList | ) |
要求一覧を取得する。
このアプリケーションからプラットフォームへ要求を送信済みで、 完了していない要求の一覧を取得する。
[out] | reqList | 要求の一覧を格納するリスト。 |
long Sapie::CApplicationController::ExecApplication | ( | std::string | sName | ) |
アプリケーションを実行する。
sNameにより指定されたアプリケーションを起動させる。 対象のアプリケーションが既に起動していた場合は、 本メソッドのコールは失敗する。
[in] | sName | 実行するアプリケーションの名前。 |
long Sapie::CApplicationController::ExecApplication | ( | std::string | sName, | |
std::vector< std::string > | argv | |||
) |
アプリケーションを実行する。
sNameにより指定されたアプリケーションを起動させる。 対象のアプリケーションが既に起動していた場合は、 本メソッドのコールは失敗する。
argv 引数により起動するアプリケーションに渡す引数を指定できる。 起動されたアプリケーションは、argvにより渡された引数を CApplicationInitializer::GetArgs により取得できる。
[in] | sName | 実行するアプリケーションの名前。 |
[in] | argv | 引数リスト |
long Sapie::CApplicationController::GetApplicationList | ( | ApplicationList & | appList | ) |
導入済みアプリケーションのリストを取得する。
[out] | appList | 導入済みアプリケーションの一覧を格納するリスト。 |
long Sapie::CApplicationController::GetApplicationInfo | ( | std::string | sName, | |
ApplicationInfo & | appInfo | |||
) |
導入済みアプリケーションを取得する。
[in] | sName | 取得対象のアプリケーションの名前。 |
[out] | appInfo | 導入済みアプリケーションの情報を格納するバッファ。 |
long Sapie::CApplicationController::GetApplicationInfo | ( | ApplicationInfo & | appInfo | ) |
導入済みアプリケーションを取得する。(自アプリケーション)
[out] | appInfo | 導入済みアプリケーションの情報を格納するバッファ。 |
long Sapie::CApplicationController::SetPriority | ( | long | priority | ) |
アプリケーションの優先度を設定する。
[in] | priority | アプリケーションの優先度。
|
long Sapie::CApplicationController::Lock | ( | ) |
専有を開始する。
専有することにより、他のアプリケーションからの資源を使用するような要求は拒否されるようになる。 すなわち、専有操作を行うことにより、専有を行ったアプリケーションが文字通り資源を「専有」できる。
専有が解除された段階で Sapie::EVTYP_COMPLETE イベントが発生する。専有の解除は Unlock メソッド を用いる。また、優先度の高い他のアプリにより専有が解除されたり、その他の原因により専有が解除される こともある。その場合も Sapie::EVTYP_COMPLETE イベントにより専有の終了が通知される。
専有開始が受け付けられると、その時点で資源を使用するような要求が実行中だった場合、 その要求のキャンセル処理が始まる。すべての要求がキャンセルされるまで、 資源を使うような要求が実行できるとは限らないことには注意が必要である。 すべての要求のキャンセル処理が完了した時点で Sapie::EVTYP_CHANGE_LOCK_STATUS イベントにより 通知される。
long Sapie::CApplicationController::Unlock | ( | ) |
専有を終了する。
long Sapie::CApplicationController::GetLockStatus | ( | long & | status | ) |
専有状態を取得する。
[out] | status | 専有状態
|
long Sapie::CApplicationController::GetDirPath | ( | long | dirType, | |
std::string | appName, | |||
std::string & | path | |||
) |
指定されたアプリケーションの各種ディレクトリパスの文字列を返す。
不正な引数を指定された場合は何もしないかホームディレクトリパスを格納する。
[in] | dirType | ディレクトリの種類.
|
[in] | appName | アプリケーション名. |
[out] | path | ディレクトリパス |
long Sapie::CApplicationController::GetDirPath | ( | long | dirType, | |
std::string & | path | |||
) |
自アプリケーションの各種ディレクトリパスの文字列を返す。
[in] | dirType | ディレクトリの種類.
|
[out] | path | ディレクトリパス |