1つ以上のイベントセンサを有しており、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行するように構成された電子デバイスにおいて、前記複数のビューのうちの1つ以上のビューを表示する工程であって、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する、工程と、1つ以上のイベントを検出する工程と、前記個別のジェスチャレコグナイザを用いて前記1つ以上のイベントの個別のイベントを処理する工程であって、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理する工程と、前記アプリケーション状態に従って1つ以上の値を判定するために前記対応するデリゲートを実行する工程と、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記対応するデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信する工程とを含む、工程と、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行する工程とを有することを特徴とする方法。前記1つ以上のイベントセンサは1つ以上のタッチを検出するように構成されたタッチセンサ面を含み、前記1つ以上のイベントは前記1つ以上のタッチを含み、前記個別のイベントを処理する工程は個別のタッチを処理する工程を含むことを特徴とする請求項1に記載の方法。前記対応するデリゲートにより判定された前記1つ以上の値に従って前記個別のジェスチャレコグナイザにおいて前記個別のタッチを条件付きで受信する工程をさらに有することを特徴とする請求項2に記載の方法。前記個別のタッチを処理する工程は、前記対応するデリゲートにより判定された前記1つ以上の値が所定のタッチ無視基準に合致する場合に、前記個別のジェスチャレコグナイザが前記個別のタッチを無視する工程を含むことを特徴とする請求項2又は3に記載の方法。前記個別のタッチを処理する工程は、前記対応するデリゲートにより判定された前記1つ以上の値が所定のタッチ無視基準に合致する場合に、前記個別のジェスチャレコグナイザが前記個別のタッチを受信することを阻止する工程を含むことを特徴とする請求項2又は3に記載の方法。前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記対応するデリゲートにより前記状態遷移が可能にされたときに可能にする工程を含むことを特徴とする請求項2又は3に記載の方法。前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記対応するデリゲートにより前記状態遷移が可能にされたときに条件付きで可能にする工程を含むことを特徴とする請求項2又は3に記載の方法。前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、第2ジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って前記第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理する工程を含むことを特徴とする請求項2乃至7の何れか1項に記載の方法。前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記個別のジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理する工程を含むことを特徴とする請求項2乃至7の何れか1項に記載の方法。前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含み、前記方法は、前記複数のジェスチャレコグナイザのうちの少なくとも部分集合に別個のデリゲートを割り当てる工程を含むことを特徴とする請求項1乃至9の何れか1項に記載の方法。イベントを検出するための1つ以上のイベントセンサと、1つ以上のプロセッサと、メモリと、前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成された1つ以上のプログラムとを備える電子デバイスであって、前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含み、前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令であって、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のレコグナイザは個別のデリゲートを有する、命令と、前記個別のジェスチャレコグナイザを用いて前記1つ以上のイベントの個別のイベントを処理するための命令であって、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理するための命令と、前記アプリケーション状態に従って1つ以上の値を判定するために前記個別のデリゲートを実行するための命令と、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記個別のデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む、命令と、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令とを有することを特徴とする電子デバイス。1つ以上のイベントセンサを有する電子デバイスの1つ以上のプロセッサによる実行のための1つ以上のプログラムを格納するコンピュータ可読記憶媒体であって、前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含み、前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令であって、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは個別のデリゲートを有する、命令と、1つ以上のイベントを検出するための命令と、前記個別のジェスチャレコグナイザを用いて前記1つ以上のイベントの個別のイベントを処理するための命令であって、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理するための命令と、前記アプリケーション状態に従って1つ以上の値を判定するために前記個別のデリゲートを実行するための命令と、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記個別のデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む、命令と、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令とを有することを特徴とするコンピュータ可読記憶媒体。タッチセンサ面を有しており、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行するように構成された電子デバイスにおいて、前記複数のビューのうちの1つ以上のビューを表示する工程であって、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する、工程と、前記タッチセンサ面において、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有する1つ以上のタッチを検出する工程と、前記1つ以上のタッチの個別のタッチを処理する工程であって、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行する工程と、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理する工程と、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信する工程とを含む、工程と、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行する工程とを有することを特徴とする方法。前記複数のビューは複数のジェスチャレコグナイザを含み、前記方法は、前記複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを割り当てる工程を含み、前記1つ以上のタッチの前記個別のタッチを処理する工程は、前記複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を識別する工程と、割り当てられたデリゲートを有する候補ジェスチャレコグナイザ毎に、前記アプリケーション状態に従って受信タッチ値を取得するために前記割り当てられたデリゲートを実行する工程と、前記取得された受信タッチ値に従って前記候補ジェスチャレコグナイザの部分集合を含む1つ以上の受信ジェスチャレコグナイザを識別する工程と、受信ジェスチャレコグナイザのうちの1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程とを含むことを特徴とする請求項13に記載の方法。前記1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って、デリゲートが割り当てられた個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程と、前記アプリケーション状態に従って1つ以上の値を判定するために前記割り当てられたデリゲートを実行する工程と、前記個別のジェスチャレコグナイザによる前記個別のタッチの処理の結果に従うとともに前記割り当てられたデリゲートにより判定された前記1つ以上の値に従って前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信する工程とを含み、前記方法は、前記タッチのうちの1つ以上に対応する、前記受信ジェスチャレコグナイザのうちの1つ以上から受信された情報に従って前記ソフトウェアアプリケーションを実行する工程を含むことを特徴とする請求項14に記載の方法。前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記割り当てられたデリゲートにより前記状態遷移が可能にされたときに可能にする工程を含むことを特徴とする請求項15に記載の方法。前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記割り当てられたデリゲートにより前記状態遷移が可能にされたときに条件付きで可能にする工程を含むことを特徴とする請求項15に記載の方法。前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、第2ジェスチャレコグナイザに割り当てられた前記デリゲートにより判定された1つ以上の値に従って前記第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理する工程を含むことを特徴とする請求項15乃至17の何れか1項に記載の方法。前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理する工程は、前記個別のジェスチャレコグナイザに割り当てられた前記デリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理する工程を含むことを特徴とする請求項15乃至17の何れか1項に記載の方法。タッチセンサ面と、1つ以上のプロセッサと、メモリと、前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成された1つ以上のプログラムとを備える電子デバイスであって、前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含み、前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令であって、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する、命令と、前記タッチセンサ面において、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有する1つ以上のタッチを検出するための命令と、前記1つ以上のタッチの個別のタッチを処理するための命令であって、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行するための命令と、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理するための命令と、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む、命令と、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令とを有することを特徴とする電子デバイス。タッチセンサ面を有する電子デバイスの1つ以上のプロセッサによる実行のための1つ以上のプログラムを格納するコンピュータ可読記憶媒体であって、前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含み、前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令であって、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する、命令と、前記タッチセンサ面において、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有する1つ以上のタッチを検出するための命令と、前記タッチセンサ面における1つ以上のタッチの個別のタッチを処理するための命令であって、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行するための命令と、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理するための命令と、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む、命令と、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令とを有することを特徴とするコンピュータ可読記憶媒体。タッチセンサ面を有しており、ソフトウェアアプリケーションを実行するように構成された電子デバイスにおいて、前記ソフトウェアアプリケーションの1つ以上のビューを表示する工程であって、前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含み、前記複数のジェスチャレコグナイザは、個別のジェスチャに応答して単一の動作メッセージを送信するように構成された少なくとも1つの離散ジェスチャレコグナイザと、認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成された少なくとも1つの連続ジェスチャレコグナイザとを含む、工程と、1つ以上のタッチを検出する工程と、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理する工程であって、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理する工程と、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信する工程とを含む、工程と、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行する工程とを有することを特徴とする方法。各ジェスチャレコグナイザはジェスチャレコグナイザ状態の集合を有することを特徴とする請求項22に記載の方法。前記離散ジェスチャレコグナイザは、前記離散ジェスチャレコグナイザの初期状態に対応するジェスチャ可能状態と、前記個別のジェスチャの認識に対応するジェスチャ認識済状態と、前記離散ジェスチャレコグナイザが前記1つ以上のタッチを前記個別のジェスチャとして認識することに失敗したことに対応するジェスチャ失敗状態とを含むジェスチャレコグナイザ状態の第1集合を有し、前記連続ジェスチャレコグナイザは、ジェスチャ可能状態と、前記個別のジェスチャの初期認識に対応するジェスチャ開始済状態と、前記個別のタッチの位置の個別の変化に対応するジェスチャ変更済状態と、前記認識された個別のジェスチャの完了に対応するジェスチャ終了済状態と、前記個別のジェスチャの認識の割り込みに対応するジェスチャキャンセル済状態と、前記連続ジェスチャレコグナイザが前記1つ以上のタッチを前記個別のジェスチャとして認識することに失敗したことに対応するジェスチャ失敗状態とを含むジェスチャレコグナイザ状態の第2集合を有することを特徴とする請求項23に記載の方法。前記ジェスチャ認識済状態及び前記ジェスチャ終了済状態は、同一のジェスチャレコグナイザ状態値を有することを特徴とする請求項24に記載の方法。前記ソフトウェアアプリケーションはアプリケーション状態を有し、前記1つ以上の個別の動作メッセージを条件付きで送信する工程は、前記ソフトウェアアプリケーションの前記アプリケーション状態にさらに従って前記1つ以上の個別の動作メッセージを条件付きで送信する工程を含むことを特徴とする請求項22乃至25の何れか1項に記載の方法。前記方法は、前記個別のジェスチャレコグナイザからの追加の情報を要求する工程をさらに有し、前記ソフトウェアアプリケーションを実行する工程は、前記追加の情報にさらに従って前記ソフトウェアアプリケーションを実行する工程を含むことを特徴とする請求項22乃至26の何れか1項に記載の方法。前記追加の情報は、前記個別のジェスチャレコグナイザにおいて処理された個別のタッチの個数及び位置を含むことを特徴とする請求項27に記載の方法。前記少なくとも1つの離散ジェスチャレコグナイザは、タップジェスチャレコグナイザと、スワイプジェスチャレコグナイザとのうちの1つ以上を含み、前記少なくとも1つの連続ジェスチャレコグナイザは、長押しジェスチャレコグナイザと、ピンチジェスチャレコグナイザと、パンジェスチャレコグナイザと、回転ジェスチャレコグナイザと、変換ジェスチャレコグナイザとのうちの1つ以上を含むことを特徴とする請求項22乃至28の何れか1項に記載の方法。前記少なくとも1つの離散ジェスチャレコグナイザは、タップジェスチャレコグナイザと、スワイプジェスチャレコグナイザとを含み、前記少なくとも1つの連続ジェスチャレコグナイザは、長押しジェスチャレコグナイザと、ピンチジェスチャレコグナイザと、パンジェスチャレコグナイザと、回転ジェスチャレコグナイザと、変換ジェスチャレコグナイザとを含むことを特徴とする請求項22乃至29の何れか1項に記載の方法。タッチセンサ面と、1つ以上のプロセッサと、メモリと、前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成された1つ以上のプログラムとを備える電子デバイスであって、前記1つ以上のプログラムは、ソフトウェアアプリケーションを含み、前記ソフトウェアアプリケーションは、前記ソフトウェアアプリケーションの1つ以上のビューを表示するための命令であって、前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含み、前記複数のジェスチャレコグナイザは、個別のジェスチャに応答して単一の動作メッセージを送信するように構成された少なくとも1つの離散ジェスチャレコグナイザと、認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成された少なくとも1つの連続ジェスチャレコグナイザとを含む、命令と、1つ以上のタッチを検出するための命令と、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理するための命令であって、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理するための命令と、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む、命令と、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行するための命令とを有することを特徴とする電子デバイス。タッチセンサ面を有する電子デバイスの1つ以上のプロセッサによる実行のための1つ以上のプログラムを格納するコンピュータ可読記憶媒体であって、前記1つ以上のプログラムは、ソフトウェアアプリケーションを含み、前記ソフトウェアアプリケーションは、前記ソフトウェアアプリケーションの1つ以上のビューを表示するための命令であって、前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含み、前記複数のジェスチャレコグナイザは、個別のジェスチャに応答して単一の動作メッセージを送信するように構成された少なくとも1つの離散ジェスチャレコグナイザと、認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成された少なくとも1つの連続ジェスチャレコグナイザとを含む、命令と、1つ以上のタッチを検出するための命令と、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理するための命令であって、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理するための命令と、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む、命令と、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行するための命令とを有することを特徴とするコンピュータ可読記憶媒体。タッチセンサ面と、1つ以上のプロセッサと、メモリと、1つ以上のプログラムとを備える電子デバイスであって、前記1つ以上のプログラムは前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成され、前記1つ以上のプログラムは請求項1乃至10、13乃至19及び22乃至30の何れか1項に記載の方法を実行するための命令を含むことを特徴とする電子デバイス。1つ以上のプログラムを格納するコンピュータ可読記憶媒体であって、前記1つ以上のプログラムは、タッチセンサ面を有する電子デバイスによって実行される場合に、請求項1乃至10、13乃至19及び22乃至30の何れか1項に記載の方法を実行させる命令を含むことを特徴とするコンピュータ可読記憶媒体。タッチセンサ面と、請求項1乃至10、13乃至19及び22乃至30の何れか1項に記載の方法を実行するための手段とを含むことを特徴とする電子デバイス。タッチセンサ面を有する電子デバイスに用いられる情報処理装置であって、請求項1乃至10、13乃至19及び22乃至30の何れか1項に記載の方法を実行するための手段とを含むことを特徴とする情報処理装置。1つ以上のタッチを受信するように構成されたタッチセンサ面ユニットと、前記タッチセンサ面ユニットに結合された処理ユニットとを備える電子デバイスであって、前記処理ユニットは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行し、前記複数のビューのうちの1つ以上のビューの表示を可能にし、前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有しており、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有し、前記タッチセンサ面において受信された1つ以上のタッチを検出し、前記1つ以上のタッチの個別のタッチを処理し、前記個別のタッチについて、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行し、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理し、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信し、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するように構成されることを特徴とする電子デバイス。前記複数のビューは複数のジェスチャレコグナイザを含み、前記処理ユニットは、前記複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを割り当て、前記1つ以上のタッチの個別のタッチを処理することを、前記複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を識別し、割り当てられたデリゲートを有する候補ジェスチャレコグナイザ毎に、前記アプリケーション状態に従って受信タッチ値を取得するために前記割り当てられたデリゲートを実行し、前記取得された受信タッチ値に従って前記候補ジェスチャレコグナイザの部分集合を含む1つ以上の受信ジェスチャレコグナイザを識別し、受信ジェスチャレコグナイザのうちの1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて前記個別のタッチを処理することによって行うように構成されることを特徴とする請求項37に記載の電子デバイス。前記処理ユニットは、前記1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて前記個別のタッチを処理することを、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って、デリゲートが割り当てられた個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理し、前記アプリケーション状態に従って1つ以上の値を判定するために前記割り当てられたデリゲートを実行し、前記個別のジェスチャレコグナイザによる前記個別のタッチの処理の結果に従うとともに前記割り当てられたデリゲートにより判定された前記1つ以上の値に従って前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信することによって行い、前記タッチのうちの1つ以上に対応する、前記受信ジェスチャレコグナイザのうちの1つ以上から受信された情報に従って前記ソフトウェアアプリケーションを実行するように構成されることを特徴とする請求項38に記載の電子デバイス。前記処理ユニットは、前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理することを、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記割り当てられたデリゲートにより前記状態遷移が可能にされたときに可能にすることによって行われるように構成されることを特徴とする請求項39に記載の電子デバイス。前記処理ユニットは、前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理することを、第2ジェスチャレコグナイザに割り当てられた前記デリゲートにより判定された1つ以上の値に従って前記第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理することによって行うように構成されることを特徴とする請求項39又は40に記載の電子デバイス。前記処理ユニットは、前記個別の受信ジェスチャレコグナイザにおいて前記個別のタッチを処理することを、前記個別のジェスチャレコグナイザに割り当てられた前記デリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理することによって行うように構成されることを特徴とする請求項39又は40に記載の電子デバイス。1つ以上のイベントを検知するように構成された1つ以上のイベント検知ユニットと、前記1つ以上のイベント検知ユニットに結合された処理ユニットとを備える電子デバイスであって、前記処理ユニットは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行し、前記複数のビューのうちの1つ以上のビューの表示を可能にし、前記表示される1つ以上のビューの個別のビューは個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有しており、前記1つ以上のイベント検知ユニットにより1つ以上のイベントを検出し、前記個別のジェスチャレコグナイザを用いて前記1つ以上のイベントの個別のイベントを処理することを、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理し、前記アプリケーション状態に従って1つ以上の値を判定するために前記対応するデリゲートを実行し、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記対応するデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信することによって行い、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するように構成されることを特徴とする電子デバイス。前記1つ以上のイベント検知ユニットは1つ以上のタッチを検出するように構成されたタッチセンサユニットを含み、前記1つ以上のイベントは前記1つ以上のタッチを含み、前記処理ユニットは個別のタッチを処理するように構成されることを特徴とする請求項43に記載の電子デバイス。前記処理ユニットは、前記対応するデリゲートにより判定された前記1つ以上の値に従って前記個別のジェスチャレコグナイザが前記個別のタッチを条件付きで受信することを可能にするように構成されることを特徴とする請求項44に記載の電子デバイス。前記処理ユニットは、前記対応するデリゲートにより判定された前記1つ以上の値が所定のタッチ無視基準に合致する場合に、前記個別のジェスチャレコグナイザが前記個別のタッチを無視することを可能にするように構成されることを特徴とする請求項44又は45に記載の電子デバイス。前記処理ユニットは、前記対応するデリゲートにより判定された前記1つ以上の値が所定のタッチ無視基準に合致する場合に、前記個別のジェスチャレコグナイザが前記個別のタッチを受信することを阻止することによって、前記個別のタッチを処理するように構成されることを特徴とする請求項44又は45に記載の電子デバイス。前記処理ユニットは、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記対応するデリゲートにより前記状態遷移が可能にされたときに可能にすることによって、前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理することを特徴とする請求項44又は45に記載の電子デバイス。前記処理ユニットは、前記検出されたタッチが前記個別のジェスチャ定義に整合している場合に、前記個別のジェスチャレコグナイザにおける対応する状態遷移を、前記対応するデリゲートにより前記状態遷移が可能にされたときに条件付きで可能にすることによって、前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理するように構成されることを特徴とする請求項44又は45に記載の電子デバイス。前記処理ユニットは、第2ジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って前記第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理することによって、前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理するように構成されることを特徴とする請求項44乃至49の何れか1項に記載の電子デバイス。前記処理ユニットは、前記個別のジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて前記個別のタッチを同時に処理することによって、前記個従って、タッチベースのジェスチャ及びイベントだけでなく、他の入力ソースからのジェスチャ及びイベントを認識する総合的なフレームワーク又はメカニズムを有するのが望ましく、これは計算デバイスの全てのアプリケーションプログラムの事実上全ての状況又はモードに容易に適応可能であり、アプリケーションが更新された場合又は新しいアプリケーションが計算デバイスに追加された場合にほとんど又は全く修正を必要としない。上述の欠点に対処するために、一部の実施形態によると、1つ以上のイベントセンサを有しており、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行するように構成された電子デバイスにおいて方法が実行される。前記方法は、前記複数のビューのうちの1つ以上のビューを表示する工程を含む。前記表示される1つ以上のビューの個別のビューは1つ以上のジェスチャレコグナイザを含む。個別のジェスチャレコグナイザは対応するデリゲートを有する。前記方法は、1つ以上のイベントを検出する工程と、前記個別のジェスチャレコグナイザを用いて前記1つ以上のイベントの個別のイベントを処理する工程とを含む。前記個別のイベントの処理は、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理する工程と、前記アプリケーション状態に従って1つ以上の値を判定するために前記個別のジェスチャレコグナイザの前記対応するデリゲートを実行する工程と、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記対応するデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信する工程とを含む。さらに、前記方法は、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行する工程を含む。一部の実施形態によると、電子デバイスは、イベントを検出するための1つ以上のイベントセンサと、1つ以上のプロセッサと、メモリと、前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成された1つ以上のプログラムとを含む。前記1つ以上のプログラムは、複数のビューとアプリケーション状態とを有するソフトウェアアプリケーションを含む。前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令を含む。前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する。前記ソフトウェアアプリケーションは、1つ以上のイベントを検出するための命令と、前記個別のジェスチャレコグナイザを用いて前記検出されたイベントの個別のイベントを処理するための命令とをさらに含む。前記個別のジェスチャイベントの処理のための命令は、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理するための命令と、前記アプリケーション状態に従って1つ以上の値を判定するために前記対応するデリゲートを実行するための命令と、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記対応するデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む。さらに、前記ソフトウェアアプリケーションは、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令を含む。一部の実施形態によると、コンピュータ可読記憶媒体は、イベントを検出するための1つ以上のイベントセンサを有する電子デバイスの1つ以上のプロセッサによる実行のための1つ以上のプログラムを格納する。前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含む。前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令を含む。前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する。前記ソフトウェアアプリケーションは、1つ以上のイベントを検出するための命令と、前記個別のジェスチャレコグナイザを用いて前記検出されたイベントの個別のイベントを処理するための命令を含む。前記個別のイベントの処理のための命令は、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理するための命令と、前記アプリケーション状態に従って1つ以上の値を判定するために前記対応するデリゲートを実行するための命令と、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記対応するデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む。さらに、前記ソフトウェアアプリケーションは、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令を含む。一部の実施形態によると、タッチセンサ面を有しており、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行するように構成された電子デバイスにおいて方法が実行される。前記方法は、前記複数のビューのうちの1つ以上のビューを表示する工程を含む。前記表示される1つ以上のビューの個別のビューは個別のジェスチャレコグナイザを含む。個別のジェスチャレコグナイザは対応するデリゲートを有する。前記方法は、前記タッチセンサ面において、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有する1つ以上のタッチを検出する工程をさらに含む。前記方法は、前記1つ以上のタッチの個別のタッチを処理する工程をさらに含む。前記個別のタッチを処理する工程は、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行する工程と、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理する工程とを含む。前記個別のタッチを処理する工程はまた、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信する工程を含む。さらに、前記方法は、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行する工程を含む。一部の実施形態によると、電子デバイスは、タッチセンサ面と、1つ以上のプロセッサと、メモリと、前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成された1つ以上のプログラムとを含む。前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含む。前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令を含む。前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含む。個別のジェスチャレコグナイザは対応するデリゲートを有する。前記ソフトウェアアプリケーションはまた、前記タッチセンサ面において、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有する1つ以上のタッチを検出するための命令を含む。前記ソフトウェアアプリケーションはさらに、前記1つ以上のタッチの個別のタッチを処理するための命令を含む。前記個別のタッチを処理するための命令は、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行するための命令と、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理するための命令とを含む。前記個別のタッチを処理するための命令はまた、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令を含む。さらに、前記ソフトウェアアプリケーションは、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令を含む。一部の実施形態によると、コンピュータ可読記憶媒体は、タッチセンサ面を有する電子デバイスの1つ以上のプロセッサによる実行のための1つ以上のプログラムを格納する。前記1つ以上のプログラムは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを含む。前記ソフトウェアアプリケーションは、前記複数のビューのうちの1つ以上のビューを表示するための命令を含む。前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含む。個別のジェスチャレコグナイザは対応するデリゲートを有する。前記ソフトウェアアプリケーションはまた、前記タッチセンサ面において、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有する1つ以上のタッチを検出するための命令を含む。前記ソフトウェアアプリケーションはさらに、前記1つ以上のタッチの個別のタッチを処理するための命令を含む。前記個別のタッチを処理するための命令は、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行するための命令と、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理するための命令とを含む。前記個別のタッチを処理するための命令はまた、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信するための命令を含む。さらに、前記ソフトウェアアプリケーションは、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するための命令を含む。一部の実施形態によると、タッチセンサ面を有しており、ソフトウェアアプリケーションを実行するように構成された電子デバイスにおいて方法が実行される。前記方法は、前記ソフトウェアアプリケーションの1つ以上のビューを表示する工程を含む。前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含む。前記複数のジェスチャレコグナイザは少なくとも1つの離散ジェスチャレコグナイザと、少なくとも1つの連続ジェスチャレコグナイザとを含む。前記離散ジェスチャレコグナイザは個別のジェスチャに応答して単一の動作メッセージを送信するように構成され、前記連続ジェスチャレコグナイザは認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成される。前記方法はまた、1つ以上のタッチを検出する工程と、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理する工程とを含む。前記個別のタッチを処理する工程は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理する工程と、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信する工程とを含む、前記方法はさらに、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行する工程を含む。一部の実施形態によると、電子デバイスは、タッチセンサ面と、1つ以上のプロセッサと、メモリと、前記メモリに格納され、前記1つ以上のプロセッサにより実行されるように構成された1つ以上のプログラムとを含む。前記1つ以上のプログラムは、ソフトウェアアプリケーションを含む。前記ソフトウェアアプリケーションは、前記ソフトウェアアプリケーションの1つ以上のビューを表示するための命令を含む。前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含む。前記複数のジェスチャレコグナイザは、少なくとも1つの離散ジェスチャレコグナイザと、少なくとも1つの連続ジェスチャレコグナイザとを含む。少なくとも1つの離散ジェスチャレコグナイザは個別のジェスチャに応答して単一の動作メッセージを送信するように構成され、少なくとも1つの連続ジェスチャレコグナイザは認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成される。前記ソフトウェアアプリケーションはまた、1つ以上のタッチを検出するための命令と、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理するための命令とを含む。個別のタッチの処理のための命令は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理するための命令と、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む。前記ソフトウェアアプリケーションはさらに、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行するための命令を含む。一部の実施形態によると、コンピュータ可読記憶媒体は、タッチセンサ面を有する電子デバイスの1つ以上のプロセッサによる実行のための1つ以上のプログラムを格納する。前記1つ以上のプログラムは、ソフトウェアアプリケーションを含む。前記ソフトウェアアプリケーションは、前記ソフトウェアアプリケーションの1つ以上のビューを表示するための命令を含む。前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含む。前記複数のジェスチャレコグナイザは、少なくとも1つの離散ジェスチャレコグナイザと、少なくとも1つの連続ジェスチャレコグナイザとを含む。少なくとも1つの離散ジェスチャレコグナイザは個別のジェスチャに応答して単一の動作メッセージを送信するように構成され、少なくとも1つの連続ジェスチャレコグナイザは認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成される。前記ソフトウェアアプリケーションはまた、1つ以上のタッチを検出するための命令と、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理するための命令とを含む。前記個別のタッチの処理のための命令は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理するための命令と、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信するための命令とを含む。前記ソフトウェアアプリケーションはさらに、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行するための命令を含む。一部の実施形態によると、電子デバイスは、1つ以上のイベントを検知するように構成された1つ以上のイベント検知ユニットと、前記1つ以上のイベント検知ユニットに結合された処理ユニットとを含む。前記処理ユニットは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行し、前記複数のビューのうちの1つ以上のビューの表示を可能にするように構成される。前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する。前記処理ユニットは、前記1つ以上のイベント検知ユニットにより1つ以上のイベントを検出し、前記個別のジェスチャレコグナイザを用いて前記1つ以上のイベントの個別のイベントを処理することを、前記個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて前記個別のイベントを処理し、前記アプリケーション状態に従って1つ以上の値を判定するために前記対応するデリゲートを実行し、前記個別のジェスチャレコグナイザによる前記個別のイベントの処理の結果に従うとともに前記対応するデリゲートにより判定された前記1つ以上の値に従って、前記個別のイベントに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信することによって行うように構成される。前記処理ユニットは、前記個別のイベントに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するように構成される。一部の実施形態によると、電子デバイスは、1つ以上のタッチを受信するように構成されたタッチセンサ面ユニットと、前記タッチセンサ面ユニットに結合された処理ユニットとを含む。前記処理ユニットは、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを実行し、前記複数のビューのうちの1つ以上のビューの表示を可能にするように構成される。前記表示される1つ以上のビューの個別のビューは1つ以上の個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する。前記処理ユニットは、前記表示されたビューのうちの1つ以上のビューの範囲に入るタッチ位置をそれぞれが有し、前記タッチセンサ面において受信された1つ以上のタッチを検出するように構成される。前記処理ユニットは、前記1つ以上のタッチの個別のタッチを処理することを、前記アプリケーション状態に従って受信タッチ値を取得するために前記個別のジェスチャレコグナイザに対応する前記デリゲートを実行し、前記受信タッチ値が所定の基準を満たす場合に前記個別のジェスチャレコグナイザにおいて前記個別のタッチを処理し、前記個別のタッチに対応する情報を前記ソフトウェアアプリケーションに条件付きで送信することによって行うように構成される。前記処理ユニットは、前記個別のタッチに対応する、前記個別のジェスチャレコグナイザから受信された情報に従って前記ソフトウェアアプリケーションを実行するように構成される。一部の実施形態によると、電子デバイスは、1つ以上のタッチを受信するように構成されたタッチセンサ面ユニットと、前記タッチセンサ面ユニットに結合された処理ユニットとを含む。前記処理ユニットは、ソフトウェアアプリケーションを実行し、前記ソフトウェアアプリケーションの1つ以上のビューの表示を可能にするように構成される。前記表示される1つ以上のビューは複数のジェスチャレコグナイザを含み、前記複数のジェスチャレコグナイザは、少なくとも1つの離散ジェスチャレコグナイザと、少なくとも1つの連続ジェスチャレコグナイザとを含む。少なくとも1つの離散ジェスチャレコグナイザは個別のジェスチャに応答して単一の動作メッセージを送信するように構成され、少なくとも1つの連続ジェスチャレコグナイザは認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成される。前記処理ユニットは、前記タッチセンサ面ユニットで受信された1つ以上のタッチを検出し、前記ジェスチャレコグナイザのうちの1つ以上を使用しての前記タッチのそれぞれを処理するように構成される。前記処理ユニットは、個別のタッチを処理することを、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って前記個別のジェスチャレコグナイザにおいて個別のタッチを処理し、前記個別のジェスチャレコグナイザにおける前記個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージを前記ソフトウェアアプリケーションに条件付きで送信することによって行うように構成される。前記処理ユニットは、前記タッチの1つ以上に対応する前記ジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従って前記ソフトウェアアプリケーションを実行するように構成される。図面を通じて、同様の参照符号は対応する部分を示す。以下、実施形態を詳細に参照する。実施形態の例を添付の図面に示す。以下の詳細な説明において、本発明を完全な理解を提供するために多くの特定の詳細が説明される。しかし、本発明は、これらの特定の詳細を含まずに実施されてもよいことが当業者には明らかであるだろう。他の例において、実施形態の態様を不必要に曖昧にしないために、周知の方法、手順、コンポーネント、回路及びネットワークについては詳細に記載していない。種々の要素を記載するために第1、第2などの用語が本明細書において使用されるが、これらの要素はこれらの用語により限定されるべきではないことが理解されるだろう。これらの用語は、1つの要素を別の要素と区別するためだけに使用される。例えば本発明の範囲から逸脱せずに、第1接触が第2接触と呼ばれてもよく、同様に第2接触が第1接触と呼ばれてもよい。第1接触及び第2接触は両方とも接触であるが同一の接触ではない。本明細書において本発明の説明に使用される専門用語は、特定の実施形態を説明するためのものであり、本発明を限定することを意図しない。本発明の説明及び添付の特許請求の範囲において使用されるように、文脈で別段の明記が無い限り、単数形a、an及びtheは複数形を含むことを意図する。本明細書で使用されるような及び/又はという用語は、列挙された関連する項目のうちの1つ以上のものの任意且つ全ての可能な組み合わせを参照し、包含することが理解されるだろう。備える及び/又は備えているという用語は、本明細書において使用される場合に、規定された特徴、数字、ステップ、動作、要素及び/又はコンポーネントの存在を特定するが、1つ以上の他の特徴、数字、ステップ、動作、要素、コンポーネント及び/又はこれらのグループの存在又は追加を除外しないことがさらに理解されるだろう。本明細書で使用されるように、ならばという用語は、状況に応じて場合に又は時に又は判定したことに応答して又は検出したことに応答してを意味すると解釈される。同様に、判定されたならば又は[規定された状態又はイベント]が検出されたならばという句は、状況に応じて判定すると又は判定したことに応答して又は規定された状態又はイベントを検出した時に又は規定された状態又はイベントを検出したことに応答してを意味すると解釈される。本明細書で使用されるように、イベントという用語は、デバイスの1つ以上センサにより検出された入力を示す。特に、イベントという用語はタッチセンサ面におけるタッチを含む。イベントは1つ以上のサブイベントを含む。サブイベントは典型的に、イベントに対する変更を示す例えば、タッチのタッチダウン、タッチムーブ及びリフトオフはサブイベントでありうる。1つ以上のサブイベントのシーケンスにおけるサブイベントは、とりわけキー押下、キー押下保持、キー押下解放、ボタン押下、ボタン押下保持、ボタン押下解放、ジョイスティック移動、マウス移動、マウスボタン押下、マウスボタン解放、ペンスタイラスタッチ、ペンスタイラス移動、ペンスタイラス解放、音声命令、検出された眼球運動、バイオメトリック入力及び検出されたユーザの生理学的変化を含むがこれらに限定されない多くの形態を含む。イベントは単一のサブイベント例えば、デバイスの横方向の短い動きを含みうるので、本明細書で使用されるサブイベントという用語はイベントも示す。本明細書で使用されるように、イベントレコグナイザ及びジェスチャレコグナイザという用語は、ジェスチャ又は他のイベント例えばデバイスの動きを認識できるレコグナイザを示すために交換可能に使用される。上述したように、入力デバイスとしてタッチセンサ面を有する一部のデバイスにおいて、タッチベースのジェスチャの第1集合例えば、タップ、ダブルタップ、横スワイプ、縦スワイプの2つ以上は、特定の状況例えば、第1アプリケーションの特定のモードにおいて適切な入力として認識され、タッチベースのジェスチャの他の異なる集合は、他の状況例えば、異なるアプリケーション及び/又は第1アプリケーション内の異なるモード又は状況において適切な入力として認識される。さらに、2つ以上の適切な入力又はジェスチャは、互いに干渉するか又は矛盾しうる例えば、シングルタップを検出した後に、シングルタップを完全なシングルタップジェスチャとして認識するか又はダブルタップジェスチャの一部として認識するかを決定する必要がある。その結果、タッチベースのジェスチャを認識し、それに応答するのに必要とされるソフトウェア及びロジックは複雑になる可能性があり、アプリケーションが更新される度又は新しいアプリケーションが計算デバイスに追加される度に修正を必要としうる。タッチセンサ面を有するデバイスで実行するアプリケーションを制御するためにタッチベースのジェスチャを使用する場合に、タッチは時間的側面及び空間的側面の両方を有する。フェーズと呼ばれる時間的側面は、いつタッチが始まったか、それが移動しているか又は静止しているか、並びにいつそれが終了したか、すなわちいつ指が画面から持ち上げられたかを示す。タッチの空間的側面は、タッチが発生したビュー又はユーザインタフェースウィンドウの集合である。タッチが検出されるビュー又はウィンドウは、ビュー階層のプログラムレベルに対応する。例えば、タッチが検出される最下位レベルのビューはヒットビューと呼ばれ、適切な入力として認識されるイベントの集合は、タッチベースのジェスチャを開始する最初のタッチのヒットビューに少なくとも部分的に基づいて判定されうる。図1A及び図1Bは、一部の実施形態に係る電子デバイス102、104の種々の実施形態を示すブロック図である。電子デバイス102又は104は、デスクトップコンピュータシステム、ラップトップコンピュータシステム、ネットブックコンピュータシステム、移動体電話機、スマートフォン、携帯情報端末又はナビゲーションシステムを含むがこれらに限定されない任意の電子デバイスであってもよい。電子デバイスはまた、ユーザインタフェースを提示するように構成されたタッチスクリーンディスプレイ例えば、図1Bのタッチセンサディスプレイ156を有するポータブル電子デバイス、ユーザインタフェースを提示するように構成されたタッチスクリーンディスプレイを含むコンピュータ、タッチセンサ面とユーザインタフェースを提示するように構成されたディスプレイとを有するコンピュータ、若しくはコンシューマ電子デバイス、移動体電話機、ビデオゲームシステム、電子音楽プレーヤ、タブレットPC、電子書籍読書システム、電子書籍、PDA、電子オーガナイザ、電子メールデバイス、ラップトップ、ネットブック又は他のコンピュータ、キオスクコンピュータ、自動販売機、スマート機器等を含むがこれらに限定されない任意の他の形態の計算デバイスであってもよい。電子デバイス102又は104はユーザインタフェース113を含む。一部の実施形態において、電子デバイス104は、タッチスクリーンディスプレイを含む。これらの実施形態において、ユーザインタフェース113は、電子デバイス102及び104と相互作用するためにユーザにより使用されるオンスクリーンキーボード不図示を含みうる。これに代えて、キーボードは電子デバイス104又は電子デバイス102から分離した別個のものであってもよい。例えばキーボードは、電子デバイス102又は104に結合された有線又は無線キーボードでありうる。一部の実施形態において、電子デバイス102は、電子デバイス102に結合された、ディスプレイ126と1つ以上の入力デバイス128例えば、キーボード、マウス、トラックボール、マイク、物理ボタン群、タッチパッド等とを含む。これらの実施形態において、入力デバイス128のうちの1つ以上は、場合によっては電子デバイス102から分離した別個のものであってもよい。例えば、1つ以上の入力デバイスは、場合によっては電子デバイスから分離してもよいキーボード、マウス、トラックパッド、トラックボール及び電子ペンのうちの1つ以上を含みうる。オプションとして、デバイス102又は104は、1つ以上の加速度計、ジャイロスコープ、GPSシステム、スピーカ、赤外線IRセンサ、バイオメトリックセンサ、カメラ等の1つ以上のセンサ130を含んでもよい。なお、入力デバイス128又はセンサ130である種々の例示的なデバイスの上記説明は、本明細書で説明する実施形態の動作に重要なものではなく、本明細書で入力デバイスとして説明される任意の入力デバイス又はセンサデバイスはセンサとして同様に適切に説明され、センサとして説明される任意の入力デバイス又はセンサデバイスは入力デバイスとして同様に適切に説明される。一部の実施形態において、1つ以上のセンサ130により生成された信号はイベントを検出する入力ソースとして使用される。一部の実施形態において、電子デバイス104は、電子デバイス104に結合された、タッチセンサディスプレイ156すなわち、タッチセンサ面を有するディスプレイと、1つ以上の入力デバイス128とを含む。一部の実施形態において、タッチセンサディスプレイ156は、2つ以上の別個の同時又は部分的に同時のタッチを検出する機能を有し、これらの実施形態において、ディスプレイ156は、本明細書においてマルチタッチディスプレイ又はマルチタッチセンサディスプレイと呼ばれる場合もある。本明細書で説明する電子デバイス102又は104の一部の実施形態において、入力デバイス128は電子デバイス102又は104に配置される。他の実施形態において、入力デバイス128のうちの1つ以上は、電子デバイス102又は104から分離した別個のものであり、例えば入力デバイス128のうちの1つ以上は、ケーブル例えば、USBケーブル又は無線接続例えば、Bluetooth登録商標接続により電子デバイス102又は104に結合されうる。入力デバイス128を使用する場合に、又は電子デバイス104のタッチセンサディスプレイ156においてタッチベースのジェスチャを実行する場合に、ユーザは電子デバイス102又は104の1つ以上のCPU110により処理されるサブイベントのシーケンスを生成する。一部の実施形態において、電子デバイス102又は104の1つ以上のCPU110は、イベントを認識するためにサブイベントのシーケンスを処理する。電子デバイス102又は104は典型的に、1つ以上のシングルコア又はマルチコアプロセッシングユニットCPU又はCPU群110だけでなく、1つ以上のネットワーク又は他の通信インタフェース112とをそれぞれ含む。電子デバイス102又は104は、メモリ111と、コンポーネントを相互接続するための1つ以上の通信バス115とをそれぞれ含む。通信バス115は、本明細書では不図示のシステムコンポーネントを相互接続し、これらの間の通信を制御するチップセットと呼ばれる場合もある回路構成を含む。上記で簡単に説明したように、電子デバイス102又は104は、ディスプレイ例えば、ディスプレイ126又はタッチセンサディスプレイ156を含むユーザインタフェース113を含む。さらに、電子デバイス102又は104は典型的に、入力デバイス128例えば、キーボード、マウス、タッチセンサ面、キーパッド等を含む。一部の実施形態において、入力デバイス128はオンスクリーン入力デバイス例えば、表示デバイスのタッチセンサ面を含む。メモリ111は、DRAM、SRAM、DDRRAM又は他のランダムアクセス固体メモリデバイス等の高速ランダムアクセスメモリを含んでもよく、1つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス又は他の不揮発性固体記憶デバイス等の不揮発性メモリを含んでもよい。メモリ111は、場合によってはCPU群110から離れて配置された1つ以上の記憶デバイスを含みうる。メモリ111又はこれに代えてメモリ111内の不揮発性メモリデバイス群は、コンピュータ可読記憶媒体を含む。一部の実施形態において、電子デバイス102又は104のメモリ111又はメモリ111のコンピュータ可読記憶媒体は、以下のプログラム、モジュール及びデータ構造、若しくはこれらの部分集合を格納する。●種々の基本システムサービスを処理し、ハードウェア依存のタスクを実行するプロシージャを含むオペレーティングシステム118。●1つ以上の個別の通信インタフェース112有線又は無線と、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク及びメトロポリタンエリアネットワーク等の1つ以上の通信ネットワークとを介して電子デバイス102又は104を他のデバイスにそれぞれ接続するために使用される通信モジュール120。●ユーザインタフェースオブジェクトを含むユーザインタフェースをディスプレイ126又はタッチセンサディスプレイ156に表示するために使用されるユーザインタフェースモジュール122。●処理例えば、ヒットビュー判定、スレッド管理及び/又はイベント監視等を制御するために使用される制御アプリケーション124。一部の実施形態において、制御アプリケーション124はランタイムアプリケーションを含む。他の実施形態において、ランタイムアプリケーションは制御アプリケーション124を含む。●オペレーティングシステム118内の種々の別の実施形態において又はアプリケーションソフトウェア132において実装されうるイベント配信システム130。しかし、一部の実施形態において、イベント配信システム130の一部の態様はオペレーティングシステム118において実装され、他の態様例えば、イベントハンドラの少なくとも部分集合はアプリケーションソフトウェア132において実装される。●1つ以上のソフトウェアアプリケーション例えば、電子メールアプリケーション、ウェブブラウザアプリケーション、テキストメッセージングアプリケーション等を含むアプリケーションソフトウェア132。各ソフトウェアアプリケーションは典型的に、少なくとも実行時にソフトウェアアプリケーション及びそのコンポーネント例えば、ジェスチャレコグナイザ及びデリゲートの状態を示すアプリケーション状態を有する。以下に説明するアプリケーション内部状態317図3Bを参照。●ソフトウェアアプリケーション及びこれらのコンポーネント例えば、ジェスチャレコグナイザ及びデリゲートの状態を示すアプリケーション状態と、タッチセンサディスプレイ156又はディスプレイ126の種々の領域を占有するアプリケーション、ビュー又は他の情報を示す表示状態と、デバイスの種々のセンサ130、入力デバイス128及び/又はタッチセンサディスプレイ156から取得された情報を含むセンサ状態と、デバイスの位置及び/又は姿勢に関する位置情報とのうちの1つ以上を含むデバイス/グローバル内部状態134。上記の識別された要素のぞれぞれは、上述したメモリデバイスの1つ以上に格納されてもよく、本明細書で説明する機能を実行する命令の集合に対応する。命令の集合は、1つ以上のプロセッサ例えば、1つ以上のCPU110により実行されうる。上記の識別されたモジュール又はプログラムすなわち、命令の集合は、別個のソフトウェアプログラム、プロシージャ又はモジュールとして実装される必要がないので、これらのモジュールの種々の部分集合は、種々の実施形態において組み合わされうるか又は他のように再構成されうる。一部の実施形態において、メモリ111は、上記で識別されたモジュール及びデータ構造の部分集合を格納してもよい。さらに、メモリ111は、上述されていない追加のモジュール及びデータ構造を格納してもよい。図2は、本発明の一部の実施形態に係る例示的な電子デバイス又は装置例えば、デバイス102又は104の入出力処理スタック200の図である。デバイスのハードウェア例えば、電子回路構成212は、入出力処理スタック200のベースレベルにある。ハードウェア212は、図1A及び/又は図1Bに示されたコンポーネント等の種々のハードウェアインタフェースコンポーネントを含む。ハードウェア212は、上述のセンサ130のうちの1つ以上も含みうる。入出力処理スタック200の他の全ての要素132、204~210は、ハードウェア212から受信した入力を処理し、ハードウェアユーザインタフェース例えば、ディスプレイ、スピーカ、デバイス振動アクチュエータのうちの1つ以上を介して提示される種々の出力を生成するソフトウェアプロシージャ又はソフトウェアプロシージャの一部である。ドライバ又はドライバの集合210はハードウェア212と通信する。ドライバ210は、ハードウェア212から入力データを受信し、受信した入力データを処理する。コアオペレーティングシステムOS208はドライバ群210と通信できる。コアOS208は、ドライバ群210から受信した入力生データを処理する。一部の実施形態において、ドライバ210はコアOS208の一部であるとみなされうる。OSアプリケーションプログラミングインタフェースOSAPIの集合206は、コアOS208と通信するソフトウェアプロシージャである。一部の実施形態において、API206は、デバイスのオペレーティングシステムに含まれるが、コアOS208よりも上のレベルにある。API206は、本明細書で説明する電子デバイス又は装置で実行するアプリケーションにより使用されるように設計される。ユーザインタフェースUIAPI204はOSAPI206を利用できる。デバイスで実行するアプリケーションソフトウェアアプリケーション132は、ユーザと通信するためにUIAPI204を利用できる。続いて、UIAPI204は、下位レベルの要素と通信し、最終的に、例えばマルチタッチディスプレイ156である種々のユーザインタフェースハードウェアと通信する。入出力処理スタック200の各層は自身よりも下の層を利用できるが、これは必ずしも必要とされない。例えば、一部の実施形態において、アプリケーション132はOSAPI206と通信することもある。一般に、OSAPI層206以上の層は、プライベートであるとみなされるので、コアOS208、ドライバ群210又はハードウェア212に直接にアクセスしなくてもよい。層内のアプリケーション132及びUIAPI204は、通常、OSAPI206を直接に呼び出し、続いて、OSAPI206は、コアOS208、ドライバ群210及びハードウェア212の層にアクセスする。別のように示すと、電子デバイス102又は104の1つ以上のハードウェア要素212と、例えば図2に示すドライバ群210、図2に示すコアOSオペレーティングシステム208、図2に示すオペレーティングシステムAPIソフトウェア206及び図2に示すアプリケーションユーザインタフェースAPIソフトウェア204のような、デバイスで実行するソフトウェアとは、入力デバイス群128及び/又はタッチセンサディスプレイ156のうちの1つ以上において、ジェスチャのサブイベントに対応しうる入力イベントを検出し、アプリケーション132に配信されるイベントに入力イベントが対応するか及びいつ対応するかを判定するために現在アクティブであるイベントレコグナイザの集合により使用されるデバイス102又は104のメモリに格納される種々のデータ構造を生成又は更新する。イベント認識の方法、装置及びコンピュータプログラムの実施形態について、以下にさらに詳細に説明する。図3Aは、この例では最も外側のビュー302に表示された探索プログラムである例示的なビュー階層300を示す。最も外側のビュー302は一般に、ユーザが直接に相互作用しうるユーザインタフェース全体を包含し、例えば以下のような従属ビューを含む。●探索結果をグループ化し、縦方向にスクロール可能である探索結果パネル304。●テキスト入力を受け付ける探索フィールド306。●迅速なアクセスのためにアプリケーションをグループ化するホーム列310。この例において、各従属ビューは下位レベルの従属ビューを含む。他の例において、階層300におけるビューレベルの個数は、階層の相異なる分岐において異なってもよく、1つ以上の従属ビューは下位レベルの従属ビューを有し、1つ以上の他の従属ビューはそのような下位レベルの従属ビューを全く有さない。図3Aに示す例を引き続き参照すると、探索結果パネル304は、探索結果毎に分離したパネル304に従属する従属ビュー305を含む。本明細書において、この例は、地図ビュー305と呼ばれる従属ビューにおける1つの探索結果を示す。探索フィールド306は、本明細書でコンテンツクリアアイコンビュー307と呼ばれる従属ビューを含み、これは、ユーザがビュー307のコンテンツクリアアイコンに対して特定の動作例えば、シングルタッチジェスチャ又はシングルタップジェスチャを実行した場合に探索フィールドのコンテンツをクリアする。ホーム列310は、連絡先アプリケーション、電子メールアプリケーション、ウェブブラウザ及びiPod登録商標ミュージックインタフェースにそれぞれ対応する従属ビュー310-1、310-2、310-3及び310-4を含む。タッチサブイベント301-1は、最も外側のビュー302において表現される。タッチサブイベント301-1の位置が探索結果パネル304及び地図ビュー305の両方の上にあると仮定すると、タッチサブイベントは、それぞれ301-2及び301-3としてもこれらのビュー上にさらに表現される。タッチサブイベントの能動的関与ビューは、ビュー探索結果パネル304、地図ビュー305及び最も外側のビュー302を含む。図3B及び図3Cを参照して、サブイベント配信及び能動的関与ビューに関する追加の情報を以下に提供する。ビュー及び対応するプログラムレベルはネストされうる。言い換えると、ビューは他のビューを含みうる。従って、第1ビューに関連するソフトウェア要素群例えば、イベントレコグナイザは、第1ビュー内のビューに関連する1つ以上のソフトウェア要素を含むか又はそれにリンクされうる。アプリケーションに関連するビューもあれば、グラフィカルユーザインタフェース、ウィンドウマネージャ等の上位レベルのOS要素に関連するビューもある。図3Bは、一部の実施形態に係るイベント処理のための例示的なコンポーネント例えば、イベント処理コンポーネント390を示すブロック図である。一部の実施形態において、図1A及び図1Bのメモリ111は、例えば、オペレーティングシステム118におけるイベントレコグナイザグローバルメソッド311と、個別のアプリケーション132-1とを含む。一部の実施形態において、イベントレコグナイザグローバルメソッド311は、イベントモニタ312と、ヒットビュー判定モジュール313と、アクティブイベントレコグナイザ判定モジュール314と、イベントディスパッチャモジュール315とを含む。一部の実施形態において、イベントレコグナイザグローバルメソッド311はイベント配信システム130内に配置される。一部の実施形態において、イベントレコグナイザグローバルメソッド311はオペレーティングシステム118において実装される。これに代えて、イベントレコグナイザグローバルメソッド311はアプリケーション132-1において実装される。さらに他の実施形態において、イベントレコグナイザグローバルメソッド311は、スタンドアロンモジュール又はメモリ111に格納された別のモジュール例えば、接触/動作モジュール不図示の一部として実装される。イベントモニタ312は、センサ130、タッチセンサディスプレイ156及び/又は入力デバイス128からイベント情報を受信する。イベント情報は、イベント例えば、マルチタッチジェスチャ若しくはデバイス102又は104の動きの一部であるタッチセンサディスプレイ156におけるユーザタッチ及び/又はサブイベント例えば、タッチセンサディスプレイ156にわたるタッチの移動に関する情報を含む。例えば、タッチイベントについてのイベント情報は、タッチの位置及びタイムスタンプのうちの1つ以上を含む。同様に、スワイプイベントについてのイベント情報は、スワイプの位置、タイムスタンプ、方向及び速度のうちの2つ以上を含む。センサ130、タッチセンサディスプレイ156及び入力デバイス128は、イベント及びサブイベント情報をイベントモニタ312に直接又は周辺インタフェースを介して送信し、イベントモニタ312はイベント情報を読み出し、格納する。センサ130は、近接センサ、加速度計群、ジャイロスコープ、マイク及びビデオカメラのうちの1つ以上を含む。一部の実施形態において、センサ130は、入力デバイス128及び/又はタッチセンサディスプレイ156も含む。一部の実施形態において、イベントモニタ312は、所定の間隔で、センサ130及び/又は周辺インタフェースに要求を送信する。これに応答して、センサ130及び/又は周辺インタフェースはイベント情報を送信する。他の実施形態において、センサ130及び周辺インタフェースは、重大イベント例えば、所定の雑音閾値を超え且つ/又は所定の期間よりも長い期間の入力の受信があった場合にのみイベント情報を送信する。イベントモニタ312は、イベント情報を受信し、イベント情報を配信する先のアプリケーション132-1及びアプリケーション132-1のアプリケーションビュー316-2を判定する。一部の実施形態において、イベントレコグナイザグローバルメソッド311は、ヒットビュー判定モジュール313及び/又はアクティブイベントレコグナイザ判定モジュール314も含む。ヒットビュー判定モジュール313は、タッチセンサディスプレイ156が2つ以上のビューを表示する場合にイベント又はサブイベントが行われた1つ以上のビュー内の位置を判定するためのソフトウェアプロシージャを提供する。ビューは、ユーザがディスプレイ上で見られる制御及び他の要素から構成される。アプリケーション132-1に関連するユーザインタフェースの別の態様は、本明細書においてアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれることもあるセットビュー316であり、このビューにおいて、情報が表示され、タッチベースのジェスチャが発生する。タッチが検出される各アプリケーションのアプリケーションビューは、アプリケーションのビュー階層内の特定のビューに対応する。例えば、タッチが検出される最下位レベルのビューはヒットビューと呼ばれてもよく、適切な入力として認識されるイベントの集合は、タッチベースのジェスチャを開始する最初のタッチのヒットビューに少なくとも部分的に基づいて判定されうる。ヒットビュー判定モジュール313は、イベント及び/又はサブイベントに関連する情報を受信する。アプリケーションが階層に編成された複数のビューを有する場合に、ヒットビュー判定モジュール313は、イベント又はサブイベントを処理すべき階層の最下位のビューとしてヒットビューを識別する。ほとんどの状況において、ヒットビューは、開始イベント又はサブイベントすなわち、ジェスチャを形成するイベント及び/又はサブイベントのシーケンスの最初のイベント又はサブイベントが発生する最下位レベルのビューである。ヒットビューがヒットビュー判定モジュールにより識別されると、ヒットビューは典型的に、ヒットビューとして識別された同一のタッチ又は入力ソースに関する全てのイベント及び/又はサブイベントを受信する。アクティブイベントレコグナイザ判定モジュール314は、イベント及び/又はサブイベントの特定のシーケンスを受信すべきであるビュー階層内の1つ以上のビューを判定する。一部の適用状況において、アクティブイベントレコグナイザ判定モジュール314は、ヒットビューのみがイベント及び/又はサブイベントの特定のシーケンスを受信すべきであることを判定する。他の適用状況において、アクティブイベントレコグナイザ判定モジュール314は、イベント又はサブイベントの物理的な位置を含む全てのビューが能動的関与ビューであることを判定し、それ故、全ての能動的関与ビューがイベント及び/又はサブイベントの特定のシーケンスを受信すべきであることを判定する。他の適用状況において、タッチイベント及び/又はサブイベントが1つの特定のビューに関連する領域に全体的に制限されるとしても、階層の上位レベルのビューは、能動的関与ビューとして依然として存在する。イベントディスパッチャモジュール315は、イベント情報を本明細書ではジェスチャレコグナイザとも呼ばれるイベントレコグナイザ例えば、イベントレコグナイザ320-1に振り分ける。アクティブイベントレコグナイザ判定モジュール314を含む実施形態において、イベントディスパッチャモジュール315は、アクティブイベントレコグナイザ判定モジュール314により判定されたイベントレコグナイザにイベント情報を配信する。一部の実施形態において、イベントディスパッチャモジュール315はイベント情報をイベントキューに格納し、イベント情報は個別のイベントレコグナイザ320又は個別のイベントレコグナイザ320のイベント受信部331により読み出される。一部の実施形態において、アプリケーション132-1は、アプリケーションがアクティブであるか又は実行中の場合にタッチセンサディスプレイ156に表示される現在のアプリケーションビュー群を示すアプリケーション内部状態317を含む。一部の実施形態において、デバイス/グローバル内部状態134は、現在アクティブであるアプリケーション群を判定するためにイベントレコグナイザグローバルメソッド311により使用され、アプリケーション内部状態317は、イベント情報を配信する先のアプリケーションビュー316を判定するためにイベントレコグナイザグローバルメソッド311により使用される。一部の実施形態において、アプリケーション内部状態317は、アプリケーション132-1が実行を再開する場合に使用される再開情報と、アプリケーション132-1により表示中の情報を示すか又は表示の準備が整っている情報を示すユーザインタフェース状態情報と、ユーザがアプリケーション132-1の前の状態又はビューに戻ることを可能にする状態キューと、ユーザにより行われた前の動作のリドゥ/アンドゥキューとのうちの1つ以上のような追加の情報例えば、図3Cの344を含む。一部の実施形態において、アプリケーション内部状態317は、コンテキスト情報/テキスト及びメタデータ318をさらに含む。一部の実施形態において、アプリケーション132-1は1つ以上のアプリケーションビュー316を含み、各アプリケーションビューは、アプリケーションのユーザインタフェースの個別のビュー内で発生するタッチイベントを処理するための命令を含む。アプリケーション132-1の少なくとも1つのアプリケーションビュー316は、1つ以上のイベントレコグナイザ320と1つ以上のイベントハンドラ322とを含む。典型的に、個別のアプリケーションビュー316は、複数のイベントレコグナイザ320と複数のイベントハンドラ322とを含む。他の実施形態において、イベントレコグナイザ320のうちの1つ以上は、ユーザインタフェースキット不図示又はアプリケーション132-1がメソッド及び他の属性を継承する上位レベルのオブジェクトのような、分離したモジュールの一部である。一部の実施形態において、個別のアプリケーションビュー316は、データ更新部、オブジェクト更新部、GUI更新部及び/又はイベントデータ受信部のうちの1つ以上も含む。個別のイベントレコグナイザ320-1は、イベントディスパッチャモジュール315からイベント情報を受信し、イベント情報からイベントを識別する。イベントレコグナイザ320-1は、イベント受信部331とイベント比較部332とを含む。イベント情報は、イベント例えば、タッチ又はサブイベント例えば、タッチの移動に関する情報を含む。イベント又はサブイベントに依存して、イベント情報は、イベント又はサブイベントの位置等の追加の情報も含む。イベント又はサブイベントがタッチの動きに関係する場合に、イベント情報は、サブイベントの速度及び方向も含んでもよい。一部の実施形態において、イベントは1つの方向から別の方向例えば、縦長方向から横長方向又はその逆へのデバイスの回転を含み、イベント情報は、デバイスの現在のデバイスの姿勢とも呼ばれる方向に関する対応する情報を含む。イベント比較部332は、イベント情報を本明細書ではイベント定義とも呼ばれる1つ以上の所定のジェスチャ定義と比較し、その比較に基づいて、イベント又はサブイベントを判定するか、若しくはイベント又はサブイベントの状態を判定又は更新する。一部の実施形態において、イベント比較部332は、上述したように、本明細書ではイベント定義とも呼ばれる1つ以上のジェスチャ定義333を含む。ジェスチャ定義333は、例えばジェスチャ1334-1及びジェスチャ2334-2等であるジェスチャ例えば、イベント及び/又はサブイベントの所定のシーケンスの定義を含む。一部の実施形態において、ジェスチャ定義333のサブイベントは、例えばタッチ開始、タッチ終了、タッチ移動、タッチキャンセル及び複数のタッチを含む。一例において、ジェスチャ1334-1の定義は、表示されたオブジェクトに対するダブルタップである。ダブルタップは、例えばジェスチャの所定のフェーズについての表示オブジェクトへの第1タッチタッチ開始と、ジェスチャの次の所定のフェーズについての第1リフトオフタッチ終了と、ジェスチャの後続する所定のフェーズについての表示オブジェクトへの第2タッチタッチ開始と、ジェスチャの最後の所定のフェーズについての第2リフトオフタッチ終了とを含む。別の例において、ジェスチャ2334-2の定義は、表示オブジェクトのドラッグである。例えばドラッグは、表示オブジェクトへのタッチ又は接触と、タッチセンサディスプレイ156にわたるタッチの移動と、タッチのリフトオフタッチ終了とを含む。一部の実施形態において、イベントレコグナイザ320-1はイベント配信335のための情報も含む。イベント配信335のための情報は、対応するイベントハンドラ322に対する参照を含む。オプションとして、イベント配信335のための情報は、動作-対象ペア群を含む。一部の実施形態において、ジェスチャ又はジェスチャの一部の認識に応答して、イベント情報例えば、動作メッセージ群は動作-対象ペア群により識別された1つ以上の対象に送信される。他の実施形態において、ジェスチャ又はジェスチャの一部の認識に応答して、動作-対象ペアが起動される。一部の実施形態において、ジェスチャ定義333は、個別のユーザインタフェースオブジェクトに対するジェスチャの定義を含む。一部の実施形態において、イベント比較部332は、どのユーザインタフェースオブジェクトがサブイベントに関連するかを判定するためにヒットテストを実行する。例えば、3つのユーザインタフェースオブジェクトがタッチセンサディスプレイ156に表示されるアプリケーションビューにおいて、タッチセンサディスプレイ156でタッチが検出された場合に、イベント比較部332は、もしあるならば、3つのユーザインタフェースオブジェクトのうちのどれがタッチイベントに関連するかを判定するためにヒットテストを実行する。各表示オブジェクトが個別のイベントハンドラ322に関連するならば、イベント比較部332は、ヒットテストの結果を使用して、そのイベントハンドラ322が起動されるべきかを判定する。例えばイベント比較部332は、ヒットテストを始動するイベント及びオブジェクトに関連するイベントハンドラ322を選択する。一部の実施形態において、個別のジェスチャの定義333は、イベント及び/又はサブイベントのシーケンスがイベントレコグナイザのイベントのタイプに対応するか否かが判定されるまでイベント情報の配信を遅延させる遅延動作も含む。一連のイベント及び/又はサブイベントがジェスチャ定義333のいずれのイベントとも合致しないことを個別のイベントレコグナイザ320-1が判定する場合に、個別のイベントレコグナイザ320-1はイベント失敗状態になり、その後、個別のイベントレコグナイザ320-1はタッチベースのジェスチャの後続のイベント及び/又はサブイベントを無視する。この状況において、ヒットビューに対してアクティブのままである他のイベントレコグナイザがあるならば、これらのイベントレコグナイザは実行中のタッチベースのジェスチャのイベント及び/又はサブイベントを追跡及び処理し続ける。一部の実施形態において、個別のイベントレコグナイザ320-1はイベントレコグナイザ状態336を含む。イベントレコグナイザ状態336は、個別のイベントレコグナイザ320-1の状態を含む。イベントレコグナイザ状態の例については、図4A~図4Dを参照して以下にさらに詳細に説明する。一部の実施形態において、イベントレコグナイザ状態336はレコグナイザメタデータ及び属性337-1を含む。一部の実施形態において、レコグナイザメタデータ及び属性337-1は、Aイベント配信システムが能動的関与イベントレコグナイザへのイベント及び/又はサブイベント配信をどのように実行すべきかを示す設定可能な属性、フラグ及び/又はリスト、Bイベントレコグナイザが互いにどのように相互作用するかを示す設定可能な属性、フラグ及び/又はリスト、Cイベントレコグナイザがイベント情報をどのように受信するかを示す設定可能な属性、フラグ及び/又はリスト、Dイベントレコグナイザがジェスチャをどのように認識してもよいかを示す設定可能な属性、フラグ及び/又はリスト、Eイベント及び/又はサブイベントがビュー階層の種々のレベルに配信されるかを示す設定可能な属性、フラグ及び/又はリスト、F対応するイベントハンドラ322に対する参照のうちの1つ以上を含む。一部の実施形態において、イベントレコグナイザ状態336はイベント/タッチメタデータ337-2を含む。イベント/タッチメタデータ337-2は、検出された個別のイベント/タッチに関するイベント/タッチ情報を含み、ジェスチャ定義333に対応する。イベント/タッチ情報は、個別のイベント/タッチの位置、タイムスタンプ、速度、方向、距離、倍率又は倍率の変更及び角度又は角度の変更のうちの1つ以上を含む。一部の実施形態において、個別のアプリケーションビューは1つ以上のデリゲート321を含む。個別のデリゲート321は、個別のイベントレコグナイザ320に割り当てられる。これに代えて、個別のイベントレコグナイザ320は対応するデリゲート321を有するが、デリゲート321は必ずしも実行時に個別のレコグナイザ320に割り当てられる必要はなく、イベントレコグナイザに対するデリゲートはアプリケーションの実行前に確立されてもよい例えば、イベントレコグナイザに対するデリゲートは、アプリケーションビューのデリゲート属性により示され、対応するアプリケーションビュー316が初期化された場合に確立されてもよい。一部の実施形態において、いくつかのイベントレコグナイザは割り当てられた又は対応するデリゲートを有しない。対応するデリゲートがないイベントレコグナイザは、イベント認識の排他性を統治するデフォルト規則のようなデフォルト規則に従って実行する。一部の実施形態において、いくつかのイベントレコグナイザは割り当てられた又は対応するデリゲートを複数有する。デリゲートは、対応するイベントレコグナイザの挙動を変更し、複数のイベントレコグナイザの挙動を調整するためにも使用可能である。以下に説明する一部の実施形態において、デリゲートは、個別のイベントレコグナイザに割り当てられた場合に、個別のイベントレコグナイザの挙動の複数の側面を変更する。一部の実施形態において、個別のイベントレコグナイザ320は、ジェスチャの1つ以上の特定のイベント及び/又はサブイベントが認識された場合に、個別のイベントレコグナイザ320に関連するイベントハンドラ322を起動する。一部の実施形態において、個別のイベントレコグナイザ320は、イベントに関連するイベント情報をイベントハンドラ322に配信する。イベントハンドラ322は、起動された場合に、データの作成及び/又は更新と、オブジェクトの作成及び更新と、表示情報の準備及びディスプレイ126又はタッチセンサディスプレイ156に表示するためのその表示情報の送信とのうちの1つ以上を実行する。一部の実施形態において、個別のアプリケーションビュー316-2はビューメタデータ323を含む。ビューメタデータ323は、ビューに関するデータを含む。オプションとして、ビューメタデータは、イベントレコグナイザに対するイベント及び/又はサブイベントの配信に影響を及ぼす以下の属性を含む。●ビューに対して設定された場合に、ビューだけでなくビュー階層におけるその先祖に関連するイベントレコグナイザへのイベント及び/又はサブイベント配信を防止する停止属性324-1。●ビューに対して設定された場合に、そのビューに関連するイベントレコグナイザへのイベント及び/又はサブイベント配信を防止するが、ビュー階層におけるそのビューの先祖へのイベント及び/又はサブイベント配信を許可するスキップ属性324-2。●ビューに対して設定された場合に、ビューがヒットビューでない限り、ビューに関連するイベントレコグナイザへのイベント及び/又はサブイベントの配信を防止するヒット以外スキップ属性324-3。上述したように、ヒットビュー判定モジュール313は、サブイベントを処理すべき階層における最下位ビューとしてヒットビューを識別する。●他のビューメタデータ324-4。一部の実施形態において、ビュー階層内の第1能動的関与ビューは、その第1能動的関与ビューに関連するイベントレコグナイザへの個別のサブイベントの配信を防止するように構成されうる。この挙動は、スキップ属性324-2を実現できる。スキップ属性がアプリケーションビューに対して設定された場合に、個別のサブイベントの配信は、ビュー階層の他の能動的関与ビューに関連するイベントレコグナイザに対して依然として実行される。これに代えて、ビュー階層内の第1能動的関与ビューは、第1能動的関与ビューがヒットビューでない限り、第1能動的関与ビューに関連するイベントレコグナイザへの個別のサブイベントの配信を防止するように構成される。この挙動は、条件付きのヒット以外スキップ属性324-3を実現できる。一部の実施形態において、ビュー階層内の第2能動的関与ビューは、第2能動的関与ビューに関連するイベントレコグナイザ及び第2能動的関与ビューの先祖に関連するイベントレコグナイザへの個別のサブイベントの配信を防止するように構成される。この挙動は、停止属性324-1を実現できる。タッチセンサディスプレイにおけるユーザタッチのイベント処理に関する上記説明は、入力デバイスを有する電子デバイス102又は104を動作させるための他の形式のユーザ入力にも当てはまり、ユーザ入力の全てがタッチ画面上で開始されるわけではなく、例えば認識されるジェスチャを定義するイベント及び/又はサブイベントに対応する入力として利用されうる単一又は複数のキーボード押下又は保持を伴うか又は伴わないマウス移動及びマウスボタン押下、タッチパッドにおけるユーザ移動、タップ、ドラッグ、クロール等、ペンスタイラス入力、デバイスの移動例えば、回転、音声命令、検出された眼球運動、バイオメトリック入力及び/又はこれらの任意の組み合わせを調整することにも当てはまることが理解される。図3Cは、一部の実施形態に係るジェスチャレコグナイザ例えば、イベント処理コンポーネント390の例示的なクラス及びインスタンスを示すブロック図である。ソフトウェアアプリケーション例えば、アプリケーション132-1は、1つ以上のイベントレコグナイザ340を有する。一部の実施形態において、個別のイベントレコグナイザ例えば、340-2はイベントレコグナイザクラスである。個別のイベントレコグナイザ例えば、340-2は、イベントレコグナイザ固有コード341例えば、イベントレコグナイザの動作を定義する命令の集合と、状態マシン342とを含む。一部の実施形態において、ソフトウェアアプリケーション例えば、アプリケーション132-1のアプリケーション状態317は、イベントレコグナイザのインスタンスを含む。イベントレコグナイザの各インスタンスは、状態例えば、イベントレコグナイザ状態336を有するオブジェクトである。個別のイベントレコグナイザインスタンスの実行は、対応するイベントレコグナイザ固有コード例えば、341を実行し、イベントレコグナイザインスタンス343の状態336を更新又は維持することにより実現される。イベントレコグナイザインスタンス343の状態336は、イベントレコグナイザインスタンスの状態マシン342の状態338を含む。一部の実施形態において、アプリケーション状態317は、各々がアプリケーションのビューと結び付けられたアタッチされたとも言われるイベントレコグナイザに対応する複数のイベントレコグナイザインスタンス343を含む。一部の実施形態において、アプリケーション状態317は個別のイベントレコグナイザ例えば、340-2の複数のインスタンス例えば、343-1~343-Lを含む。一部の実施形態において、アプリケーション状態317は、複数のイベントレコグナイザ例えば、340-1~340-Rのインスタンス343を含む。一部の実施形態において、ジェスチャレコグナイザの個別のインスタンス343-2はイベントレコグナイザ状態336を含む。上述したように、イベントレコグナイザ状態336は、レコグナイザメタデータ及び属性337-1とイベント/タッチメタデータ337-2とを含む。イベントレコグナイザ状態336は、ジェスチャレコグナイザの個別のインスタンス343-2がアタッチされるビューを示すビュー階層参照群337-3も含む。一部の実施形態において、レコグナイザメタデータ及び属性337-1は、以下を含むか、又は以下の部分集合又は上位集合を含む。●イベントレコグナイザに対して設定された場合に、イベントレコグナイザがジェスチャを認識した時にイベント配信システムが例外リスト353に列挙された他の任意のイベントレコグナイザを除く能動的関与ビューの他の任意のイベントレコグナイザへのイベント及び/又はサブイベントの配信を停止すべきであることを示す排他性フラグ339。対応する排他性フラグ339により示されるように、イベント又はサブイベントを受信することにより特定のイベントレコグナイザが排他的状態になる場合に、後続のイベント及び/又はサブイベントは、排他的状態のイベントレコグナイザだけでなく、例外リスト353に列挙された他の任意のイベントレコグナイザにのみ配信される。●排他性例外リスト353。個別のイベントレコグナイザに対するイベントレコグナイザ状態336に含まれる場合に、このリスト353は、個別のイベントレコグナイザが排他的状態に入った後でもイベント及び/又はサブイベントを受信し続けるイベントレコグナイザがある場合にこれらのレコグナイザの集合を示す。例えば、シングルタップイベントに対するイベントレコグナイザが排他的状態になり、現在の関与ビューがダブルタップイベントに対するイベントレコグナイザを含む場合に、リスト353は、シングルタップイベントが検出された後でもダブルタップイベントが認識されるようにダブルタップイベントレコグナイザを列挙する。従って、排他性例外リスト353は、イベントレコグナイザがイベント及び/又はサブイベントの共通のシーケンスを共有する相異なるジェスチャを認識することを許可する。例えば、シングルタップジェスチャ認識は、他のイベントレコグナイザによるダブル又はトリプルタップジェスチャの後続の認識を排除しない。●待ちリスト351。個別のイベントレコグナイザに対するイベントレコグナイザ状態336に含まれる場合に、このリスト351は、個別のイベントレコグナイザが個別のイベントを認識できる前にイベント失敗状態又はイベントキャンセル済状態にならなければならないイベントレコグナイザがある場合にこれらのレコグナイザの集合を示す。実質的に、列挙されたイベントレコグナイザは、イベントを認識する優先順位が待ちリスト351を有するイベントレコグナイザより高い。●イベントレコグナイザに対して設定された場合に、イベント及び/又はサブイベントのシーケンスがこのイベントレコグナイザのジェスチャのタイプに対応しないと判定されるまで、イベントレコグナイザがタッチ開始サブイベント又はフィンガーダウンサブイベント及び後続のイベントを含むイベント及び/又はサブイベントをイベントレコグナイザの個別のヒットビューに送信するのを遅延させる遅延タッチ開始済フラグ352。このフラグは、ジェスチャが認識される場合にヒットビューがイベント及び/又はサブイベントの何れかを参照するのを防止するために使用されうる。イベントレコグナイザがジェスチャを認識できない場合に、タッチ開始済サブイベント及び後続のタッチ終了サブイベントはヒットビューに配信されうる。一例において、そのようなサブイベントをヒットビューに配信することにより、ユーザインタフェースは、オブジェクトに関連する動作を呼び出すことなく、そのオブジェクトを簡単に強調表示する。●イベントレコグナイザに対して設定された場合に、サブイベントのシーケンスがこのイベントレコグナイザのイベントのタイプに対応しないと判定されるまで、イベントレコグナイザがサブイベント例えば、タッチ終了サブイベントをイベントレコグナイザの個別のヒットビュー又はレベルに送信するのを遅延させる遅延タッチ終了フラグ363。これは、ジェスチャが後で認識される場合にヒットビューがタッチ終了サブイベントに作用するのを防止するために使用されうる。タッチ終了サブイベントが送信されない限り、キャンセルされたタッチはヒットビュー又はレベルに送信されうる。イベントが認識されるならば、アプリケーションによる対応する動作が実行され、タッチ終了サブイベントはヒットビュー又はレベルに配信される。●イベントレコグナイザに対して設定された場合に、イベント及び/又はサブイベントのシーケンスがこのイベントレコグナイザのジェスチャのタイプに対応しないと判定されている場合、イベントレコグナイザにタッチ又は入力のキャンセルをイベントレコグナイザの個別のヒットビューに送信させるタッチキャンセルフラグ364。ヒットビューに送信されたタッチ又は入力のキャンセルは、先のイベント及び/又はサブイベント例えば、タッチ開始済サブイベントがキャンセルされたことを示す。タッチ又は入力のキャンセルにより、イベントレコグナイザの状態は図4Bのイベントキャンセル済状態418に入る。一部の実施形態において、1つ以上のイベントレコグナイザは、イベントレコグナイザがイベントを認識する後までサブイベントのシーケンスのうち1つ以上のサブイベントを配信することを遅延するように適合されうる。この挙動は遅延イベントを反映する。例えば、複数のタップジェスチャが可能であるビューのシングルタップジェスチャを検討する。この場合に、タップイベントはタップ遅延レコグナイザになる。実質的に、イベントレコグナイザがこの挙動を実現する場合に、イベントレコグナイザは、サブイベントのシーケンスが実際にそのイベント定義に対応することが確実になるまでイベント認識を遅延させる。この挙動は、キャンセルされたイベントに受信者ビューが適切に応答できない場合に適切でありうる。一部の実施形態において、イベントレコグナイザは、サブイベントのシーケンスがそのイベント定義に対応しないことをイベントレコグナイザが確信するまでイベント認識状態を個別の能動的関与ビューに更新することを遅延させる。遅延タッチ開始済フラグ352、遅延タッチ終了フラグ363及びタッチキャンセルフラグ364は、サブイベント配信技術だけでなく、イベントレコグナイザ及びビュー状態情報更新を特定の要望に合わせて調整するために提供される。一部の実施形態において、レコグナイザメタデータ及び属性337-1は、以下を含むか、若しくは以下の部分集合又は上位集合を含む。●個別のイベントレコグナイザインスタンス例えば、343-2に対する状態マシン例えば、342の状態を示す状態マシンの状態/フェーズ338。状態マシンの状態/フェーズ338は、以下に説明するようにイベント可能、イベント認識済及びイベント失敗等の種々の状態値を有しうる。これに代えて又はこれに加えて、状態マシンの状態/フェーズ338は、タッチデータ構造が以前のタッチデータ構造により参照されていない新しいタッチを定義することを示すタッチフェーズ開始済等の種々のフェーズ値を有しうる。タッチフェーズ移動済値は、定義されているタッチが以前の位置から移動したことを示す。タッチフェーズ静止値は、タッチが同一の位置に留まっていることを示しうる。タッチフェーズ終了済値は、タッチが終了したこと例えば、ユーザがマルチタッチディスプレイの面から自身の指を離したことを示しうる。タッチフェーズキャンセル済値は、タッチがデバイスによりキャンセルされたことを示す。キャンセルされたタッチは、必ずしもユーザにより終了されたわけではないタッチであるが、デバイスはそれを無視することを判定したものである。例えばデバイスは、タッチが意図せずに生成されているすなわち、ポータブルマルチタッチ対応デバイスをポケットに入れた結果と判定し、そのためタッチを無視できる。状態マシンの状態/フェーズ338の各値は本明細書ではジェスチャレコグナイザ状態値と呼ばれる整数であってもよい。●ジェスチャ又はジェスチャの一部としてイベント又はタッチを認識することに応答して個別のイベントレコグナイザインスタンスが識別された動作メッセージを送信する先の対象を各ペアが識別する動作-対象ペア群345。●デリゲートが個別のイベントレコグナイザインスタンスに割り当てられた場合の対応するデリゲートに対する参照であるデリゲート346。デリゲートが個別のイベントレコグナイザインスタンスに割り当てられない場合に、デリゲート346はヌル値を含む。●個別のイベントレコグナイザインスタンスが有効にされるかを示す有効属性347。一部の実施形態において、個別のイベントレコグナイザインスタンスが有効でない例えば、無効である場合に、個別のイベントレコグナイザインスタンスはイベント又はタッチを処理しない。一部の実施形態において、例外リスト353はまた、非排他的なイベントレコグナイザにより使用されうる。特に非排他的イベントレコグナイザがイベント又はサブイベントを認識した場合に、後続のイベント及び/又はサブイベントは、イベント又はサブイベントを認識したイベントレコグナイザの例外リスト353に列挙された排他的イベントレコグナイザを除く現在アクティブなビューに関連する排他的イベントレコグナイザに配信されない。一部の実施形態において、イベントレコグナイザは、不要なイベント及び/又はサブイベントがヒットビューに配信されるのを防止するために遅延タッチ終了フラグ363と共にタッチキャンセルフラグ364を利用するように構成されうる。例えば、シングルタップジェスチャの定義とダブルタップジェスチャの前半とは同一である。シングルタップイベントレコグナイザがシングルタップを正常に認識すると、不要な動作が行われうる。遅延タッチ終了フラグが設定されたならば、シングルタップイベントが認識されるまで、シングルタップイベントレコグナイザはサブイベントをヒットビューに送信しないようにされる。また、シングルタップイベントレコグナイザの待ちリストがダブルタップイベントレコグナイザを識別してもよく、これによって、ダブルタップイベントレコグナイザがイベント不可能状態になるまで、シングルタップイベントレコグナイザがシングルタップを認識しないようにする。待ちリストを使用することにより、ダブルタップジェスチャが実行される場合にシングルタップに関連する動作の実行を回避する。その代わり、ダブルタップイベントの認識に応答して、ダブルタップに関連する動作のみが実行される。タッチセンサ面におけるユーザタッチの形式を特に参照すると、上述したように、タッチ及びユーザジェスチャは瞬時である必要がない動作を含んでもよく、例えばタッチは、ある期間ディスプレイに対して指を移動又は保持する動作を含みうる。しかし、タッチデータ構造は、特定の時刻のタッチの状態すなわち、より一般的には任意の入力ソースの状態を定義する。従って、タッチデータ構造に格納された値はシングルタッチの間に変更されてもよく、それにより異なる時点のシングルタッチの状態がアプリケーションに伝達される。各タッチデータ構造は種々のエントリを含みうる。一部の実施形態において、タッチデータ構造は、以下のような、若しくは以下の部分集合又は上位集合のようなイベント/タッチメタデータ337-2のタッチ固有エントリに少なくとも対応するデータを含みうる。●ビューがインスタンス化されたためタッチデータ構造が特定のビューに対する第1タッチを定義するかを示すビューに対する第1タッチエントリ348。●タッチデータ構造が関連する特定の時刻例えば、タッチの時刻を示すタイムスタンプ情報を含むタッチ毎の情報エントリ349。オプションとして、タッチ毎の情報エントリ349は、対応するタッチの位置等の他の情報を含む。●最初のタッチの位置で連続して実行されたタップ数を示すオプションのタップカウントエントリ350。タップは、特定の位置でのタッチセンシティブパネルへの迅速な指の押下及び持ち上げとして定義されうる。指がパネルの同一の位置で迅速に連続して再度押下及び解放されるならば、複数の連続したタップが発生しうる。イベント配信システム130は、タップをカウントし、タップカウントエントリ350を介してこの情報をアプリケーションに中継できる。同一の位置における複数のタップは、タッチ対応インタフェースに対する有用で覚えやすいコマンドとみなされることがある。従って、タップをカウントすることにより、イベント配信システム130は、アプリケーションからの何らかのデータ処理を再度軽減できる。従って、各タッチデータ構造は、特定の時刻に個別のタッチ又は他の入力ソースにより発生していること例えば、タッチが静止しているか、移動しているか等だけでなく、タッチに関連する他の情報位置等を定義できる。従って、各タッチデータ構造は、特定の瞬間の特定のタッチの状態を定義できる。同一の時刻を参照する1つ以上のタッチデータ構造は、特定のビューが瞬間に受信している全てのタッチの状態を定義できるタッチイベントデータ構造に追加されうる上述したように、いくつかのタッチデータ構造は、終了して、もはや受信されていないタッチも参照してもよい。複数のタッチイベントデータ構造は、ビューで発生しているタッチを記述する連続した情報をソフトウェアに提供するために、時間の経過と共にビューを実現するソフトウェアに送信されうる。オプションとしてマルチタッチジェスチャを含む複雑なタッチベースのジェスチャを処理する機能は、種々のソフトウェアアプリケーションをさらに複雑にしうる。いくつかの例において、このような追加の複雑さは、高度な所望のインタフェース機能を実現するのに必要でありうる。例えばゲームは、同時に複数のボタンを押下したり、若しくは加速度計データをタッチセンサ面におけるタッチと組み合わせたりすることを必要とすることが多いので、種々のビューで発生する複数の同時のタッチを処理する機能を必要としうる。しかし、いくつかのより単純なアプリケーション及び/又はビューは、高度なインタフェース機能を要求する必要がない。例えば単純なソフトボタンすなわち、タッチセンサディスプレイに表示されるボタンは、マルチタッチ機能ではなくシングルタッチで十分に動作しうる。これらの例において、基礎となるOSは、シングルタッチ例えば、ソフトボタンへのシングルタッチ又はシングルタップのみで動作可能であることが意図されるビューに関連するソフトウェアコンポーネントに不必要な又は過剰なタッチデータ例えば、マルチタッチデータを送信しうる。ソフトウェアコンポーネントは、このデータを処理する必要がありうるので、シングルタッチのみが関連するビューに関連するとしても、複数のタッチを処理するソフトウェアアプリケーションの全ての複雑さを特徴とする必要がありうる。従来、マウスインタフェース環境すなわち、種々のボタン等でプログラムするのが容易であったソフトウェアコンポーネントがマルチタッチ環境でかなり複雑になりうるので、これによりデバイスに対してソフトウェアを開発するコストが増加しうる。複雑なタッチベースのジェスチャを認識する際の複雑さを軽減するために、デリゲートは、一部の実施形態に従ってイベントレコグナイザの挙動を制御するために使用されうる。以下に説明するように、デリゲートは、例えば対応するイベントレコグナイザ又はジェスチャレコグナイザがイベント例えば、タッチ情報を受信できるか、対応するイベントレコグナイザ又はジェスチャレコグナイザが状態マシンの初期状態例えば、イベント可能状態から別の状態に遷移できるか、及び/又は他のイベントレコグナイザ群又はジェスチャレコグナイザ群がイベントを認識することを阻止せずに又はイベントを認識する他のイベントレコグナイザ群又はジェスチャレコグナイザ群により阻止されずに、対応するイベントレコグナイザ又はジェスチャレコグナイザがイベント例えば、タッチを対応するジェスチャとして同時に認識できるかを判定できる。しかし、タッチセンサ面に対するユーザタッチの評価及び処理の複雑さに関する上記説明は、電子デバイス102又は104を動作させるための全ての形式のユーザ入力にも当てはまる。ユーザ入力の全てがタッチ画面上で開始されるわけではなく、例えば認識されるイベントを定義するイベント及び/又はサブイベントに対応する入力として利用されうる単一又は複数のキーボード押下又は保持を伴うか又は伴わないマウス移動及びマウスボタン押下、デバイスの回転又は他の移動、タップ、ドラッグ、スクロール等のユーザの移動、ペンスタイラスの入力、音声命令、検出された眼球運動、バイオメトリック入力、検出されたユーザの生理学的変化及び/又はこれらの任意の組み合わせを調整することにも当てはまることが理解される。図4A~図4Dは、一部の実施形態に係る例示的な状態マシンのためのフローチャートである。ジェスチャレコグナイザは、離散ジェスチャレコグナイザと連続ジェスチャレコグナイザとを含む。離散ジェスチャレコグナイザは典型的に、所定の期間内に発生する簡単なジェスチャ例えば、タップ又はスワイプジェスチャを認識する際に有用であり、より本質的には、ジェスチャ認識の際に1つの動作メッセージのみ又は動作メッセージの1つの集合のみがアプリケーションに配信される必要があるジェスチャを認識するためのものである。連続ジェスチャレコグナイザは、タッチの移動を含む及び従ってタッチ位置の追跡を必要とするジェスチャ例えば、パン、ピンチ又は回転ジェスチャを認識する際に有用であり、より本質的には、動作メッセージのシーケンスがジェスチャの間にアプリケーションに配信される必要があるジェスチャを認識するためのものである。一部の実施形態において、離散イベントレコグナイザ状態マシン400及び連続イベントレコグナイザ状態マシン402は異なる状態を有する。図4Aは、一部の実施形態に係る3つの状態を含む離散イベントレコグナイザ状態マシン400を示す。受信したイベント及び/又はサブイベントに基づいてイベントレコグナイザ状態マシン342の状態遷移を管理することにより、イベントレコグナイザはイベント定義を効果的に表現する。例えば、タップジェスチャは、2つのサブイベント又は場合によっては3つのサブイベントのシーケンスにより効果的に定義されうる。第1に、タッチが検出されるべきであり、これはサブイベント1となる。例えば、タッチサブイベントは、イベントレコグナイザ状態マシン342を有するイベントレコグナイザを含むビューにおいてユーザの指がタッチセンサ面にタッチしていることでありうる。第2に、タッチがどの所与の方向にも実質的に移動せず例えば、タッチ位置の任意の移動が所定の閾値よりも小さく、これは例えばディスプレイにおいて距離例えば、5mm又は画素数例えば、5画素として測定されうる、遅延が十分に短いオプションの測定済遅延はサブイベント2である。最後に、タッチ終了例えば、タッチセンサ面からユーザの指を離すことはサブイベント3である。これらのサブイベントを受信することに基づいて状態間を遷移するようにイベントレコグナイザ状態マシン342をコーディングすることにより、イベントレコグナイザ状態マシン342は、タップジェスチャイベント定義を効果的に表現する。離散イベントレコグナイザ状態マシン400は、上述したタップジェスチャを認識するように構成されたイベントレコグナイザ状態マシン342の例示的な実現例である。イベントのタイプに関係なく、離散イベントレコグナイザ状態マシン400として実現されたイベントレコグナイザ状態マシンを含むイベントレコグナイザ状態マシン342は、イベント可能状態410で始まり、これはイベントレコグナイザ状態マシンの初期状態を示す。イベントレコグナイザ状態マシン342は、受信されるイベント及び/又はサブイベントに依存して残りのいずれかの状態に進みうる。イベント可能状態410から始まって、ジェスチャ定義の第1イベント又はサブイベントでないイベント又はサブイベントが受信されたならば、離散イベントレコグナイザ状態マシン400はイベント失敗状態430に遷移する。イベント可能状態410から始まって、自身がジェスチャに対するジェスチャ定義を含むイベント又はサブイベントが受信されたならば、離散イベントレコグナイザ状態マシン400はイベント認識済状態420に遷移する。しかし、受信したイベント又はサブイベントがジェスチャに対するジェスチャ定義を含むとしても、離散イベントレコグナイザ状態マシン400は対応するイベントレコグナイザのメタデータ例えば、属性、対応するデリゲートにより判定された1つ以上の値及び/又はアプリケーション状態に従ってイベント失敗状態430に遷移しうる。一部の実施形態において、イベント認識済状態420に遷移した後、対応するイベントレコグナイザは、遅延フラグ例えば、遅延タッチ終了フラグ363をチェックする441。遅延フラグがオンであるならば441においてYES、対応するイベントレコグナイザは、遅延フラグがオフにされるまでイベント情報の配信を遅延させる442。一部の実施形態において、対応するイベントレコグナイザは待ちリスト351を含み、対応するイベントレコグナイザは所定の状態に到達するために待ちリスト351に列挙されたイベントレコグナイザを待つ。例えば、ビューがシングルタップジェスチャレコグナイザ及びダブルタップジェスチャレコグナイザを含む場合に、シングルタップジェスチャレコグナイザは、ダブルタップジェスチャレコグナイザが失敗するのを待つように構成されうる。実際には、シングルタップジェスチャレコグナイザがイベント認識済状態420に遷移するには、ダブルタップジェスチャレコグナイザがイベントを認識することに失敗したことが必要である又はそれを条件としている。その結果、タップイベントがある場合に、タップイベントがマルチタップジェスチャの一部でない限り、シングルタップジェスチャレコグナイザはタップイベントを認識する。遅延及び待ち442の後、存在するならば、対応するジェスチャレコグナイザはイベントをアプリケーションに配信する443。一部の実施形態において、イベントは動作メッセージの形式で配信される。一部の実施形態において、動作メッセージは動作-対象ペア群345に従って配信される。一部の実施形態において、対応するジェスチャレコグナイザは動作-対象ペア群345を起動する。図4Bは、一部の実施形態に係る6つの状態を含む連続イベントレコグナイザ状態マシン402を示す。上述したように、連続イベントレコグナイザ状態マシン402は、イベント可能状態410から始まる。イベント可能状態410から始まって、ジェスチャ定義のイベント及び/又はサブイベントの開始シーケンスの一部でないイベント又はサブイベントが受信されたならば、離散イベントレコグナイザ状態マシン400はイベント失敗状態430に遷移する。イベント可能状態410から始まって、所与のジェスチャ定義のイベント群及び/又はサブイベント群の開始シーケンスの一部であるイベント又はサブイベントが受信されたならば、連続イベントレコグナイザ状態マシン402はイベント開始済状態412に遷移する。離散ジェスチャレコグナイザ400と同様に、受信したイベント又はサブイベントがジェスチャ定義のイベント群及び/又はサブイベント群の開始シーケンスの一部を含むとしても、連続イベントレコグナイザ状態マシン402は、対応するイベントレコグナイザのメタデータ例えば、属性、対応するデリゲートにより判定された1つ以上の値及び/又はアプリケーション状態に従ってイベント失敗状態430に遷移しうる。イベント開始済状態412から、受信された次のイベント又はサブイベントが中間イベント又はサブイベントであるが所与のジェスチャ定義の最後のイベント又はサブイベントでないならば、連続イベントレコグナイザ状態マシン402はイベント変更済状態414に遷移して留まる。連続イベントレコグナイザ状態マシン402は、受信したイベント及び/又はサブイベントのシーケンスがジェスチャ定義の一部であり続ける限り、イベント変更済状態414に留まりうる。連続イベントレコグナイザ状態マシン402は、いずれかの時点でイベント変更済状態414であり、ジェスチャ定義の一部でないイベント又はサブイベントを受信したならば、イベント失敗状態430に遷移し、それにより、存在する場合に現在のイベントはこのイベントレコグナイザすなわち、連続イベントレコグナイザ状態マシン402に対応するイベントレコグナイザに対応するイベントのタイプでないことを判定する。一方、連続イベントレコグナイザ状態マシン402は、イベント開始済状態412又はイベント変更済状態414であり、ジェスチャ定義の最後のイベント又はサブイベントを受信したならば、イベント終了済状態416に遷移し、それによって、正常なイベント認識を完了する。一部の実施形態において、各ジェスチャレコグナイザ状態はジェスチャレコグナイザ状態値を有する。一部の実施形態において、離散イベントレコグナイザ状態マシン400に対するイベント認識済状態420及び連続イベントレコグナイザ状態マシン402に対するイベント終了済状態416は、1つのタイプのジェスチャレコグナイザによるジェスチャの認識に応答するように構成されたソフトウェアコンポーネントが他のタイプのジェスチャレコグナイザにも応答できるように、同一のジェスチャレコグナイザ状態値を有する。イベント開始済状態412又はイベント変更済状態414の間、例えば、着呼等のオペレーティングシステム118又は制御アプリケーション124において事前に定義された所定の割り込みイベントが発生した場合に、連続イベントレコグナイザ状態マシン402はイベントキャンセル済状態418に遷移する。ジェスチャレコグナイザのタイプに関わらず、各ジェスチャレコグナイザ例えば、343は、対応するイベントレコグナイザ状態マシン例えば、342がイベント可能状態410に戻るように再設定されうる。図4C及び図4Dは、一部の実施形態に係る状態遷移におけるデリゲートの役割を示す。図4C及び図4Dにおいて、1つ以上のデリゲートによる動作又は行われる決定は、陰影付きのボックスにより示される例えば、450~456。図4Cは、一部の実施形態に係る離散イベントレコグナイザ状態マシン400の状態遷移におけるデリゲートの役割を示す。以下に説明する例において、状態マシン400は、対応するデリゲートを有する特定の離散イベントレコグナイザに対応する。イベント可能状態410から始まって、イベント又はサブイベントが検出されたならば、イベントレコグナイザに対応するデリゲートは、イベントレコグナイザがイベント又はサブイベントを受信すべきか450を決定する。対応するイベントレコグナイザがイベント又はサブイベントを受信することを防止する値をデリゲートが返したならば、対応するイベントレコグナイザは、イベント又はサブイベントを受信しないか、イベント又はサブイベントを無視する。その結果、対応するイベントレコグナイザはイベント可能状態410に留まる。対応するイベントレコグナイザがイベント又はサブイベントを受信することを防止するデリゲートが存在しないならば、対応するイベントレコグナイザのデフォルトの挙動は、イベント又はサブイベントを受信することである。なお、イベントレコグナイザの集合のデリゲートによる受信すべきかの動作450は、どのイベントレコグナイザがタッチセンサディスプレイ又はタッチセンサ面に対するどのタッチを受信するかを判定するために使用されうる。例えば、個別に且つ同時に2つのオブジェクトの位置を変更するため又は2つの異なるオブジェクトを選択するためにユーザが2つのタッチを使用できるようにするビューにおいて、2つのイベントレコグナイザのデリゲートは、1つのイベントレコグナイザが2つのタッチのうちの第1タッチのみを受信することを許可し、第2イベントレコグナイザが2つのタッチのうちの第2タッチのみを受信することを許可するように構成されうる。従って、2つのタッチの各々に関する全ての情報は、対応するデリゲートによりそのタッチを受信することを許可されたイベントレコグナイザにのみへ宛てられる。かなり複雑なマルチタッチ入力は、どのタッチがどのイベントレコグナイザにより処理されるかを判定する複数のイベントレコグナイザ及び対応するデリゲートを使用することにより認識及び処理されうる。イベントレコグナイザがイベント又はサブイベントを受信することを許可されたならば、イベントレコグナイザに対応するデリゲート又は制御アプリケーション124又はオペレーティングシステム118は、イベントレコグナイザによるイベント又はサブイベントの認識が、イベントを既に認識している別のイベントレコグナイザにより阻止される451。この阻止の初期レベルは、デフォルトの排他性規則に基づき、デリゲートにより上書きされうる。イベント又はサブイベントの認識が阻止されたならば、対応するデリゲート又はオペレーティングシステム118又は制御アプリケーション124は、イベントレコグナイザによるイベントの同時認識がデリゲートにより判定された1つ以上の値に従って許可されるか452も決定する。例えば、イベントレコグナイザがイベントを最初に認識したイベントレコグナイザの排他性例外リスト353にあるならば、デリゲートは、両方のイベントレコグナイザによる同時認識を許可する。別の例において、イベントレコグナイザの排他性フラグ339が設定されないならば、デリゲートは両方のイベントレコグナイザによる同時認識を許可する。同時認識が許可されないならば、イベントレコグナイザはイベント失敗状態430に遷移する。対応するイベントレコグナイザがイベント又はサブイベントを認識することを阻止されないならば451においてNO、若しくは同時認識が許可されるならば452においてYES、対応するイベントレコグナイザは、イベント又はサブイベントが、対応するジェスチャ定義に合致するか453を判定する。イベント又はサブイベントが対応するジェスチャ定義に合致しないならば453においてNO、対応するジェスチャレコグナイザはイベント失敗状態430に遷移する。イベント又はサブイベントが対応するジェスチャ定義に合致するならば453においてYES、対応するデリゲート又はオペレーティングシステム118又は制御アプリケーション124は、デリゲートにより判定された1つ以上の値に従ってイベント可能状態410から遷移できるか開始すべきか454を決定する。イベントレコグナイザがイベント可能状態410から遷移することをデリゲートにより許可されないならば454においてNO、対応するイベントレコグナイザはイベント失敗状態430になる。イベントレコグナイザがイベント可能状態410から遷移することを許可されるならば454においてYES、対応するイベントレコグナイザはイベント認識済状態420に遷移する。対応するイベントレコグナイザがイベント認識済状態420に遷移する場合に、対応するイベントレコグナイザ又はオペレーティングシステム118又は制御アプリケーション124は、他のイベントレコグナイザによるイベント又はサブイベントの認識を許可するか455も決定する。一部の実施形態において、イベントレコグナイザのうちの少なくとも1つのイベントレコグナイザのデリゲート又はアプリケーションが同時認識を許可するように属性を設定しない限り、デフォルトは他の全てのイベントレコグナイザが同一のイベントを認識することを防止することである。イベント又はサブイベントを認識したイベントレコグナイザに対応するデリゲートが、他のイベントレコグナイザがイベント又はサブイベントを認識することをデリゲートが許可すること455においてYESを判定したならば、デリゲート又はオペレーティングシステム118又は制御アプリケーション124は、イベント又はサブイベントを同時に認識できるように他のイベントレコグナイザの属性を設定する456。他のイベントレコグナイザがイベント又はサブイベントを認識することをデリゲートが許可しないならば、他のイベントレコグナイザは、イベント又はサブイベントを認識することを防止される。一部の実施形態において、個別のイベントレコグナイザがイベント又はサブイベントを認識しないようにする前に、そのイベントレコグナイザのデリゲートは、イベント又はサブイベントの同時認識を許可するかを確認するために呼び出される452を参照。これらの実施形態において、同時認識は、イベントを認識する第1イベントレコグナイザのデリゲート又は第2イベントレコグナイザのデリゲートの何れかにより可能になりうる。図4Cの452及び455により示されるように、これらの実施形態において、同時認識を許可するかに関する決定は、イベントが少なくとも1つのイベントレコグナイザのイベント定義に合致する場合にのみ行われる。上述したデリゲート動作は、アプリケーションビュー又は同時に表示されたビューの集合により使用されたイベントレコグナイザの集合に対するデリゲートにおいて実装される場合に、イベントレコグナイザの相互作用をカスタマイズするために使用されうる。デリゲートは、デフォルトの排他性規則に対する例外を実装でき、その例外以外では、1つのイベントレコグナイザのみが受信された同一のイベント群に基づいてジェスチャを認識することを許可する。デフォルトの排他性規則に対する例外を実装し、それにより互換性のあるイベントレコグナイザによる同時イベント認識を許可するデリゲートのユーザは、ソフトウェアアプリケーションにおける多くの有用な機能の実装を容易にする。イベントレコグナイザの挙動を変更及び制御するためにデリゲートを使用することにより、相互に互換性のあるジェスチャの相互に排他的な集合等の複雑な関係のコンパクト表現及び実装が可能になる。図4Dは、一部の実施形態に係る連続イベントレコグナイザ状態マシン402の状態遷移におけるデリゲートの役割を示す。以下に説明する例において、状態マシン402は、対応するデリゲートを有する特定の連続イベントレコグナイザに対応する。図4Cに示され、図4Cを参照して上述された全てのデリゲートの動作は、対応するデリゲートを有する連続イベントレコグナイザに等しく適用可能であり、それ故、図4Dに示すデリゲートの動作は図4Cと同一の参照符号を有する。唯一の相違点は、状態マシンにおける1つの状態の名前が状態マシン400のイベント認識済420から状態マシン402のイベント開始済412に変更されたことである。対応するイベントレコグナイザは、上述したようにイベント開始済状態412から他の状態に遷移する。簡潔にするために、イベント変更済状態414からイベント失敗状態416への遷移は示さない。以下の表は、上述したイベントレコグナイザの状態に関する例示的なサブイベントシーケンス例えば、シングルタップの処理を表形式で提示する。この例において、サブイベントシーケンスはシングルタップを含み、ビューは2つのタップジェスチャレコグナイザ、すなわちシングルタップジェスチャレコグナイザ及びダブルタップジェスチャレコグナイザを有する。この例においても、両方のジェスチャレコグナイザは、サブイベントシーケンスを同時に受信し認識するように構成される。同時認識は、シングルタップジェスチャレコグナイザに割り当てられたデリゲート又は第2タップジェスチャレコグナイザに割り当てられたデリゲートにより許可されうる。サブイベント情報の配信が始まる前シーケンス番号0、両方のジェスチャレコグナイザはイベント可能状態410である。フィンガーダウンサブイベントを検出しシーケンス番号1、遅延を測定したシーケンス番号2後であっても、両方のジェスチャレコグナイザはイベント可能状態410に留まる。フィンガーリフトオフを検出したことシーケンス番号3に応答して、シングルタップジェスチャレコグナイザはイベント認識済状態420に遷移する。追加の遅延を検出した後、シングルタップジェスチャレコグナイザは、リセットされるまでイベント認識済状態420に留まり、リセットされた場合に、シングルタップジェスチャレコグナイザはイベント可能状態410に戻る。一方、測定された追加の遅延が所定の期間例えば、ダブルタップジェスチャレコグナイザは第2フィンガーダウンサブイベントを予想する期間を超える場合に、ダブルタップジェスチャレコグナイザはイベント失敗状態430に遷移する。以下の表は、1つのジェスチャレコグナイザの挙動が変更された場合の例示的なサブイベントシーケンスの処理を表形式で提示する。この例において、サブイベントシーケンスはシングルタップを含み、ビューは2つのタップジェスチャレコグナイザ、すなわちシングルタップジェスチャレコグナイザ及びダブルタップジェスチャレコグナイザを有する。この例においても、シングルタップジェスチャレコグナイザは、サブイベントを受信することをデリゲートにより許可されない。シングルタップジェスチャレコグナイザは、サブイベントを受信することをデリゲートにより許可されないため、イベント可能状態410に留まる。測定された第2遅延が所定の閾値を超えた場合シーケンス番号4に、ダブルタップジェスチャレコグナイザはイベント失敗状態430に遷移する。以下の表は、1つのジェスチャレコグナイザの挙動が変更された場合の例示的なサブイベントシーケンスの処理を表形式で提示する。この例において、サブイベントシーケンスはシングルタップを含み、ビューは2つのタップジェスチャレコグナイザ、すなわちシングルタップジェスチャレコグナイザ及びダブルタップジェスチャレコグナイザを有する。この例においても、両方のジェスチャレコグナイザは、サブイベントシーケンスを同時に認識することを許可されない。上述したのと同様に、フィンガーリフトオフの検出シーケンス番号3の後、シングルタップジェスチャレコグナイザは、イベント可能状態410からイベント認識済状態420に遷移する。一般に、サブイベントシーケンスを認識する第1ジェスチャレコグナイザは、サブイベントシーケンスをまだ認識していない他のジェスチャレコグナイザがサブイベントシーケンスを認識するのを阻止する。同時認識が許可されない限り、阻止されたジェスチャレコグナイザはイベント失敗状態430に遷移する。この場合、同時認識が許可されないので、シングルタップジェスチャレコグナイザがシーケンス番号3においてサブイベントシーケンスを認識した場合に、ダブルタップジェスチャレコグナイザはイベント失敗状態430に遷移し、リセットされるまでその状態に留まる。以下の表は、1つのジェスチャレコグナイザの挙動がデリゲートにより変更され、2つのジェスチャレコグナイザの動作が一方又は両方のレコグナイザのデリゲートにより行われた動作に従って調整された場合の例示的なサブイベントシーケンスの処理を表形式で提示する。この例において、サブイベントシーケンスはシングルタップを含み、ビューは2つのタップジェスチャレコグナイザ、すなわちシングルタップジェスチャレコグナイザ及びダブルタップジェスチャレコグナイザを有する。この例においても、シングルタップジェスチャレコグナイザは、開始することすなわち、イベント可能状態410から遷移することを許可されない。フィンガーリフトオフの検出シーケンス番号3の後、シングルタップジェスチャレコグナイザは、イベント可能状態410からイベント認識済状態420に遷移しようとする。しかし、シングルタップジェスチャレコグナイザに割り当てられたデリゲートはイベント認識済状態420への状態遷移を許可せず、その結果、シングルタップジェスチャレコグナイザはイベント失敗状態430に遷移する。測定された遅延が所定の閾値を超えた場合シーケンス番号4に、ダブルタップジェスチャレコグナイザはイベント失敗状態430に遷移する。以下の表は、1つのジェスチャレコグナイザの挙動が変更され、2つのジェスチャレコグナイザの動作が一方又は両方のレコグナイザのデリゲートにより行われた動作に従って調整された場合の例示的なサブイベントシーケンスの処理を表形式で提示する。この例において、サブイベントシーケンスはシングルタップを含み、ビューは2つのタップジェスチャレコグナイザ、すなわちシングルタップジェスチャレコグナイザ及びダブルタップジェスチャレコグナイザを有する。この例においても、シングルタップジェスチャレコグナイザは、ダブルタップジェスチャレコグナイザの失敗を待つ又は必要とする。フィンガーリフトオフの検出シーケンス番号3の後、シングルタップジェスチャレコグナイザは、イベント可能状態410からイベント認識済状態420に遷移しようとする。しかし、待ち要件又はダブルタップジェスチャレコグナイザが失敗するという失敗要件に起因して、シングルタップジェスチャレコグナイザは、イベント認識済状態420への遷移を遅延させる。測定された第2遅延が所定の閾値を超えるシーケンス番号4ことからダブルタップジェスチャレコグナイザが失敗した場合に、シングルタップジェスチャレコグナイザは、イベント認識済状態420に遷移する。待ち要件及び/又は失敗要件は、デリゲートを使用して実装されてもよく、ジェスチャレコグナイザにおいて実装されてもよい。以下の表は、例示的なサブイベントシーケンスの処理を表形式で提示する。この例において、サブイベントシーケンスは、複数の中間サブイベントを含むパンジェスチャを含み、ビューは2つのジェスチャレコグナイザ、すなわちシングルタップジェスチャレコグナイザ及びパンジェスチャレコグナイザを有する。この例においても、両方のジェスチャレコグナイザは、サブイベントシーケンスを同時に認識することを許可される。サブイベント情報の配信が始まる前シーケンス番号0、両方のジェスチャレコグナイザはイベント可能状態410である。フィンガーダウンサブイベントを検出しシーケンス番号1、遅延を測定したシーケンス番号2後であっても、シングルタップジェスチャレコグナイザはイベント可能状態410に留まるが、その一方で、パンジェスチャレコグナイザはイベント開始済状態412に遷移する。指の移動の検出シーケンス番号3に応答して、サブイベントがシングルタップに対するジェスチャ定義に合致しないので、シングルタップジェスチャレコグナイザはイベント失敗状態430に遷移する。その後、シングルタップジェスチャレコグナイザは、リセットされるまでイベント失敗状態430に留まる。しかし、パンジェスチャレコグナイザは、指の移動の検出シーケンス番号4に応答してイベント変更済状態414に遷移し、一部の実施形態において、指の接触の新しい位置を含む動作メッセージ群を送信する。追加の指の移動を検出したシーケンス番号4及び5後、パンジェスチャレコグナイザはイベント変更済状態414に留まるが、その一方で、指の移動を検出する度に動作メッセージ群を送信する。フィンガーリフトオフが検出されたシーケンス番号6場合に、パンジェスチャレコグナイザはイベント終了済状態416に遷移する。イベント情報のフロー及びイベントレコグナイザ間の相互作用を考慮すると、図5Aは、一部の実施形態に係るイベント情報のフローを示すブロック図である。例えば、オペレーティングシステム118又は制御アプリケーション124におけるイベントディスパッチャモジュール315はイベント情報を受信し、そのイベント情報をアプリケーション例えば、132-1に送信する。一部の実施形態において、アプリケーション132-1は、ビュー階層506の複数のビュー例えば、ビュー316に対応する508、510及び512と、複数のビューにおける複数のジェスチャレコグナイザ516-1~516-6とを含む。アプリケーション132-1は、対象-動作ペア例えば、522-1、522-2及び522-3における対象値に対応する1つ以上のイベントハンドラ520も含む。イベントディスパッチャモジュール315は、ヒットビュー判定モジュール313からヒットビュー情報を受信し、ヒットビュー例えば、512又はヒットビュー例えば、512にアタッチされたイベントレコグナイザ群にイベント情報を送信する。一部の実施形態において、ヒットビューにアタッチされたジェスチャレコグナイザの部分集合のみがイベント情報又はタッチ情報を受信することを許可される又は受信するように構成される。イベント情報を受信することを許可されたこれらのジェスチャレコグナイザは、本明細書において受信ジェスチャレコグナイザと呼ばれる。図5Aにおいて、ジェスチャレコグナイザ516-1及び516-2は、受信ジェスチャレコグナイザ514の集合内にある。その結果、イベントディスパッチャモジュール315は、受信ジェスチャレコグナイザの集合内のジェスチャレコグナイザ516-1及び516-2の両方にイベント情報を送信する。一部の実施形態において、ジェスチャレコグナイザは、他方のジェスチャレコグナイザがイベント又はサブイベントを対応するジェスチャとして認識することを阻止又は防止してもよい。この例において、ジェスチャレコグナイザ1516-1は、ジェスチャレコグナイザ2516-2がイベント又はサブイベントを対応するジェスチャとして認識することを防止する。その結果、この例において、ジェスチャレコグナイザ1516-1のみが動作メッセージ518を対応する対象-動作ペア例えば、対象:動作1522-1に送信する。図5B及び図5Cは、一部の実施形態に係るジェスチャ認識方法を示すフローチャートである。図5Bは、ジェスチャレコグナイザが対応するデリゲートを呼び出すフローチャートを示し、図5Cは、ソフトウェアアプリケーションが個別のジェスチャレコグナイザに対応するデリゲートを呼び出すフローチャートを示す。図5B及び図5Cにおいて、各列は各エンティティ又は各コンポーネント例えば、ソフトウェアアプリケーション、ジェスチャレコグナイザ又はデリゲートにおいて実行される処理を表す。図5Bにおいて、ソフトウェアアプリケーション例えば、アプリケーション132-1は、複数のビュー例えば、506、508、510のうちの1つ以上のビューを表示する530。複数のビューは、複数のジェスチャレコグナイザ例えば、516-1~516-6を含む。ソフトウェアアプリケーション例えば、アプリケーション132-1は、複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを割り当てる532。一部の実施形態において、個別のジェスチャレコグナイザは対応するデリゲートに割り当てられる533-1。一部の実施形態において、個別のデリゲートは、対応するジェスチャレコグナイザに割り当てられる533-2。これに代えて、デリゲートとジェスチャレコグナイザとの相関性は、実行時前に確立されてもよい。以下の説明を通じて、割り当てられたデリゲートに対する各参照は、対応するデリゲートをも意味してもよく、デリゲートが割り当てられたジェスチャレコグナイザに対する各参照は、特定のデリゲートに対応するジェスチャレコグナイザをも意味してもよい。ソフトウェアアプリケーション例えば、アプリケーション132-1は、1つ以上のイベントを検出し534、ジェスチャレコグナイザ例えば、320のうちの1つ以上を使用して各イベントを処理する536。個別のイベントは、1つ以上のジェスチャレコグナイザ例えば320の個別のジェスチャレコグナイザにおいて処理される538。デリゲートの動作を説明するために、イベントを処理する個別のジェスチャレコグナイザが対応するデリゲートを有すると仮定する。個別のジェスチャレコグナイザは、割り当てられたデリゲートを呼び出し、割り当てられたデリゲートは、アプリケーション状態に従って1つ以上の値を判定するために実行される540。それに応答して、個別のジェスチャレコグナイザは、割り当てられたデリゲートにより判定された1つ以上の値に従って、個別のイベントに対応する情報をソフトウェアアプリケーションに条件付きで送信する542。ソフトウェアアプリケーションは、イベントのうちの1つ以上に対応するジェスチャレコグナイザのうちの1つ以上から受信された情報に従って実行される544。言い換えると、これらの実施形態において、個別のジェスチャレコグナイザは、ジェスチャレコグナイザの挙動を判定する1つ以上の値を取得するために、割り当てられたデリゲートを呼び出す。上述したように、対応するデリゲートにより変更されるジェスチャレコグナイザの挙動は、タッチ/イベント情報を受信するかどうか、イベント可能状態から遷移するかどうか、及び/又は同時認識を許可するかどうかを含む。場合によっては、他のジェスチャレコグナイザのデリゲートの調整された動作を伴うデリゲートによる動作はまた、どのジェスチャレコグナイザがどのタッチを受信するかを制御し、どのジェスチャレコグナイザがイベント認識済又はイベント開始済状態に遷移することを許可されるかを判定し、同時認識を許可又は無効にすることにより、2つ以上のジェスチャレコグナイザの動作を調整する。図5Cにおいて、ソフトウェアアプリケーション例えば、アプリケーション132-1は、複数のビュー例えば、506、508、510のうち1つ以上のビューを表示する530。複数のビューは、複数のジェスチャレコグナイザ例えば、516-1~516-6を含む。ソフトウェアアプリケーション例えば、アプリケーション132-1は、複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを割り当てる532。一部の実施形態において、個別のジェスチャレコグナイザは対応するデリゲートに割り当てられる533-1。一部の実施形態において、個別のデリゲートは、対応するジェスチャレコグナイザに割り当てられる533-2。これに代えて、デリゲートとジェスチャレコグナイザとの相関性は、実行時前に確立されてもよい。ソフトウェアアプリケーション例えば、アプリケーション132-1は、1つ以上のタッチを検出し535、ジェスチャレコグナイザのうちの1つ以上を使用して1つ以上のタッチの各々を処理する546。1つ以上のタッチの各々を処理する際、ソフトウェアアプリケーションは、複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を識別する548。一部の実施形態において、候補ジェスチャレコグナイザは、ヒットビューにアタッチされたジェスチャレコグナイザである例えば、図5Aのジェスチャレコグナイザ516-1、516-2及び516-3。個別の候補ジェスチャレコグナイザに割り当てられたデリゲートは、アプリケーション状態に従って受信タッチ値を取得するために実行される550。受信タッチ値は、個別の候補ジェスチャレコグナイザがイベント/タッチ情報を受信できるかどうか例えば、図4C及び図4Dの受信すべきかのステップ450を判定するために使用される。個別のデリゲートから取得された受信タッチ値に基づいて、受信ジェスチャレコグナイザの集合が識別される552。受信ジェスチャレコグナイザの集合は、候補ジェスチャレコグナイザの部分集合を含む552。一部の実施形態において、受信ジェスチャレコグナイザの集合は、割り当てられた個別のデリゲートを有しない全ての候補ジェスチャレコグナイザを含む。候補ジェスチャレコグナイザのうちの2つ以上が対応するデリゲートを有するならば、そのような各候補ジェスチャレコグナイザのデリゲートは、候補ジェスチャレコグナイザがイベント/タッチ情報を受信できるかを判定するために実行される。候補ジェスチャレコグナイザに対応するデリゲートから取得された受信タッチ値は、受信ジェスチャレコグナイザの集合を識別するために使用される。個別のタッチは、受信ジェスチャレコグナイザの集合において処理される554。個別のジェスチャレコグナイザによる個別のタッチの処理の結果、イベント又はジェスチャが認識されるならば図4C及び図4Dの定義に合致するか453を参照、個別のジェスチャレコグナイザに対応するデリゲート存在する場合は、イベント又はジェスチャの認識が許可されるかを判定するために呼び出される。これは、図4C及び図4Dを参照して上述した開始すべきかの動作454に対応する。デリゲートは、状態遷移が許可されるかを示す1つ以上の値を返す。個別のジェスチャレコグナイザは、割り当てられたデリゲートにより判定された1つ以上の値に従って、個別のイベントに対応する情報をソフトウェアアプリケーションに条件付きで送信する542。ソフトウェアアプリケーションは、個別のタッチに対応するジェスチャレコグナイザのうちの1つ以上から受信された情報に従って実行される545。言い換えると、これらの実施形態において、ソフトウェアアプリケーション又はオペレーティングシステム118又は制御アプリケーション124は、個別のタッチを処理すべき候補ジェスチャレコグナイザ存在する場合を示す値を取得するために個別の候補ジェスチャレコグナイザに対応するデリゲートを呼び出す。さらに、ジェスチャレコグナイザの挙動の他の側面は、割り当てられたデリゲートによりさらに変更されうる。図6A及び図6Bは、一部の実施形態に係るデリゲートから取得された情報に従って個別のイベントを処理する例示的な方法を示すフローチャートである。方法600は、1つ以上のイベントセンサ例えば、130を有し、複数のビュー例えば、アプリケーションビュー316とソフトウェアアプリケーション例えば、317のアプリケーション状態とを含むソフトウェアアプリケーション例えば、132を実行するように構成された電子デバイス例えば、デバイス102又は104において実行される602。デバイスは、複数のビューのうちの1つ以上のビューを表示する604。表示された1つ以上のビューの個別のビューは、1つ以上のジェスチャレコグナイザ例えば、イベントレコグナイザ320-1を含む。一部の実施形態において、表示された1つ以上のビューの少なくとも部分集合は1つ以上のジェスチャレコグナイザを含み、表示された1つ以上のビューの残りのビューはジェスチャレコグナイザを含まない。1つ以上のジェスチャレコグナイザの個別のジェスチャレコグナイザは、対応するデリゲートを有する。一部の実施形態において、全てのジェスチャレコグナイザが対応するデリゲートを有するわけではないすなわち、一部の実施形態において、一部のジェスチャレコグナイザは対応するデリゲートを有さない。一部の実施形態において、個別のジェスチャレコグナイザは2つ以上のデリゲートに対応し、各デリゲートは、別個の条件に対して対応するジェスチャレコグナイザに対する別個の値を判定する例えば、第1デリゲートは受信すべきか450を判定し、第2デリゲートは認識が阻止されるか451を判定する等。一部の実施形態において、2つ以上のジェスチャレコグナイザが同一のデリゲートに対応する例えば、同一のデリゲートを利用する。一部の実施形態において、デバイスは個別のデリゲート例えば、デリゲート321-1を個別のジェスチャレコグナイザ例えば、320-1に割り当てる606例えば、図5Bのステップ532の説明を参照。これに代えて、個別のジェスチャレコグナイザは対応するデリゲートを有しており、それ故、デリゲートは実行時に割り当てられる必要はない。本明細書におけるイベント/ジェスチャレコグナイザの割り当てられたデリゲートに対する全ての参照は、イベント/ジェスチャレコグナイザの対応するデリゲートに同様に適用可能であることが理解され、対応するデリゲートに対する全ての参照は、割り当てられたデリゲートに等しく適用可能であることが理解される。一部の実施形態において、表示された1つ以上のビューは複数のジェスチャレコグナイザを含み608、デバイスは複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを割り当てる。言い換えると、一部のジェスチャレコグナイザは割り当てられたデリゲートを有しなくてもよいので、デバイスはジェスチャレコグナイザの個数より少ないデリゲートを有してもよい。デバイスは1つ以上のイベントを検出する610。一部の実施形態において、デバイスは、センサ130、入力デバイス128及び/又はタッチセンサディスプレイ156を使用して1つ以上のイベントを検出する。デバイスは、個別のジェスチャレコグナイザを使用して1つ以上のイベントの個別のイベントを処理する612。個別のイベントの処理は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って個別のジェスチャレコグナイザにおいて個別のイベントを処理すること例えば、イベント比較部332を使用してイベントとジェスチャ定義333とを比較することと、アプリケーション状態に従って1つ以上の値を判定するために対応するデリゲートを実行すること例えば、図5Bの540と、個別のジェスチャレコグナイザによる個別のイベントの処理の結果に従うとともに対応するデリゲートにより判定された1つ以上の値に従って、個別のイベントに対応する情報例えば、ジェスチャレコグナイザがタップジェスチャ又はスワイプジェスチャ等のイベントを認識するかどうか、イベントの位置及びタイムスタンプ等の関連イベント情報、並びに/又は他の追加の情報をソフトウェアアプリケーションに条件付きで送信することとを含む。一部の実施形態において、デリゲートは、開始すべきか、受信すべきか及び同時認識等のイベントレコグナイザ属性を判定するための命令を有し、実行された場合に1つ以上の対応する値を返す。一部の実施形態において、イベントレコグナイザ属性に対する値は、アプリケーション状態に従ってソフトウェアアプリケーションにより設定されうる。一部の実施形態において、属性に対する値は開発者により事前に定義される。一部の実施形態において、個別のイベント/ジェスチャレコグナイザの内部属性はデフォルト値を有し、デフォルト値はイベント/ジェスチャレコグナイザに対応するデリゲートにより上書きされうる。例えば、例えば、ジェスチャレコグナイザの対応するデリゲートにより判定された1つ以上の値であって、ジェスチャレコグナイザがイベント可能状態410からイベント認識済状態420又はイベント開始済状態412に遷移できるか、若しくは阻止側のジェスチャレコグナイザが存在するにも関わらずジェスチャレコグナイザがイベントを同時に認識できるかを示す1つ以上の値に基づいてジェスチャレコグナイザがイベントを認識することを許可された場合に、デバイスは個別のイベントに対応する情報を送信する。一部の実施形態において、デバイスは、対応するジェスチャ定義又はその一部にイベントが合致する場合にのみ、個別のイベントに対応する情報を送信する。さらに、アプリケーション状態又は他の条件により、個別のジェスチャレコグナイザが個別のイベントに対応する情報を送信することが防止されうる。デバイスは、個別のイベントに対応する、個別のジェスチャレコグナイザから受信された情報に従ってソフトウェアアプリケーション例えば、132-1を実行する614。例えば、ソフトウェアアプリケーション例えば、132-1は複数のイベントハンドラ322を含み、イベントハンドラ322のうちの1つ以上は、個別のジェスチャレコグナイザから受信された情報に従って起動される例えば、動作-対象ペア345に列挙されたイベントハンドラ322が起動される。一部の実施形態において、1つ以上のイベントセンサ例えば、130は1つ以上のタッチを検出するように構成されたタッチセンサ面例えば、156又は分離したタッチセンサ面を含み、1つ以上のイベントは1つ以上のタッチを含み、個別のイベントを処理することは個別のタッチを処理することを含む616。一部の実施形態において、1つ以上のイベントセンサ例えば、130は加速度計を含み、1つ以上のイベントは電子デバイスの回転又は他の動きも含む。一部の実施形態において、デバイスは、割り当てられたデリゲートにより判定された1つ以上の値に従って個別のジェスチャレコグナイザにおいて個別のタッチを条件付きで受信する618。例えば、個別のジェスチャレコグナイザが個別のタッチを受信することを対応するデリゲートにより判定された1つ以上の値例えば、受信タッチ値が許可する場合にのみ例えば、図4C及び図4Dにおける受信すべきか450、個別のジェスチャレコグナイザは個別のタッチを受信する。一部の実施形態において、個別のタッチを処理することは、対応するデリゲートにより判定された1つ以上の値が所定のタッチ無視基準に合致する場合に個別のジェスチャレコグナイザが個別のタッチを無視することを含む620。これらの実施形態において、ステップ618において説明したように個別のタッチを条件付きで受信する代わりに、個別のジェスチャレコグナイザは個別のタッチを無視する。一部の実施形態において、個別のタッチを処理することは、対応するデリゲートにより判定された1つ以上の値が所定のタッチ無視基準に合致する場合に個別のジェスチャレコグナイザが個別のタッチを受信することを阻止することを含む622。これらの実施形態において、個別のタッチが阻止され、それ故、個別のジェスチャレコグナイザに到達しないので、ジェスチャレコグナイザは、個別のタッチを条件付きで受信するか又は無視する必要がない。一部の実施形態において、個別のジェスチャレコグナイザが個別のタッチを受信することを阻止することは、イベント情報を対応するジェスチャレコグナイザに送信しないようにイベントディスパッチャモジュール315に命令することを含む。一部の実施形態において、個別のジェスチャレコグナイザにおいて個別のタッチを処理することは、検出されたタッチが個別のジェスチャ定義に整合している例えば、個別のタッチがジェスチャ定義又はその一部に合致する場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、対応するデリゲートにより状態遷移が可能にされたときに可能にすること例えば、図4C及び図4Dの開始すべきか454を含む624。一部の実施形態において、状態遷移可能値例えば、開始すべきかの値が状態遷移基準を満たすことを対応するデリゲートにより判定される場合に状態遷移が可能にされる。一部の実施形態において、個別のジェスチャレコグナイザにおいて個別のタッチを処理することは、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、対応するデリゲートにより状態遷移が可能にされたときに条件付きで可能にすることを含む626。言い換えると、状態遷移は、対応するデリゲートが遷移を可能にする例えば、阻止しないとしても、条件付きで可能にされる。例えば、状態遷移の条件は、個別のタッチ/イベントがジェスチャ定義又はその一部に合致するかどうか、個別のジェスチャレコグナイザが個別のタッチ/イベントを受信することを許可されるかどうか、及び/又は個別のタッチ/イベントの認識が阻止されるかどうかを含む。一部の実施形態において、個別のジェスチャレコグナイザにおいて個別のタッチを処理することは、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、ジェスチャを認識した別のジェスチャレコグナイザにより状態遷移が防止/無効にされたときに条件付きで無効にすることを含む。特に、ジェスチャレコグナイザは、他のジェスチャレコグナイザ群がイベント認識済状態420又はイベント開始済状態412に遷移することを1つのジェスチャレコグナイザが防止できるようにペアにされうる又はグループ化されうる例えば、第1ジェスチャレコグナイザが第2ジェスチャレコグナイザを防止するように構成される場合に、第1ジェスチャレコグナイザは、イベント/タッチを認識すると、第2ジェスチャレコグナイザに対応するデリゲートにより返された値に関わらず第2ジェスチャレコグナイザがそのイベント/タッチを認識することを防止する。一部の実施形態において、複数のジェスチャレコグナイザは優先順位に基づいて例えば、コードのシーケンス、インスタンス化のシーケンス、個別のジェスチャレコグナイザに対応するビュー階層、若しくは開発者又はソフトウェアアプリケーションにより割り当てられた優先順位に基づいて列挙される。2つ以上のジェスチャレコグナイザが個別のタッチを同時に認識する場合に、優先順位が最も高いジェスチャレコグナイザは、他の全てのジェスチャレコグナイザが個別のタッチを認識することを阻止する。一部の実施形態において、個別のジェスチャレコグナイザにおいて個別のタッチを処理することは、第2ジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することを含む628。例えば、別のジェスチャレコグナイザはイベントの認識を阻止するとしても、第2ジェスチャレコグナイザに対応するデリゲートは、第2ジェスチャレコグナイザが第2ジェスチャレコグナイザにおいてジェスチャを処理することを許可しうる例えば、図4C及び図4Dのステップ452。一部の実施形態において、個別のジェスチャレコグナイザにおいて個別のタッチを処理することは、個別のジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することを含む630。例えば、別のジェスチャレコグナイザはイベントの認識を阻止するとしても、ジェスチャレコグナイザに対応するデリゲートは、第2ジェスチャレコグナイザが第2ジェスチャレコグナイザにおいてジェスチャを処理することを許可しうる例えば、図4C及び図4Dのステップ455及び456。一部の実施形態において、個別のジェスチャレコグナイザにおける個別のタッチを処理することは、第1ジェスチャレコグナイザ及び第2ジェスチャレコグナイザにそれぞれ対応するデリゲートにより判定された値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することを含む。図7A及び図7Bは、一部の実施形態に係るデリゲートから取得された受信タッチ値に従って個別のタッチを処理する例示的な方法を示すフローチャートである。方法700は、タッチセンサ面例えば、156を有し、複数のビュー例えば、316とソフトウェアアプリケーション例えば、317のアプリケーション状態とを含むソフトウェアアプリケーションを実行するように構成された電子デバイス例えば、デバイス104において実行される702。デバイスは、複数のビュー例えば、316のうちの1つ以上のビューを表示する704。表示された1つ以上のビューの個別のビューは1つ以上のジェスチャレコグナイザ例えば、320-1又は343-2を含み、1つ以上のジェスチャレコグナイザの個別のジェスチャレコグナイザは対応するデリゲート例えば、321-1又は346を有する。デバイスは、タッチセンサ面例えば、156又は130における1つ以上のタッチを検出する706。1つ以上のタッチはそれぞれ、表示された1つ以上のビュー内のタッチ位置を有する。デバイスは、1つ以上のタッチの個別のタッチを処理する708例えば、イベント比較部332を使用して、個別のタッチがジェスチャ定義333に合致するかを判定する453。個別のタッチを処理することは、アプリケーション状態に従って受信タッチ値を取得するために個別のジェスチャレコグナイザに対応するデリゲートを実行すること例えば、図5Cの550と、受信タッチ値が所定の基準例えば、一部の実施形態において、所定の基準は、個別のジェスチャレコグナイザが受信ジェスチャレコグナイザ552であるということを満たす場合に個別のジェスチャレコグナイザにおいて個別のタッチを処理すること例えば、554と、個別のタッチに対応する情報をソフトウェアアプリケーションに条件付きで送信すること例えば、542とを含む710。一部の実施形態において、複数のビューは複数のジェスチャレコグナイザを含む712例えば、図3Bのアプリケーションビュー316及びレコグナイザ320、図5Aのビュー508、510及び512、並びにジェスチャレコグナイザ516。別個のデリゲートは、複数のジェスチャレコグナイザの少なくとも部分集合に対応する。オプションとして、デバイスは、複数のジェスチャレコグナイザ例えば、320の少なくとも部分集合に別個のデリゲート例えば、321を割り当てる。1つ以上のタッチの個別のタッチを処理することは、複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を識別すること例えば、548と、対応するデリゲートを有する候補ジェスチャレコグナイザ毎に、アプリケーション状態に従って受信タッチ値を取得するために対応するデリゲートを実行すること例えば、550と、取得された受信タッチ値に従って候補ジェスチャレコグナイザの部分集合を含む1つ以上の受信ジェスチャレコグナイザを識別すること例えば、552と、受信ジェスチャレコグナイザのうちの1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて個別のタッチを処理すること例えば、554とを含む。一部の実施形態において、複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を識別することは、ヒットビューにアタッチされたジェスチャレコグナイザの集合を識別することを含む。オプションとして、複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を識別することは、個別のタッチに対応するジェスチャ定義を含むジェスチャレコグナイザの集合を識別することを含む。さらに、一部の実施形態において、受信ジェスチャレコグナイザの集合を識別することは、対応するデリゲートが受信タッチ基準を満たす個別の受信タッチ値を提供する候補ジェスチャレコグナイザの部分集合を識別することを含む例えば、受信タッチ値は、対応するジェスチャレコグナイザが個別のタッチを受信できることを示す。一部の実施形態において、1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて個別のタッチを処理することは、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って対応するデリゲートを有する個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理することと、アプリケーション状態に従って1つ以上の値を判定するためにデリゲートを実行することと、個別のジェスチャレコグナイザによる個別のタッチの処理の結果に従うとともにデリゲートにより判定された1つ以上の値に従って個別のタッチに対応する情報をソフトウェアアプリケーションに条件付きで送信することとを含む718。デバイスは、1つ以上のタッチに対応する、1つ以上の受信ジェスチャレコグナイザから受信された情報に従ってソフトウェアアプリケーションを実行する。一部の実施形態において、個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理することは、検出されたタッチが個別のジェスチャ定義に整合している例えば、個別のタッチがジェスチャ定義又はその一部に合致する場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、対応するデリゲートにより状態遷移が可能にされたときに可能にすること例えば、図4C及び図4Dの開始すべきか454を含む720。一部の実施形態において、個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理することは、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、対応するデリゲートにより状態遷移が可能にされたときに条件付きで可能にすることを含む722。例えば、状態遷移のための条件は、個別のタッチ/イベントがジェスチャ定義又はその一部に合致するかどうか、個別のジェスチャレコグナイザが個別のタッチ/イベントを受信することを許可されるかどうか、個別のタッチ/イベントの認識が阻止されるかどうか、及び/又はシステムレベルの命令例えば、シャットダウン処理又はアプリケーションよりも高い優先順位を有する他の処理が状態遷移を防止するかを含む。一部の実施形態において、個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理することは、第2ジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することを含む724。例えば、第2ジェスチャレコグナイザに対応するデリゲートは、第2ジェスチャレコグナイザが第2ジェスチャレコグナイザにおいてジェスチャを処理することを許可する例えば、図4C及び図4Dのステップ452。一部の実施形態において、個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理することは、個別のジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理すること例えば、図4C及び図4Dのステップ455及び456を含む726。デバイスは、個別のタッチに対応する、個別のジェスチャレコグナイザから受信された情報に従ってソフトウェアアプリケーションを実行する例えば、545716。例えば、ソフトウェアアプリケーション例えば、132-1は複数のイベントハンドラ322を含み、イベントハンドラ322のうちの1つ以上は、個別のジェスチャレコグナイザから受信された情報に従って起動される例えば、動作-対象ペア345に列挙されたイベントハンドラ322が起動される。図8A及び図8Bは、一部の実施形態に係る離散ジェスチャレコグナイザ及び連続ジェスチャレコグナイザを含むソフトウェアアプリケーションにおいて個別のタッチを処理する例示的な方法を示すフローチャートである。方法800は、タッチセンサ面を有し、ソフトウェアアプリケーションを実行するように構成された電子デバイス例えば、デバイス104において実行される802。デバイスは、ソフトウェアアプリケーション例えば、132-1の1つ以上のビュー例えば、316を表示する804。表示された1つ以上のビューは、複数のジェスチャレコグナイザ例えば、320を含む。複数のジェスチャレコグナイザは、少なくとも1つの離散ジェスチャレコグナイザ例えば、図4A及び図4Cと、少なくとも1つの連続ジェスチャレコグナイザ例えば、図4B及び図4Dとを含む。一部の実施形態において、離散ジェスチャレコグナイザは個別のジェスチャに応答して単一の動作メッセージを送信するように構成され、連続ジェスチャレコグナイザは認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成される。一部の実施形態において、離散ジェスチャレコグナイザは、個別のジェスチャに応答して動作メッセージの単一の集合を送信するように構成される。複数の対象-動作ペアが個別の離散ジェスチャレコグナイザに割り当てられる場合に、動作メッセージの単一の集合は複数の動作メッセージを含む。単一の対象-動作ペアが個別の離散ジェスチャレコグナイザに割り当てられる場合に、動作メッセージの単一の集合は単一の動作メッセージを含む。一部の実施形態において、各ジェスチャレコグナイザは、ジェスチャレコグナイザ状態例えば、図4A~図4Dの集合を有する822。一部の実施形態において、離散ジェスチャレコグナイザは、以下を含むジェスチャレコグナイザ状態の第1集合を有する824。●離散ジェスチャレコグナイザの初期状態に対応するジェスチャ可能状態410。●個別のジェスチャの認識に対応するジェスチャ認識済状態420。●離散ジェスチャレコグナイザが1つ以上のタッチを個別のジェスチャとして認識することに失敗したことに対応するジェスチャ失敗状態430。一部の実施形態において、連続ジェスチャレコグナイザは、以下を含むジェスチャレコグナイザ状態の第2集合を有する。●連続ジェスチャレコグナイザの初期状態に対応するジェスチャ可能状態410。●個別のジェスチャの初期認識に対応するジェスチャ開始済状態412。●個別のタッチの位置の個別の変化に対応するジェスチャ変更済状態414。●認識された個別のジェスチャの完了に対応するジェスチャ終了済状態416。●個別のジェスチャの認識の割り込みに対応するジェスチャキャンセル済状態418。●連続ジェスチャレコグナイザが1つ以上のタッチを個別のジェスチャとして認識することに失敗したことに対応するジェスチャ失敗状態430。一部の実施形態において、ジェスチャレコグナイザ状態は割り当てられた値例えば、ジェスチャレコグナイザ状態値を有する。一部の実施形態において、ジェスチャ認識済状態及びジェスチャ終了済状態は、同一のジェスチャレコグナイザ状態値を有する826。一部の実施形態において、少なくとも1つの離散ジェスチャレコグナイザは、タップジェスチャレコグナイザ及びスワイプジェスチャレコグナイザのうちの1つ以上を含み828、少なくとも1つの連続ジェスチャレコグナイザは、長押しジェスチャレコグナイザ、ピンチジェスチャレコグナイザ、パンジェスチャレコグナイザ、回転ジェスチャレコグナイザ及び変換ジェスチャレコグナイザのうちの1つ以上を含む。一部の実施形態において、少なくとも1つの離散ジェスチャレコグナイザは、タップジェスチャレコグナイザとスワイプジェスチャレコグナイザとを含み830、少なくとも1つの連続ジェスチャレコグナイザは、長押しジェスチャレコグナイザと、ピンチジェスチャレコグナイザと、パンジェスチャレコグナイザと、回転ジェスチャレコグナイザと、変換ジェスチャレコグナイザとを含む。タップジェスチャレコグナイザは、タップジェスチャを認識するように構成される。スワイプジェスチャレコグナイザは、スワイプジェスチャ例えば、タッチセンサ面に対するタッチのフリックを認識するように構成される。長押しジェスチャレコグナイザは、長押しジェスチャ例えば、押下及びタッチの保持を認識するように構成される。ピンチジェスチャレコグナイザは、ピンチジェスチャ例えば、2つ以上のタッチの接触及び相対的な移動を認識するように構成される。パンジェスチャレコグナイザは、パンジェスチャ例えば、タッチ及び1つ以上のタッチの整合性のある移動を認識するように構成される。回転ジェスチャレコグナイザは、回転例えば、接触及び2つ以上のタッチの回転移動を認識するように構成される。変換ジェスチャレコグナイザは、変換ジェスチャ例えば、パン、回転及びピンチを表す2つ以上のタッチの同時移動を認識するように構成される。一部の実施形態において、少なくとも1つの離散ジェスチャレコグナイザ例えば上述した離散ジェスチャレコグナイザの1つ以上及び少なくとも1つの連続ジェスチャレコグナイザ例えば、上述した連続ジェスチャレコグナイザの1つ以上は、ソフトウェア開発者がソフトウェアライブラリを使用してこれらをサードパーティソフトウェアに組み込めるようにソフトウェアライブラリに配布される。これと比較して、ビューはビュースタイル例えば、ユーザインタフェースオブジェクト及びフレームの色、サイズ及び形状を有する。一部の実施形態において、所定のビュースタイルは、ソフトウェア開発者がソフトウェアライブラリ又はテンプレートを使用して所定のビュースタイルを有するソフトウェアアプリケーションを開発できるように、UIインタフェースAPI例えば、図2の204の一部として配布される。デバイスは、1つ以上のタッチを検出する図8Aの808。一部の実施形態において、デバイスは、センサ130、入力デバイス128及び/又はタッチセンサディスプレイ156を使用して1つ以上のイベントを検出する。デバイスは、1つ以上のジェスチャレコグナイザを使用して各タッチを処理する810。個別のタッチの処理は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って個別のジェスチャレコグナイザにおいて個別のタッチを処理すること例えば、イベント比較部332を使用してイベントとジェスチャ定義333とを比較し、イベントがジェスチャ定義333又はその一部に合致するかを判定することと、個別のジェスチャレコグナイザにおける個別のタッチの処理の結果に従って1つ以上の動作メッセージの各々をソフトウェアアプリケーションに条件付きで送信すること例えば、個別のタッチがジェスチャ定義に合致した場合に動作メッセージを送信することとを含む812。一部の実施形態において、ソフトウェアアプリケーションはアプリケーション状態を有する814。1つ以上の個別の動作メッセージを条件付きで送信することは、ソフトウェアアプリケーションのアプリケーション状態にさらに従って1つ以上の個別の動作メッセージを条件付きで送信することを含む。例えば、ソフトウェアアプリケーションのアプリケーション状態は、1つ以上の個別の動作メッセージを送信することを遅延又は防止しうる例えば、システムリソースが過度に使用される場合、優先順位がより高い処理が処理される必要がある場合等。デバイスは、タッチのうちの1つに対応するジェスチャレコグナイザのうちの1つ以上から受信された1つ以上の動作メッセージに従ってソフトウェアアプリケーションを実行する816。例えば、ソフトウェアアプリケーション例えば、132-1は複数のイベントハンドラ322を含み、イベントハンドラ322のうちの1つ以上はジェスチャレコグナイザのうちの1つ以上から受信された動作メッセージに従って起動される。一部の実施形態において、デバイスは、個別のジェスチャレコグナイザからの追加の情報を要求する818。ソフトウェアアプリケーションを実行することは、追加の情報にさらに従ってソフトウェアアプリケーションを実行することを含む。例えば、個別のジェスチャレコグナイザは追加の情報例えば、サブイベント毎のタイムスタンプ、ジッタ量、速度、方向、期間、倍率、角度等の詳細情報を提供できる。一部の実施形態において、追加の情報は、個別のジェスチャレコグナイザにおいて処理された個別のタッチの個数及び位置を含む820。一部の実施形態によると、図9は、上述したような本発明の原理に従って構成された電子デバイス900の機能ブロック図を示す。デバイスの機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア、あるいはハードウェアとソフトウェアとの組み合わせにより実現されうる。図9において説明する機能ブロックは、上述したような本発明の原理を実現するために組み合わされてもよく又はサブブロックに分離されてもよいことが当業者には理解される。従って、本明細書における説明は、本明細書で説明する機能ブロックの任意の可能な組み合わせ、分離又は更なる定義をサポートしうる。図9に示すように、電子デバイス900は、1つ以上のイベントを検知するように構成された1つ以上のイベント検知ユニット902と、1つ以上のイベント検知ユニット902に結合された処理ユニット906とを含む。一部の実施形態において、電子デバイスは、処理ユニット906に結合された表示ユニット904も含む。一部の実施形態において、処理ユニット906は、実行ユニット908、表示可能ユニット910、検出ユニット912、イベント処理ユニット914、送信ユニット916、レコグナイザ可能ユニット918、阻止ユニット920及び割り当てユニット922を含む。処理ユニット906は、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを例えば、実行ユニット908で実行し、複数のビューのうちの1つ以上のビューの表示を例えば、表示ユニット904に関する表示可能ユニット910で可能にするように構成される。表示された1つ以上のビューの個別のビューは個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する。処理ユニット906は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って個別のジェスチャレコグナイザにおいて個別のイベントを例えば、イベント処理ユニット914で処理し、アプリケーション状態に従って1つ以上の値を判定するために対応するデリゲートを例えば、実行ユニット908で実行し、個別のジェスチャレコグナイザによる個別のイベントの処理の結果に従うとともに対応するデリゲートにより判定された1つ以上の値に従って個別のイベントに対応する情報をソフトウェアアプリケーションに例えば、送信ユニット916で条件付きで送信することにより、1つ以上のイベント検知ユニット902により検知された1つ以上のイベントを例えば、検出ユニット912で検出し、個別のジェスチャレコグナイザを使用して1つ以上のイベントの個別のイベントを例えば、イベント処理ユニット914で処理するように構成される。処理ユニット906は、個別のイベントに対応する、個別のジェスチャレコグナイザから受信された情報に従ってソフトウェアアプリケーションを例えば、実行ユニット908で実行するように構成される。一部の実施形態において、1つ以上のイベント検知ユニット908は、1つ以上のタッチを検出するように構成されたタッチセンサ面ユニット例えば、図10のタッチセンサ面ユニット1002を含み、1つ以上のイベントは1つ以上のタッチを含み、処理ユニット906は個別のタッチを例えば、イベント処理ユニット914で処理するように構成される。一部の実施形態において、処理ユニット906は、個別のジェスチャレコグナイザが対応するデリゲートにより判定された1つ以上の値に従って個別のタッチを条件付きで受信することを例えば、レコグナイザ可能ユニット918で可能にするように構成される。一部の実施形態において、処理ユニット906は、対応するデリゲートにより判定された1つ以上の値が所定のタッチ無視基準に合致する場合に個別のジェスチャレコグナイザが個別のタッチを無視することを可能にすることにより個別のタッチを例えば、イベント処理ユニット914及び/又はレコグナイザ可能ユニット918で処理するように構成される。一部の実施形態において、処理ユニット906は、対応するデリゲートにより判定された1つ以上の値が所定のタッチ無視基準に合致する場合に個別のジェスチャレコグナイザが個別のタッチを受信することを阻止することにより個別のタッチを例えば、イベント処理ユニット914及び/又は阻止ユニット920で処理するように構成される。一部の実施形態において、処理ユニット906は、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、状態遷移が対応するデリゲートにより可能にされたときに可能にすることにより、個別のジェスチャレコグナイザにおいて個別のタッチを例えば、イベント処理ユニット914及び/又はレコグナイザ可能ユニット918で処理するように構成される。一部の実施形態において、処理ユニット906は、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、対応するデリゲートにより状態遷移が可能にされたときに条件付きで可能にすることにより、個別のジェスチャレコグナイザにおいて個別のタッチを例えば、イベント処理ユニット914及び/又は可能ユニット918で処理するように構成される。一部の実施形態において、処理ユニット906は、第2ジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することにより、個別のジェスチャレコグナイザにおいて個別のタッチを例えば、イベント処理ユニット914で処理するように構成される。一部の実施形態において、処理ユニット906は、個別のジェスチャレコグナイザに対応するデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することにより、個別のジェスチャレコグナイザにおいて個別のタッチを例えば、イベント処理ユニット914で処理するように構成される。一部の実施形態において、表示された1つ以上のビューは複数のジェスチャレコグナイザを含み、処理ユニット906は、複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを例えば、割り当てユニット922で割り当てるように構成される。一部の実施形態によると、図10は、上述したような本発明の原理に従って構成された電子デバイス1000の機能ブロック図を示す。デバイスの機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア、あるいはハードウェアとソフトウェアとの組み合わせにより実現されうる。図10において説明する機能ブロックは、上述したような本発明の原理を実現するために組み合わされてもよく又はサブブロックに分離されてもよいことが当業者には理解される。従って、本明細書における説明は、本明細書で説明する機能ブロックの任意の可能な組み合わせ、分離又は更なる定義をサポートしうる。図10に示すように、電子デバイス1000は、1つ以上のタッチを受信するように構成されたタッチセンサ面ユニット1002と、タッチセンサ面ユニット1002に結合された処理ユニット1006とを含む。一部の実施形態において、電子デバイス1000は、処理ユニット1006に結合された表示ユニット1004も含む。一部の実施形態において、処理ユニット1006は、実行ユニット1008、表示可能ユニット1010、検出ユニット1012、タッチ処理ユニット1014、送信ユニット1016、割り当てユニット1018、識別ユニット1020及びレコグナイザ可能ユニット1022を含む。処理ユニット1006は、複数のビューとソフトウェアアプリケーションのアプリケーション状態とを含むソフトウェアアプリケーションを例えば、実行ユニット1008で実行し、複数のビューのうちの1つ以上のビューの表示を例えば、表示ユニット1004に関する表示可能ユニット1010で可能にするように構成される。表示された1つ以上のビューの個別のビューは個別のジェスチャレコグナイザを含み、個別のジェスチャレコグナイザは対応するデリゲートを有する。処理ユニット1006は、タッチセンサ面ユニット1002において受信された1つ以上のタッチを例えば、検出ユニット1012で検出するように構成される。各タッチは、表示されたビューのうちの1つ以上のビュー内に入るタッチ位置を有する。処理ユニット1006は、アプリケーション状態に従って受信タッチ値を取得するために個別のジェスチャレコグナイザに対応するデリゲートを例えば、実行ユニット1008で実行し、個別のタッチ値が所定の基準を満たす場合に個別のジェスチャレコグナイザにおいて個別のタッチを例えば、タッチ処理ユニット1014で処理し、個別のタッチに対応する情報をソフトウェアアプリケーションに例えば、送信ユニット1016で条件付きで送信することにより1つ以上のタッチの個別のタッチを処理するように構成される。処理ユニット1006は、個別のタッチに対応する、個別のジェスチャレコグナイザから受信された情報に従ってソフトウェアアプリケーションを例えば、実行ユニット1008で実行するように構成される。一部の実施形態において、複数のビューは複数のジェスチャレコグナイザを含む。処理ユニット1006は、複数のジェスチャレコグナイザのうちの候補ジェスチャレコグナイザの集合を例えば、識別ユニット1020で識別し、割り当てられたデリゲートを有する候補ジェスチャレコグナイザ毎にアプリケーション状態に従って受信タッチ値を取得するために割り当てられたデリゲートを例えば、実行ユニット1008で実行し、取得された受信タッチ値に従って候補ジェスチャレコグナイザの部分集合を含む1つ以上の受信ジェスチャレコグナイザを例えば、識別ユニット1020で識別し、受信ジェスチャレコグナイザのうちの1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて個別のタッチを例えば、タッチ処理ユニット1014で処理することにより、複数のジェスチャレコグナイザの少なくとも部分集合に別個のデリゲートを例えば、割り当てユニット1018で割り当て、1つ以上のタッチの個別のタッチを処理するように構成される。一部の実施形態において、処理ユニット1006は、デリゲートが個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って割り当てられた個別の受信ジェスチャレコグナイザにおいて個別のタッチを例えば、タッチ処理ユニット1014で処理し、アプリケーション状態に従って1つ以上の値を判定するために割り当てられたデリゲートを例えば、実行ユニット1008で実行し、個別のジェスチャレコグナイザによる個別のタッチの処理の結果に従うとともに割り当てられたデリゲートにより判定された1つ以上の値に従って個別のタッチに対応する情報をソフトウェアアプリケーションに例えば、送信ユニット1016で条件付きで送信することにより1つ以上の受信ジェスチャレコグナイザの各ジェスチャレコグナイザにおいて個別のタッチを処理するように構成され、タッチの1つ以上に対応する、受信ジェスチャレコグナイザの1つ以上から受信された情報に従ってソフトウェアアプリケーションを例えば、実行ユニット1008で実行するように構成される。一部の実施形態において、処理ユニット1006は、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、状態遷移が割り当てられたデリゲートにより可能にされたときに例えば、レコグナイザ可能ユニット1022で可能にすることにより、個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理するように構成される。一部の実施形態において、処理ユニット1006は、検出されたタッチが個別のジェスチャ定義に整合している場合に、個別のジェスチャレコグナイザにおける対応する状態遷移を、状態遷移が割り当てられたデリゲートにより可能にされたときに例えば、レコグナイザ可能ユニット1022で条件付きで可能にすることにより、個別の受信ジェスチャレコグナイザにおいて個別のタッチを処理するように構成される。一部の実施形態において、処理ユニット1006は、第2ジェスチャレコグナイザに割り当てられたデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することにより、個別の受信ジェスチャレコグナイザにおいて個別のタッチを例えば、タッチ処理ユニット1014で処理するように構成される。一部の実施形態において、処理ユニット1006は、個別のジェスチャレコグナイザに割り当てられたデリゲートにより判定された1つ以上の値に従って第2ジェスチャレコグナイザにおいて個別のタッチを同時に処理することにより、個別の受信ジェスチャレコグナイザにおいて個別のタッチを例えば、タッチ処理ユニット1014で処理するように構成される。一部の実施形態によると、図11は、上述したような本発明の原理に従って構成された電子デバイス1100の機能ブロック図を示す。デバイスの機能ブロックは、本発明の原理を実行するためにハードウェア、ソフトウェア、あるいはハードウェアとソフトウェアとの組み合わせにより実現されうる。図11において説明する機能ブロックは、上述したような本発明の原理を実現するために組み合わされてもよく又はサブブロックに分離されてもよいことが当業者には理解される。従って、本明細書における説明は、本明細書で説明する機能ブロックの任意の可能な組み合わせ、分離又は更なる定義をサポートしうる。図11に示すように、電子デバイス1100は、1つ以上のタッチを受信するように構成されたタッチセンサ面ユニット1102と、タッチセンサ面ユニット1102に結合された処理ユニット1106とを含む。一部の実施形態において、電子デバイス1100は、処理ユニット1106に結合された表示ユニット1104も含む。一部の実施形態において、処理ユニット1106は、実行ユニット1108、表示可能ユニット1110、検出ユニット1112、タッチ処理ユニット1114、送信ユニット1116及び要求ユニット1118を含む。処理ユニット1106は、ソフトウェアアプリケーションを例えば、実行ユニット1108で実行し、ソフトウェアアプリケーションの1つ以上のビューの表示を例えば、表示ユニット1104に関する表示可能ユニット1110で可能にするように構成される。表示された1つ以上のビューは複数のジェスチャレコグナイザを含み、複数のジェスチャレコグナイザは少なくとも1つの離散ジェスチャレコグナイザと少なくとも1つの連続ジェスチャレコグナイザとを含む。離散ジェスチャレコグナイザは、個別のジェスチャに応答して単一の動作メッセージを送信するように構成され、連続ジェスチャレコグナイザは、認識された個別のジェスチャの認識された連続するサブイベントにおいて動作メッセージを送信するように構成される。処理ユニット1106は、タッチセンサ面ユニット1102において受信された1つ以上のタッチを例えば、検出ユニット1112で検出し、ジェスチャレコグナイザのうちの1つ以上を使用して各タッチを例えば、タッチ処理ユニット1114で処理するように構成される。処理ユニット1106は、個別のジェスチャレコグナイザに対応する個別のジェスチャ定義に従って個別のジェスチャレコグナイザにおいて個別のタッチを例えば、タッチ処理ユニット1114で処理し、個別のジェスチャレコグナイザにおける個別のタッチの処理の結果に従って1つ以上の個別の動作メッセージをソフトウェアアプリケーションに例えば、送信ユニット1116で条件付きで送信することにより個別のタッチを処理するように構成される。処理ユニット1106は、タッチのうちの1つ以上に対応するジェスチャレコグナイザの1つ以上から受信された1つ以上の動作メッセージに従ってソフトウェアアプリケーションを例えば、実行ユニット1108で実行するように構成される。一部の実施形態において、各ジェスチャレコグナイザは、ジェスチャレコグナイザ状態の集合を有する。一部の実施形態において、離散ジェスチャレコグナイザは、離散ジェスチャレコグナイザの初期状態に対応するジェスチャ可能状態と、個別のジェスチャの認識に対応するジェスチャ認識済状態と、離散ジェスチャレコグナイザが1つ以上のタッチを個別のジェスチャとして認識することに失敗したことに対応するジェスチャ失敗状態とを含むジェスチャレコグナイザ状態の第1集合を有する。連続ジェスチャレコグナイザは、ジェスチャ可能状態と、個別のジェスチャの初期認識に対応するジェスチャ開始済状態と、個別のタッチの位置の個別の変化に対応するジェスチャ変更済状態と、認識された個別のジェスチャの完了に対応するジェスチャ終了済状態と、個別のジェスチャの認識の割り込みに対応するジェスチャキャンセル済状態と、連続ジェスチャレコグナイザが1つ以上のタッチを個別のジェスチャとして認識することに失敗したことに対応するジェスチャ失敗状態とを含むジェスチャレコグナイザ状態の第2集合を有する。一部の実施形態において、ジェスチャ認識済状態及びジェスチャ終了済状態は、同一のジェスチャレコグナイザ状態値を有する。一部の実施形態において、ソフトウェアアプリケーションはアプリケーション状態を有し、処理ユニット1106は、ソフトウェアアプリケーションのアプリケーション状態にさらに従って1つ以上の動作メッセージを例えば、送信ユニット1116で条件付きで送信するように構成される。一部の実施形態において、処理ユニット1106は、個別のジェスチャレコグナイザからの追加の情報を例えば、要求ユニット1118で要求し、追加の情報にさらに従ってソフトウェアアプリケーションを例えば、実行ユニット1108で実行するように構成される。一部の実施形態において、追加の情報は、個別のジェスチャレコグナイザにおいて処理されたタッチの個数及び位置を含む。一部の実施形態において、少なくとも1つの離散ジェスチャレコグナイザは、タップジェスチャレコグナイザとスワイプジェスチャレコグナイザとのうちの1つ以上を含む。少なくとも1つの連続ジェスチャレコグナイザは、長押しジェスチャレコグナイザ、ピンチジェスチャレコグナイザ、パンジェスチャレコグナイザ、回転ジェスチャレコグナイザ及び変換ジェスチャレコグナイザのうちの1つ以上を含む。一部の実施形態において、少なくとも1つの離散ジェスチャレコグナイザは、タップジェスチャレコグナイザとスワイプジェスチャレコグナイザとを含む。少なくとも1つの連続ジェスチャレコグナイザは、長押しジェスチャレコグナイザと、ピンチジェスチャレコグナイザと、パンジェスチャレコグナイザと、回転ジェスチャレコグナイザと、変換ジェスチャレコグナイザとを含む。説明の目的で、特定の実施形態を参照して上記説明を行った。しかし、上記の例示的な説明は、本発明を網羅すること又は開示された厳密な形式に限定することを意図しない。多くの変更及び変形が上記教示に鑑みて可能である。本発明の原理及びその実際的な応用例を最適に説明するために実施形態を選択して説明した。これにより、当業者は、考えられる特定の用途に適するような本発明及び種々の変更を含む種々の実施形態を最適に利用できる。