(57)【要約】【課題】側面に搭載されたタッチパッドを用いたナビゲーションを提供する。【解決手段】一実施形態において、携帯型デバイスのユーザは、携帯型デバイスの側面に搭載されたタッチパッドへのタッチ入力の使用によってアプリケーション・ユーザ・インタフェース層間のナビゲーションを行う。【選択図】なし【特許請求の範囲】
【請求項１】
ユーザのコンピュータ・デバイスが、該コンピュータ・デバイス上で実行しているアプリケーションの現在のユーザ・インタフェースの表示中に該コンピュータ・デバイスの側面に搭載されたタッチパッドにおけるタッチ・イベントを検知する工程であって、前記アプリケーションはユーザ・インタフェース層からなるナビゲーション階層を含み、該ユーザ・インタフェース層は、ホーム・ユーザ・インタフェース層と、複数のサブ・ユーザ・インタフェース層と、複数のナビゲーションの流れとを含む、前記工程と、
前記コンピュータ・デバイスが、前記現在のユーザ・インタフェースが対応する特定のサブ・ユーザ・インタフェース層を判定し、かつ、前記現在のユーザ・インタフェースが対応する特定のナビゲーションの流れを判定する工程であって、前記特定のナビゲーションの流れの判定は、
前記ユーザがナビゲートした１つ以上のユーザ・インタフェース層のナビゲーション履歴と、
前記アプリケーションのユーザ・インタフェース層の階層ツリー構造と、の選択に基づく、工程と、
前記コンピュータ・デバイスが、前記タッチ・イベントの種類を判定する工程と、
該タッチ・イベントの種類が進むタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れに次のユーザ・インタフェース層が存在する場合、前記コンピュータ・デバイスが、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける該次のユーザ・インタフェース層にナビゲートする工程と、
該タッチ・イベントの種類が戻るタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れに前のユーザ・インタフェース層が存在する場合、前記コンピュータ・デバイスが、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける該前のユーザ・インタフェース層にナビゲートする工程と、
該タッチ・イベントの種類が前記ナビゲーション履歴に含まれる１つのユーザ・インタフェース層に対応するタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける前記次のユーザ・インタフェース層および前記前のユーザ・インタフェース層のいずれでもない場合、該１つのユーザ・インタフェース層にナビゲートする工程と、を備える方法。
【請求項２】
前記タッチ・イベントの種類がタップ・イベントである場合、前記コンピュータ・デバイスが、前記ホーム・ユーザ・インタフェース層に直接ナビゲートする工程をさらに備える、請求項１に記載の方法。
【請求項３】
前記タッチ・イベントが進むタッチ・イベントであるか戻るタッチ・イベントであるかの判定は、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの位置と、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの方向と、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの時間と、のうちの１つ以上に基づく、請求項１に記載の方法。
【請求項４】
前記アプリケーションはウェブ・ブラウザである、請求項１に記載の方法。
【請求項５】
前記アプリケーションはオペレーティング・システムである、請求項１に記載の方法。
【請求項６】
前記側面に搭載されたタッチパッドは凹面を備える、請求項１に記載の方法。
【請求項７】
装置であって、
ディスプレイと、
側面に搭載されたタッチパッドと、
１つ以上のプロセッサと、
前記プロセッサに接続されているメモリであって、前記プロセッサによって実行可能な命令を含むメモリと、を備える装置であって、
前記命令の実行時、前記プロセッサは、
前記装置上で実行しているアプリケーションの現在のユーザ・インタフェースの表示中に前記装置の側面に搭載されたタッチパッドにおけるタッチ・イベントを検知する工程であって、前記アプリケーションはユーザ・インタフェース層からなるナビゲーション階層を含み、該ユーザ・インタフェース層は、ホーム・ユーザ・インタフェース層と、複数のサブ・ユーザ・インタフェース層と、複数のナビゲーションの流れとを含む、前記工程と、
前記現在のユーザ・インタフェースが対応する特定のサブ・ユーザ・インタフェース層を判定し、かつ、前記現在のユーザ・インタフェースが対応する特定のナビゲーションの流れを判定する工程であって、前記特定のナビゲーションの流れの判定は、
前記装置のユーザがナビゲートした１つ以上のユーザ・インタフェース層のナビゲーション履歴と、
前記アプリケーションのユーザ・インタフェース層の階層ツリー構造と、の選択に基づく、工程と、
前記タッチ・イベントの種類を判定する工程と、
該タッチ・イベントの種類が進むタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れに次のユーザ・インタフェース層が存在する場合、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける該次のユーザ・インタフェース層にナビゲートする工程と、
該タッチ・イベントの種類が戻るタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れに前のユーザ・インタフェース層が存在する場合、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける該前のユーザ・インタフェース層にナビゲートする工程と、
該タッチ・イベントの種類が前記ナビゲーション履歴に含まれる１つのユーザ・インタフェース層に対応するタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける前記次のユーザ・インタフェース層および前記前のユーザ・インタフェース層のいずれでもない場合、該１つのユーザ・インタフェース層にナビゲートする工程と、を実行するように動作可能である、装置。
【請求項８】
前記命令の実行時、前記プロセッサは、前記タッチ・イベントの種類がタップ・イベントである場合、前記ホーム・ユーザ・インタフェース層に直接ナビゲートする工程を実行するようにさらに動作可能である、請求項７に記載の装置。
【請求項９】
前記命令の実行時、前記プロセッサは、前記タッチ・イベントが進むタッチ・イベントであるか戻るタッチ・イベントであるかを
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの位置と、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの方向と、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの時間と、のうちの１つ以上に基づき判定する工程を実行するようにさらに動作可能である、請求項７に記載の装置。
【請求項１０】
前記ディスプレイはタッチ・スクリーンである、請求項７に記載の装置。
【請求項１１】
前記側面に搭載されたタッチパッドは凹面を備える、請求項７に記載の装置。
【請求項１２】
前記アプリケーションはウェブ・ブラウザである、請求項７に記載の装置。
【請求項１３】
前記アプリケーションはオペレーティング・システムである、請求項７に記載の装置。
【請求項１４】
ソフトウェアを記録したコンピュータ可読記憶媒体であって、該ソフトウェアは、
コンピュータ・デバイス上で実行しているアプリケーションの現在のユーザ・インタフェースの表示中に前記コンピュータ・デバイスの側面に搭載されたタッチパッドにおけるタッチ・イベントを検知する工程であって、前記アプリケーションはユーザ・インタフェース層からなるナビゲーション階層を含み、該ユーザ・インタフェース層は、ホーム・ユーザ・インタフェース層と、複数のサブ・ユーザ・インタフェース層と、複数のナビゲーションの流れとを含む、前記工程と、
前記現在のユーザ・インタフェースが対応する特定のサブ・ユーザ・インタフェース層を判定し、かつ、前記現在のユーザ・インタフェースが対応する特定のナビゲーションの流れを判定する工程であって、前記特定のナビゲーションの流れの判定は、
前記コンピュータ・デバイスのユーザがナビゲートした１つ以上のユーザ・インタフェース層のナビゲーション履歴と、
前記アプリケーションのユーザ・インタフェース層の階層ツリー構造と、の選択に基づく、工程と、
前記タッチ・イベントの種類を判定する工程と、
該タッチ・イベントの種類が進むタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れに次のユーザ・インタフェース層が存在する場合、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける該次のユーザ・インタフェース層にナビゲートする工程と、
該タッチ・イベントの種類が戻るタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れに前のユーザ・インタフェース層が存在する場合、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける該前のユーザ・インタフェース層にナビゲートする工程と、
該タッチ・イベントの種類が前記ナビゲーション履歴に含まれる１つのユーザ・インタフェース層に対応するタッチ・イベントであり、かつ、前記現在のユーザ・インタフェースの前記特定のナビゲーションの流れにおける前記次のユーザ・インタフェース層および前記前のユーザ・インタフェース層のいずれでもない場合、該１つのユーザ・インタフェース層にナビゲートする工程と、をコンピュータに実行させるためのソフトウェアである、媒体。
【請求項１５】
前記ソフトウェアは、実行時、
前記タッチ・イベントの種類がタップ・イベントである場合、前記ホーム・ユーザ・インタフェース層に直接ナビゲートする工程、を実行するようにさらに動作可能である、請求項１４に記載の媒体。
【請求項１６】
前記ソフトウェアは、実行時、
前記タッチ・イベントが進むタッチ・イベントであるか戻るタッチ・イベントであるかを
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの位置と、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの方向と、
前記側面に搭載されたタッチパッドにおける前記タッチ・イベントの時間と、のうちの１つ以上に基づき判定する工程を実行するようにさらに動作可能である、請求項１４に記載の媒体。
【請求項１７】
前記アプリケーションはウェブ・ブラウザである、請求項１４に記載の媒体。
【請求項１８】
前記アプリケーションはオペレーティング・システムである、請求項１４に記載の媒体。
【請求項１９】
前記側面に搭載されたタッチパッドは凹面を備える、請求項１４に記載の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、タッチ式ユーザ・インタフェースに関し、より詳しくは、側面に搭載されたタッチパッドを有するコンピュータ・デバイスがホストとなるアプリケーションのユーザ・インタフェース層（レイヤ）間のナビゲーションに関する。
【背景技術】
【０００２】
タッチパッドは、ユーザのタッチ式入力を検知する表面を備えた入力装置である。タッチ・スクリーンは、ユーザのタッチ入力の存在と位置とを検知する電子可視ディスプレイである。携帯電話機、タブレット・コンピュータ、およびラップトップ・コンピュータなどの携帯型デバイスは、多くの場合、その携帯型デバイスで動作しているアプリケーション・プログラムとの対話をユーザが容易に行うことができるように、タッチ・スクリーンまたはタッチパッドを備えている。
【図面の簡単な説明】
【０００３】
【図１】ウェブページを表示するブラウザ・クライアントのホストである携帯電話機のタッチ・スクリーンの一例を示す図。
【図２】タッチ式入力デバイス（複数可）を備えた携帯型デバイスの処理スタックの一例を示す図。
【図３Ａ】タッチ・スクリーン・デバイスがホストするアプリケーションのユーザ・インタフェース層間のナビゲーションを行う方法の一例を示す図。
【図３Ｂ】タッチ・スクリーン・デバイスがホストするアプリケーションのユーザ・インタフェース層間のナビゲーションを行う方法の一例を示す図。
【図３Ｃ】タッチ・スクリーン・デバイスがホストするアプリケーションのユーザ・インタフェース層間のナビゲーションを行う方法の一例を示す図。
【図４】タッチ・スクリーン・デバイス上で処理されるアプリケーションのアプリケーション・ユーザ・インタフェースの階層の一例を示す図。
【図５】正面に搭載されたタッチ・スクリーンと側面に搭載されたタッチパッドを備えた携帯型デバイスの一例の正面図および側面図。
【図５Ａ】図５の携帯型デバイスの他の一例を示す図。
【図５Ｂ】背面に搭載されたタッチ面を備えた携帯型デバイスの一例を示す図。
【図５Ｃ】図５の携帯型デバイスの一例の１つ以上の側面に搭載されたタッチパッドに関連付けられたタッチ・イベントの一例を示す図。
【図５Ｄ】図５の携帯型デバイスの一例の１つ以上の側面に搭載されたタッチパッドに関連付けられたタッチ・イベントの一例を示す図。
【図５Ｅ】図５の携帯型デバイスの一例の１つ以上の側面に搭載されたタッチパッドに関連付けられたタッチ・イベントの一例を示す図。
【図５Ｆ】図５の携帯型デバイスの一例の１つ以上の側面に搭載されたタッチパッドに関連付けられたタッチ・イベントの一例を示す図。
【図５Ｇ】図５Ｂの携帯型デバイスの一例の背面に搭載されたタッチ面に関連付けられたタッチ・イベントの一例を示す図。
【図５Ｈ】図５Ｂの携帯型デバイスの一例の背面に搭載されたタッチ面に関連付けられたタッチ・イベントの一例を示す図。
【図５Ｉ】図５Ｂの携帯型デバイスの一例の背面に搭載されたタッチ面に関連付けられたタッチ・イベントの一例を示す図。
【図６】側面に搭載されたタッチパッドを用いた、アプリケーションのユーザ・インタフェース層間のナビゲーションを行う方法の一例を示す図。
【図７】携帯型デバイスのプラットホームの一例を示す図。
【発明を実施するための形態】
【０００４】
特定の実施形態は、コンピュータ・デバイスのユーザに、側面に搭載されたタッチパッドへのタッチ入力を用いて、アプリケーション・ユーザ・インタフェース層間のナビゲートを行わせるタッチ式ユーザ・インタフェースに関する。本開示におけるこれらおよび他の特徴、態様、および有用性は、以下の詳細な説明において、以下の図面と関連付けながら、さらに詳しく説明する。
【０００５】
本発明を、添付の図面に示す数種の実施形態を参照しながら詳細に説明する。以下の説明において、数々の特定の詳細は、本開示の完全な理解を得るために記載する。しかし、当業者であれば、本開示はそれらの特定の詳細の一部または全部がなくても明らかに実施可能である。他の例では、周知の処理工程および／または構成は本開示を不必要に不明瞭にすることを避けるために詳細には説明されない。また、本開示は特定の実施形態に関連付けて説明されるが、この説明は、本開示を説明した実施形態に限定することを意図するものではないことに留意されるべきである。むしろ、この記載は、変更、改良、および均等物が、添付の請求の範囲に規定する開示の精神と範囲とに含まれることを意図する。
【０００６】
タッチパッドは、ユーザのタッチ式入力を検知する面を備えた入力デバイスである。同様に、タッチ・スクリーンは、ユーザのタッチ入力の存在および位置を検知する電子可視ディスプレイである。いわゆるデュアル・タッチまたはマルチ・タッチのディスプレイまたはタッチパッドとは、指による２つまたは３つのタッチ（接触）など、２つ以上のタッチ入力の存在、位置および移動を識別可能なデバイスのことである。１つ以上のタッチ式入力デバイスを備えたシステムは、ユーザからの１つ以上のタッチまたはニアタッチによる入力に対して１つ以上のタッチセンサ式の面を監視してもよい。１つ以上のかかるユーザの入力が発生したときに、このシステムは、明確な接触面積（複数可）を判定し、幾何学的特徴および幾何学的配置（位置、移動等）によってタッチまたはニアタッチによる入力（複数可）の性質を識別し、それらが各種タッチ・イベント（タップ、ドラッグ、スワイプ、ピンチ等）に対応しているかどうかを判定してもよい。これらのタッチ・イベントはその後、図１に示すように、それらのイベントに対するリスナー（ｌｉｓｔｅｎｅｒ）として登録またはサブスクライブするハンドラ機能によって処理してもよい。図１は、ウェブページを表示するブラウザ・クライアントのホストである携帯電話機のタッチ・スクリーンの一例を示している。図１の例において、携帯電話機１００のタッチ・スクリーン１０１は、以下に記載したように、「Ｔａｐ  ｏｎ  ｔｈｉｓ  ｔｅｘｔ（このテキストをタップする）」というテキスト文字列を表示するＨＴＭＬ／ＪＡＶＡ（登録商標）Ｓｃｒｉｐｔコードスニペットを表示する。
【０００７】
【表１】
2018156680.tif 000002
【０００８】
ユーザが「Ｔａｐ  ｏｎ  ｔｈｉｓ  ｔｅｘｔ」（１０２）というテキスト文字列上をタップ（ｔａｐ）すると、タッチ・イベント・リスナーである「ｏｎＴｏｕｃｈＥｖｅｎｔ」がテキスト文字列を「Ｔａｐ  ｏｎ  ｔｈｉｓ  ｔｅｘｔ（このテキストをタップする）」から「Ｂｏｏ！」（１０３）に変更するアクションを始動させることができる。
【０００９】
１つ以上のタッチ式入力デバイスを用いたシステムによるタッチ・イベントの認識、すなわち、ユーザによる１つ以上のタッチ入力を識別し、対応するタッチ・イベント（複数可）を判定することは、ハードウェア、ソフトウェア、および／またはファームウェア（またはデバイス・ドライバ）の組み合わせによって実行してもよい。図２は、タッチ式入力デバイス（複数可）を備えた携帯型デバイス（スマートフォン等）の処理スタックの一例を示している。ハードウェア層２０１には、１つ以上のプロセッサと、カメラ、通信インタフェース、およびタッチ式入力デバイス（タッチ・スクリーン、タッチパッド等）などの多様なハードウェア入出力デバイスを含むことができる。ドライバ層２０２は、ハードウェア層２００を通信制御する１つ以上のドライバ、例えば、タッチ・スクリーン・ディスプレイによって生成されたタッチ入力信号を受信して処理するドライバを含む。オペレーティング・システム２０３は、計算プログラムを実行し、ドライバ層２０２の１つ以上のドライバを介してハードウェア層２０１を管理する。ライブラリ２０４は、アプリケーション２０５の１つ以上のアプリケーション・プログラム（ウェブ・ブラウザ、アドレス帳等）によって使用される１つ以上のライブラリを含む。例えば、図１および上記のＨＴＭＬ／ＪＡＶＡ（登録商標）Ｓｃｒｉｐｔコードスニペットに示すように、タッチ・イベント・ライブラリ２１０は、タッチ入力をタッチ・イベントまたはジェスチャと解釈するコードを含むことができ、ウェブ・ブラウザ・アプリケーション・プログラムはタッチ・イベント・ライブラリ２１０にアクセスして（例えばファンクション・セルを介して）、ウェブページをそのページに組み込まれたタッチ・イベント・ハンドラで処理することができる。
【００１０】
コンピュータ・デバイスがホストとなるアプリケーション・プログラムのユーザ・インタフェース層は、コンピュータ・デバイスのオペレーティング・システムのユーザ・インタフェース層を含み、通常、階層ツリー構造などの階層構造内に配置される。このツリー構造のルートノードは、ホーム・ユーザ・インタフェース層またはアプリケーションのホーム画面に対応し、アイコン、ボタン、プルダウン・メニュー、ハイパーテキスト・リンクまたはその他の、ユーザを子（チャイルド）ユーザ・インタフェース層にナビゲートさせるコントロール部を含んでいてもよい。チャイルド・ユーザ・インタフェース層は、ユーザをアイコンまたはボタンの選択によって、親（ペアレント）ユーザ・インタフェース層に戻るようにナビゲートするアイコンまたはボタンを含んでいてもよい。それらのボタンの多くは、メニューバーの上に表示されるが、数々の例外もある。
【００１１】
図３Ａ〜図３Ｃに示すように、タッチ・スクリーン・デバイスを用いて、ユーザは、タッチ・スクリーン・デバイスがホストとなるアプリケーションのユーザ・インタフェース層間を、タッチ・スクリーンで表示されたアプリケーションのユーザ・グラフィック・インタフェース内の１つ以上の選択可能な項目にタッチすることによってナビゲートすることがよくある。図３Ａ〜図３Ｃに示す特定のアプリケーションは、タッチ・スクリーンを備えた携帯電話機（例えば、カリフォルニア州クパティーノのＡｐｐｌｅ，Ｉｎｃ．製のｉＰｈｏｎｅ（登録商標）スマートフォン）がホストとなるＦａｃｅｂｏｏｋ（登録商標）クライアントである。ユーザがアプリケーションを始動すると、アプリケーションはホーム画面３０１（図３Ａ）またはそのアプリケーションのホーム・ユーザ・インタフェース層を表示するインタフェースを表示する。ホーム画面３０１は、他の層にナビゲートするためのアイコンまたはボタン、例えば、Ｎｅｗｓ  Ｆｅｅｄ（ニュース・フィード）アイコン３１０、写真（Ｐｈｏｔｏｓ）アイコン３３０、友人（Ｆｒｉｅｎｄｓ）アイコン３４０などの、ユーザ・インタフェース・エレメント（要素）を含んでいてもよい。図４は、図３Ａ〜図３Ｃに示すアプリケーションのアプリケーション・ユーザ・インタフェースの階層４００の一例を示している。アプリケーション・ユーザ・インタフェースの階層はホーム層４０１と、ニュース・フィード４１０、プロフィール４２０、写真４３０、友人４４０その他の、１つ以上のサブ層４０２とを含む。さらに、写真層４３０自体が、そのサブ層としてアルバム・リスト４３２を有し、さらにそのサブ層として写真リスト４３４などを有している。全ての層がサブ層を有するわけではなく、ニュース・フィード・コンテンツ４１２、セルフ（自己）プロフィール・コンテンツ４２２、「写真１」４３６などはリーフ層である。図４の例では、階層のノードが、アプリケーションによって提供される、異なるユーザ・インタフェース層を表す一方、ノード間のエッジは潜在的なナビゲーションの流れを示している。さらに、アプリケーションは、兄弟ノード層間の直接的ナビゲーション、層間の直接的な２以上のホップの横断などの、階層モデルに従わない方法で、ノード間をナビゲートすることを許容してもよい。
【００１２】
例えば、ホーム層４０１から、ユーザはホーム画面３０１内の友人（Ｆｒｉｅｎｄｓ）アイコン３４０にタッチすることによって友人層４４０へナビゲートすることができ、現在の画面が、図３Ｂに示すように、友人層４４０に対応する画面３４１に変わる。友人層４４０に対応する画面３４１は友人のリストを備え、各友人は選択可能なアイコン（プロフィール写真など）で示されている。ユーザは、特定の友人の層「ローラ（Ｌａｕｒａ）」４４２に、対応するアイコン（３４２）にタッチすることによってナビゲートすることができ、現在の画面が、図３Ｃに示すように、特定の友人に対応する画面（３４３）に変わる。この特定の友人の層「ローラ」４４２から、または図３Ｃに示す特定の友人に対応する画面３４３から、ユーザは、「情報」アイコン３４４にタッチすることによって特定の友人のさらなる情報（電子メールアドレス、電話番号等）を調べ、「Ｆｒｉｅｎｄｓ（友人）」アイコン３４５にタッチすることによって友人層に戻り、あるいはホームのアイコン３４６にタッチすることによってホーム層にナビゲートすることができる。
【００１３】
本明細書の特定の実施形態は、タッチ・スクリーンおよび１つ以上の側面に搭載されたタッチパッドを備えたコンピュータ・デバイス（携帯電話機、ネットブック、スマートフォン、タブレット、または、その他の携帯型デバイス）およびユーザに１つ以上の側面に搭載されたタッチパッドを用いてユーザ・インタフェース層間のナビゲートを行わせる方法に関連している。この側面に搭載されたタッチパッド（複数可）はユーザの側面に搭載されたタッチパッド（複数可）との対話の負担を取り除き、タッチ・スクリーンの有用性の向上をもたらすことができるため（例えば、ナビゲーション・エレメントまたはアイコンがより少ない、より密集していないグラフィカル・ユーザ・インタフェース）、特定の実施形態によって、携帯型デバイスに関するユーザ・エクスペリエンスを向上させることができる。図５は、正面に搭載されたタッチ・スクリーンと側面に搭載されたタッチパッドとを備えた携帯型デバイスの一例の正面図および側面図を示している。特定の実施形態において、携帯型デバイス５００は、マルチ・タッチ式タッチ・スクリーン５０１をその正面に配置した筐体を備えてもよい。
【００１４】
携帯型デバイス５００はさらに、いずれもデバイス５００の側方の面または縁部に配置された、側面に搭載されたマルチ・タッチ式タッチパッド５０２と側面に搭載されたシングル・タッチ式タッチパッド５０３とを備えてもよい。特定の実施形態において、携帯型デバイス５００は、多様な機能をサポートまたは実行するハードウェアおよび／またはソフトウェアを備えてもよい。例えば、携帯型デバイス５００は、電話機能、チャットおよび／または電子メール機能をサポートしてもよい。携帯型デバイス５００はまた、ネットワーク・データ通信もサポートし、ウェブページにアクセスして表示するためのウェブ・ブラウザを含んでいてもよい。携帯型デバイス５００はさらに、Ｗｉ−Ｆｉ基地局機能、デジタル・メディア・プレイヤ機能、および／またはゲーム・デバイス機能をサポートしてもよく、組み込んでもよい。一実施形態においては、側面に搭載されたタッチパッド５０３を、クリック可能なボタン（クリッカブル・ボタン）またはキーパッド・デバイスに置き換えてもよい。他の実施形態においては、側面に搭載されたタッチパッド５０３は、マルチ・タッチ式タッチパッドであってよい。いくつかの実施形態では、タッチパッド４０２はシングルまたはマルチ・タッチ式デバイスであってよい。いくつかの実施形態においては、側面に搭載されたタッチパッド５０２は図５Ａに示すようにわずかに凹状のマルチ・タッチ面を備えていてもよい。タッチ・スクリーン５０１および側面に搭載されたタッチパッド５０３は、シングル・タッチ式、デュアル・タッチ式またはマルチ・タッチ式デバイスであってよい。さらに、本発明の実施形態は、タッチ・スクリーン・デバイスを備えず、その代わりに通常の表示装置およびトラックボールまたはタックパッド（ｔａｃｋｐａｄ）などのポインタ・デバイスを用いて動作することができる。他の実施形態においては、携帯型デバイス５００は携帯型デバイス５００の背面側に背面に搭載されたタッチ面５０５を備えていてもよい。背面に搭載されたタッチ面５０５は、図５Ｂに示すように、携帯型デバイス５００の背面の略全部または一部を覆ってもよい。背面に搭載されたタッチ面５０５は、マルチ・タッチ式タッチパッドまたはマルチ・タッチ式タッチ・スクリーンを備えてもよい。
【００１５】
携帯型デバイス５００は、タッチ入力を認識し、１つ以上の対応するタッチ・イベントまたはジェスチャを判定してもよい。携帯型デバイス５００がホストとなる１つ以上のアプリケーションは、その１つ以上のタッチ・イベントに対応するハンドラ機能を登録するように構成されていてもよい。特定の実施形態においては、携帯型デバイス５００は、タッチ・スクリーン５０１、タッチパッド５０２、タッチパッド５０３、および／または背面に搭載されたタッチ面５０５にて実行された１つ以上のユーザのタッチ入力を認識して、１つ以上の対応するタッチ・イベントを判定してもよい。特定の実施形態においては、携帯型デバイス５００は、図５Ｃに示す、タッチパッド５０２に関連付けられた「進む（ｆｏｒｗａｒｄ）」側方フリック・イベントを判定してもよい。図５Ｃの例において、ユーザは前方横方向（矢印５１０で示す方向）に迅速な動きでタッチパッド５０２にタッチし、携帯型デバイス５００のジェスチャ認識ライブラリはタッチパッド５０２によって生成されたデータにアクセスしてタッチパッド５０２に関連付けられた進む側方フリック・イベントまたはジェスチャに対応するタッチ入力を判定することができる。特定の実施形態において、携帯型デバイス５００は、図５Ｄに示す、タッチパット５０２に関連付けられた「戻る（ｂａｃｋｗａｒｄ）」側方フリック・イベントを判定してもよい。図５Ｄの例において、ユーザは後方横方向（矢印５１２に示す方向）への迅速な動きでタッチパッド５０２にタッチし、携帯型デバイス５００のジェスチャ認識ライブラリはタッチパッド５０２によって生成されたデータにアクセスしてタッチパッド５０２に関連付けられた戻る側方フリック・イベントまたはジェスチャに対応するタッチ入力を判定することができる。
【００１６】
特定の実施形態において、携帯型デバイス５００は、タップ・イベントを識別してもよい。いくつかの実施形態において、携帯型デバイス５００は、図５Ｅに示すように、タッチパッド５０２に関連付けられたタップ・イベントを判定してもよい。図５Ｅの例において、ユーザはタッチパッド５０２をタップし、または軽く叩き（矢印５１４に示す）、携帯型デバイス５００のジェスチャ認識ライブラリはユーザのタッチ入力を解釈してタップ・イベントに対応するタッチ入力を識別することができる。他の実施形態において、携帯型デバイス５００は、図５Ｆに示すように、タッチパッド５０３に関連付けられたタップ・イベントを識別してもよい。図５Ｆの例において、ユーザはタッチパッド５０３をタップし、または軽く叩き（矢印５１６に示す）、携帯型デバイス５００のジェスチャ認識ライブラリはユーザのタッチ入力を解釈してタップ・イベントに対応するタッチ入力を識別することができる。一実施形態において、携帯型デバイス５００は、タッチパッド５０３がクリッカブル・ボタンであり、ユーザがクリッカブル・ボタンをクリックした場合、タッチパッド５０３に関連付けられたタップ・イベントを識別してもよい。
【００１７】
他の実施形態において、携帯型デバイス５００は、図５Ｇ〜図５Ｉに示すように、背面に搭載されたタッチ面５０５に関連付けられたタッチ・イベントを識別してもよい。図５Ｇの例において、ユーザは上方向（矢印５３１で示す方向）への迅速な動きで背面に搭載されたタッチ面５０５にタッチする。携帯型デバイス５００のジェスチャ認識ライブラリはユーザのタッチ入力を解釈して、背面に搭載されたタッチ面５０５に関連付けられた上方向のフリック・イベントまたはジェスチャに対応するタッチ入力を識別することができる。図５Ｈの例において、ユーザは下方向（矢印５３２で示す方向）への迅速な動きで背面に搭載されたタッチ面５０５にタッチする。携帯型デバイス５００のジェスチャ認識ライブラリはユーザの入力を解釈して、背面に搭載されたタッチ面５０５に関連付けられた下方向のフリック・イベントまたはジェスチャに対応するタッチ入力を識別することができる。図５Ｉの例において、ユーザは背面に搭載されたタッチ面５０５をタップし、または軽く叩き（矢印５３３に示す）。携帯型デバイス５００のジェスチャ認識ライブラリはユーザの入力を解釈して、背面に搭載されたタッチ面５０５に関連付けられたタップ・イベントに対応するタッチ入力を識別することができる。
【００１８】
図３Ａ〜図３Ｃの例に示すようなタッチ・スクリーンに対するタッチ入力によるアプリケーションのユーザ・インタフェース層間のナビゲーションに対して、図６は、側面に搭載されたタッチパッドを用いた、アプリケーションのユーザ・インタフェース層間のナビゲーションを行う方法の一例を示す。すなわち、図６の方法の一例によって、ユーザが、側面に搭載されたタッチパッドを横切るフリックによるユーザ・インタフェース層間のナビゲーション、および側面に搭載された「ホーム・ボタン」をタップまたはクリックすることによるアプリケーションのホーム画面への移行を行ってもよい。タッチ・イベント（６０１）に対するリスナーとして、ハンドラ機能は、タッチ・イベントに対応して、アプリケーションに異なるユーザ・インタフェース層へのナビゲーションを行わせることができる。特定の実施形態においては、タッチ・イベント（６０１）が発生したときに、ハンドラ機能がタッチ・イベントに対応する現在のアプリケーション層の判定を行ってもよい。特定の実施形態においては、アプリケーションが、ユーザがナビゲートした層を追跡するナビゲーション履歴を記憶してもよい。特定の実施形態においては、ハンドラ機能が、タッチ・イベントが進む側方フリック・イベントであるかどうかの判定を行ってもよい（６０２）。特定の実施形態においては、タッチ・イベントが進む側方フリック・イベントである場合、かつ、前方ナビゲーション履歴が現在の層の次の層を識別する場合には、ハンドラ機能がアプリケーションに次の層へのナビゲーションを行わせてもよい（６０３）。特定の実施形態においては、ハンドラ機能が、タッチ・イベントが戻る側方フリック・イベントであるかどうかの判定を行ってもよい（６０４）。特定の実施形態においては、タッチ・イベントが戻る側方フリック・イベントである場合、かつ、後方ナビゲーション履歴が現在の層の前の層を識別する場合には、ハンドラ機能がアプリケーションに前の層へのナビゲートを行わせてもよい（６０５）。特定の実施形態においては、ハンドラ機能が、タッチ・イベントが入力デバイス５０３に関連付けられたタップ・イベントであるかどうかの判定を行ってもよい（６０６）。特定の実施形態においては、タッチ・イベントがタップ・イベントである場合、かつ、現在の層がホーム層ではない場合、ハンドラ機能がアプリケーションにホーム層へのナビゲーションを行わせてもよい（６０７）。
【００１９】
さらに、特定の実施形態によって、上記の背面に搭載されたタッチ面を用いたアプリケーションのユーザ・インタフェース層間のナビゲーションができてもよい。例えば、タッチ・イベントのリスナーとして、ハンドラ機能は、タッチ・イベントに対応して、アプリケーションに異なるユーザ・インタフェース層へのナビゲーションを行わせることができる。タッチ・イベントが発生したときに、ハンドラ機能がタッチ・イベントに対応する現在のアプリケーション層の判定を行ってもよい。アプリケーションが、ユーザがナビゲートした層を追跡するナビゲーション履歴を記憶してもよい。ハンドラ機能が、タッチ・イベントが背面に搭載されたタッチ面５０５に関連付けられた上方向のフリック・イベントであるかどうかの判定を行ってもよい。タッチ・イベントが背面に搭載されたタッチ面５０５に関連付けられた上方向のフリック・イベントである場合、かつ、前方ナビゲーション履歴が現在の層の次の層を識別する場合には、ハンドラ機能がアプリケーションに次の層へのナビゲーションを行わせてもよい。ハンドラ機能が、タッチ・イベントが背面に搭載されたタッチ面５０５に関連付けられた下方向のフリック・イベントであるかどうかの判定を行ってもよい。タッチ・イベントが背面に搭載されたタッチ面５０５に関連付けられた下方向のフリック・イベントである場合、かつ、後方ナビゲーション履歴が現在の層の前の層を識別する場合には、ハンドラ機能がアプリケーションに前の層へのナビゲーションを行わせてもよい。ハンドラ機能が、タッチ・イベントが背面に搭載されたタッチ面５０５に関連付けられたタップ・イベントであるかどうかの判定を行ってもよい。タッチ・イベントが背面に搭載されたタッチ面５０５に関連付けられたタップ・イベントである場合、かつ、現在の層がホーム層ではない場合、ハンドラ機能がアプリケーションにホーム層へのナビゲーションを行われてもよい。
【００２０】
上述の前方および後方のジェスチャは、ホーム・コントロール入力と共に、多様なアプリケーションおよびコンピュータ・デバイスに関連して利用することができる。例えば、上述のように、前方および後方のジェスチャを、ホーム・コントロール入力と共に、多様なアプリケーション層のナビゲーションを容易にするために、特別な目的のクライアント・アプリケーションに関連して使用してもよい。かかる実施の形態においては、ホーム入力によってアプリケーションのホームまたはルート層へ戻すナビゲーションが行われる。前方および後方のジェスチャはまた、ホーム・コントロール入力と共に、１つ以上のドメインによって提供される一連のウェブページのナビゲーションを容易にするためにブラウザ・クライアントに関連して使用してもよい。かかる実装においては、ホーム入力によってホーム・ページへ戻すナビゲーションが行われる一方、前方および後方のジェスチャがブラウザ・クライアント・アプリケーションに共通する、対応する前方および後方のナビゲーション機能を実行してもよい。さらに、前方および後方のジェスチャを、ホーム・コントロール入力と共に、オペレーティング・システムのグラフィカル・ユーザ・インタフェース・シェルに関連して使用することができる。かかる実装においては、ホーム入力によってオペレーティング・システムのホーム画面へ戻るナビゲーションが行われる一方、前方および後方のジェスチャがオペレーティング・システム・シェルによって提供される各層にまたがって、対応する前方および後方のナビゲーション機能を実行してもよい。
【００２１】
上述のアプリケーションおよび機能性を、実行されるとプログラム可能なプロセッサに上記の動作を実施させるコンピュータ可読記憶媒体に記憶された一連の命令として実施することができる。携帯型デバイス５００が多様な異なるハードウェアおよびコンピュータ・システムにおいて実施されるのに対して、図７は、多様な特定の実施形態に従う、クライアントまたは携帯型デバイスのコンピューティングプラットホームの一例の主要な構成要素の概略図である。特定の実施形態において、コンピューティングプラットホーム７０２は、コントローラ７０４、メモリ７０６、および入出力サブシステム７１０を備えてもよい。特定の実施形態において、コントローラ７０４は、命令を実行し、コンピューティングプラットホームに関連する動作を行うように構成されている、１つ以上のプロセッサおよび／または１つ以上のマイクロコントローラを備えてもよい。各種実施形態において、コントローラ７０４は、シングル・チップ、マルチ・チップおよび／または１つ以上の集積回路およびプリント回路基板を含むその他の電気部品として実装してもよい。コントローラ７０４は、命令、データ、またはコンピュータ・アドレスの一時的なローカル記憶のためのキャッシュメモリ・ユニットを任意で備えていてもよい。例えば、メモリから読み出した命令を用いて、コントローラ７０４が、コンピューティングプラットホーム７０２の構成要素間の入出力データの受領および処理を制御してもよい。例えば、コントローラ７０４は、１つ以上のプロセッサ、または例えば２Ｄ／３Ｄグラフィックス処理、画像処理、または動画処理などのためのコンピューティングプラットホーム７０２の特定の処理タスク専用の１つ以上のコントローラを備えていてもよい。
【００２２】
コントローラ７０４は、適切なオペレーティング・システムと共に、コンピュータ・コードの形式の命令を実行し、データを生成および使用するように動作する。これらに限定されない例として、オペレーティング・システムは他の適切なオペレーティング・システムのうち、ウィンドウズ（ＷＩＮＤＯＷＳ）（登録商標）、マック（Ｍａｃ）、ユニックス（ＵＮＩＸ）（登録商標）またはリナックス（ＬＩＮＵＸ）（登録商標）、シンビアン（Ｓｙｍｂｉａｎ）、またはアンドロイド（ＡＮＤＲＯＩＤ（登録商標））のオペレーティング・システムであってもよい。オペレーティング・システム、他のコンピュータ・コードおよび／またはデータは、動作可能なようにコントローラ７０４に接続されたメモリ７０６内に物理的に記憶させてもよい。
【００２３】
メモリ７０６は、１つ以上の記憶媒体を含み、通常、コンピューティングプラットホーム７０２が用いるコンピュータ・コード（例えばソフトウェアおよび／またはファームウェア）およびデータを記憶する場所を提供してもよい。例えば、メモリ７０６はＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）および／またはＲＡＭ（Ｒａｎｄｏｍ−Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を含む多様な有形のコンピュータ可読記憶媒体を含んでもよい。当該技術分野において周知のように、ＲＯＭはコントローラ７０４にデータおよび命令を一方向に転送し、ＲＡＭは通常、データおよび命令を双方向に転送するように用いられる。メモリ７０６はまた、コントローラ７０４に双方向に接続された他の適切な形態のメモリのうち、例えばハード・ディスク・ドライブ（ＨＨＤ）、ソリッド・ステート・ドライブ（ＳＳＤ）、フラッシュ・メモリ・カード（例えばセキュア・デジタル・カードすなわちＳＤカード、組み込みマルチ・メディア・カードすなわちｅＭＭＤカード等）などの形態の１つ以上の固定記憶デバイスも含んでいてもよい。情報は、必要に応じて、コンピューティングプラットホーム７０２にロードまたはインストールされた１つ以上の取り外し可能な記憶媒体にも存在してもよい。例えば、数々の適切なメモリ・カード（ＳＤカード等）のうちのいずれかを、一時的または永久的にコンピューティングプラットホーム７０２にロードしてもよい。
【００２４】
入出力サブシステム７１０は、コントローラ７０４に動作可能に接続された１つ以上の入力および出力デバイスを備えていてもよい。例えば、入出力サブシステムは、キーボード、マウス、１つ以上のボタン、サム・ホイール（ｔｈｕｍｂ  ｗｈｅｅｌ）、および／またはディスプレイ（例えば、液晶ディスプレイ（ＬＣＤ）、発光ダイオード（ＬＥＤ）、干渉変調器ディスプレイ（ＩＭＯＤ）、またはその他の適切な表示技術）などを含んでいてもよい。通常、入力デバイスは外部からのデータ、コマンドおよび応答をコンピューティングプラットホーム７０２に転送するように構成されている。ディスプレイは通常、コンピューティングプラットホーム７０２のユーザと携帯型デバイスにおいて動作しているオペレーティング・システムまたはアプリケーション（複数可）との間の使い易いビジュアル・インタフェースを提供するグラフィカル・ユーザ・インタフェース（ＧＵＩ）を表示するように構成されている。通常、ＧＵＩはプログラム、ファイルおよび任意の動作をグラフィック・イメージで表す。動作中、ユーザは関連する機能およびタスクを起動するためにディスプレイ上に表示された多様なグラフィック・イメージを選択して起動することができる。入出力サブシステム７１０はまた、タッチパッドやタッチ・スクリーンなどのタッチ式デバイスも備えていてもよい。タッチパッドは、ユーザのタッチ式入力を検知する表面を備えた入力デバイスである。同様に、タッチ・スクリーンは、ユーザのタッチ入力の存在および位置を検知するディスプレイである。入出力システム７１０はまた、指による２つまたは３つのタッチなどの２つ以上のタッチ入力の存在、位置および移動を識別できる、デュアル・タッチ式またはマルチ・タッチ式ディスプレイまたはタッチパッドを備えていてもよい。
【００２５】
特定の実施形態においては、コンピューティングプラットホーム７０２はさらに、コンピューティングプラットホーム７０２の多様な機能を容易にするために動作可能にコントローラ７０４に接続されたオーディオ・サブシステム７１２、カメラ・サブシステム７１２、無線通信サブシステム７１６、センサ・サブシステム７１８、および／または有線通信サブシステム７２０を備えていてもよい。例えば、スピーカ、マイクロフォン、および音声信号を処理するように構成されたコーデック・モジュールを備えるオーディオ・サブシステム７１２は、音声認識、音声複製、デジタル録音、および電話機能などの音声使用可能機能を可能とするために利用することができる。例えば、光学センサ（例えば電荷結合素子（ＣＣＤ）、または相補型金属酸化膜半導体（ＣＭＯＳ）イメージ・センサ）を備えるカメラ・サブシステム７１２は、写真およびビデオクリップの記録などのカメラ機能を可能とするために利用することができる。例えば、有線通信サブシステム７２０は、ファイル転送のためのユニバーサル・シリアル・バス（ＵＳＢ）ポート、またはローカル・エリア・ネットワーク（ＬＡＮ）への接続のためのイーサネット（登録商標）・ポートを含むことができる。さらに、コンピューティングプラットホーム７０２は、電源７３２によって電力供給させてもよい。
【００２６】
無線通信サブシステム７１６を、例えば、無線ＰＡＮ（ＷＰＡＮ）（例えばブルートゥース（ＢＬＵＥＴＯＯＴＨ）（登録商標）ＷＰＡＮ）、赤外線ＰＡＮ等）、ワイファイ（ＷＩ−ＦＩ）ネットワーク（例えば８０２．１１ａ／ｂ／ｇ／ｎ  ＷＩ−ＦＩネットワーク、８０２．１１ｓメッシュ・ネットワーク等）、ワイマックス（ＷＩ−ＭＡＸ）ネットワーク、携帯電話ネットワーク（例えばグローバル・システム・フォー・モバイル・コミュニケーション（ＧＳＭ）（登録商標）ネットワーク、エンハンス・データ・レート・フォー・ＧＳＭ（登録商標）・エボリューション（ＥＤＧＥ）ネットワーク、ユニバーサル・モバイル・テレコミュニケーション・システム（ＵＭＴＳ）ネットワーク、および／またはロング・ターム・エボリューション（ＬＴＥ）ネットワーク等）などの１つ以上の無線ネットワークにわたって動作するように設計することができる。さらに、無線通信サブシステム７１６は、コンピューティングプラットホーム７０２を他の無線デバイスの基地局として構成できるようなホスティング・プロトコルを備えていてもよい。
【００２７】
センサ・サブシステム７１８は、追加入力を行い、コンピューティングプラットホーム７０２の数々の機能性を可能とするための１つ以上のセンサ・デバイスを備えていてもよい。例えば、センサ・サブシステム７１８は、場所の位置決めのためのＧＰＳセンサ、高度の位置決めのための高度計、携帯式デバイスの方向を判定するためのモーション・センサ、カメラ・サブシステム７１４を用いた撮影機能のための光センサ、気温を測定するための温度センサ、および／または保安用途のための生体認証センサ（指紋リーダ等）を備えていてもよい。他の入出力デバイスは、デバイスの方向を検知するために用いることができる加速度計を備えていてもよい。
【００２８】
特定の実施形態においては、コンピューティングプラットホーム７０２の多様な構成要素が１つ以上のバス（ハードウェアおよび／またはソフトウェア）によって共に動作可能に接続されていてもよい。例えば、これに限定されないが、１つ以上のバスは、アクセラレーテッド・グラフィックス・ポート（ＡＧＰ）またはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ（ＥＩＳＡ）バス、正面側バス（ＦＳＢ）、ハイパー・トランスポート（ＨＴ）相互接続、インダストリー・スタンダード・アーキテクチャ（ＩＳＡ）バス、インフィニバンド相互接続、ロー・ピン・カウント（ｌｏｗ−ｐｉｎ−ｃｏｕｎｔ）（ＬＰＣ）バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、周辺構成要素相互接続（ＰＣＩ）バス、ＰＣＩエクスプレス（ＰＣＩ−Ｘ）バス、シリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）バス、ビデオ・エレクトロニクス・スタンダード・アソシエーション・ローカル（ＶＬＢ）バス、万能非同期送受信機（ＵＡＲＴ）インタフェース、集積回路間（Ｉ２Ｃ）バス、シリアル・ペリフェラル・インタフェース（ＳＰＩ）バス、セキュア・デジタル（ＳＤ）メモリ・インタフェース、マルチ・メディア・カード（ＭＭＣ）メモリ・インタフェース、メモリ・スティック（ＭＳ）メモリ・インタフェース、セキュア・デジタル・インプット・アウトプット（ＳＤＩＯ）インタフェース、マルチチャネル・バッファード・シリアル・ポート（ＭｃＢＳＰ）バス、ユニバーサル・シリアル・バス（ＵＳＢ）、汎用メモリ・コントローラ（ＧＰＭＣ）バス、ＳＤＲＡＭコントローラ（ＳＤＲＣ）バス、汎用入出力（ＧＰＩＯ）バス、セパレート・ビデオ（Ｓ−Ｖｉｄｅｏ）バス、ディスプレイ・シリアル・インタフェース（ＤＳＩ）バス、アドバンスト・マイクロコントローラ・バス・アーキテクチャ（ＡＭＢＡ）バス、またはその他の適切なバス、またはこれらのうちの２以上の組み合わせを含んでいてもよい。
【００２９】
ここで、コンピュータ可読記憶媒体という表現は、１つ以上の、持続性を有し、有形のコンピュータ可読記憶媒体処理構造を含む。例えば、これに限定されないが、コンピュータ可読記憶媒体は、半導体その他の集積回路（ＩＣ）（例えばフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または特定用途向け集積回路（ＡＳＩＣ）等）、ハード・ディスク、ＨＤＤ、ハイブリッド・ハード・ドライブ（ＨＨＤ）、光ディスク、光ディスク・ドライブ（ＯＤＤ）、光磁気ディスク、光磁気ドライブ、フロッピー（登録商標）ディスク、フロッピー（登録商標）ディスク・ドライブ（ＦＤＤ）、磁気テープ、ホログラフィック記憶媒体、半導体ドライブ（ＳＳＤ）、ＲＡＭドライブ、セキュア・デジタル・カード、セキュア・デジタル・ドライブ、マルチ・メディア・カード（ＭＭＣ）、組み込みＭＭＣ（ｅＭＭＣ）カード、またはその他の適切なコンピュータ可読記憶媒体または、適切な場合、これらのうち２以上の組み合わせを含んでいてもよい。ここで、コンピュータ可読記憶媒体という表現には、米国特許法第１０１条に基づく特許権の保護の対象とならない媒体は含まれない。ここで、コンピュータ可読記憶媒体という表現には、信号伝達の一時的な形態（例えば電気的または電磁的な信号伝達それ自体）は、米国特許法第１０１条に基づく特許権の保護の対象とならない限りにおいて含まれない。
【００３０】
本開示は、１つ以上のコンピュータ可読記憶媒体が適切な記憶を実行することを意図する。特定の実施形態において、コンピュータ可読記憶媒体は、コントローラ７０４の１つ以上の部分（例えば１つ以上の内部レジスタまたはキャッシュ等）、メモリ７０５の１つ以上の部分、または適切である場合、これらの組み合わせを実装する。特定の実施形態において、コンピュータ可読記憶媒体は、ＲＡＭまたはＲＯＭを実装する。特定の実施形態において、コンピュータ可読記憶媒体は、揮発性または継続的なメモリを実装する。特定の実施形態において、１つ以上のコンピュータ可読記憶媒体は、ソフトウェアを具現化する。ここで、ソフトウェアという表現は、１つ以上のアプリケーション、バイトコード、１つ以上のコンピュータ・プログラム、１つ以上の実行ファイル、１つ以上の命令、論理回路、マシン・コード、１つ以上のスクリプト、またはソース・コード、および適切であればその逆も含んでいてもよい。特定の実施形態において、ソフトウェアは、１つ以上のアプリケーション・プログラミング・インタフェース（ＡＰＩ）を含む。本開示は、適切なプログラム言語またはプログラム言語の組み合わせで書かれたあるいはその他の方法で表された適切なソフトウェアを意図する。特定の実施形態において、ソフトウェアは、ソース・コードまたはオブジェクト・コードとして表される。特定の実施形態において、ソフトウェアは、例えばＣ、Ｐｅｒｌ、ＪＡＶＡ（登録商標）Ｓｃｒｉｐｔ、またはそれらを適切に拡張したものなどの、高レベルのプログラム言語で表されている。特定の実施形態において、ソフトウェアは、アセンブリ言語（またはマシン・コード）などの低レベルのプログラム言語で表される。特定の実施形態において、ソフトウェアはＪＡＶＡ（登録商標）で表されている。特定の実施形態において、ソフトウェアは、ハイパー・テキスト・マークアップ言語（ＨＴＭＬ）、拡張マークアップ言語（ＸＭＬ）、またはその他の適切なマークアップ言語で表されている。
【００３１】
本開示は、当業者であれば理解できる本明細書に例示する実施形態に対する変更、置き換え、変化、調整および修正を全て包含する。同様に、適切な場合、添付の特許請求の範囲は、当業者であれば理解できる本明細書に例示する実施形態に対する変更、置き換え、変化、調整および修正を全て包含する。
【図１】
2018156680.tif 000003
【図２】
2018156680.tif 000004
【図３Ａ】
2018156680.tif 000005
【図３Ｂ】
2018156680.tif 000006
【図３Ｃ】
2018156680.tif 000007
【図４】
2018156680.tif 000008
【図５】
2018156680.tif 000009
【図５Ａ】
2018156680.tif 000010
【図５Ｂ】
2018156680.tif 000011
【図５Ｃ】
2018156680.tif 000012
【図５Ｄ】
2018156680.tif 000013
【図５Ｅ】
2018156680.tif 000014
【図５Ｆ】
2018156680.tif 000015
【図５Ｇ】
2018156680.tif 000016
【図５Ｈ】
2018156680.tif 000017
【図５Ｉ】
2018156680.tif 000018
【図６】
2018156680.tif 000019
【図７】
2018156680.tif 000020