(57)【要約】【課題】複数の情報処理装置を接続させてコンテンツを表示し、コンテンツに対するユーザ操作に応じた処理を連携処理させる情報処理システムを提供すること。【解決手段】情報処理システムの各情報処理装置は、コンテンツ表示の指示を受け付けた際に、一または複数の他の情報処理装置と接続し、コンテンツが表示された、自装置が備える画面に対する操作指示をタッチパネルを介して受け付け、当該操作指示に応じた処理を画面に反映し、操作指示の情報を他の情報処理装置に送信し、他の情報処理装置と接続中に、他の情報処理装置が備える画面に対する操作指示に応じて処理を行った他の情報処理装置から、当該処理に関する情報を受信し、当該情報に応じた処理を前記画面に反映する。【選択図】図３
2015075954.tif 000002
【特許請求の範囲】
【請求項１】
タッチパネルを備える複数の情報処理装置が通信を行う情報処理システムであって、
各情報処理装置は、
コンテンツ表示の指示を受け付けた際に、一または複数の他の情報処理装置と接続する接続手段と、
コンテンツが表示された、自装置が備える画面に対する操作指示を前記タッチパネルを介して受け付け、当該操作指示に応じた処理を前記画面に反映する反映手段と、
前記操作指示の情報を前記他の情報処理装置に送信する送信手段と、
前記他の情報処理装置と接続中に、前記他の情報処理装置が備える画面に対する操作指示に応じて処理を行った他の情報処理装置から、当該処理に関する情報を受信する受信手段と、を備え、
前記反映手段は、前記受信手段が前記他の情報処理装置から前記情報を受信した場合に当該情報に応じた処理を前記画面に反映する
ことを特徴とする情報処理システム。
【請求項２】
前記複数の情報処理のうちのいずれか一つがマスター装置として機能し、当該マスター装置以外の情報処理装置が、前記マスター装置から受信した前記情報に応じた処理の前記画面への反映を行うスレーブ装置として機能する
ことを特徴とする情報処理システム。
【請求項３】
前記接続手段により前記他の情報処理装置と接続した場合に、前記コンテンツ表示の指示を自装置と当該他の情報処理装置のうちのいずれが早く受け付けたかに応じて、自装置と当該他の情報処理装置が前記マスター装置、スレーブ装置のいずれであるかを決定する決定手段をさらに備える
ことを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記各情報処理装置が異なるコンテンツを表示している場合であって、前記マスター装置または前記スレーブ装置の画面に対するフリック操作を受け付けた場合に、前記マスター装置および前記スレーブ装置の反映手段は、各々が表示しているコンテンツの次ページのコンテンツまたは前ページのコンテンツを前記画面に反映する
ことを特徴とする請求項２または請求項３に記載の情報処理システム。
【請求項５】
前記フリック操作を受け付けていない情報処理装置の反映手段は、自装置の画面に対しホールド操作が実行されているか否かを判断し、前記ホールド操作が実行されていると判断した場合、前記フリック操作に対応する処理を反映させない
ことを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記各情報処理装置が同一のコンテンツを見開き表示している場合であって、前記マスター装置または前記スレーブ装置の画面に対するドラッグ操作を受け付けた場合に、前記マスター装置および前記スレーブ装置の反映手段は、各々が表示しているコンテンツの次ページのコンテンツまたは前ページのコンテンツを前記画面に反映する
ことを特徴とする請求項２または請求項３に記載の情報処理システム。
【請求項７】
前記各情報処理装置が同一のコンテンツを見開き表示している場合であって、前記マスター装置または前記スレーブ装置の画面に対するフリック操作を受け付けた場合に、前記マスター装置および前記スレーブ装置の反映手段は、当該フリック操作が二回実行されたものと判断し、表示されているコンテンツの次の見開きコンテンツまたは前の見開きコンテンツに対応するページを前記画面に反映する
ことを特徴とする請求項６に記載の情報処理システム。
【請求項８】
前記マスター装置の接続手段は、コンテンツ表示の指示を受け付けた際に前記スレーブ装置が起動していない場合、前記スレーブ装置に対し、起動して前記マスター装置が表示しているコンテンツに対応するコンテンツを表示するように指示する
ことを特徴とする請求項６または請求項７に記載の情報処理システム。
【請求項９】
タッチパネルを備える複数の情報処理装置が通信を行う情報処理システムにおける情報処理装置の制御方法であって、
コンテンツ表示の指示を受け付けた際に、他の情報処理装置と接続する接続工程と、
コンテンツが表示された、自装置が備える画面に対する操作指示を前記タッチパネルを介して受け付け、当該操作指示に応じた処理を前記画面に反映する反映工程と、
前記操作指示の情報を前記他の情報処理装置に送信する送信工程と、
前記他の情報処理装置と接続中に、前記他の情報処理装置が備える画面に対する操作指示に応じて処理を行った他の情報処理装置から、当該処理に関する情報を受信する受信工程と、を含み、
前記受信工程で前記他の情報処理装置から前記情報を受信した場合、前記反映工程では、当該情報に応じた処理を前記画面に反映する
ことを特徴とする制御方法。
【請求項１０】
請求項９に記載の制御方法をコンピュータにより実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理装置の制御方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
タブレット端末のようにタッチパネルを備えた情報処理装置が一般的に利用されている。このようなタブレット端末では、画面上に任意のコンテンツを表示し、その表示画面上で任意の操作を行うことでコンテンツに対する操作が可能である。そして、操作性を向上するため、タッチパネルに接触している指の数に応じて操作内容を変更させるものがある（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−１０２２７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
タブレット端末等の情報処理装置が備える画面は、持ち運びが考慮された大きさである。例えば、ユーザが２つのコンテンツを同時に確認したり比較したりする場合、そのような大きさの画面では、各コンテンツの表示サイズが小さくなり視認性が低い。そこで、２台の情報処理装置を用意し、一方の情報処理装置で１つのコンテンツを、もう一方の情報処理装置で別のコンテンツを表示することが考えられる。しかし、ユーザは、コンテンツに対して何等かの操作を行う際は、２台の情報処理装置の各々に操作を行わなければならない。本発明は、複数の情報処理装置を接続させてコンテンツを表示し、コンテンツに対するユーザ操作に応じた処理を連携処理させる情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の情報処理システムは、タッチパネルを備える複数の情報処理装置が通信を行うシステムである。各情報処理装置は、コンテンツ表示の指示を受け付けた際に、一または複数の他の情報処理装置と接続する接続手段と、コンテンツが表示された、自装置が備える画面に対する操作指示を前記タッチパネルを介して受け付け、当該操作指示に応じた処理を前記画面に反映する反映手段と、前記操作指示の情報を前記他の情報処理装置に送信する送信手段と、前記他の情報処理装置と接続中に、前記他の情報処理装置が備える画面に対する操作指示に応じて処理を行った他の情報処理装置から、当該処理に関する情報を受信する受信手段とを備える。前記反映手段は、前記受信手段が前記他の情報処理装置から前記情報を受信した場合に当該情報に応じた処理を前記画面に反映する。
【発明の効果】
【０００６】
本発明の情報処理システムによれば、複数の情報処理装置を接続させてコンテンツを表示し、コンテンツに対するユーザ操作に応じた処理を連携処理させることが可能となる。
【図面の簡単な説明】
【０００７】
【図１】本発明の情報処理装置のハードウェア構成例を示す図である。
【図２】各情報処理装置で動作するソフトウェア構成例を示す図である。
【図３】実施例１におけるマスター側装置の動作を示すフローチャートである。
【図４】実施例１におけるスレーブ側装置の動作を示すフローチャートである。
【図５】実施例２におけるマスター側装置の動作を示すフローチャートである。
【図６】実施例２におけるスレーブ側装置の動作を示すフローチャートである。
【図７】実施例３におけるマスター側装置の動作を示すフローチャートである。
【図８】実施例３におけるスレーブ側装置の動作を示すフローチャートである。
【図９】実施例１における情報処理装置の接続の様子を示す図である。
【図１０】実施例２における情報処理装置の接続の様子を示す図である。
【図１１】実施例１における操作例とその結果を示す図である。
【図１２】実施例２における操作例とその結果を示す図である。
【図１３】実施例３における操作例とその結果を示す図である。
【発明を実施するための形態】
【０００８】
図１は、本発明の情報処理システムの構成例を示す。図１は、本発明の各実施形態を適用可能な情報処理装置１０１ａ（以下、情報処置装置Ａと表記）と情報処理装置１０１ｂ（以下、情報処理装置Ｂと表記）のハードウェア構成とが接続された状態を示す。情報処理装置Ａは、ＣＰＵ１１１ａ、ＲＡＭ１１２ａ、ＲＯＭ１１３ａ、入力部１１４ａ、表示制御部１１５ａ、外部メモリＩＦ１１６ａ、通信ＩＦ１１７ａを備える。ＣＰＵ１１１ａ乃至通信ＩＦ１１７ａは、システムバス１１０ａに接続されており、システムバス１１０ａを介して互いにデータのやりとりを行うことができるように構成されている。また、情報処理装置Ａは、タッチパネル１１８ａ、ディスプレイ１１９ａ、外部メモリ１２０ａを備える。情報処理装置Ｂは情報処理装置Ａと同じ構成である。そのため、以下では情報処理装置Ａの詳細を説明し、情報処理装置Ｂについては説明を省略する。
【０００９】
ＣＰＵ１１１ａ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）は、例えばＲＯＭ１１３ａに格納されるプログラムに従い、ＲＡＭ１１２ａをワークメモリとして用いて、情報処理装置１０１ａの各部を制御する。ＲＡＭ１１２ａ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）は、揮発性のメモリであり、ＣＰＵ１１１ａの主メモリ、ワークエリア等の一時記憶領域として用いられる。ＲＯＭ１１３ａ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）は、不揮発性のメモリであり、画像データやその他のデータ、ＣＰＵ１１１ａが動作するための各種プログラムなどが、それぞれ所定の領域に格納される。なお、ＣＰＵ１１１ａが動作するためのプログラムは、ＲＯＭ１１３ａに限定されず、ハードディスク等の外部メモリ１２０ａに予め記憶しておいてもよい。
【００１０】
入力部１１４ａは、タッチパネル１１８ａなどを介してユーザ操作を受け付け、ユーザ操作に応じた制御信号を生成し、ＣＰＵ１１１ａに送信する。タッチパネル１１８ａは、例えば平面的に構成されており、接触された位置に応じた座標情報を出力できるポインティングデバイスである。ＣＰＵ１１１ａは、タッチパネル１１８ａに対してなされたユーザ操作に応じて入力部１１４ａが生成した制御信号を用い、情報処理装置Ａの各部を制御する。これにより、情報処理装置Ａに対し、ユーザ操作に応じた動作を行わせることができる。
【００１１】
表示制御部１１５ａは、ディスプレイ１１９ａに対して画像を表示させるための表示信号を出力する。例えば、ＣＰＵ１１１ａのプログラム実行に基づき、表示制御部１１５ａは表示信号を生成し、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成するＧＵＩ画面をディスプレイ１１９ａに表示させる。
【００１２】
タッチパネル１１８ａはディスプレイ１１９ａと一体的に構成される。例えば、タッチパネル１１８ａは、光の透過率がディスプレイ１１９の表示を妨げないように構成され、ディスプレイ１１９の表示面の上層に取り付けられる。そして、タッチパネル１１８ａの入力座標と、ディスプレイ１１９ａの表示座標とを対応付ける。これにより、あたかもユーザがディスプレイ１１９ａ上に表示された画面を直接的に操作可能であるかのようなＧＵＩを構成することができる。
【００１３】
外部メモリＩ／Ｆ１１６ａには、例えばハードディスクやメモリーカード等の取り外し可能な外部メモリ１２０ａを装着することができる。ＣＰＵ１１１ａの制御に基づき、部メモリＩ／Ｆ１１６ａは装着された外部メモリ１２０ａからのデータの読み出しや、当該外部メモリ１２０ａに対するデータの書き込みを行う。通信Ｉ／Ｆ１１７ａは、ＣＰＵ１１１ａの制御に基づき、有線、無線等の各種ネットワーク１０２に対する通信を行い、例えば、情報処理装置Ｂの通信ＩＦ１１７ｂと通信する。
【００１４】
タッチパネル１１８ａに対する操作や状態は、例えば以下の例が挙げられる。タッチパネルを指やペンで触れたこと（以下、タッチダウンと称する）。タッチパネルを指やペンで移動することなく固定位置で触れている状態であること（以下、タッチオンと称する）。タッチパネルを指やペンで触れたまま移動していること（以下、ムーブと称する）。タッチパネルへ触れていた指やペンを離したこと（以下、タッチアップと称する）。タッチパネルに何も触れていない状態（以下、タッチオフと称する）等である。
【００１５】
これらの操作や、タッチパネル上に指やペンが触れている位置座標はシステムバス１１０ａを通じてＣＰＵ１１１ａに通知される。ＣＰＵ１１１ａは、通知された情報に基づいてタッチパネル上にどのような操作が行なわれたかを判定する。ムーブについては、タッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分・水平成分毎に判定できる。またタッチパネル上をタッチダウンから一定のムーブを経てタッチアップをしたとき、ストロークを描いたこととする。
【００１６】
素早くストロークを描く操作をフリックと呼ぶ。フリックは、タッチパネル上に指を触れたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル上を指ではじくように素早くなぞる操作である。ＣＰＵ１１１ａは、所定距離以上を、所定速度以上でムーブしたことが検出され、そのままタッチアップが検出されるとフリックが行なわれたと判定できる。所定距離以上のムーブが検出され、そのままタッチオンが検出されている場合には、ドラッグが行なわれたと判定できる。また、タッチダウンを検出後、ムーブを検出せず、そのままタッチオンの状態が検出されている場合にはホールドが行われていると判定する。
【００１７】
タッチパネル１１８ａは、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【００１８】
図２は、本発明の各実施形態の情報処理装置ＡのＣＰＵ１１１ａと情報処理装置ＢのＣＰＵ１１１ｂで動作する各ソフトウェアのモジュール構成図である。情報処理装置Ａは、連携制御ソフトウェア２００ａとコンテンツ表示ソフトウェア２０４ａを備える。また、連携制御ソフトウェア２００ａは、連携制御部２０１ａ、操作情報管理部２０２ａ、表示情報管理部２０３ａを備える。同様に、情報処理装置Ｂは、連携制御ソフトウェア２００ｂとコンテンツ表示ソフトウェア２０４ｂを備える。また、連携制御ソフトウェア２００ｂは、連携制御部２０１ｂ、操作情報管理部２０２ｂ、表示情報管理部２０３ｂを備える。
【００１９】
ＣＰＵ１１１ａで動作する連携制御ソフトウェア２００ａとＣＰＵ１１１ｂで動作する連携制御ソフトウェア２００ｂは、情報処理装置Ａと情報処理装置Ｂが連携して動作するため、マスターとスレーブの関係を持つ。どちらがマスターになっても構わないが、ここでは連携制御ソフトウェア２００ａをマスター装置、連携制御ソフトウェア２００ｂをスレーブ装置として説明する。すなわち、複数の情報処理のうちのいずれか一つがマスター装置として機能し、当該マスター装置以外の情報処理装置が、スレーブ装置として機能する。なお、マスター装置とは、連携した他の装置の１または複数のプロセスを一方的に制御する装置を指す。スレーブ装置とは、連携したマスター装置によって１または複数のプロセスが制御される装置を指す。
【００２０】
ＣＰＵ１１１ａで動作するコンテンツ表示ソフトウェア２０４ａとＣＰＵ１１１ｂで動作するコンテンツ表示ソフトウェア２０４ｂは、任意のコンテンツの表示を行う。連携制御ソフトウェア２００ａは、コンテンツ表示ソフトウェア２０４ａの起動をはじめ、コンテンツ表示ソフトウェア２０４ａに対して様々な制御を行うことができる。同様に連携制御ソフトウェア２００ｂは、コンテンツ表示ソフトウェア２０４ｂに対して様々な制御を行うことができる。
【００２１】
マスターの操作情報管理部２０２ａは、タッチパネル１１８ａから入力されるユーザの操作情報を把握し、その管理を行うモジュールである。一方、スレーブの操作情報管理部２０２ｂは、タッチパネル１１８ｂから入力されるユーザの操作情報を把握し、その管理を行うモジュールである。
【００２２】
マスターの連携制御部２０１ａとスレーブの連携制御部２０１ｂは、連携機能を有し、互いの操作情報を送受信することができる。例えば、マスターの連携制御部２０１ａは、操作情報管理部２０２ａから取得した操作情報を、通信ＩＦ１１７ａを介して通信ＩＦ１１７ｂに送信することができる。
【００２３】
マスターの連携制御部２０１ａは、操作情報管理部２０２ａから取得した操作情報や連携制御部２０１ｂから受信した操作情報を表示情報管理部２０３ａに伝える。表示情報管理部２０３ａは、連携制御部２０１ａから伝えられた操作情報をコンテンツ表示ソフトウェア２０４ａに反映し、コンテンツ表示ソフトウェア２０４ａは操作情報に従いコンテンツの表示内容を更新する。
【００２４】
スレーブの連携制御部２０１ｂは、連携制御部２０１ａから受信した操作情報を表示情報管理部２０３ｂに伝える。表示情報管理部２０３ｂは、連携制御部２０１ｂから伝えられた操作情報をコンテンツ表示ソフトウェア２０４ｂに反映し、コンテンツ表示ソフトウェア２０４ｂは操作情報に従いコンテンツの表示内容を更新する。以上の構成により、情報処理装置Ａと情報処理装置Ｂが連携処理を行うことが可能となる。
【００２５】
（実施例１）
図３は本実施例でマスターとなる情報処理装置Ａ（１０１ａ）の動作を示すフローチャート図である。図４は本実施例でスレーブとなる情報処理装置Ｂ（１０１ｂ）の動作を示すフローチャート図である。説明の便宜上、マスターの連携制御ソフトウェア２００ａは、情報処理装置ＡのＣＰＵ１１１ａで、スレーブの連携制御ソフトウェア２００ｂは情報処理装置ＢのＣＰＵ１１１ｂで実行されるものとする。
【００２６】
Ｓ３０１において、ＣＰＵ１１１ａは連携制御ソフトウェア２００ａを起動する。情報処理装置Ａの電源投入時に予めプログラムされた起動なのか、ユーザの指示による起動なのかは、ここでは問わない。Ｓ３０２において、ＣＰＵ１１１ａはコンテンツ表示ソフトウェア２０４ａを起動し、コンテンツの内容を表示する。起動するソフトウェアや表示するコンテンツはユーザが選択することを想定する。
【００２７】
Ｓ３０３において、ＣＰＵ１１１ａは、他の情報処理装置と接続されたかどうかを確認する。接続の確認方法として、本実施例ではＢｌｕｅｔｏｏｔｈ（登録商標）技術を利用するが、これに限定されるものではない。情報処理装置Ａと情報処理装置Ｂを初めてＢｌｕｅｔｏｏｔｈ（登録商標）で接続する時は、接続相手を特定して双方に同一の認証キーを入力するペアリングと呼ばれる操作が必要である。本実施例ではこのようなペアリングは実施済であるものとする。情報処理装置Ｂとの接続を確認できた場合はＳ３０４の動作へ進み、確認できない場合はＳ３０３の動作を繰り返す。
【００２８】
Ｓ３０４において、連携制御部２０１ａは接続先の連携制御部２０１ｂと通信を行い、マスターとスレーブの役割を決定する。本実施例では、コンテンツ表示ソフトウェアを早く起動した方をマスターとする。ここでは情報処理装置Ａが情報処理装置Ｂの前にコンテンツ表示ソフトウェアを起動したものとする。従って、ここでは連携制御部２０１ａがマスターとなる。つまり、ここでは連携制御部２０１が、コンテンツ表示の指示を自装置と当該他の情報処理装置のうちのいずれが早く受け付けたかに応じて、自装置と当該他の情報処理装置が前記マスター装置、スレーブ装置のいずれであるかを決定する。Ｓ３０５において、連携制御部２０１ａは、操作情報管理部２０２ａの操作情報を取得する。
【００２９】
Ｓ３０６において、連携制御部２０１ａは、取得した操作情報がコンテンツ表示に反映が必要な操作か判断する。コンテンツ表示に反映が必要な操作とは、コンテンツのページをめくるフリック操作やコンテンツを動かすドラッグ操作や拡大縮小するピンチ操作のように、その操作によってコンテンツ表示ソフトウェアの表示内容が変わる操作のことである。単にタッチパネルに指が触れているだけのタッチオン操作のように表示内容が変わらない操作は、コンテンツ表示に反映が不要な操作となる。なお、フリック、ドラッグ、ピンチに限らず、回転など他の操作においても、コンテンツ表示ソフトウェアの表示内容が変わるものは全て、コンテンツ表示に反映が必要な操作の対象とする。取得した操作情報がコンテンツ表示に反映が必要な操作の場合はＳ３０８の動作へ進み、反映が不要な操作の場合はＳ３０７の動作へ進む。
【００３０】
Ｓ３０７において、連携制御部２０１ａは、接続先のスレーブである連携制御部２０１ｂから操作情報を受信したかどうかを確認する。換言すれば、連携制御部２０１ａは、他の情報処理装置と接続中に、当該他の情報処理装置が備える画面に対する操作指示に応じて処理を行った他の情報処理装置から、当該処理に関する情報を受信する。スレーブの連携制御部２０１ｂが操作情報を送信する動作については、図４のフローチャート図で説明するため、ここでは省略する。連携制御部２０１ｂから操作情報を受信した場合はＳ３０８の動作へ進み、受信してない場合はＳ３０５の動作に戻る。
【００３１】
Ｓ３０８において、連携制御部２０１ａは、Ｓ３０５で取得した操作情報またはＳ３０７で受信した操作情報を、表示情報管理部２０３ａに伝える。表示情報管理部２０３ａは、伝えられた操作情報をコンテンツ表示ソフトウェア２０４ａに反映する。本ステップの動作によって、情報処理装置Ａで動作するコンテンツ表示ソフトウェア２０４ａに、情報処理装置Ａ、Ｂの両方の操作を反映することができる。
【００３２】
Ｓ３０９において、連携制御部２０１ａは、Ｓ３０５で取得した操作情報かＳ３０７で受信した操作情報を、接続先のスレーブである連携制御部２０１ｂに送信する。スレーブの連携制御部２０１ｂは、スレーブの操作情報管理部２０２ｂから取得した操作情報に従って直ちに動作するのではなく、マスターの連携制御部２０１ａから受信する操作情報に従って動作する。そのため本ステップではスレーブから受信した操作情報も、マスターから送信する操作情報としてスレーブに送信している。
【００３３】
スレーブの情報処理装置Ｂ（１０１ｂ）の動作について、図４のフローチャート図を用いて説明する。Ｓ４０１において、ＣＰＵ１１１ｂは連携制御ソフトウェア２００ｂを起動する。情報処理装置Ｂの電源投入時に予めプログラムされた起動なのか、ユーザの指示による起動なのかは、ここでは問わない。Ｓ４０２において、ＣＰＵ１１１ｂはコンテンツ表示ソフトウェア２０４ｂを起動し、コンテンツの内容を表示する。起動するソフトウェアや表示するコンテンツはユーザが選択することを想定する。
【００３４】
Ｓ４０３において、ＣＰＵ１１１ｂは、他の情報処理装置と接続されたかどうかを確認する。図３のＳ３０３で述べた通り、接続の確認方法としてＢｌｕｅｔｏｏｔｈ（登録商標）技術を利用し、情報処理装置Ａと情報処理装置Ｂのペアリングは実施済とする。情報処理装置Ａ（１０１ａ）との接続を確認できた場合はＳ４０４の動作へ進み、確認できない場合はＳ４０３の動作を繰り返す。
【００３５】
Ｓ４０４において、連携制御部２０１ｂは接続先の連携制御部２０１ａと通信を行い、マスターとスレーブの役割を決定する。本実施例ではコンテンツ表示ソフトウェアを早い時間に起動した方をマスターとする。図３のＳ３０４で述べた通り、ここでは連携制御部２０１ａをマスター、連携制御部２０１ｂをスレーブとする。
【００３６】
Ｓ４０５において、連携制御部２０１ｂは、操作情報管理部２０２ｂの操作情報を取得する。Ｓ４０６において、連携制御部２０１ｂは、取得した操作情報がコンテンツ表示に反映が必要な操作か判断する。コンテンツ表示に反映が必要な操作と不要な操作については、図３のＳ３０６で説明した通りである。取得した操作情報がコンテンツ表示に反映が必要な操作の場合はＳ４０７の動作へ進み、不要な場合はＳ４０８の動作へ進む。
【００３７】
Ｓ４０７において、連携制御部２０１ｂは、Ｓ４０６で取得した操作情報を接続先のマスターである連携制御部２０１ａに送信する。本ステップで連携制御部２０１ｂが送信した操作情報を、図３のＳ３０７で連携制御部２０１ａが受信することになる。Ｓ４０８において、連携制御部２０１ｂは、接続先のマスターである連携制御部２０１ａから操作情報を受信したかどうかを確認する。図３のＳ３０９で連携制御部２０１ａが送信した操作情報を、本ステップで連携制御部２０１ｂが受信することになる。連携制御部２０１ａから操作情報を受信した場合はＳ４０９の動作へ進み、受信してない場合はＳ４０５の動作に戻る。
【００３８】
Ｓ４０９において、連携制御部２０１ｂは、Ｓ４０８で受信した操作情報を、表示情報管理部２０３ｂに伝える。表示情報管理部２０３ｂは、伝えられた操作情報をコンテンツ表示ソフトウェア２０４ｂに反映する。本ステップの動作によって、情報処理装置Ｂで動作するコンテンツ表示ソフトウェア２０４ｂに、情報処理装置Ａ、Ｂの両方の操作を反映することができる。
【００３９】
図９は、本実施例において情報処理装置Ａと情報処理装置Ｂが接続する様子を表した図である。図９（Ａ）はマスターとスレーブの関係が構築される前の状態を示す。それぞれの連携制御ソフトウェア（２００ａ、２００ｂ）は起動済である。また、情報処理装置Ａと情報処理装置Ｂはコンテンツ表示ソフトウェア（２０４ａ、２０４ｂ）を起動済で、それぞれ文書Ａの１ページ目、文書Ｂの１ページ目を表示している。
【００４０】
図９（Ｂ）は、マスターとスレーブの関係が構築された後の状態を示す。Ｓ３０４における連携制御ソフトウェア（２００ａ、２００ｂ）の働きによって、情報処理装置Ａがマスター、情報処理装置Ｂがスレーブとなっている。
【００４１】
図１０は、図９（Ｂ）の状態の情報処理装置Ａと情報処理装置Ｂに対して、本実施例における操作の一例を行い、その結果を表した図である。ユーザがマスターである情報処理装置Ａ上でページをめくるフリック操作を行うと、その操作は情報処理装置Ａ、Ｂ両方に反映され、情報処理装置Ａには文書Ａの２ページ目が、情報処理装置Ｂには文書Ｂの２ページ目が表示される（図１０（Ａ））。続いて、ユーザがスレーブである情報処理装置Ｂでページをめくるフリック操作を行うと、先と同様にその操作は情報処理装置Ａ、Ｂ両方に反映され、情報処理装置Ａには文書Ａの３ページ目が、情報処理装置Ｂは文書Ｂの３ページ目が表示される（図１０（Ｂ））。なお、本実施形態では、各情報処理装置はフリック操作により各々が表示しているページの次ページを表示するが、当然のことながら、フリック操作に応じて前ページが表示される。
【００４２】
上述の処理により、複数の情報処理装置を接続させてコンテンツを表示し、コンテンツに対するユーザ操作に応じた処理を連携処理させることが可能となる。本実施例によれば、２つの情報処理装置を利用して２つのコンテンツを同時に確認・比較する時、ユーザはページをめくる操作を各情報処理装置に対して行う必要はない。また、どちらの情報処理装置でもページをめくる操作が可能であり、操作性の高い情報処理装置システムをユーザに提供できる。
【００４３】
（実施例２）
図５は、実施例２でマスターとなる情報処理装置Ａ（１０１ａ）の動作を示すフローチャート図である。図６は本実施例でスレーブとなる情報処理装置Ｂ（１０１ｂ）の動作を示すフローチャート図である。実施例１と同様に説明の便宜上、マスターの連携制御ソフトウェア２００ａは情報処理装置ＡのＣＰＵ１１１ａで、スレーブの連携制御ソフトウェア２００ｂは情報処理装置ＢのＣＰＵ１１１ｂで実行されるものとする。
【００４４】
Ｓ５０１において、ＣＰＵ１１１ａは連携制御ソフトウェア２００ａを起動する。情報処理装置Ａの電源投入時に予めプログラムされた起動なのか、ユーザの指示による起動なのか、ここでは問わない。Ｓ５０２において、ＣＰＵ１１１ａはコンテンツ表示ソフトウェア２０４ａを起動し、コンテンツの内容を表示する。起動するソフトウェアや表示するコンテンツはユーザが選択することを想定する。
【００４５】
Ｓ５０３において、ＣＰＵ１１１ａは、他の情報処理装置と接続されたかどうかを確認する。接続の確認方法としては、実施例１と同様にＢｌｕｅｔｏｏｔｈ（登録商標）技術を利用するものとする。情報処理装置Ｂ（１０１ｂ）との接続を確認できた場合はＳ５０４の動作へ進み、確認できない場合はＳ５０３の動作を繰り返す。
【００４６】
Ｓ５０４において、連携制御部２０１ａは接続先の連携制御部２０１ｂと通信を行い、マスターとスレーブの役割を決定する。実施例１と同様に、コンテンツ表示ソフトウェアを早い時間に起動した方をマスターとするが、本実施例では情報処理装置Ｂ（１０１ｂ）がコンテンツ表示ソフトウェア２０４ｂを起動していない状態である。そこで、コンテンツ表示ソフトウェアを起動している情報処理装置をマスターとし、起動してない情報処理装置をスレーブとする仕様にして、その仕様に従ってマスターとスレーブを決定する。あるいはユーザにマスターとスレーブを選択させても良い。ここでは仕様に従って、連携制御部２０１ａをマスターとする。また、連携制御部２０１ａは、接続先の連携制御部２０１ｂに対し、コンテンツ表示ソフトウェアを起動し、自装置が表示中のコンテンツに対応するコンテンツを表示するよう指示する。
【００４７】
Ｓ５０５において、連携制御部２０１ａは、操作情報管理部２０２ａの操作情報を取得する。Ｓ５０６において、連携制御部２０１ａは、取得した操作情報がコンテンツ表示に反映が必要な操作か判断する。取得した操作情報がコンテンツ表示に反映が必要な操作の場合はＳ５０８の動作へ進み、不要な操作の場合はＳ５０７の動作へ進む。
【００４８】
Ｓ５０７において、連携制御部２０１ａは、接続先のスレーブである連携制御部２０１ｂから操作情報を受信したかどうかを確認する。スレーブの連携制御部２０１ｂが操作情報を送信する動作については、図６のフローチャート図で説明するため、ここでは省略する。連携制御部２０１ｂから操作情報を受信した場合はＳ５０８の動作へ進み、受信してない場合はＳ５０５の動作に戻る。
【００４９】
Ｓ５０８において、連携制御部２０１ａは、Ｓ５０５で取得した操作情報かＳ５０７で受信した操作情報が、ページをめくるフリック操作かどうかを確認する。また、連携制御部２０１ａは、マスターとスレーブで同一のコンテンツを表示中かどうかを確認する。同一コンテンツを表示中で、かつ操作情報がフリック操作の場合は、Ｓ５０９の動作へ進み、それ以外の場合はＳ５１０の動作へ進む。
【００５０】
Ｓ５０９において、連携制御部２０１ａは、フリック操作をマスターとスレーブの表示全体に対するフリック操作とする。情報処理装置Ａが文書Ａの１ページ目、情報処理装置Ｂが同じく文書Ａの２ページ目を表示しているとする。これまでの通常のフリック操作の場合は、各情報処理装置でページがめくられ、情報処理装置Ａには文書Ａの２ページ目、情報処理装置Ｂには文書Ａの３ページ目が表示される。しかし、マスターとスレーブの表示全体に対するフリック操作の場合は、情報処理装置Ａには文書Ａの３ページ目、情報処理装置Ｂには文書Ａの４ページ目が表示される。つまり、本のページをめくったような操作となる。
【００５１】
マスターとスレーブの表示全体に対するフリック操作を実現するため、本ステップではＳ５０５で取得した操作情報かＳ５０７で受信した操作情報を、その操作情報が示す操作（＝フリック操作）を２度繰り返す操作情報に変更する。Ｓ５１０において、連携制御部２０１ａは、操作情報を表示情報管理部２０３ａに伝える。表示情報管理部２０３ａは、伝えられた操作情報をコンテンツ表示ソフトウェア２０４ａに反映する。本ステップの動作によって、情報処理装置Ａで動作するコンテンツ表示ソフトウェア２０４ａに、情報処理装置Ａ、Ｂの両方の操作を反映することができる。Ｓ５１１において、連携制御部２０１ａは、操作情報を接続先のスレーブである連携制御部２０１ｂに送信する。
【００５２】
次にスレーブの情報処理装置Ｂ（１０１ｂ）の動作について、図６のフローチャート図を用いて説明する。Ｓ６０１において、ＣＰＵ１１１ｂは連携制御ソフトウェア２００ｂを起動する。情報処理装置Ｂの電源投入時に予めプログラムされた起動なのか、ユーザの指示による起動なのか、ここでは問わない。Ｓ６０２において、ＣＰＵ１１１ｂは、他の情報処理装置と接続されたかどうかを確認する。実施例１と同様に、接続の確認方法としてはＢｌｕｅｔｏｏｔｈ（登録商標）技術を利用するものとする。情報処理装置Ａ（１０１ａ）との接続を確認できた場合はＳ６０３の動作へ進み、確認できない場合はＳ６０２の動作を繰り返す。
【００５３】
Ｓ６０３において、連携制御部２０１ｂは接続先の連携制御部２０１ａと通信を行い、マスターとスレーブの役割を決定する。ここでは図５のＳ５０４で述べた通り、連携制御部２０１ａをマスター、連携制御部２０１ｂをスレーブとする。
【００５４】
Ｓ６０４において、連携制御部２０１ｂは、コンテンツ表示ソフトウェア２０４ｂを起動する。さらに連携制御部２０１ｂはコンテンツ表示ソフトウェア２０４ｂに対して、マスターの情報処理装置Ａでコンテンツ表示ソフトウェア２０４ａが表示しているコンテンツに対応するコンテンツを表示することを要求する。コンテンツに複数のページが含まれる場合、コンテンツ表示ソフトウェア２０４ａが表示しているページの次ページを表示することを要求する。Ｓ６０５において、連携制御部２０１ｂは、操作情報管理部２０２ｂの操作情報を取得する。
【００５５】
Ｓ６０６において、連携制御部２０１ｂは、取得した操作情報がコンテンツ表示に反映が必要な操作か判断する。取得した操作情報がコンテンツ表示に反映が必要な操作の場合はＳ６０７の動作へ進み、不要な操作の場合はＳ６０８の動作へ進む。Ｓ６０７において、連携制御部２０１ｂは、Ｓ６０５で取得した操作情報を接続先のマスターである連携制御部２０１ａに送信する。本ステップで連携制御部２０１ｂが送信した操作情報を、図５のＳ５０７で連携制御部２０１ａが受信することになる。
【００５６】
Ｓ６０８において、連携制御部２０１ｂは、接続先のマスターである連携制御部２０１ａから操作情報を受信したかどうかを確認する。図５のステップ５１１で連携制御部２０１ａが送信した操作情報を、本ステップで連携制御部２０１ｂが受信することになる。連携制御部２０１ａから操作情報を受信した場合はＳ６０９の動作へ進み、受信してない場合はＳ６０５の動作に戻る。
【００５７】
Ｓ６０９において、連携制御部２０１ｂは、Ｓ６０８で受信した操作情報を、表示情報管理部２０３ｂに伝える。表示情報管理部２０３ｂは、伝えられた操作情報をコンテンツ表示ソフトウェア２０４ｂに反映する。本ステップの動作によって、情報処理装置Ｂで動作するコンテンツ表示ソフトウェア２０４ｂに、情報処理装置Ａ、Ｂの両方の操作を反映することができる。
【００５８】
図１１は、本実施例において情報処理装置Ａ（１０１ａ）と情報処理装置Ｂ（１０１ｂ）が接続する様子を表した図である。図１１（Ａ）はマスターとスレーブの関係が構築される前の状態で、それぞれの連携制御ソフトウェア（２００ａ、２００ｂ）は起動済である。また、情報処理装置Ａは、コンテンツ表示ソフトウェア２０４ａを起動済で文書Ａの１ページ目を表示している。情報処理装置Ｂは、コンテンツ表示ソフトウェア２０４ｂを起動してない。
【００５９】
図１１（Ｂ）は、マスターとスレーブの関係が構築された直後の状態で、Ｓ５０４における連携制御ソフトウェア（２００ａ、２００ｂ）の働きによって、情報処理装置Ａがマスター、情報処理装置Ｂがスレーブとなっている。接続によって、情報処理装置Ｂは、コンテンツ表示ソフトウェア２０４ｂを起動している。また、情報処理装置Ａには文書Ａの１ページ目が表示されているため、その次のページにあたる文書Ａの２ページ目が情報処理装置Ｂに表示される。すなわち、図１１（Ｂ）は、見開きでコンテンツが表示された状態を示す。
【００６０】
図１２は、図１１（Ｂ）の状態の情報処理装置Ａ（１０１ａ）と情報処理装置Ｂ（１０１ｂ）に対して、本実施例における操作の一例を行い、その結果を表した図である。ユーザが情報処理装置Ｂ（情報処理装置Ａでも良い）でドラッグ操作を行うと、その操作は情報処理装置Ａ、Ｂ両方に反映され、情報処理装置Ａには文書Ａの２ページ目が、情報処理装置Ｂには文書Ａの３ページ目が表示される（図１２（Ａ））。続けて、ユーザが情報処理装置Ｂ（情報処理装置Ａでも良い）でページをめくるフリック操作を行うと、その操作は情報処理装置Ａ、Ｂ両方に反映される。ただし、このフリック操作は表示されている２ページ目、３ページ目の全体に対する二回のフリック操作とみなされ、情報処理装置Ａには文書Ａの４ページ目が、情報処理装置Ｂは文書Ａの５ページ目が表示される（図１２（Ｂ））。換言すれば、情報処理装置Ｂは、フリック操作を受け付けた場合に、当該フリック操作が二回実行されたものと判断し、表示されているコンテンツの次の見開きコンテンツまたは前の見開きコンテンツに対応するページを画面に反映する。
【００６１】
これまで述べたように、本実施例によれば、２つの情報処理装置を利用してコンテンツを確認・比較する場合、ユーザはページをめくる操作を各情報処理装置に対して行う必要はない。さらに従来の本と同じ感覚のページめくりができるため、より操作性の高い情報処理装置システムをユーザに提供できる。
【００６２】
（実施例３）
図７、図８は本実施例でマスターとなる情報処理装置Ａ（１０１ａ）とスレーブとなる情報処理装置Ｂ（１０１ｂ）の動作を示すフローチャート図である。情報処理装置Ａと情報処理装置Ｂの接続に関する動作は、実施例１、あるいは実施例２と同じなのでここでは省略する。Ｓ７０１において、連携制御部２０１ａは、操作情報管理部２０２ａの操作情報を取得する。Ｓ７０２において、連携制御部２０１ａは、取得した操作情報がコンテンツ表示に反映が必要な操作か判断する。取得した操作情報がコンテンツ表示に反映が必要な操作の場合はＳ７０４の動作へ進み、不要な操作の場合はＳ７０３の動作へ進む。
【００６３】
Ｓ７０３において、連携制御部２０１ａは、接続先のスレーブである連携制御部２０１ｂから操作情報を受信したかどうかを確認する。スレーブの連携制御部２０１ｂが操作情報を送信する動作については、図８のフローチャート図で説明する。
【００６４】
連携制御部２０１ｂから操作情報を受信した場合はＳ７０４の動作へ進み、受信してない場合はＳ７０１の動作に戻る。Ｓ７０４において、連携制御部２０１ａは、操作情報管理部２０２ａの操作情報がページを押さえること示すホールド操作かどうか確認する。ホールド操作の場合はＳ７０６の動作へ進み、それ以外の場合はＳ７０５の動作へ進む。
【００６５】
Ｓ７０５において、連携制御部２０１ａは、操作情報を表示情報管理部２０３ａに伝える。表示情報管理部２０３ａは、伝えられた操作情報をコンテンツ表示ソフトウェア２０４ａに反映する。本ステップの動作によって、情報処理装置Ａで動作するコンテンツ表示ソフトウェア２０４ａに、情報処理装置Ａ、Ｂの両方の操作を反映することができる。Ｓ７０６において、連携制御部２０１ａは、操作情報を接続先のスレーブである連携制御部２０１ｂに送信する。
【００６６】
次にスレーブの情報処理装置Ｂの動作について、図８のフローチャート図を用いて説明する。Ｓ８０１において、連携制御部２０１ｂは、操作情報管理部２０２ｂの操作情報を取得する。Ｓ８０２において、連携制御部２０１ｂは、取得した操作情報がコンテンツ表示に反映が必要な操作か判断する。取得した操作情報がコンテンツ表示に反映が必要な操作の場合はＳ８０３の動作へ進み、不要な操作の場合はＳ８０４の動作へ進む。
【００６７】
Ｓ８０３において、連携制御部２０１ｂは、Ｓ８０１で取得した操作情報を接続先のマスターである連携制御部２０１ａに送信する。本ステップで連携制御部２０１ｂが送信した操作情報を、図７のＳ７０３で連携制御部２０１ａが受信することになる。Ｓ８０４において、連携制御部２０１ｂは、接続先のマスターである連携制御部２０１ａから操作情報を受信したかどうかを確認する。図７のステップ７０６で連携制御部２０１ａが送信した操作情報を、本ステップで連携制御部２０１ｂが受信することになる。連携制御部２０１ａから操作情報を受信した場合はＳ８０５の動作へ進み、受信してない場合はＳ８０１の動作に戻る。
【００６８】
Ｓ８０５において、連携制御部２０１ｂは、操作情報管理部２０２ｂの操作情報がページを押さえることを示すホールド操作かどうか確認する。ホールド操作の場合はＳ８０１の動作に戻り、それ以外の場合はＳ８０６の動作へ進む。Ｓ８０６において、連携制御部２０１ｂは、Ｓ８０４で受信した操作情報を、表示情報管理部２０３ｂに伝える。表示情報管理部２０３ｂは、伝えられた操作情報をコンテンツ表示ソフトウェア２０４ｂに反映する。本ステップの動作によって、情報処理装置Ｂで動作するコンテンツ表示ソフトウェア２０４ｂに、情報処理装置Ａ、Ｂの両方の操作を反映することができる。
【００６９】
図１３は、図９（Ｂ）の状態の情報処理装置Ａ（１０１ａ）と情報処理装置Ｂ（１０１ｂ）に、本実施例における操作の一例を行い、その結果を表した図である。ユーザが情報処理装置Ａでホールド操作したまま、情報処理装置Ｂでページをめくるフリック操作を行うと、情報処理装置Ａには文書Ａの１ページ目がそのまま表示され、情報処理装置Ｂには文書Ｂの２ページ目が表示される。
【００７０】
これまで述べたように、本実施例によれば、あるコンテンツの表示を残しながら、他のコンテンツの表示を変えることを直感的な操作性で実現できる。実施例１、２の操作性に加えて、さらに操作性の高い情報処理装置システムをユーザに提供できる。
【００７１】
なお、本明細書を通して説明した本発明の情報処理システムは、２台の情報処理装置を例に説明したが、これに限定されるものではない。例えば、３台以上の情報処理装置が連携することにより連携表示を行うことも可能である。この場合、１台の情報処理装置がマスターとして機能し、残りの情報処理装置がスレーブとして機能する。いずれかのスレーブ装置の画面上でタッチパネルを介して操作指示が行われた場合、図３のＳ３０７で、マスター装置は全てのスレーブ装置から操作情報を待つ。そしてＳ３０８で操作情報が示す操作をマスター装置が備える画面上に反映し、Ｓ３０９で該操作情報を全てのスレーブ装置に同時に送信する構成としてもよい。この構成により、スレーブ装置は他のスレーブ装置からの操作情報を待たずともマスター装置からの操作情報を待つだけでよく、簡易な構成で連携処理を実現できる。
【００７２】
また、本明細書を通して説明した本発明の情報処理システムは、２台の情報処理装置が左右方向に配置される構成を示したが、これに限定されるものではない。例えば、装置が横向きかつ上下に配置されてもよく、一方が縦向きの状態でコンテンツを表示し、他方が横向きの状態でコンテンツを表示する構成でもよい。
【００７３】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００７４】
１１０ａ，１１０ｂ  情報処理装置
２００ａ，２００ｂ  連携制御ソフトウェア
【図１】
2015075954.tif 000003
【図２】
2015075954.tif 000004
【図３】
2015075954.tif 000005
【図４】
2015075954.tif 000006
【図５】
2015075954.tif 000007
【図６】
2015075954.tif 000008
【図７】
2015075954.tif 000009
【図８】
2015075954.tif 000010
【図９】
2015075954.tif 000011
【図１０】
2015075954.tif 000012
【図１１】
2015075954.tif 000013
【図１２】
2015075954.tif 000014
【図１３】
2015075954.tif 000015