特許第6289368号(P6289368)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ノキア テクノロジーズ オーユーの特許一覧

特許6289368リモートのデータ入力インタフェースをトリガする方法および装置
<>
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000002
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000003
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000004
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000005
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000006
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000007
  • 特許6289368-リモートのデータ入力インタフェースをトリガする方法および装置 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6289368
(24)【登録日】2018年2月16日
(45)【発行日】2018年3月7日
(54)【発明の名称】リモートのデータ入力インタフェースをトリガする方法および装置
(51)【国際特許分類】
   G06F 3/048 20130101AFI20180226BHJP
【FI】
   G06F3/048
【請求項の数】7
【全頁数】18
(21)【出願番号】特願2014-520694(P2014-520694)
(86)(22)【出願日】2012年7月16日
(65)【公表番号】特表2014-521179(P2014-521179A)
(43)【公表日】2014年8月25日
(86)【国際出願番号】FI2012050733
(87)【国際公開番号】WO2013011197
(87)【国際公開日】20130124
【審査請求日】2014年2月17日
【審判番号】不服2017-5393(P2017-5393/J1)
【審判請求日】2017年4月17日
(31)【優先権主張番号】13/188,081
(32)【優先日】2011年7月21日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】315002955
【氏名又は名称】ノキア テクノロジーズ オーユー
(74)【代理人】
【識別番号】100127188
【弁理士】
【氏名又は名称】川守田 光紀
(72)【発明者】
【氏名】ブラケンジエク イェルク
(72)【発明者】
【氏名】ボース ラージャ
【合議体】
【審判長】 和田 志郎
【審判官】 新川 圭二
【審判官】 稲葉 和生
(56)【参考文献】
【文献】 米国特許出願公開第2007/0203641(US,A1)
【文献】 特開2010−272930(JP,A)
【文献】 特開2011−116304(JP,A)
【文献】 特開2006−017478(JP,A)
【文献】 特開2009−090690(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/048
(57)【特許請求の範囲】
【請求項1】
デバイスの動作方法であって、
データ入力が求められていることを知らせるデータ入力フィールド選択メッセージを受信することと;
前記デバイスのディスプレイにデータ入力インタフェースが表示されることを抑制することと;
前記データ入力インタフェースの位置及びサイズに関する情報を取得することと;
リモートデバイスのディスプレイにリモート・データ入力インタフェースを表示するように前記リモートデバイスに指示するべく、前記情報を含むリモートインタフェース・トリガメッセージが前記リモートデバイスに送信されるようにすることと;
を含み、
さらに前記方法は、前記データ入力フィールド選択メッセージの受信に応じて前記デバイスの前記ディスプレイに前記データ入力インタフェースを表示するために、インタフェース・トリガイベントを前記デバイスに対してローカルに生成することを含み、
ここで、前記データ入力インタフェースの表示を抑制することは、前記インタフェース・トリガイベントをインターセプトし、それによって前記デバイスの前記ディスプレイに前記データ入力インタフェースを表示することを抑制することを含み、
また、前記リモートインタフェース・トリガメッセージが送信されるようにすることは、前記インタフェース・トリガイベントをインターセプトすることに応じて、表示されるべきデータ入力インタフェースのタイプの情報を含む前記リモートインタフェース・トリガメッセージが、前記リモートデバイスに送信されるようにすることを含む、
方法。
【請求項2】
前記データ入力インタフェースが表示されることを抑制することは、前記デバイス上で端末モードアプリケーションを実行することにより行われ、ここで前記端末モードアプリケーションは、前記デバイスの前記ディスプレイに前記データ入力インタフェースを表示させることを生じさせうるインタフェース・トリガイベントの生成を抑制するように構成される、請求項1に記載の方法。
【請求項3】
前記リモートインタフェース・トリガメッセージが送信されるようにすることは、前記リモートデバイスの前記ディスプレイにリモート・データ入力インタフェースを表示することを該リモートデバイスに指示すべく前記リモートインタフェース・トリガメッセージが前記リモートデバイスに送信されるようにすることを含み、ここで前記リモート・データ入力インタフェースは、前記リモートデバイスが搭載されている環境のコンテキスト情報に基づいて表示される、請求項1に記載の方法。
【請求項4】
装置の処理手段に実行されると、前記装置に、請求項1からのいずれかに記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。
【請求項5】
処理手段及び記憶手段を備える装置であって、前記記憶手段がプログラム命令を格納し、前記プログラム命令は、前記処理手段に実行されると、前記装置に、請求項1からのいずれかに記載の方法を遂行させるように構成される、装置。
【請求項6】
移動通信デバイスとして構成される、請求項に記載の装置。
【請求項7】
アンテナを含む通信インタフェースをさらに含む請求項に記載の装置であって、前記通信インタフェースはリモートデバイスとの通信を確立するように構成される、装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、一般的にはリモート・ユーザインタフェースの実装に関し、より具体的には、リモートのデータ入力インタフェースをトリガする方法及び装置に関する。
【背景】
【0002】
モバイル・コンピューティング・デバイスは、新しくパワフルなアプリケーションをサポートする能力を有するように進化を続けている。ある例では、ハンドヘルド携帯デバイスは、アプリケーションを実行するために必要十分な処理能力やネットワーク接続機能、記憶容量を有している。しかし、ハンドヘルド携帯デバイスの寸法・形状が小さいことは、例えば小さなユーザインタフェースや表示画面のために、アプリケーションの操作性に制限を加えることがある。
【0003】
そのため、コンピュータ端末や車載ヘッドユニット、タブレットデバイスやパッドデバイスのような大きなユーザインタフェースを有するリモートデバイスに対してユーザが近くにいる場合には、ユーザはハンドヘルドデバイスのユーザインタフェースを使用するよりは、リモートデバイスのユーザインタフェースを使用することを望むであろう。例えばGPSアプリケーションを考えてみると、ユーザは、ハンドヘルドデバイスを、車の中で、大きなディスプレイを有するデバイスに接続し、地図やその他の位置情報をリモートデバイスに表示したいと考えるかもしれない。同様に、メディアプレーヤーとして動作しているモバイル・コンピューティング・デバイスも、車の中では他のデバイスに接続して、いつもの位置にあるディスプレイを通じて、ラジオのためのインタフェースをユーザに提供するかもしれない。
【0004】
リモート・ユーザインタフェースにアクセスし及びリモート・ユーザインタフェースをサポートするために、ハンドヘルド・モバイルコンピューティングデバイスは、動画や音楽の情報を提供するかもしれない。これは、リモートデバイス上でハンドヘルドデバイスのユーザインタフェースを生成することを可能にするためである。リモートデバイスは、ユーザ入力を受け取り、出力をユーザに提供するために、ハンドヘルドデバイスと完全に連動することができるべきである。またハンドヘルドデバイスは、リモートデバイスのそのような能力をサポートするべきである。
【摘要】
【0005】
リモートのデータ入力インタフェースをトリガすることを手助けする、例示的な方法及び例示的な装置が開示される。方法の実施形態の一例は、デバイスにおいて、データ入力が求められていることを知らせるデータ入力フィールド選択メッセージを受信することと;前記デバイスのディスプレイにデータ入力インタフェースが表示されることを抑制することと;リモートデバイスのディスプレイにリモート・データ入力インタフェースを表示するように前記リモートデバイスに指示するべく、リモートインタフェース・トリガメッセージが前記リモートデバイスに送信されるようにすることと;を含む。
【0006】
別の例示的実施形態は、少なくとも一つのプロセッサと、コンピュータ・プログラムコードを含む少なくとも一つのメモリとを備える装置である。前記少なくとも一つのメモリ及び前記コンピュータ・プログラムコードは、前記少なくとも一つのプロセッサと共に、前記例示的装置に様々な機能を遂行させるように構成されてもよい。これに関して、例示的な装置は、デバイスにおいて、データ入力が求められていることを知らせるデータ入力フィールド選択メッセージを受信することと;前記デバイスのディスプレイにデータ入力インタフェースが表示されることを抑制することと;リモートデバイスのディスプレイにリモート・データ入力インタフェースを表示するように前記リモートデバイスに指示するべく、リモートインタフェース・トリガメッセージが前記リモートデバイスに送信されるようにすることと;を行うようにされる。
【0007】
別の例示的実施形態は、コンピュータ・プログラムコードを格納する非一時的コンピュータ可読記憶媒体である。このコンピュータ・プログラムコードは、実行されると、デバイスにおいて、データ入力が求められていることを知らせるデータ入力フィールド選択メッセージを受信することと;前記デバイスのディスプレイにデータ入力インタフェースが表示されることを抑制することと;リモートデバイスのディスプレイにリモート・データ入力インタフェースを表示するように前記リモートデバイスに指示するべく、リモートインタフェース・トリガメッセージが前記リモートデバイスに送信されるようにすることと;を実行することを装置に命令する。
【0008】
別の例示的実施形態は、装置であって、デバイスにおいて、データ入力が求められていることを知らせるデータ入力フィールド選択メッセージを受信する手段と;前記デバイスのディスプレイにデータ入力インタフェースが表示されることを抑制する手段と;リモートデバイスのディスプレイにリモート・データ入力インタフェースを表示するように前記リモートデバイスに指示するべく、リモートインタフェース・トリガメッセージが前記リモートデバイスに送信されるようにする手段と;を備える、装置である。
【図面の簡単な説明】
【0009】
本発明を一般的に説明してきたが、以下の説明では添付の図面を参照されたい。図面のスケールは正確であるとは限らない。
【0010】
図1】様々な例示的実施形態に従ってリモート・ユーザインタフェースを実装するシステムを描いている。
【0011】
図2】様々な例示的実施形態に従ってコンテンツやデータ入力フィールドを表示するユーザ装置を描いている。
【0012】
図3】様々な例示的実施形態に従って、ユーザ装置のユーザインタフェースを遠隔表示する、リモート・ユーザインタフェース・デバイスを描いている。
【0013】
図4】様々な例示的実施形態に従って、データ入力フィールドにデータを入力するための仮想キーボードを表示する、リモート・ユーザインタフェース・デバイスを描いている。
【0014】
図5】様々な例示的実施形態に従って、リモートのデータ入力インタフェースをトリガするための、信号のやりとりや動作の流れを描いたものである。
【0015】
図6】様々な実施形態に従って構成されたユーザ装置のブロック図を描いたものである。
【0016】
図7】様々な実施形態に従って構成された移動端末のブロック図を描いたものである。
【詳細な説明】
【0017】
以下、添付図面を参照して本発明のいくつかの例示的実施形態をより詳細に説明する。なお本発明の全ての実施形態が紹介されるわけではない。実際、本発明は様々な形態で実施されることができるので、本発明の実施形態がここで紹介される実施形態に限定されると考えてはならない。むしろここで紹介される実施形態は、本明細書が法的な要件を充足するために紹介されるものである。本明細書および図面を通じて同様の符号は同様の要素を表す。本発明のある例示的実施形態においては、"データ"や"コンテンツ"、"情報"のような用語は、送信されたり受信されたりすることが可能なデータや、影響を与えたり格納されたりすることが可能なデータを言い表すために、互いに置き換え可能に使用されることが可能でありうる。
【0018】
本願において、"回路(circuitry)"との語句は、次の全てを表す。(a)ハードウェアのみの実装。例えばアナログ回路だけ、デジタル回路だけ、又はアナログ回路とデジタル回路の組み合わせ。(b)ソフトウェア及び/又はファームウェアと回路との組み合わせ。例えば(i)一つ又は複数のプロセッサや、(ii)一つ又は複数のプロセッサ/ソフトウェアの部分の組み合わせ。これには、一つ又は複数のDSPやソフトウェア、またこれらと協働して携帯電話やサーバなどの装置に様々な機能を実行させる一つ又は複数のメモリが含まれる。(c)一つ又は複数のマイクロプロセッサや一つ又は複数のマイクロプロセッサの部分のような回路。このような回路は動作のためにソフトウェアやファームウェアを(たとえそれらが物理的には存在しないものと考えられる場合であっても)必要とする。
【0019】
この「回路」の定義は、本願において「回路」との語句を使う全ての場合において適用される。請求項においても同様である。さらなる例として、本願で使用される場合、"回路(circuitry)"との語句は、プロセッサだけの実装や、複数のプロセッサによる実装、プロセッサの部分や付随するソフトウェア及び/又はファームウェアによる実装をカバーするものでありうる。"回路"という語句はまた、例えば、請求項に記載される特定の要素をその範囲に含むことが可能な場合がある。例えば、携帯電話のベースバンド集積回路やアプリケーションプロセッサ集積回路を意味してもよく、サーバやセルラネットワークデバイス、その他のネットワークデバイスにおける同様の集積回路を意味してもよい。
【0020】
図1は、本発明の様々な例示的実施形態に従うシステムの例を描いている。この例示的システムは、リモート・ユーザインタフェース(UI)・デバイス100、ユーザ装置(UE)101、通信リンク102を含む。
【0021】
リモートUIデバイス100は、UE101のユーザインタフェースを投影又は複製することができるように構成された、どのような種類のコンピューティングデバイスであってもよい。また、リモートUIデバイス100は、ユーザインタフェース・コンポーネンツやユーザインタフェースに関する機能を有していてもよい。本明細書で説明されるリモートUIデバイス100の機能を実行するために、ユーザインタフェース・コンポーネンツは、リモートUIデバイス100に備えられる一つ又は複数のプロセッサ及びプログラムコードを格納する一つ又は複数のメモリによって制御されてもよい。ある例示的実施形態において、リモートUIデバイス100は、ディスプレイへのタッチイベントを介してユーザからの入力を受け取るように構成される、タッチスクリーンディスプレイを備えていてもよい。リモートUIデバイス100はまた、物理的なキーボードやキーパッド、マウスやトラックボール等のポインティングデバイス、スピーカー、マイクロフォンのような、様々なユーザインタフェースを、タッチスクリーンディスプレイの代わりに、又はそれに加えて、備えていてもよい。リモートUIデバイス100は、ユーザ入力を受け取るための様々な技術をサポートしてもよい。そのような技術には、例えば音声認識や手書き認識のようなものが含まれてもよい。ある例示的実施形態において、リモートUIデバイス100は自動車に搭載されてもよい。そしてリモートUIデバイス100が提供するユーザインタフェースは、UE101のユーザインタフェースを変更したバリエーションであって、車内での使用のための安全の要請に適合するバリエーションであってもよい。また、リモートUIデバイス100は、スピーカーやマイクロフォン等を有していてもよい。
【0022】
リモートUIデバイス100はまた、通信リンク102を介してUE101と通信するための無線通信インタフェースを有していてもよい。ある例示的実施形態では、リモートUIデバイス100とUE101とは有線リンクを介して通信してもよい。通信リンク102は、リモートUIデバイス100とUE101との通信をサポートする能力を有する如何なる種類の通信リンクであってもよい。ある例示的実施形態では、通信リンク102は無線LAN、Bluetooth(登録商標)、又は別の種類の無線リンクであってもよい。UE101は、如何なるタイプのモバイル・コンピューティング通信デバイスであってもよい。ある例示的実施形態では、UE101は、スマートフォンやタブレット、パッドデバイスであってもよい。UE101はまた、内蔵する少なくとも一つのプロセッサ及び少なくとも一つのメモリによって、アプリケーションを実行・実装するように構成されてもよい。
【0023】
ある例示的実施形態によれば、UE101は、通信接続102を介して、ユーザインタフェースを出力するようにリモートUIデバイス101に命令し、リモートUIデバイス100を介して提供されるユーザ入力を受信するように構成されてもよい。リモートUIデバイス100に投影されるユーザインタフェースは、UE101のディスプレイに表示されるユーザインタフェース(またはUE101がアクティブである場合にそのディスプレイに表示されるであろうユーザインタフェース)と同じインタフェースであってもよい。ある例示的実施形態においては、通信リンク102を介してリモートUIデバイス100のディスプレイ上にユーザインタフェースの少なくとも一部分を生成するために、フレームバッファ・スキャンニングのような技術を用いてもよい。ある例示的実施形態においては、リモートUIデバイス100は、UE101のユーザインタフェースを元にして変更を加えたユーザインタフェースを提供してもよい。例えば、リモートUIデバイス100が、車両用のヘッドユニットとして、車両に搭載される場合を考えてみる。車の運転手は、例えば、リモートUIデバイス100が車の中の便利で安全な位置に存在したり、大きなサイズのスクリーンを有するなどの理由で、UE101へのインタフェースとしてリモートUIデバイス100を使いたいと思うかもしれない。UE101はリモートUIデバイス100とリンクするように構成されてもよく、リモートUIデバイス100を介してユーザと関係を持つために、リモートUIデバイス100にユーザインタフェースを表示するように命令してもよい。リモートUIデバイス100のディスプレイは様々な制御要素を有していてもよい。これらはUE101のユーザインタフェースの制御要素と関係していてもよいししていなくてもよい。これらの制御要素には、自動車のハンドルに取り付けられた制御要素やタッチ制御要素、回転つまみ、及び/又はその他の設定可能なボタンや専用ボタンが含まれてもよい。ある例において、リモートUIデバイス100によって提供されるユーザインタフェースは、UE101のユーザインタフェースを変形したそのバリエーションであって、移動する車両を運転するユーザによって、そのユーザが便利なように適合されたものであってもよい。
【0024】
UE101とリモートUIデバイス100との相互作用は、モバイルデバイスの相互運用(interoperability)の例を提供する。この相互運用のことを、スマートスペース(smart space)やリモート環境(remote environment)、リモートクライアント(remote client)などと称する場合がある。ある例において、UE101は、リモートUIデバイス100によってアクセスされ制御されている場合に、「端末モード」にあると表現される場合がある。UE101の特徴や機能は、外部環境(例えばリモートUIデバイス100)に"投影"すなわち現出させられる。この外部環境は、その特徴や機能があたかも当該外部環境固有のものであるかのように見えてもよく、UE101に依存していることはユーザに明らかではないようになっていてもよい。UE101の特徴や機能を投影することは、UE101のユーザインタフェースのスクリーンをエクスポートすることを含んでもよく、また命令や制御情報を外部環境にエクスポートすることを含んでもよい。それによってユーザは、UE101の代わりに外部環境と快適に相互作用を行うことができる。
【0025】
UE101が端末モードで動作している時に、リモートUIデバイス100のディスプレイ上のデータ入力フィールド(例えばテキスト入力フィールド)をユーザがタッチすると、タッチイベントが検出され、タッチスクリーン上におけるタッチイベントの位置も特定されてもよい。タッチイベントについての情報は、例えば仮想ネットワーク・コンピューティング(VNC)プロトコル又はその他のリモートUIプロトコルを用いて、UE101へ送信されてもよい。UE101は、リモートタッチイベントを受信すると、UE101上でローカルにタッチイベントをエミュレートしてもよい。
【0026】
データ入力フィールド内のタッチイベントは、UE101のディスプレイ上に仮想キーボードを表示することをトリガしてもよい。そしてこの仮想キーボードは、リモートUIデバイス100のディスプレイ上に複製されてもよい。この複製は、VNCやその他のリモートUIプロトコルを使用して行われてもよい。なお、自動車への実装においては、運転手がリモートUIデバイス100を操作することが予想されるので、安全性や、運転への集中を妨げることを防ぐことへの要求も考慮されるべきである。このためUE101のユーザインタフェースへのアクセスは制限される可能性があり、ユーザの操作はリモートUIデバイスによって受け取られるかもしれない。UE101の仮想キー入力方法は、運転への集中に関するガイドラインを満たさない場合があり、従って運転中に使用するのは安全ではないかもしれない。例えば、UE101上で実装される仮想キーバットは、所望のキーイベントを生成するために仮想キーを複数回タッチしなければならないかもしれず、そのようなことは運転中のユーザの集中力をかなり削ぐ事になるだろう。従って、リモートUIデバイス100は、運転中の安全を考慮した特別の仮想データ入力インタフェースを提供してもよい。例えば、運転中に使用するハンドル上の制御要素を用いて実装される、仮想キーボードや回転文字入力手段(rotary speller)を提供してもよい。リモートUIデバイス100に、そのような特別のデータ入力インタフェース(リモート・データ入力インタフェース)を提供させるために、UE101は、リモートインタフェース・トリガメッセージをリモートUIデバイス100に送信してもよい。リモートインタフェース・トリガメッセージの一例は、VNC仮想キーボード・トリガメッセージ(VNC Virtual Keyboard Trigger message)である。このメッセージはいくつかの端末モード仕様書に含まれている。
【0027】
図2及び図3は、UE101が端末モードにあるために、UE101のユーザインタフェースがリモートUIデバイス100のディスプレイに投影又は複製されている、例示的なシナリオを描いたものである。図2は、あるWEBサイトを表示中のUE101を描いたものである。ウェブサイト104のコンテンツは、データ入力フィールド103と共に表示されており、データ入力フィールド103は、その現在のデータコンテンツ(データ値)として、現在のURLを有している。図3は、図2に示したUE101のユーザインタフェースを投影した、リモートUIデバイス100の例を描いたものである。コンテンツ104は、リモートUIデバイス100におけるコンテンツ104aとして投影され、データ入力フィールド103は、データ入力フィールド103aとして投影されている。リモートUIデバイス100のユーザインタフェースはまた、リモートUIデバイス100を、例えば車両内の環境で安全に使用することを助けうる、追加の制御要素105を表示している。
【0028】
リモートUIデバイス100がUE101のユーザインタフェースを投影又は複製するとき、リモートUIデバイス100は、UE101へ提供されるべきデータをユーザがリモートUIデバイス100を介して入力することを可能にする必要がある場合がある。これに関し、ユーザは、リモートUIデバイス100に投影されたデータ入力フィールド(例えば図3におけるデータ入力フィールド103a。これは例えばテキストフィールドであってもよい)にデータ(例えばテキスト)を入力したいと考えるかもしれない。データ入力フィールドのデータを変更するために、ユーザは、リモートUIデバイス100のデータ入力フィールド103aを、(例えばスクリーン上で当該フィールドをタッチするなどして)選択してもよい。
【0029】
この種の操作をUE101に対して直接行う場合、スクリーンの一部分を覆う仮想キーボードが提供され、例えばテキスト文字をユーザが入力することを可能にするかもしれない。しかし、「端末モード」においては、この操作はユーザとリモートUIデバイス100との間で行われる。リモートUIデバイス100は、単に仮想キーボードをユーザに提供するか、また別のタイプのデータ入力インタフェースを提供してもよい。しかしながら、リモートUIデバイス100のリモート・データ入力インタフェースは、例えば、運転中に操作するのに便利なように、大きなキーボードに変更されてもよい。例えばリモートUIデバイス100に用いられる仮想キーボードは、特大のものであったり、データ入力フィールド/ボックスを備えてフルスクリーン化されたものであったりしてもよい。図4は、リモートUIデバイス100に表示される特大の仮想キーボード106の例を描いたものである。この仮想キーボード107は、データ入力フィールド107を有している。特定のキーボードをリモートUIデバイス100に表示する契機となるものは、VNC仮想キーボード・トリガメッセージのような、リモートインタフェース・トリガメッセージであってもよい。そのようなメッセージはUE101から送信されてもよい。
【0030】
ユーザがリモートUIデバイス100のユーザインタフェースのデータ入力フィールドをタッチすると、例えば仮想キー入力イベントのようなインタフェース・トリガイベントが、UE101のオペレーティングシステムによって生成されてもよい。そして、様々な例示的実施形態によれば、インタフェース・トリガイベントはインターセプトされ、それによって、UE101のディスプレイ上にデータ入力インタフェースが表示されることが阻止される。UE101がデータ入力インタフェース(例えば仮想キーボード)をUE101のローカルのディスプレイに表示する代わりに、UE101は、リモートインタフェース・トリガメッセージ(例えば仮想キーボード・トリガメッセージ)をリモートUIデバイス100へ送信する。これは、リモートUIデバイスのディスプレイ上にリモート・データ入力インタフェースを表示させるためである。
【0031】
さらに、UE101においてデータ入力インタフェースが使用不能にされるイベント(例えば仮想キー入力無効化イベント)が発生し、(先に表示が阻止されていたかもしれない)ローカルのデータ入力インタフェースがクローズされ又はスクリーンから消された場合、リモートUIデバイス100のディスプレイからもリモート・データ入力インタフェースを消すべく、データ入力インタフェース使用不能化イベントがリモートUIデバイス100に送信されてもよい。UE101は、リモート・データ入力インタフェースに加えてデータ入力フィールドのための所定の値(例えば検索履歴)のリストを表示し、ユーザは、リモート・データ入力インタフェースを通じてデータを入力する代わりにリストからいずれかの値を選択するような場合がある。データ入力インタフェース使用不能化イベントは、例えば、そのような場合に発生してもよい。
【0032】
ある例示的実施形態によれば、インタフェース・トリガイベントをインターセプトすることに加えて、UE101は、UE101で使用されるためにトリガされるある種のデータ入力インタフェースをインターセプトするように構成されてもよい。データ入力インタフェースには様々なタイプのものがあり、例えばQWERTYキーボードや数値キーパッド、ダイヤル装置等がある。UE101はリモートインタフェース・トリガメッセージ及びリモート・データ入力インタフェースのタイプをリモートUIデバイス100に送信するように構成されてもよく、それに応じてリモートUIデバイス100は、受信したタイプに基づいて適切なリモート・データ入力インタフェースを表示してもよい。
【0033】
ある例示的実施形態によれば、インタフェース・トリガイベントをインターセプトすることに加えて、UE101は、UE101で使用されるためにトリガされるデータ入力インタフェースの相対的な位置及び相対的なサイズをインターセプトするように構成されてもよい。UE101のユーザインタフェースに基づいて、データ入力インタフェースはディスプレイ全体に対して特定の位置を占めてもよく、ディスプレイ領域全体に対して特定の大きさであってもよい。例えば、検索履歴のような所定の値のリストが表示される場合、データ入力インタフェースは、スクリーン全体を占める代わりに、スクリーン全体の50%のみを占有するとなっているかもしれない。そこでUE101は、リモートインタフェース・トリガメッセージと共に、所望の相対位置(xy座標オフセット)及び相対的なサイズをリモートUIデバイス100に送信するように構成されてもよく、それに応じてリモートUIデバイス100は、受信した位置及びサイズに基づいて、適切なリモート・データ入力インタフェースを表示してもよい。
【0034】
ある例示的実施形態においては、リモートUIデバイス100は、車両のコンテキスト情報を受け取るべく、一つ又は複数の車両制御システム及び/又は車両監視システムに接続されてもよい。このコンテキスト情報には、例えばスピードや、視界条件、クルーズコントロール状態等のパラメータか含まれてもよい。リモートUIデバイス100は、そのスクリーンに表示するリモート・データ入力インタフェースのタイプを決定するために、コンテキスト情報を考慮するように構成されてもよい。例えば、ある閾値に基づいて車両のスピードが速いとされ、またQWERTYキーボードが必要とされている場合、タッチ操作に基づくQWERTY仮想キーボードを表示するよりも、ハンドルから操作可能な回転文字入力手段を表示してもよい。
【0035】
インタフェース・トリガイベントをインターセプトすることは、UE101のデータ入力インタフェースを抑止しうる手法の一つであってもよい。ある例示的実施形態では、端末モードのアプリケーションは、UE101上のローカルのユーザインタフェース・アプリケーション(例えばローカルの仮想キーボード・アプリケーション)を一時的に置き換えるために使用されてもよい。この端末モードのアプリケーションは、リモートユーザインタフェース・トリガメッセージをリモートUIデバイス100に送信するようにだけ構成され、アプリケーションが起動している間は、インタフェース・トリガイベントをUE101ローカルに生成しないように構成されてもよい。このように、端末モードアプリケーションの機能は、UE101上でデータ入力インタフェースが表示されることを抑制するように動作してもよい。
【0036】
ある例示的実施形態によれば、UE101上でデータ入力インタフェースが表示されることを抑制するための別のオプションが存在する。それは、データ入力インタフェースを表示するように構成されたローカルのユーザインタフェース・アプリケーションが起動されようとしていることを検出しそれを阻止すると共に、ローカルのユーザインタフェース・アプリケーションを開始する代わりに、リモートインタフェース・トリガメッセージを送信することであってもよい。
【0037】
ある例示的実施形態によれば、UE101上でデータ入力インタフェースの表示を抑制することは、UE101のプロセス間通信を監視しインターセプトすることを含んでもよい。このオプションは、例えば、データ入力インタフェースを表示させるローカルのユーザインタフェース・アプリケーションが、(おそらくバックグラウンドで)常に動作しているような場合に実装されてもよい。
【0038】
上述の事項を考慮して、図5は、本発明による例示的方法の信号のやりとりおよび処理の流れを描いた図である。この図はシステムの観点から、またリモートUIデバイス100及びUE101のそれぞれの観点から描かれている。図5のコンテキストにおいて、リモートUIデバイス100とUE101とは、UE101のユーザインタフェース(又はそのサブセット)をリモートUIデバイス100のユーザインタフェースに投影又は複製することを可能にする通信接続を共有している。これに関して、UE101のスクリーン又はスクリーンの一部をリモートUIデバイス100のディスプレイに投影するターミナルモードを実装する間、リモートUIデバイス100は、リモート・フレームバッファ・プロトコルやリモート・デスクトップ・プロトコルを用いてUE101に接続されてもよい。
【0039】
120において、リモートUIデバイス100は、データ入力フィールドの選択を受け取る。これに関して、例えばユーザは、リモートUIデバイス100によって受け取られる選択を行うために、リモートUIデバイス100のディスプレイ上のデータ入力フィールド(例えばテキスト入力フィールド)をタッチしてもよい。リモートUIデバイス100は、データ入力フィールドの選択に応じて、当該選択を示す情報を、データ入力フィールド選択メッセージの形で送信する(121)ように構成されてもよい。UE101は、データ入力フィールドの選択がなされたとの通知として、データ入力フィールド選択メッセージを受信してもよい(122)。データ入力フィールド選択メッセージはディスプレイの特定の座標におけるタッチイベントを記述する情報を含んでもよく、UE101は、現在表示されているコンテンツに対して前記座標を解析することにより、前記イベントがデータ入力フィールドの選択であることを決定してもよい。データ入力フィールド選択メッセージは、例えばVNCポインタ・イベント・メッセージ(VNC Pointer Event message)のような、リモートプロトコルによって、UE101へと送信されてもよい。123において、UE101は、データ入力フィールド選択メッセージのパラメータに基づいて、ローカルのフィールド選択をローカルにエミュレートしてもよい。
【0040】
ある例示的実施形態によれば、リモートUIデバイス100における選択を表す情報を受信する代わりに、UE101は、データ入力インタフェースはユーザがデータを入力することを許可される必要があることを示す情報を、おそらくローカルに、生成してもよい。これに関して、UE101は、ユーザによるデータ入力が求められていることを通知されてもよい。このため、上記の情報の生成はリモートUIデバイス100によらなくてもよい。例えばUE101は、例えば、特定の時間において、リモートUIデバイス100に依存しないある基準に基づいて、データ入力を必要とするアプリケーションを動かしているかもしれない。
【0041】
124において、UE101は、上述のように、データ入力インタフェースの表示を抑制するように構成されてもよい。これに関して、ある例示的実施形態によれば、UE101は、データ入力フィールド選択メッセージの受信に応じてUE101のディスプレイ上にデータ入力インタフェースを表示すべく、インタフェース・トリガイベントをUE101ローカルに生成するように構成されてもよい。データ入力インタフェースの表示を抑制することは、トリガイベントをインターセプトし抑制することを含んでもよい。ある例示的実施形態では、データ入力インタフェースの表示を抑制することは、UE101の端末モードアプリケーションを実行することを含んでもよい。ここで端末モードアプリケーションは、UE101のディスプレイ上にデータ入力インタフェースを表示させるトリガイベントの発生を抑制するように構成されてもよい。
【0042】
データ入力インタフェースをトリガする試みがインターセプトされたことを検出すると、またはデータ入力が求められていることの通知にを通して、UE101は、リモートインタフェース・トリガメッセージを送信する(125)ように構成されてもよく、リモートUIデバイス100は、リモートインタフェース・トリガメッセージを受信する(126)ように構成されてもよい。このようにして、UE101は、リモートUIデバイス100にリモート・データ入力インタフェース(例えば仮想キーボード)を表示することをトリガしてもよい。それは、関連するデータ・エントリ・フィールドへデータ入力することを可能にしてもよい。リモートインタフェース・トリガメッセージは、VNC端末モード仮想キーボード・トリガメッセージ(VNC Terminal Mode (TM) Virtual Keyboard Trigger message)であってもよい。このメッセージは、例えばテキストのようなデータの入力サポートは必要性を、リモートUIデバイス100に伝えるものであってもよい。
【0043】
127において、リモートUIデバイス100は、リモート・データ入力インタフェースを表示し、当該インタフェースを介してユーザにデータを入力することを可能にするように構成されてもよい。例示的実施形態によっては、リモート・データ入力インタフェースのタイプは、リモートインタフェース・トリガメッセージで提供される情報や、リモートUIデバイスが搭載されている車両のコンテキスト情報に基づいて決定されてもよい。
【0044】
本明細書で開示される様々な例示的実施形態に従い、UE101上でデータ入力インタフェースが表示されることを抑制し、それに応じてリモート・データ入力インタフェースをリモートUIデバイス100に表示させることをトリガすることは、多くの利点を提供する。例えば、例示的実施形態によっては、リモート・データ入力インタフェースを表示するための、安定して信頼性のあるトリガを実装することが可能になる。誤検出や失敗は減少するか削減され、トリガはユーザ・アクションに基づいたものとなることができる。さらに、例示的実施形態によっては、実装に既存のレガシー・アプリケーションの変更を要求する必要はない。さらに、例示的実施形態によっては、リモートUIデバイスが関係付けられている車両のコンテキスト情報が、表示されるリモート・データ入力インタフェースのタイプを決定するために使用されることができる。
【0045】
上述の説明及び本明細書で全体的に説明されている事項は、リモートのデータ入力インタフェースをトリガする例示的な方法、例示的な装置、例示的なコンピュータプログラム(非一時的コンピュータ可読媒体に格納されている)を説明しているものである。図6,7は、本明細書で説明される様々な機能を実行するように構成された、本発明の例示的な装置の実施形態を描いたものである。図6は、図1−5に関連して説明され、また本明細書で全体的に説明された様々な機能を実行するように構成された例示的な装置を、UE(例えばUE101)の観点から描いている。図7は、例示的なUE装置を移動端末の形態でより具体的に描いたものであり、図1−5に描かれ、また本明細書で全体的に説明された様々な機能を、UE101の観点から実行するように構成された移動端末を描いたものである。図6,7に描かれた例示的な装置はまた、図5に関連して説明されたような、本発明による例示的な方法を実行するように構成されてもよい。
【0046】
図6を参照すると、ある例示的実施形態において、装置200は、有線及び/又は無線通信機能を具備する通信機器として(またはそのような通信機器に含まれる要素として)具現化されることができる。これに関して、装置200は、本明細書で説明されたUEの機能に従って動作することができてもよい。実施形態によっては、装置200は、固定端末または移動端末のような通信デバイス(例えばUE101)の一部であってもよい。移動端末として、装置200は携帯型コンピュータ、携帯電話、ポータブル・デジタル・アシスタント(PDA)、ポケットベル、携帯テレビ、ゲームデバイス、ラップトップコンピュータ、カメラ、ビデオレコーダーは、オーディオ/ビデオプレーヤー、ラジオ、スマートフォン、タブレット、パッドデバイスであってもよく、及び/又はGPSデバイスであってもよく、またはこれらの任意の組み合わせであってもよい。通信デバイスの種類に関わらず、装置200は計算能力を有していてもよい。
【0047】
例示的な装置200は、プロセッサ205やメモリデバイス210、入力/出力(I/O)インタフェース206、通信インタフェース220、ユーザインタフェース215、リモートUIサーバモジュール230を備えるか、そうでなければこれらと通信する。プロセッサ205は、本発明の例示的実施形態の様々な機能を実装する様々な手段として具現化されうる。例えばマイクロプロセッサ、コプロセッサ、コントローラ、ASICのような特定目的の集積回路、FPGA、ハードウェアアクセラレータ、処理回路等として具現化されうる。ある例示的実施形態では、プロセッサ205は、協働する複数のプロセッサや、一つ又は複数のマルチコプロセッサを表してもよい。さらに、プロセッサ205は、本明細書で説明される機能の発揮を助けるための複数のトランジスタやロジックゲート、クロック(例えば発信器)、その他の回路等を備えてもよい。プロセッサ205は、必ずしも必要というわけではないが、協働する一つ又は複数のデジタルシグナルプロセッサを備えてもよい。ある例示的実施形態において、プロセッサ205は、メモリデバイス210に格納された命令を実行するように構成されてもよい。またはプロセッサ205は、自身がアクセス可能な命令を実行するように構成されてもよい。プロセッサ205は、装置200に本明細書で説明される様々な機能をプロセッサが実行させるように、動作するように構成されてもよい。
【0048】
ハードウェアにより構成されるか、またはコンピュータ読み取り可能な記憶媒体に格納される命令により構成されるか、またはこれらの組み合わせにより構成されるかに関わらず、プロセッサ205は、本発明の様々な実施形態に従う処理を遂行する能力を有する要素を表しうる。従って、プロセッサ205がASICやFPGAとして(またはその一部として)具現化される例示的実施形態では、プロセッサ205は、本明細書により説明される処理を遂行するために特別に構成されたハードウェアと考えられうる。また、プロセッサ205が、非一時的コンピュータ可読記憶媒体に格納される命令又はコンピュータ・プログラムコードの実行要素として具現化される例示的実施形態においては、当該命令は、プロセッサ205を、本明細書で説明されるアルゴリズムや処理(例えば図5に関して説明されたアルゴリズムや処理)を実行するように、特別に構成する。ある例示的実施形態において、プロセッサ205は、本発明の例示的実施形態を取り入れるように構成された特定のデバイス(例えば移動端末)のプロセッサである。本明細書で説明されるアルゴリズムや方法、処理を遂行するために、実行された命令によりプロセッサ205を構成することにより、本発明の例示的実施形態を取り入れる。
【0049】
メモリデバイス210は、一つ又は複数の非一時的コンピュータ可読記憶媒体であってもよく、揮発性及び/又は不揮発性のメモリを含んでもよい。ある例示的実施形態では、メモリデバイス210は、ランダムアクセスメモリ(RAM)を含んでもよく、ダイナミック及び/又はスタティックRAM、オンチップ又はオフチップのキャッシュメモリ等を含んでもよい。さらに、メモリデバイス210は、内蔵及び/又は着脱可能な不揮発性メモリであってもよく、また、例えばリード・オンリー・メモリ、フラッシュメモリ、磁気記憶デバイス(例えばハードディスクやフレキシブルディスクドライブ、磁気テープなど)、光ディスクドライブ及び/又は光ディスクメディア、不揮発性のランダムアクセスメモリ(NVRAM)等を含んでもよい。メモリドライブ210は、データの一時的な記憶のためのキャシュエリアを含んでもよい。これに関して、メモリデバイス210のいくつかまたは全ては、プロセッサ205内に含まれていてもよい。
【0050】
さらに、メモリデバイス210は、一つ又は複数のメモリデバイスであってもよい。またメモリデバイス210は、プロセッサ205及び装置例200が本明細書に記載される本発明の例示的実施形態に従う様々な機能を実行しうるように、情報、データ、アプリケーション、コンピュータ読み取り可能なプログラムコード命令等を格納するように構成されてもよい。例えばメモリデバイス210は、プロセッサ205より処理される入力データをバッファするように構成されてもよい。さらに又は代替的に、メモリデバイス210は、プロセッサ205により実行される命令を格納するように構成されてもよい。
【0051】
I/Oインタフェース206は、プロセッサ205と他の回路やデバイスを接続する如何なる手段であってもよく、デバイス、回路、ハードウェアに内蔵された手段、ソフトウェア、ハードウェアとソフトウェアの組み合わせ等、如何なるものでもよい。例えば通信インタフェース220やユーザインタフェース215であってもよい。ある例示的実施形態においては、プロセッサ205は、I/Oインタフェース206を介してメモリ210に接続される。I/Oインタフェース206は、信号やデータを、プロセッサ205により解釈されうる形に変換する。I/Oインタフェース206は、プロセッサ205の動作を助けるために、入力及び出力のバッファリングを行ってもよい。ある例示的実施形態によれば、プロセッサ205及びI/Oインタフェース206は、単一のチップや集積回路に結合され、本発明の様々な機能を実行したり、又は装置200に実行させたりするように構成される。
【0052】
通信インタフェース220は、ネットワーク225や、装置例200(例えばリモートUIデバイス100)と通信可能なデバイスやモジュールとの間でデータを受信及び/又は送信するように構成される、どのようなデバイスや手段(例えば回路)であってもよい。このようなデバイスや手段は、ハードウェアやコンピュータプログラム製品、ハードウェアとソフトウェアの組み合わせなどとして具現化されてもよい。通信インタフェースは、任意のタイプの有線又は無線接続、任意のタイプの通信プロトコル(例えばセルラ通信やNFC(近距離通信)をサポートする通信プロトコル)を介して、情報を通信できるように構成されてもよい。様々な例示的実施形態によれば、通信インタフェース220は、インターネットプロトコルに基づくネットワーク(例えばインターネット)やセルラネットワーク等の様々なネットワークにおける情報の送受信をサポートするように構成されてもよい。通信インタフェース220は、モバイル・アドホック・ネットワーク(MANET)のようなデバイス間通信をサポートするように構成されてもよい。プロセッサ205は、例えば通信インタフェース220内のハードウェアを制御することを通じて、通信インタフェース220を介する通信を助けるように構成されてもよい。これに関して、通信インタフェース220は、例えば、通信ドライバ回路(例えば光ファイバー接続を介する有線接続をサポートする回路など)や、一つ又は複数のアンテナ、送信機、受信機、送受信機等を備えてもよく、また、通信を可能にするプロセッサのようなサポートハードウェアを備えていてもよい。通信インタフェース220を介して装置例200は、デバイス間通信の形態で、他の様々なネットワーク要素と通信してもよい。または、基地局やアクセスポイント、サーバ、ゲートウェイ、ルータ等を介して間接的に通信してもよい。
【0053】
ユーザインタフェース215は、ユーザインタフェース215を介するユーザ入力を受け取ったり、聴覚や視覚に関する出力や、機械的又はその他の出力をユーザに提供したりするために、プロセッサ205と通信状態にあってもよい。ユーザインタフェース215は、例えば、キーボードやマウス、ジョイスティック、ディスプレイ(例えばタッチスクリーン)、マイクロフォン、スピーカー、その他の入力又は出力機構のいずれか一つ以上を有していてもよい。さらにプロセッサ205は、ユーザ入力インタフェースの一つ又は複数の要素の少なくともいずれかの機能を制御するように構成される、ユーザインタフェース回路を備えていてもよい(又はそのような回路と通信していてもよい)。プロセッサ205及び/又はユーザインタフェース回路は、コンピュータプログラム命令を通じて、ユーザインタフェースの一つ又は複数の要素の一つ又は複数の機能を制御するように構成されてもよい。そのようなコンピュータプログラム命令は、例えば揮発性メモリや不揮発性メモリのような、プロセッサ205がアクセス可能なメモリに格納される、例えばソフトウェアやファームウェアであることができる。ある例示的実施形態において、ユーザインタフェース回路は、装置200の少なくとも一つの機能をユーザがディスプレイを使って制御することを助け、また、ユーザの入力に応答するように構成されてもよい。プロセッサ205はまた、ユーザインタフェースの少なくとも一部分を表示するように構成されるディスプレイ回路を備えてもよい(又はそのような回路と通信してもよい)。ディスプレイ及びディスプレイ回路は、装置200の少なくともいずれかの機能をユーザが制御することを容易にするように構成されてもよい。
【0054】
例示的な装置200のリモートUI・サーバモジュール230は、ハードウェアや、コンピュータプログラムを格納する非一時的コンピュータ読み取り媒体、これらの組み合わせ等により部分的に又は全体的に具現化されうる如何なる手段やデバイスでもよく、例えば、例示的な装置200を構成するべく格納した命令を実行するプロセッサ205や、本明細書で説明されるような、リモートUI・サーバモジュール230の機能を実行するようにハードウェア的に構成されたプロセッサ205であってもよい。ある例示的実施形態においては、プロセッサ205は、リモートUI・サーバモジュール230を含むか、又はこれをコントロールしてもよい。リモートUI・サーバモジュール230は、プロセッサ205と似たような、ただし異なるプロセッサによって、その一部又は全部が具現化されてもよい。これに関して、リモートUI・サーバモジュール230は、プロセッサ205と通信するようにされてもよい。様々な例示的実施形態において、リモートUI・サーバモジュール230は、その一部又は全部が、複数の異なる装置に分散されて存在してもよい。すなわち、リモートUI・サーバモジュール230のいくつか又は全ての機能は第1の装置によって実行され、その残りの機能は一つ又は複数の他の装置によって実行されてもよい。
【0055】
装置200及びプロセッサ205は、次の機能をリモートUI・サーバモジュール230を通じて実行するように構成されてもよい。これに関して、リモートUI・サーバモジュール230は、プロセッサ205及び/又は装置200において、データ入力フィールド選択メッセージ又はデータ入力が求められていることの通知を受信するように構成されてもよい。リモートUI・サーバモジュール230はまた、デバイスのディスプレイにデータ入力インタフェースが表示されることを抑制するように構成されてもよく、また、リモートデバイスにリモートインタフェース・トリガメッセージが送信されるように構成されてもよく、それによって、リモートデバイスに、そのディスプレイ上にリモート・データ入力インタフェースを表示するように指示してもよい。
【0056】
例示的実施形態によっては、リモートUI・サーバモジュール230は、データ入力フィールド選択メッセージの受信に応じて、デバイスのディスプレイ上にデータ入力インタフェースを表示することを阻止するために、インタフェース・トリガイベントをデバイスローカルに生成するように構成されてもよい。例示的実施形態によっては、リモートUI・サーバモジュール230がデータ入力インタフェースの表示を抑制するように構成されることは、インタフェース・トリガイベントをインターセプトし、それによってデバイスのディスプレイにデータ入力インタフェースが表示されることを抑制するように構成されることを含んでもよい。追加的に又は代替的に、リモートUI・サーバモジュール230はさらに、インタフェース・トリガイベントをインターセプトすることに応じて、リモートインタフェース・トリガメッセージがリモートデバイスに送信されるようにするように構成されてもよい。例示的実施形態によっては、リモートUI・サーバモジュール230は、追加的に又は代替的に、デバイス上で端末モードアプリケーションを実装するように構成されてもよい。この端末モードアプリケーションは、デバイスのディスプレイへのデータ入力インタフェースの表示を生じさせる、インタフェース・トリガイベントの生成を抑制するように構成される。例示的実施形態によっては、リモートUI・サーバモジュール230は、インタフェース・トリガイベントをインターセプトすることに応じて、表示されるべきデータ入力インタフェースのタイプの情報を含むリモートインタフェース・トリガメッセージが、リモートデバイスに送信されるようにするように構成されてもよい。追加的に又は代替的に、リモートUI・サーバモジュール230は、リモートデバイスがそのディスプレイにリモート・データ入力インタフェースを表示することを当該リモートデバイスに指示するためのリモートインタフェース・トリガメッセージが、当該リモートデバイスに送信されることを生じさせるように構成されてもよい。ここでリモート・データ入力インタフェースは、リモートデバイスが装着されている環境のコンテキスト情報に基づいて表示されてもよい。
【0057】
図7を参照すると、本発明の様々な実施形態に従うより具体的な装置例が示されている。図7の例の装置は、セルラ通信ネットワークのような無線ネットワークで通信するように構成された移動端末10である。移動端末10は、本明細書で説明されたUE101及び/又は装置200の機能を遂行するように構成されてもよい。ある例示的実施形態においては、移動端末10は、プロセッサ20を通じてリモートUI・サーバモジュール230の昨日を遂行するようにされてもよい。これに関して、プロセッサ20は、プロセッサ205及び例えばI/Oインタフェース206のように構成される集積回路やチップであってもよい。また、揮発性メモリ40及び不揮発性メモリ42は、コンピュータ読み取り可能な記憶媒体として、プロセッサ20の動作をサポートするように構成されてもよい。
【0058】
移動端末10は、さらに、アンテナ12、送信機14、受信機16を備えてもよく、これらは移動端末10の通信インタフェースの一部に含まれてもよい。ユーザインタフェースには、スピーカ24やマイクロフォン26、ディスプレイ28、キーパッド30が含まれていてもよい。
【0059】
前述のように、図5は、本発明の例示的実施形態に従うシステム及び/又は方法及び/又は非一時的コンピュータ可読記憶媒体に格納されたコンピュータプログラム(例えばコンピュータプログラム製品)のフローチャートである。無論、フローチャートの各ブロック若しくは処理は、及び/又は、ブロック若しくは処理の組み合わせは、様々な手段によって実装されうる。フローチャートの各ブロック若しくは処理や、ブロック若しくは処理の組み合わせ、また本明細書で説明される本発明の例示的実施形態の他の機能を実装する手段は、ハードウェアであってもよく、また、コンピュータ・プログラムコード命令やプログラム命令、実行可能なコンピュータ可読プログラムコード命令を一つ又は複数格納する非一時的コンピュータ可読記憶媒体であってもよい。これに関して、プログラム命令は、装置例200のような例示的装置の、メモリデバイス210のようなメモリデバイスに格納されてもよく、プロセッサ205のようなプロセッサ2実行されてもよい。理解されうるように、このようなコンピュータプログラム命令は、コンピュータ可読記憶媒体から、コンピュータや他のプログラム可能な装置(例えばプロセッサ205やメモリデバイス210等)にロードされて、特定の機械を構成する。かかる機械は、フローチャートの一つ又は複数のブロック又は処理により特定される機能を実装する手段となる。これらのプログラムコード命令は、コンピュータ可読記憶媒体に格納されてもよく、特定の方法で機能するようにコンピュータやプロセッサ、他のプログラム可能な装置に命令し、それによって、特定の機械または特定の製品を生成することができる。コンピュータ可読記憶媒体に格納される命令は製品を生成してもよいが、ここでこの製品は、フローチャートの一つ又は複数のブロック又は処理により特定される機能を実装する手段となる。プログラムコード命令は、コンピュータ可読記憶媒体からリトリーブされ、コンピュータやプロセッサ、他のプログラム可能な装置にロードされてもよく、それによって、コンピュータやプロセッサ、他のプログラム可能な装置上で(またはこれらの装置によって)遂行されるべき処理を実行させるように、コンピュータやプロセッサ、他のプログラム可能な装置を構成してもよい。プログラム命令のリトリーブ(Retrieval)、ロード、実行は順番に行われてもよい。例えば、一度に一つの命令が、リトリーブされ、ロードされ、実行されてもよい。実施形態によっては、リトリーブ、ロード、実行は、並行的に行われてもよい。すなわち、複数の命令が同時にリトリーブされ、ロードされ、実行されてもよい。プログラムコード命令の実行は、コンピュータ実装型のプロセスを生成してもよい。すなわち、コンピュータやプロセッサ、他のプログラム可能な装置により実行された命令は、フローチャートの一つ又は複数のブロック又は処理により特定される機能を実装する動作を提供してもよい。
【0060】
さらに、フローチャートのブロック又は処理に関連する命令をプロセッサにより実行することや、フローチャートのブロック又は処理に関連する命令をコンピュータ可読記憶媒体に格納することは、特定の機能を実行する処理の組み合わせを助ける。また、フローチャートの一つ又は複数のブロック若しくは処理、及び、フローチャートの複数のブロックの若しくは処理組み合わせは、特定の機能を実行する特定目的のハードウェアベースのコンピュータシステム(及び/又はプロセッサ)や、特定目的のハードウェアとプログラムコード命令との組み合わせによって実装されてもよいことも理解されたい。
【0061】
ここで説明された発明についての多くの変形その他の実施形態が、前述の説明や関連する図面に示される教示から利益を受けうる、本発明に関連する当業者に想起されるであろう。従って本発明は、ここで退治された特定の実施形態に制限されるものと理解されてはならず、上述の変形その他の実施形態も、添付の請求項の範囲に含まれるべきものである。さらに、上述の説明や関連する図面が要素や機能の或る例示的な組み合わせという文脈で例示的な実施形態を説明してきたが、別の実施形態では、添付の請求項の範囲を逸脱せずに、要素や機能の異なる組み合わせも可能であることに留意されたい。ここで例えば、上で明示的に説明されている要素や機能の組み合わせ以外の組み合わせも、添付の請求項のいずれかに属するものと考えるべきである。本明細書では特定の語句が使用されているが、それは一般的かつ説明の意味で使われており、限定する目的で使われてはいない。
図1
図2
図3
図4
図5
図6
図7