(57)【要約】【課題】コンテンツの配列条件を切り替えて表示させる場合であっても、迅速にコンテンツの表示を行うようにすることを目的とする。【解決手段】記憶装置に記憶されているコンテンツを一時記憶装置毎に設定された配列条件に応じて、取得し、各一時記憶装置に記憶するコンテンツ記憶手段と、選択された配列条件に基づいて、対応する一時記憶装置に記憶されているコンテンツを読み出す読み出し手段と、読み出したコンテンツを表示する表示制御手段と、表示されているコンテンツの内、選択コンテンツが変更された場合、選択された配列条件に対応する一時記憶装置に記憶されている選択コンテンツを指し示す表示選択コンテンツ情報を、移動させると共に、選択コンテンツに対応し、前記一時記憶装置とは異なる一時記憶装置において基準となるコンテンツを指し示す基準コンテンツ情報を、移動させるコンテンツ情報制御手段と、を有することを特徴とする。【選択図】図２
2008263540.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置に記憶されているコンテンツを一時記憶装置毎に設定された配列条件に応じて、取得し、各一時記憶装置に記憶するコンテンツ記憶手段と、
選択された配列条件に基づいて、対応する一時記憶装置に記憶されているコンテンツを読み出す読み出し手段と、
前記読み出し手段が読み出したコンテンツを表示装置に表示する表示制御手段と、
前記表示装置に表示されているコンテンツの内、ユーザによって選択されている選択コンテンツが変更された場合、前記選択された配列条件に対応する一時記憶装置に記憶されている前記選択コンテンツを指し示す表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記選択コンテンツに対応し、前記一時記憶装置とは異なる一時記憶装置において基準となるコンテンツを指し示す基準コンテンツ情報を、前記変更に応じて、移動させるコンテンツ情報制御手段と、
を有することを特徴とするコンテンツ表示装置。
【請求項２】
配列条件の変更がされた場合、
前記コンテンツ情報制御手段は、変更された配列条件に対応する一時記憶装置に係る前記基準コンテンツ情報を前記表示選択コンテンツ情報に変更し、
前記読み出し手段は、前記変更された表示選択コンテンツ情報に基づき、前記一時記憶装置よりコンテンツを読み出すことを特徴とする請求項１に記載のコンテンツ表示装置。
【請求項３】
前記基準コンテンツ情報が指し示すコンテンツが前記異なる一時記憶装置に記憶されていない場合、前記コンテンツ記憶手段は、前記一時記憶装置に設定された配列条件に応じて、前記基準コンテンツ情報が指し示すコンテンツを含むコンテンツ群を前記記憶装置より取得し、前記一時記憶装置に記憶することを特徴とする請求項１又は２に記載のコンテンツ表示装置。
【請求項４】
一時記憶装置毎に設定された配列条件がグループの関係を有する場合、前記コンテンツ情報制御手段は、前記表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記変更及び前記コンテンツのグループ情報に基づいて、前記基準コンテンツ情報を移動させるか否か判断し、移動させると判断した場合に、前記基準コンテンツ情報を、前記変更及び前記コンテンツのグループ情報に応じて、移動させることを特徴とする請求項１乃至３の何れか１項に記載のコンテンツ表示装置。
【請求項５】
前記表示選択コンテンツ情報の移動に伴い、一時記憶装置の領域の内、前記表示装置に表示されているコンテンツに係る領域を示す表示コンテンツエリアを移動させ、前記表示コンテンツエリアが前記一時記憶装置に対して設定された基準点を超えたか否かを判断するコンテンツ管理手段を更に有し、
前記コンテンツ記憶手段は、前記コンテンツ管理手段において前記表示コンテンツエリアが前記基準点を超えたと判断された場合に、前記記憶装置よりコンテンツを読み出すことを特徴とする請求項１乃至４の何れか１項に記載のコンテンツ表示装置。
【請求項６】
前記基準コンテンツ情報の移動に伴い、一時記憶装置の領域の内、前記表示装置に表示されているコンテンツに対応するコンテンツに係る領域を示す表示コンテンツエリアを移動させ、前記表示コンテンツエリアが前記一時記憶装置のコンテンツを記憶するエリアを越えたか否かを判断するコンテンツ管理手段を更に有し、
前記コンテンツ記憶手段は、前記コンテンツ管理手段において前記表示コンテンツエリアが前記コンテンツを記憶するエリアを越えたと判断された場合に、前記記憶装置よりコンテンツを読み出すことを特徴とする請求項１乃至４の何れか１項に記載のコンテンツ表示装置。
【請求項７】
コンテンツ表示装置におけるコンテンツ表示方法であって、
記憶装置に記憶されているコンテンツを一時記憶装置毎に設定された配列条件に応じて、取得し、各一時記憶装置に記憶するコンテンツ記憶ステップと、
選択された配列条件に基づいて、対応する一時記憶装置に記憶されているコンテンツを読み出す読み出しステップと、
前記読み出しステップにおいて読み出されたコンテンツを表示装置に表示する表示制御ステップと、
前記表示装置に表示されているコンテンツの内、ユーザによって選択されている選択コンテンツが変更された場合、前記選択された配列条件に対応する一時記憶装置に記憶されている前記選択コンテンツを指し示す表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記選択コンテンツに対応し、前記一時記憶装置とは異なる一時記憶装置において基準となるコンテンツを指し示す基準コンテンツ情報を、前記変更に応じて、移動させるコンテンツ情報制御ステップと、
を有することを特徴とするコンテンツ表示方法。
【請求項８】
配列条件の変更がされた場合、
前記コンテンツ情報制御ステップでは、変更された配列条件に対応する一時記憶装置に係る前記基準コンテンツ情報を前記表示選択コンテンツ情報に変更し、
前記読み出しステップでは、前記変更された表示選択コンテンツ情報に基づき、前記一時記憶装置よりコンテンツを読み出すことを特徴とする請求項７に記載のコンテンツ表示方法。
【請求項９】
前記基準コンテンツ情報が指し示すコンテンツが前記異なる一時記憶装置に記憶されていない場合、前記コンテンツ記憶ステップでは、前記一時記憶装置に設定された配列条件に応じて、前記基準コンテンツ情報が指し示すコンテンツを含むコンテンツ群を前記記憶装置より取得し、前記一時記憶装置に記憶することを特徴とする請求項７又は８に記載のコンテンツ表示方法。
【請求項１０】
一時記憶装置毎に設定された配列条件がグループの関係を有する場合、前記コンテンツ情報制御ステップでは、前記表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記変更及び前記コンテンツのグループ情報に基づいて、前記基準コンテンツ情報を移動させるか否か判断し、移動させると判断した場合に、前記基準コンテンツ情報を、前記変更及び前記コンテンツのグループ情報に応じて、移動させることを特徴とする請求項７乃至９の何れか１項に記載のコンテンツ表示方法。
【請求項１１】
前記表示選択コンテンツ情報の移動に伴い、一時記憶装置の領域の内、前記表示装置に表示されているコンテンツに係る領域を示す表示コンテンツエリアを移動させ、前記表示コンテンツエリアが前記一時記憶装置に対して設定された基準点を超えたか否かを判断するコンテンツ管理ステップを更に有し、
前記コンテンツ記憶ステップでは、前記コンテンツ管理ステップにおいて前記表示コンテンツエリアが前記基準点を超えたと判断された場合に、前記記憶装置よりコンテンツを読み出すことを特徴とする請求項７乃至１０の何れか１項に記載のコンテンツ表示方法。
【請求項１２】
前記基準コンテンツ情報の移動に伴い、一時記憶装置の領域の内、前記表示装置に表示されているコンテンツに対応するコンテンツに係る領域を示す表示コンテンツエリアを移動させ、前記表示コンテンツエリアが前記一時記憶装置のコンテンツを記憶するエリアを越えたか否かを判断するコンテンツ管理ステップを更に有し、
前記コンテンツ記憶ステップでは、前記コンテンツ管理ステップにおいて前記表示コンテンツエリアが前記コンテンツを記憶するエリアを越えたと判断された場合に、前記記憶装置よりコンテンツを読み出すことを特徴とする請求項７乃至１０の何れか１項に記載のコンテンツ表示方法。
【請求項１３】
コンピュータを、
記憶装置に記憶されているコンテンツを一時記憶装置毎に設定された配列条件に応じて、取得し、各一時記憶装置に記憶するコンテンツ記憶手段と、
選択された配列条件に基づいて、対応する一時記憶装置に記憶されているコンテンツを読み出す読み出し手段と、
前記読み出し手段が読み出したコンテンツを表示装置に表示する表示制御手段と、
前記表示装置に表示されているコンテンツの内、ユーザによって選択されている選択コンテンツが変更された場合、前記選択された配列条件に対応する一時記憶装置に記憶されている前記選択コンテンツを指し示す表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記選択コンテンツに対応し、前記一時記憶装置とは異なる一時記憶装置において基準となるコンテンツを指し示す基準コンテンツ情報を、前記変更に応じて、移動させるコンテンツ情報制御手段と、
して機能させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを記憶したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示装置にコンテンツを表示するコンテンツ表示装置及びコンテンツ表示方法に関する。
【背景技術】
【０００２】
近年、コンテンツを撮影するカメラや放送コンテンツ等を記録するディスクレコーダ等のデバイスにもコンテンツが蓄積できるようになっている。また、このようなデバイスに蓄積されたコンテンツを一覧表示することができる表示装置も存在する。
【０００３】
このような表示装置の中には、コンテンツのリストをコンテンツ名としてテキストで表示するものがある。また、コンテンツのサムネイルを表示したり、特徴部分を一部再生したりすることでコンテンツの概要を明示的に表示する表示装置もある。このような表示装置では、コンテンツを日付順やファイル名順といった様々な順序で一覧表示することにより、コンテンツの概要をわかりやすく表示すると共に、目的のコンテンツを早く検索できるようになっている。
【０００４】
しかしながら、コンテンツやサムネイルの一覧表示を様々な順序で切り替えて表示を行う際、表示を切り替える度に、データを読み込むため、コンテンツやサムネイルの一覧表示を速く行うことができない問題があった。
【０００５】
このような問題に対して、表示操作の指示がある前に表示画像データに関連する拡大画像又は縮小画像といった関連する画像を先読みし、バッファに格納して、表示を速く行う技術がある（例えば、特許文献１参照）。
【０００６】
また、一定の配列に並べられた画像を表示するにあたり、現在表示されている画像の前後の画像、又は前後の複数の画像をバッファに先読みし、保持することで、画像の表示を速く行う技術もある（例えば、特許文献２参照）。
【０００７】
【特許文献１】特開２００１−２４９６５３号公報
【特許文献２】特開２００２−１０１３２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述したコンテンツを表示させる技術では、１つの配列条件で並べられたコンテンツの表示から、異なる配列条件で並べられるコンテンツの表示に切り替えられた場合、バッファにコンテンツを再度、読み出す必要がある。即ち、配列条件を切り替えて表示する場合、コンテンツの表示速度が遅くなるという問題が生じる。
【０００９】
本発明はこのような問題点に鑑みてなされたものであり、コンテンツの配列条件を切り替えて表示させる場合であっても、迅速にコンテンツの表示を行うようにすることを目的とする。
【課題を解決するための手段】
【００１０】
そこで、本発明のコンテンツ表示装置は、記憶装置に記憶されているコンテンツを一時記憶装置毎に設定された配列条件に応じて、取得し、各一時記憶装置に記憶するコンテンツ記憶手段と、選択された配列条件に基づいて、対応する一時記憶装置に記憶されているコンテンツを読み出す読み出し手段と、前記読み出し手段が読み出したコンテンツを表示装置に表示する表示制御手段と、前記表示装置に表示されているコンテンツの内、ユーザによって選択されている選択コンテンツが変更された場合、前記選択された配列条件に対応する一時記憶装置に記憶されている前記選択コンテンツを指し示す表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記選択コンテンツに対応し、前記一時記憶装置とは異なる一時記憶装置において基準となるコンテンツを指し示す基準コンテンツ情報を、前記変更に応じて、移動させるコンテンツ情報制御手段と、を有することを特徴とする。
【００１１】
また、本発明は、コンテンツ表示装置におけるコンテンツ表示方法であって、記憶装置に記憶されているコンテンツを一時記憶装置毎に設定された配列条件に応じて、取得し、各一時記憶装置に記憶するコンテンツ記憶ステップと、選択された配列条件に基づいて、対応する一時記憶装置に記憶されているコンテンツを読み出す読み出しステップと、前記読み出しステップにおいて読み出されたコンテンツを表示装置に表示する表示制御ステップと、前記表示装置に表示されているコンテンツの内、ユーザによって選択されている選択コンテンツが変更された場合、前記選択された配列条件に対応する一時記憶装置に記憶されている前記選択コンテンツを指し示す表示選択コンテンツ情報を、前記変更に応じて、移動させると共に、前記選択コンテンツに対応し、前記一時記憶装置とは異なる一時記憶装置において基準となるコンテンツを指し示す基準コンテンツ情報を、前記変更に応じて、移動させるコンテンツ情報制御ステップと、を有することを特徴とする。
【００１２】
また、本発明は、プログラム及び記憶媒体としてもよい。
【発明の効果】
【００１３】
本発明によれば、コンテンツの配列条件を切り替えて表示させる場合であっても、迅速にコンテンツの表示を行うようにすることができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施形態について図面に基づいて説明する。
【００１５】
図１は、コンテンツ表示装置のハードウェア構成の一例を示す図である。
図１において、コンテンツ表示装置１は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、入力装置１４と、表示装置１５と、ディスク１６と、を含んで構成される。また、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、入力装置１４と、表示装置１５と、ディスク１６と、はバスを介して互いに接続されている。
【００１６】
ＣＰＵ１１は、例えばディスク１６等に記憶されているコンテンツ表示に関するプログラムを必要に応じてＲＡＭ１３に読み出し、このプログラムに基づき、処理を実行する。このことにより、後述するコンテンツ表示装置の機能が実現する、又はフローチャートの各ステップが実行される。ＲＯＭ１２には、電源投入時に最初に読み込まれるプログラムや、プログラムの実行に必要なデータ等が格納されている。ＲＡＭ１３は、ＣＰＵ１１がプログラムに基づき、処理を実行する際のワークメモリとして用いられる。なお、本実施形態では、ＲＡＭ１３は、後述するバッファとしても用いられる。入力装置１４は、ユーザのコンテンツ選択操作や入力操作に関する情報を入力する。表示装置１５は、コンテンツ等の一覧を表示する。記憶装置の一例であるディスク１６は、コンテンツ表示に関するプログラム以外に、コンテンツ、メタデータ、サムネイル等を記憶する。
【００１７】
図２は、コンテンツ表示装置１の機能構成の一例を示す図である。
図２において、表示ＵＩ部１０１は、表示ＵＩに関する制御を行い、コンテンツを表示装置１５に表示したり、入力装置１４を介した、表示装置１５に表示されているコンテンツの選択や表示の切り替え等に関するデータを入力（又は取得）したりする。ここで、表示ＵＩ部１０１は、表示制御手段の一例である。
読み出し手段の一例である表示データ読み出し部１０２は、表示に係るバッファ（以下、カレントバッファという）における基準となるポインタ（表示位置ポインタ）から表示に必要なコンテンツを読み出す。また、表示データ読み出し部１０２は、表示ＵＩ部１０１からの指示により複数のバッファの内、表示に係るバッファ、即ちカレントバッファを切り替えてコンテンツを読み出す。ここで、ポインタは、カレントバッファ内での後述する表示選択コンテンツを指し示す情報である表示位置ポインタと、後述するバックグラウンドバッファ内の表示選択コンテンツに対応する基準コンテンツを指し示す基準ポインタと、がある。表示位置ポインタは、表示選択コンテンツを指し示す表示選択コンテンツ情報である。基準ポインタは、基準コンテンツを指し示す基準コンテンツ情報である。
【００１８】
カレントバッファ情報部１０３は、カレントバッファの情報を保持する。
ポインタ制御部１０４は、カレントバッファに含まれ、表示装置１５に表示されているコンテンツの内、ユーザに選択されているコンテンツ（表示選択コンテンツ）の位置を指し示す表示位置ポインタをユーザのコンテンツ選択の変更に応じて、移動させる。また、ポインタ制御部１０４は、表示位置ポインタの移動に応じて、表示位置ポインタが指し示すコンテンツに対応する、カレントバッファと異なるバッファの基準となるコンテンツを示すポインタ（基準ポインタ）を移動させる。つまり、ポインタ制御部１０４は、表示位置ポイントの移動に連動させて、基準ポインタを移動させる。ここで、ポインタ制御部１０４は、コンテンツ情報制御手段の一例である。なお、以下、カレントバッファと異なるバッファをバックグランドバッファという。
【００１９】
位置情報部１０５は、表示位置ポインタに基づき、表示選択コンテンツのカレントバッファ内での位置情報を管理する。また、位置情報部１０５は、基準ポインタに基づき、この表示選択コンテンツに対応するバックグランドバッファ内のコンテンツ（基準コンテンツ）の位置情報を管理する。
コンテンツ管理手段の一例であるキャッシュコンテンツ管理部１０６は、位置情報部１０５が管理するバッファ内でのコンテンツの位置情報及びバッファに読み込まれているコンテンツを管理する。また、キャッシュコンテンツ管理部１０６は、必要に応じて後述するデータベース読み出し部１０７にコンテンツの読み出しに係る指示を行う。
【００２０】
コンテンツ記憶手段の一例であるデータベース読み出し部１０７は、バッファに対応する配列条件（ソート条件、グループ条件）や、コンテンツの個数に応じて、コンテンツを読み出すためのコマンド（以下、クエリという）を作成する。なお、データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示に基づき、クエリを作成し、データベース１０８に対して発行する。
データベース１０８は、発行されたクエリに従い、指定された配列条件でディスク１６からコンテンツを読み出す。
【００２１】
一時記憶装置の一例であるバッファ２１〜２３は、指定された配列条件で読み出されたコンテンツを一時的に記憶する。つまり、バッファ（各一時記憶装置）は、バッファ毎（各一時記憶装置毎）に、それぞれ異なる配列条件で配列されたコンテンツを記憶する。
配列条件保持部３１は、バッファ２１に対応する配列条件（ソート条件、グループ条件）を保持する。また、配列条件保持部３２は、バッファ２２に対応する配列条件を保持する。また、配列条件保持部３３は、バッファ２３に対応する配列条件を保持する。なお、データベース読み出し部１０７は、各配列条件保持部の配列条件を利用して、クエリを作成する。
【００２２】
図３は、各バッファ内でソート条件毎に配列されたコンテンツのポインタの概念図を示す一例である。
図３（Ａ）は、初期バッファの状態を示している。また図３（Ｂ）は、表示選択コンテンツが変更されたときのバッファの状態を示している。図３の例では、カレントバッファは日付順にソートするように指定されている。即ち、カレントバッファに対応する配列条件保持部には、日付順のソート条件が保持されている。また、各バックグランドバッファは、それぞれイベント順、人物順にソートするように指定されている。即ち、各バックグランドバッファに対応する各配列条件保持部には、イベント順のソート条件と、人物順のソート条件と、が保持されている。
【００２３】
２０１は、ポインタ制御部１０４で制御されているカレントバッファにおける表示選択コンテンツを指し示す表示位置ポインタ２０１である。２０２は、ポインタ制御部１０４で制御されているバックグラウンドバッファ（例えばバッファ２２）の基準コンテンツを指し示す基準ポインタである。２０３は、ポインタ制御部１０４で制御されているバックグラウンドバッファ（例えばバッファ２３）の基準コンテンツを指し示す基準ポインタである。図３の例では、ポインタ制御部１０４は、表示選択コンテンツと同一のコンテンツを示すように基準コンテンツの基準ポインタを制御（移動）する。
【００２４】
例えば、図３（Ａ）において、ユーザの表示選択コンテンツの変更に応じて、ポインタ制御部１０４は、カレントバッファの表示選択コンテンツの表示位置ポインタをコンテンツ３からコンテンツ２を指し示すように移動させる（又は変更する）。また、ポインタ制御部１０４は、イベント順にソートされているバックグランドバッファの基準コンテンツの基準ポインタも、コンテンツ３からコンテンツ２を指し示すように移動させる。また、ポインタ制御部１０４は、人物順にソートされているバックグランドバッファの基準コンテンツの基準ポインタも、コンテンツ３からコンテンツ２を指し示すように移動させる。
【００２５】
また、ユーザがコンテンツ４を選択するよう例えば入力装置１４等を用いて操作すると、ポインタ制御部１０４は、このユーザの表示選択コンテンツの変更に応じて、カレントバッファの表示選択コンテンツの表示位置ポインタを以下のように移動させる。つまり、ポインタ制御部１０４は、表示位置ポインタを例えばコンテンツ２からコンテンツ４を指し示すように移動させる。
【００２６】
また、ポインタ制御部１０４は、イベント順にソートされているバックグランドバッファの基準コンテンツの基準ポインタも、コンテンツ２からコンテンツ４を指し示すように移動させようとする。しかし、イベント順にソートされているバックグランドバッファ内にはコンテンツ４はない。そのため、キャッシュコンテンツ管理部１０６は、データベース読み出し部１０７にコンテンツ４の読み出しに係る指示を出す。この指示を受け取ったデータベース読み出し部１０７は、コンテンツ４を基準とするイベント順のソート条件のクエリを作成（発行）する。次に、データベース１０８は、発行されたクエリに従い、指定されたソート条件でディスク１６からコンテンツを読み出す。データベース読み出し部１０７は、データベース１０８からコンテンツを受け取ると、バックグランドバッファにコンテンツ４を基準としてコンテンツを記憶する。このとき、ポインタ制御部１０４は、基準コンテンツの基準ポインタを、コンテンツ４を指し示すように移動させる。
【００２７】
また、ポインタ制御部１０４は、人物順にソートされているバックグランドバッファの基準コンテンツの基準ポインタもコンテンツ２からコンテンツ４を示すように移動させる。その結果、バッファの状態が図３（Ｂ）のようになる。
【００２８】
図４及び図５は表示装置１５に表示されるコンテンツの一例を示す図である。
図４及び図５に示されるように、カレントバッファは、日付順にソートするように指定されている。表示ＵＩ部１０１は、表示データ読み出し部１０２を介して、カレントバッファから読み出したコンテンツを表示装置１５に３０１のビュー（画面）のように表示する。３０１では、表示選択コンテンツとして、コンテンツ３が選択されている。
【００２９】
この状態で、ユーザは例えば入力装置１４等を用いて表示装置１５に表示されている画面を操作して、コンテンツをイベント順にソートするように選択することができる。このように、現在選択されているソート条件と異なるソート条件を選択して、表示を切り替えることを表示の切り替え（配列条件の変更）という。
【００３０】
前記選択に応じて、カレントバッファを、コンテンツがイベント順にソートされ、記憶されているバッファに変更されると、表示ＵＩ部１０１は、このバッファに記憶されているコンテンツを表示装置１５に３０２のビューのように表示するよう、表示を切り替える。また、３０２のビューに示されるように、表示ＵＩ部１０１は、ソート条件が切り替えられる前の表示選択コンテンツであったコンテンツ３を、表示選択コンテンツとして表示する。また、表示ＵＩ部１０１は、表示選択コンテンツの周辺のコンテンツとして、コンテンツ５、コンテンツ９、コンテンツ６、コンテンツ２を表示する。
【００３１】
次に、ユーザが例えば入力装置１４等を用いて表示装置１５に表示されている画面を操作して、人物順にソートするように選択したとする。前記選択に応じて、カレントバッファを、コンテンツが人物順にソートされ、記憶されているバッファに変更されると、表示ＵＩ部１０１は、このバッファに記憶されているコンテンツを表示装置１５に３０３のビューのように表示するよう、表示を切り替える。表示ＵＩ部１０１は、コンテンツ３を、同様に表示選択コンテンツとして表示する。
【００３２】
次に、図４の３０１のビューのようにコンテンツが配列されている状態から、ユーザは入力装置１４等を用いて表示装置１５に表示されている画面を操作して、表示選択コンテンツを、コンテンツ３からコンテンツ２になるように選択することができる。前記選択に応じて、表示ＵＩ部１０１は、図５の４０１のビューのように、表示選択コンテンツをコンテンツ３からコンテンツ２に変更する。
次に、ユーザは入力装置１４等を用いて表示装置１５に表示される画面を操作して、コンテンツをイベント順にソートするように選択することができる。前記選択に応じて、カレントバッファを、コンテンツがイベント順にソートされ、記憶されているバッファに変更されると、表示ＵＩ部１０１は、このバッファに記憶されているコンテンツを表示装置１５に４０２のビューのように表示する。
また、ユーザは入力装置１４等を用いて表示装置１５に表示されている画面を操作して、コンテンツを人物順にソートするように選択することができる。前記選択に応じて、カレントバッファを、コンテンツが人物順にソートされ、記憶されているバッファに変更されると、表示ＵＩ部１０１は、このバッファに記憶されているコンテンツを表示装置１５に４０３のビューのように表示する。
【００３３】
図６は、各バッファ内でグループ条件毎に配列されたコンテンツのポインタの概念図を示す一例である。
図６において、カレントバッファは、日付順にソートされたコンテンツを記憶している。また、各バックグランドバッファは、月毎にグループ化されたコンテンツや、年毎にグループ化されたコンテンツを記憶している。即ち、各バックグランドバッファに対応する各配列条件保持部には、月毎のグループ条件、又は年毎のグループ条件が保持されている。
つまり、図６の例は、バッファ毎に設定された配列条件がグループの関係を有しているということができる。日付は月のグループに属し、月は年のグループに属する。
なお、月毎にグループ化されたコンテンツと、年毎にグループ化されたコンテンツと、はグループとして含むコンテンツの中の代表コンテンツであってもよいし、グループ内のコンテンツの画像から新たに作成されたコンテンツであってもよい。
【００３４】
５０１は、ポインタ制御部１０４において制御されているカレントバッファにおける表示選択コンテンツを指し示す表示位置ポインタである。５０２は、ポインタ制御部１０４において制御されているバックグランドバッファの基準コンテンツを指し示す基準ポインタである。５０３は、ポインタ制御部１０４において制御されているバックグランドバッファの基準コンテンツを指し示す基準ポインタである。
ポインタ制御部１０４は、基準コンテンツの基準ポインタを、表示選択コンテンツが属するグループ化されたコンテンツや、このグループ化されたコンテンツが属するグループ化されたコンテンツを指し示すように制御する（移動させる）。
【００３５】
図６では、日付順にソートされているカレントバッファの表示選択コンテンツの表示位置ポインタ５０１はコンテンツ６を指し示している。この場合、月毎にグループ化されたコンテンツが記憶されているバックグランドバッファの基準コンテンツの基準ポインタ５０２は、コンテンツ６を含む、グループ化されたコンテンツ１３を指し示す。同様に、年毎にグループ化されたコンテンツが記憶されているバックグランドバッファの基準コンテンツの基準ポインタ５０３は、グループ化されたコンテンツ１３を含むグループ化されたコンテンツ１０２を指し示す。
【００３６】
例えば、ユーザの表示選択コンテンツの変更により、ポインタ制御部１０４は、カレントバッファの表示選択コンテンツの表示位置ポインタ５０１をコンテンツ６からコンテンツ７に移動する。しかし、月毎にグループ化されたコンテンツが記憶されているバックグランドバッファの基準コンテンツの基準ポインタ５０２もグループ化されたコンテンツ１３であり、同一グループ内なのでポインタ制御部１０４は、基準ポインタ５０２を移動しない。
より具体的に説明すると、ポインタ制御部１０４は、表示位置ポインタ５０１の移動（変更）及び配列条件保持部等が保持しているコンテンツのグループ情報に応じて、基準ポインタを移動させるか否かを判断する。ここで、コンテンツのグループ情報とは、例えば、カレントバッファのコンテンツ１と、コンテンツ２とが、月順にソートされているコンテンツ１１のグループに属する。また、月順にソートされているコンテンツ１１及びコンテンツ１２が年順にソートされているコンテンツ１０１のグループに属する等の情報である。
同様にポインタ制御部１０４は、年毎にグループ化されたコンテンツが記憶されているバックグランドバッファの基準コンテンツの基準ポインタ５０３も移動しない。
【００３７】
次に、ユーザの表示選択コンテンツの変更により、ポインタ制御部１０４は、カレントバッファの表示選択コンテンツの表示位置ポインタ５０１をコンテンツ５に移動する。ポインタ制御部１０４は、月毎にグループ化されたコンテンツのバックグランドバッファの基準コンテンツの基準ポインタを、コンテンツ５を含むグループ化されたコンテンツ１２に移動する。また、ポインタ制御部１０４は、年毎にグループ化されたコンテンツが記憶されているバックグランドバッファの基準コンテンツの基準ポインタを、グループ化されたコンテンツ１２を含む、グループ化されたコンテンツ１０１に移動する。
【００３８】
図７は、カレントバッファにコンテンツを読み出す場合の要件についての一例を説明するための図である。図７において、キャッシュコンテンツエリアにあるコンテンツは、カレントバッファに読み込まれているコンテンツを示している。ここで、キャッシュコンテンツエリアとは、バッファ内のコンテンツを記憶させておくことができる領域である。また、表示コンテンツエリアにあるコンテンツは、図４のように、表示ＵＩ部１０１が表示装置１５に表示しているコンテンツである。
【００３９】
また、図７において、読み出し基準点は、移動した表示コンテンツエリアが、この読み出し基準点を超えたときにデータベース読み出し部１０７等が後述するコンテンツの読み出しを開始する基準となる点である。図７の状態１は、初期状態である。状態２は、表示コンテンツエリアが移動した場合の状態である。但し、状態２は、表示コンテンツエリアが２つの読み出し基準点の間にある状態である。状態３は、表示コンテンツエリアの一部が、読み出し基準点を超えた状態である。このとき、データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示により、クエリを発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。つまり、表示コンテンツエリアと、読み出し基準点と、の情報は、キャッシュコンテンツ管理部１０６が有して（又は管理して）おり、キャッシュコンテンツ管理部１０６は、この情報に基づき、表示コンテンツエリアが読み出し基準点を越えたか否かを判断する。そして、キャッシュコンテンツ管理部１０６は、表示コンテンツエリアが読み出し基準点を越えたと判断すると、データベース読み出し部１０７に対してコンテンツの読み出しに関する指示を与える。
【００４０】
図８は、バックグランドバッファにコンテンツを読み出す場合の要件についての一例を説明するための図である。図８において、キャッシュコンテンツエリアにあるコンテンツは、バックグランドバッファに読み込まれているコンテンツを示している。また、表示コンテンツエリアにあるコンテンツは、表示の切り替えが行われてバックグランドバッファがカレントバッファに変更された場合に、図４のように、表示ＵＩ部１０１が表示装置１５に表示するコンテンツを示している。
【００４１】
図８の状態１は、初期状態である。状態２は、表示コンテンツエリア（又は基準ポイント）が移動した場合の状態である。但し、状態２は、表示コンテンツエリアがキャッシュコンテンツエリア内にある状態である。状態３は、表示コンテンツエリアの一部が、キャッシュコンテンツエリアの外に出た状態である。このときデータベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示により、クエリを発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。つまり、表示コンテンツエリアと、キャッシュコンテンツエリアと、の情報は、キャッシュコンテンツ管理部１０６が有して（又は管理して）いる。キャッシュコンテンツ管理部１０６は、この情報に基づき、表示コンテンツエリアがキャッシュコンテンツエリアを越えたか否かを判断する。そして、キャッシュコンテンツ管理部１０６は、表示コンテンツエリアがキャッシュコンテンツエリアを越えたと判断すると、データベース読み出し部１０７に対してコンテンツの読み出しに関する指示を与える。
【００４２】
このように、図７のカレントバッファにコンテンツを読み出す場合と、図８のバックグランドバッファにコンテンツを読み出す場合とでは要件が異なっている。即ち、図７では、キャッシュコンテンツエリアの内側に読み出し基準点が設定されている。そして、表示コンテンツエリアの一部が、読み出し基準点を超えた場合に、データベース読み出し部１０７が、カレントバッファにコンテンツを読み出す。従って、カレントバッファにおけるコンテンツの読み出しを開始する時期は、バックグランドバッファと比較して早くなる。これは、カレントバッファは表示選択コンテンツに関係するためであり、ユーザの表示選択コンテンツの変更に迅速に対応するためである。
【００４３】
（詳細動作説明）
次に、コンテンツ表示装置１の処理動作についていくつかの場合に分けて説明を行う。
図９は、コンテンツの表示の切り替えの一例を示すフローチャートである。
まず、表示ＵＩ部１０１は、例えば、入力装置１４等を用いて表示装置１５に表示されている画面等を操作され、コンテンツの表示指示がされたか否かを判断する（ステップＳ８０１）。表示指示がされたと判断すると、例えば表示ＵＩ部１０１は、予め定められた配列条件を各バッファに対応する配列条件保持部に設定する（ステップＳ８０２）。
【００４４】
次に、表示ＵＩ部１０１は、表示データ読み出し部１０２を介してカレントバッファ情報部１０３に、はじめにコンテンツを表示するために利用するバッファをカレントバッファとして設定する（ステップＳ８０３）。
次に、ポインタ制御部１０４は、例えば、表示装置１５にはじめに表示する画面（ビュー）の中央に表示するコンテンツを表示選択コンテンツとする。そして、ポインタ制御部１０４は、位置情報部１０５に表示位置ポインタを設定する（ステップＳ８０４）。
次に、ポインタ制御部１０４は、表示位置ポインタに基づき、表示位置ポインタが指し示すコンテンツに対応する、バックグラウンドバッファの基準コンテンツを指し示す基準ポインタを位置情報部１０５に設定する（ステップＳ８０５）。
【００４５】
次に、キャッシュコンテンツ管理部１０６は、位置情報部１０５の表示位置ポインタ又は基準ポインタに基づき、データベース読み出し部１０７に対してデータベース１０８を介したコンテンツの読み出しを指示する。データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示及び配列条件保持部の配列条件に基づき、クエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。続いて、データベース読み出し部１０７は、各バッファへコンテンツを記憶する（ステップＳ８０６）。
【００４６】
次に、表示データ読み出し部１０２は、カレントバッファに記憶されている表示位置ポインタに対応するコンテンツから読み出しを行う（ステップＳ８０７）。
表示ＵＩ部１０１は、読み出されたコンテンツを表示装置１５に表示する（ステップＳ８０８）。
【００４７】
一方、ステップＳ８０１の判断において、コンテンツの表示指示ではないと判断した場合、表示ＵＩ部１０１は、ユーザにより表示選択コンテンツが変更されたか否かを判断する（ステップＳ８０９）。
ステップＳ８０９において、表示選択コンテンツが変更されたと判断した場合、表示ＵＩ部１０１は、ステップＳ８１０に処理を進める。ステップＳ８１０において、ポインタ制御部１０４は、位置情報部１０５で設定された表示位置ポインタを、変更された表示選択コンテンツを指し示すよう移動する。
次に、ポインタ制御部１０４は、表示位置ポインタに連動させて、表示選択コンテンツに対応するコンテンツを指し示すよう基準ポインタを移動させる（ステップＳ８１１）。
【００４８】
次に、表示ＵＩ部１０１は、表示装置１５に表示するコンテンツに変更があるか否かを判断する（ステップＳ８１２）。例えば、図４の３０１のビューの状態で、表示選択コンテンツをコンテンツ３からコンテンツ７に変更するような入力操作があった場合、表示ＵＩ部１０１は、表示するコンテンツに変更があると判断する。表示するコンテンツに変更があると判断した場合、表示ＵＩ部１０１は、ステップＳ８１３に処理を進める。表示するコンテンツに変更がないと判断した場合、表示ＵＩ部１０１は、ステップＳ８１９に処理を進める。ステップＳ８１３において、表示データ読み出し部１０２は、カレントバッファから必要なコンテンツを読み出す。
【００４９】
一方、ステップＳ８０９において、表示選択コンテンツが変更されていないと判断した場合、表示ＵＩ部１０１は、ユーザにより現在選択されている配列条件から異なる配列条件への表示の切り替えが行われたか否かを判断する（ステップＳ８１４）。
表示の切り替えが行われたと判断した場合、表示ＵＩ部１０１は、表示データ読み出し部１０２を介してカレントバッファ情報部１０３に、切り替えられた配列条件に対応するバッファをカレントバッファとして設定する（ステップＳ８１５）。
次に、ポインタ制御部１０４は、指定されたバッファの基準コンテンツを指し示す基準ポインタを表示位置ポインタに変更して位置情報部１０５に設定する（ステップＳ８１６）。
【００５０】
次に、表示データ読み出し部１０２は、表示位置ポインタが指し示すコンテンツから読み出しを行う（ステップＳ８１７）。
表示ＵＩ部１０１は、読み出されたコンテンツを表示装置１５に表示する（ステップＳ８１８）。
次に、表示ＵＩ部１０１は、ユーザによる入力装置１４を介した操作が終了したかを判断する（ステップＳ８１９）。
ステップＳ８１９において、操作が終了したと判断した場合、例えば、表示ＵＩ部１０１は、図９に示す処理を終了する。一方、ステップＳ８１９において、操作が終了していないと判断した場合、表示ＵＩ部１０１は、ステップＳ８０９に処理を戻す。なお、ステップＳ８１４において、表示ＵＩ部１０１は、ユーザにより異なる配列条件への表示の切り替えが行われていないと判断した場合、ステップＳ８１９に進む。
【００５１】
このように、本実施形態のコンテンツの表示の切り替え処理においては、表示選択コンテンツが変更されても、変更されたバッファからコンテンツを読み出すことで迅速に表示装置１５に表示させることができる。また、異なる配列条件への表示の切り替えが行われても、切り替えられたバッファから表示選択コンテンツに対応するコンテンツを読み出すことで迅速に表示装置１５に表示させることができる。
【００５２】
図１０は、ソート条件をバッファに対応させる場合のポインタの位置制御の一例を示すフローチャートである。ここでは、図３に示されるように、バッファ２１には日付順、バッファ２２にはイベント順、バッファ２３には人物順にソートされたコンテンツが記憶されているものとする。なお、初期状態では、バッファ２１がカレントバッファであるものとする。
【００５３】
まず、表示ＵＩ部１０１は、例えば、入力装置１４等を用いて表示装置１５に表示されている画面等を操作され、コンテンツの表示指示がされたか否かを判断する（ステップＳ９０１）。
表示指示がされたと判断すると、表示ＵＩ部１０１は、ステップＳ９０２に処理を進める。ステップＳ９０２において、キャッシュコンテンツ管理部１０６は、例えば予め定められたソート条件に基づいてバッファの区分けを行う（ステップＳ９０２）。
次に、例えば、表示ＵＩ部１０１は、ソート条件を各バッファに対応する配列条件保持部に設定する（ステップＳ９０３）。
【００５４】
次に、表示ＵＩ部１０１は、カレントバッファ情報部１０３に、バッファ２１をカレントバッファとして設定する（ステップＳ９０４）。
次に、キャッシュコンテンツ管理部１０６の指示により、データベース読み出し部１０７は、配列条件保持部３１に保持されたソート条件で初期位置からコンテンツを読み出すためのクエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリを発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。続いて、データ読み出し部１０７は、カレントバッファへコンテンツを記憶する（ステップＳ９０５）。
【００５５】
そして、ポインタ制御部１０４は、位置情報部１０５に、表示されたコンテンツの内、始めに選択されたコンテンツのカレントバッファ内の位置情報を表示位置ポインタとして設定する（ステップＳ９０６）。なお、ポインタ制御部１０４は、中央に表示されたコンテンツのカレントバッファ内の位置情報を表示位置ポインタとして設定してもよい。
次に、ポインタ制御部１０４は、表示位置ポインタを基に、バッファ（バックグラウンドバッファ）に対する基準ポインタを位置情報部１０５に設定する（ステップＳ９０７）。
【００５６】
次に、キャッシュコンテンツ管理部１０６は、位置情報部１０５のバックグランドバッファ２２に関する基準ポインタに基づき、データベース読み出し部１０７に対してデータベース１０８を介したコンテンツの読み出しを指示する。データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示及びバックグランドバッファ２２に対応する配列条件保持部のソート条件に基づき、クエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。続いて、データ読み出し部１０７は、バックグランドバッファ２２へコンテンツを記憶する。
【００５７】
同様に、キャッシュコンテンツ管理部１０６は、位置情報部１０５のバックグランドバッファ２３に関する基準ポインタに基づき、データベース読み出し部１０７に対してデータベース１０８を介したコンテンツの読み出しを指示する。データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示及びバックグランドバッファ２３に対応する配列条件保持部のソート条件に基づき、クエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。続いて、データ読み出し部１０７は、バックグランドバッファ２３へコンテンツを記憶する（ステップＳ９０８）
この結果、各バッファ内は、図３の（Ａ）のようになる。
【００５８】
一方、ステップＳ９０１の判断において、コンテンツの表示指示でないと判断した場合、表示ＵＩ部１０１は、ユーザにより表示選択コンテンツが変更されたか否かを判断する（ステップＳ９０９）。
ステップＳ９０９において、表示選択コンテンツが変更されていないと判断した場合、表示ＵＩ部１０１は、ステップＳ９１７に処理を進める。一方、ステップＳ９０９において、表示選択コンテンツが変更されたと判断した場合、表示ＵＩ部１０１は、ステップＳ９１０に処理を進める。
ステップＳ９１０において、キャッシュコンテンツ管理部１０６は、順次バックグランドバッファを選択する（ステップＳ９１０）。
ポインタ制御部１０４は、キャッシュコンテンツ管理部１０６が選択したバックグランドバッファに関する基準ポインタを、表示位置ポインタに連動させて、移動させる（ステップＳ９１１）。
【００５９】
キャッシュコンテンツ管理部１０６は、基準ポインタが指し示す基準コンテンツがバックグランドバッファに記憶されているか否かを判断する（ステップＳ９１２）。記憶されていないと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ９１３に処理を進める。記憶されていると判断した場合には、キャッシュコンテンツ管理部１０６は、ステップＳ９１６に処理を進める。
ステップＳ９１３において、キャッシュコンテンツ管理部１０６は、データベース読み出し部１０７に基準ポインタが指し示す基準コンテンツの読み出しに関する指示をする。データベース読み出し部１０７は、この指示を受け取ると、このバックグラウンドバッファに対応する配列条件保持部のソート条件を読み出す（ステップＳ９１３）。
次に、データベース読み出し部１０７は、前記指示及びソート情報に基づき、クエリを作成すると共に、作成したクエリをデータベース１０８に対して発行する。続いて、データベース読み出し部１０７は、データベース１０８を介してディスク１６から基準コンテンツを含むコンテンツ群を読み出す（ステップＳ９１４）。
そして、データベース読み出し部１０７は、選択されたバックグランドバッファに読み出したコンテンツを記憶する（ステップＳ９１５）。
【００６０】
次に、キャッシュコンテンツ管理部１０６は、他にバックグランドバッファが存在するか否かを判断する（ステップＳ９１６）。ステップＳ９１６において、他にバックグランドバッファが存在すると判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ９１０に処理を戻す。一方、ステップＳ９１６において、他にバックグランドバッファが存在しないと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ９１７に処理を進める。
【００６１】
ステップＳ９１７において、表示ＵＩ部１０１は、ユーザによる入力装置１４を介した操作が終了したか否かを判断する。
ステップＳ９１７において、操作が終了したと判断した場合、表示ＵＩ部１０１は、図１０に示す処理を終了する。一方、ステップＳ９１７において、操作が終了していないと判断した場合は、表示ＵＩ部１０１は、ステップＳ９０９の処理戻る。
【００６２】
このように、本実施形態の表示選択コンテンツの切り替えにおいては、基準ポインタに対応する基準コンテンツがバックグランドバッファに記憶されているかを判断する。そして、記憶されていない場合は、データベース読み出し部１０７が、データベース１０８からコンテンツを読み出す。従って、常にバックグランドバッファには、基準ポインタに対応する基準コンテンツを基に、ソート条件のコンテンツが記憶されていることになる。
【００６３】
図１１は、グループ条件をバッファに対応させる場合のポインタの制御の一例を示すフローチャートである。ここでは、図６に示されるように、バッファ２１に対応する配列条件保持部には、単一コンテンツを日付順のソート条件が設定されている。また、バッファ２２に対応する配列条件保持部には、単一コンテンツを、月毎にグループ化されたコンテンツとするグループ条件が設定されている。バッファ２３に対応する配列条件保持部には、バッファ２２の月毎にグループ化されたコンテンツを、年毎にグループ化されたコンテンツとするグループ条件が設定されている。また、初期状態では、バッファ２１がカレントバッファであるものとする。
【００６４】
まず、表示ＵＩ部１０１は、例えば、入力装置１４等を用いて表示装置１５に表示されている画面等を操作され、コンテンツの表示指示がされたか否かを判断する（ステップＳ１００１）。
表示指示がされたと判断した場合、表示ＵＩ部１０１は、ステップＳ１００２に処理を進める。ステップＳ１００２において、キャッシュコンテンツ管理部１０６は、ソート条件に基づいてカレントバッファの区分けを行い、グループ条件でバックグランドバッファの区分けを行う。
次に、例えば、表示ＵＩ部１０１は、上述したソート条件をカレントバッファに対応する配列条件保持部３１に設定する。また、表示ＵＩ部１０１は、上述したグループ条件をバックグランドに対応する配列条件保持部に設定する（ステップＳ１００３）。
【００６５】
次に、表示ＵＩ部１０１は、カレントバッファ情報部１０３に、バッファ２１をカレントバッファとして設定する（ステップＳ１００４）。
次に、キャッシュコンテンツ管理部１０６の指示により、データベース読み出し部１０７は、配列条件保持部３１に保持されたソート条件で初期位置からコンテンツを読み出すためのクエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す（ステップＳ１００５）。続いて、データ読み出し部１０７は、カレントバッファへ読み出したコンテンツを記憶する。
【００６６】
そして、ポインタ制御部１０４は、例えば、表示装置１５にはじめに表示する画面（ビュー）の中央に表示するコンテンツを表示選択コンテンツとする。そして、ポインタ制御部１０４は、表示位置ポインタが指し示す表示選択コンテンツの位置情報を位置情報部１０５に設定する（ステップＳ１００６）。
次に、ポインタ制御部１０４は、表示位置ポインタに基づき、表示位置ポインタが指し示すコンテンツに対応する、バックグラウンドバッファの基準コンテンツを指し示す基準ポインタを位置情報部１０５に設定する（ステップＳ１００７）。
例えば、図６のコンテンツ１が表示位置ポインタに設定されている場合、ポインタ制御部１０４は、図６のコンテンツ１の属するグループ化されたコンテンツ１１や、コンテンツ１１の属するグループ化されたコンテンツ１０１を基準コンテンツとする。そして、ポインタ制御部１０４は、基準ポインタを、これら基準コンテンツを指し示すように設定する。
【００６７】
次に、キャッシュコンテンツ管理部１０６は、位置情報部１０５のバックグランドバッファ２２に関する基準ポインタに基づき、データベース読み出し部１０７に対してデータベース１０８を介したコンテンツの読み出しを指示する。データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示及びバックグランドバッファ２２に対応する配列条件保持部のグループ条件に基づき、クエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。続いて、データ読み出し部１０７は、バックグランドバッファ２２へコンテンツを記憶する（Ｓ１００８）。
【００６８】
同様に、キャッシュコンテンツ管理部１０６は、位置情報部１０５のバックグランドバッファ２３に関する基準ポインタに基づき、データベース読み出し部１０７に対してデータベース１０８を介したコンテンツの読み出しを指示する。データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示及びバックグランドバッファ２３に対応する配列条件保持部のグループ条件に基づき、クエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す。続いて、データ読み出し部１０７は、バックグランドバッファ２３へコンテンツを記憶する（ステップＳ１００８）
この結果、各バッファ内は、図６のようになる。
【００６９】
一方、ステップＳ１００１において、コンテンツの表示指示ではないと判断した場合、表示ＵＩ部１０１は、ユーザにより表示選択コンテンツが変更されたか否かを判断する（ステップＳ１００９）。
ステップＳ１００９において、表示選択コンテンツが変更されていないと判断した場合、表示ＵＩ部１０１は、ステップＳ１０１８に処理を進める。一方、ステップＳ１００９において、表示選択コンテンツが変更されたと判断した場合、表示ＵＩ部１０１は、ステップＳ１０１０に処理を進める。
【００７０】
ステップＳ１０１０において、キャッシュコンテンツ管理部１０６は、順次バックグランドバッファを選択する（ステップＳ１０１０）。
ポインタ制御部１０４は、キャッシュコンテンツ管理部１０６が選択したバックグランドバッファに、表示位置ポインタの変動に応じて、表示位置ポインタが指し示すコンテンツに対応するコンテンツに変動（変更）があるか否かを判断する（ステップＳ１０１１）。つまり、ポインタ制御部１０４は、表示位置ポインタの移動（変更）及びバックグラウンドバッファに対応する配列条件保持部等が保持しているコンテンツのグループ情報に応じて、基準ポインタを移動させるか否かを判断する。
表示位置ポインタの変動に応じて、表示位置ポインタが指し示すコンテンツに対応するコンテンツに変動（変更）がある（基準ポインタが指し示すコンテンツを変更する必要がある）と判断すると、ポインタ制御部１０４は、処理をステップＳ１０１２に進める。一方表示位置ポインタの変動に応じて、表示位置ポインタが指し示すコンテンツに対応するコンテンツに変動（変更）はない（基準ポインタが指し示すコンテンツを変更する必要がない）と判断すると、ポインタ制御部１０４は、処理をステップＳ１０１７に進める。
【００７１】
ステップＳ１０１２において、ポインタ制御部１０４は、表示位置ポインタに連動させて、表示位置ポインタが指し示すコンテンツを含む、対応するグループ化されたコンテンツを指し示すように基準ポインタを移動させる（ステップＳ１０１２）。
【００７２】
次に、キャッシュコンテンツ管理部１０６は、基準ポインタが指し示すコンテンツがバックグランドバッファに記憶されているか否かを判断する（ステップＳ１０１３）。記憶されていないと判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１０１４に進める。記憶されていると判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１０１７に進める。
【００７３】
ステップＳ１０１４において、キャッシュコンテンツ管理部１０６は、データベース読み出し部１０７に基準ポインタが指し示すコンテンツの読み出しに関する指示を行う。この指示を受け取ったデータベース読み出し部１０７は、選択されたバックグラウンドバッファに対応する配列条件保持部のグループ条件を読み出す。
データベース読み出し部１０７は、前記指示及び読み出したグループ条件に基づき、クエリを作成すると共に、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６からコンテンツを読み出す（ステップＳ１０１５）。
そして、データベース読み出し部１０７は、選択されたバックグランドバッファに読み出したコンテンツを記憶する（ステップＳ１０１６）。
【００７４】
キャッシュコンテンツ管理部１０６は、他にバックグランドバッファが存在するか否かを判断する（ステップＳ１０１７）。
ステップＳ１０１７において、他にバックグランドバッファが存在すると判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１０１０に戻す。一方、ステップＳ１０１７において、他にバックグランドバッファが存在しないと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１０１８に処理を進める。
【００７５】
ステップＳ１０１８において、表示ＵＩ部１０１は、ユーザによる入力装置１４を介した操作が終了したか否かを判断する。
ステップＳ１０１８において、操作が終了したと判断した場合、表示ＵＩ部１０１は、図１１に示す処理を終了する。一方、ステップＳ１０１８において、操作が終了していないと判断した場合、表示ＵＩ部１０１は、処理をステップＳ１００９に戻す。
【００７６】
このように、本実施形態の表示選択コンテンツの切り替えにおいては、コンテンツをグループ化されたコンテンツにしても対応することができ、より多種の表示の切り替えを行うことができる。
【００７７】
なお、本実施形態において、カレントバッファをバッファ２１として、単一のコンテンツを記憶するものとして説明したが、バッファ２１は、グループ化されたコンテンツを記憶するようにしてもよい。また、ユーザにより表示選択コンテンツが変更された場合、上位グループに対しては、上述したように対応するグループ化されたコンテンツに基準ポインタが設定される。また、下位の単一コンテンツ又は、下位のグループ化されたコンテンツに対しては、このコンテンツにおける配列条件の先頭のコンテンツに基準ポインタが設定される。
【００７８】
図１２は、カレントバッファにコンテンツを読み出す処理動作の一例を示すフローチャートである。ここでは、図７に示すように、表示選択コンテンツを基準として前後、所定数（ここでは２つ）のコンテンツを表示するものとする。
【００７９】
まず、キャッシュコンテンツ管理部１０６は、カレントバッファが初期状態であるか否かを判断する（ステップＳ１１０１）。
初期状態であると判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１１０２に進める。ステップＳ１１０２において、データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示に応じて、配列条件保持部３１で保持されている配列条件を読み出す。
次に、データベース読み出し部１０７は、読み出した配列条件に基づきクエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す（ステップＳ１１０３）。
続いて、データ読み出し部１０７は、カレントバッファへ読み出したコンテンツを記憶する（ステップＳ１１０４）。
【００８０】
次に、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、図７に示すキャッシュコンテンツエリアを設定する。つまり、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、カレントバッファに読み込まれているコンテンツの開始点と、終了点と、を設定する（ステップＳ１１０５）。
次に、ポインタ制御部１０４は、位置情報部１０５に、表示位置ポインタを設定する。また、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、図７に示す表示コンテンツエリアを設定する。つまり、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、表示コンテンツエリアにおけるコンテンツの開始点と、終了点と、を設定する（ステップＳ１１０６）。
【００８１】
次に、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、図７に示すキャッシュコンテンツエリア内における読み出し基準点を設定する。つまり、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、読み出し基準点におけるコンテンツの開始点と、終了点と、を設定する（ステップＳ１１０７）。
一方、ステップＳ１１０１において、初期状態でないと判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１１０７に進める。例えば、表示の切り替えによってバッファが指定され、カレントバッファとなった場合には、カレントバッファには、コンテンツが記憶されているので、キャッシュコンテンツ管理部１０６は、初期状態でないと判断する。
【００８２】
次に、表示ＵＩ部１０１は、ユーザにより表示選択コンテンツが変更されたか否かを判断する（ステップＳ１１０８）。ステップＳ１１０８において、表示コンテンツが変更されていないと判断した場合、表示ＵＩ部１０１は、ステップＳ１１１７に処理を進める。一方、ステップＳ１１０８において、表示コンテンツが変更されたと判断した場合、ステップＳ１１０９に処理を進める。
ステップＳ１１０９において、キャッシュコンテンツ管理部１０６は、表示位置ポインタの移動に伴い、表示コンテンツエリアを移動させる。なお、キャッシュコンテンツ管理部１０６は、移動させた表示コンテンツエリアの位置情報（表示コンテンツエリアのコンテンツの開始点と、終了点と）を位置情報部１０５に、設定する。
【００８３】
次に、キャッシュコンテンツ管理部１０６は、例えば図７の状態３に示すように、表示コンテンツエリアが、読み出し基準点を超えたか否かを位置情報部１０５に設定されている位置情報に基づき、判断する（ステップＳ１１１０）。ステップＳ１１１０において、読み出し基準点を超えていないと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１１１７に処理を進む。ステップＳ１１１０において、読み出し基準点を超えていると判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１１１１に処理を進める。
【００８４】
ステップＳ１１１１において、データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示に応じて、配列条件保持部３１で保持されている配列条件を読み出す（ステップＳ１１１１）。
そして、データ読み出し部１０７は、読み出した配列条件に基づき、クエリを作成し、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す（ステップＳ１１１２）。
続いて、データ読み出し部１０７は、カレントバッファへ読み出したコンテンツを記憶する（ステップＳ１１１３）。
【００８５】
次に、キャッシュコンテンツ管理部１０６は、キャッシュコンテンツエリアを移動し、カレントバッファに読み込まれているコンテンツの開始点と、終了点と、を変更する（ステップＳ１１１４）。
また、キャッシュコンテンツ管理部１０６は、変更されたキャッシュコンテンツエリアに対応するように読み出し基準点を変更する（ステップＳ１１１５）。
【００８６】
次に、キャッシュコンテンツ管理部１０６は、カレントバッファに残っているキャッシュコンテンツエリア外のコンテンツを削除する（ステップＳ１１１６）。
次に、表示ＵＩ部１０１は、ユーザにより異なる配列条件への表示の切り替えが行われたか否かを判断する（ステップＳ１１１７）。
ステップＳ１１１７において、表示の切り替えが行われていないと判断した場合、表示ＵＩ部１０１は、ステップＳ１１０８に処理を戻す。一方、ステップＳ１１１７において、表示の切り替えが行われたと判断した場合、表示ＵＩ部１０１は、図１２に示す処理を終了する。
【００８７】
このように、本実施形態によれば、表示コンテンツエリアが読み出し基準点を超えた場合に、カレントバッファへコンテンツを読み出す。従って、カレントバッファに表示装置１５に表示するコンテンツが全てなくなる前に先読みすることで、コンテンツの表示を迅速に行うことができる。なお、読み出し基準点を表示コンテンツエリアに近づけるように設定することで、先読みする間隔を細かくすることができる。
【００８８】
図１３は、バックグランドバッファにコンテンツを読み出す処理動作の一例を示すフローチャートである。ここでは、図８に示すように、基準ポインタに対応するコンテンツを基準として、前後２つのコンテンツをバックグランドバッファに保持するものとする。
【００８９】
まず、キャッシュコンテンツ管理部１０６は、バックグランドバッファが初期状態であるか否かを判断する（ステップＳ１２０１）。
初期状態であると判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１２０２に進める。ステップＳ１２０２において、データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示に応じて、配列条件保持部３２に保持されている配列条件（又はソート条件）を読み出す（ステップＳ１２０２）。なお、ここでは説明の簡略化のため、配列条件保持部３２の配列条件を読み出すものとして説明を行うが、このことは本発明の実施を制限するものではない。
次に、データベース読み出し部１０７は、読み出した配列条件保持部３２に保持されていた配列条件に基づきクエリを作成する。続いて、データベース読み出し部１０７は、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す（ステップＳ１２０３）。
続いて、データ読み出し部１０７は、バックグランドバッファ２２へコンテンツを記憶する（ステップＳ１２０４）。
【００９０】
次に、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、図８に示すキャッシュコンテンツエリアを設定する。つまり、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、バックグランドバッファに読み込まれているコンテンツの開始点と、終了点と、を設定する（ステップＳ１２０５）。
次に、ポインタ制御部１０４は、位置情報部１０５に、基準ポインタを設定する。また、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、図８に示す表示コンテンツエリアを設定する。つまり、キャッシュコンテンツ管理部１０６は、位置情報部１０５に、表示コンテンツエリアにおけるコンテンツの開始点と、終了点と、を設定する（ステップＳ１２０６）。
一方、ステップＳ１２０１において、初期状態でないと判断した場合、キャッシュコンテンツ管理部１０６は、処理をステップＳ１２０７に進める。例えば、異なる配列条件への表示の切り替えによってカレントバッファがバックグランドバッファとなった場合には、バックグランドバッファには、コンテンツが記憶されているので、キャッシュコンテンツ管理部１０６は、初期状態でないと判断する。
【００９１】
次に、キャッシュコンテンツ管理部１０６は、ポインタ制御部１０４により基準ポインタが移動されたか否かを判断する（ステップＳ１２０７）。
基準ポインタが移動されていないと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１２１５に処理を進める。一方、基準ポインタが移動されたと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１２０８に処理を進める。
【００９２】
ステップＳ１２０８において、キャッシュコンテンツ管理部１０６は、基準ポインタの移動に伴い、表示コンテンツエリアを移動させる。なお、キャッシュコンテンツ管理部１０６は、移動させた表示コンテンツエリアの位置情報（表示コンテンツエリアのコンテンツの開始点と、終了点と）を位置情報部１０５に、設定する。
【００９３】
次に、キャッシュコンテンツ管理部１０６は、例えば図８の状態３に示すように、表示コンテンツエリアが、キャッシュコンテンツエリアを越えたか否かを位置情報部１０５に設定されている位置情報に基づき、判断する（ステップＳ１２０９）。ステップＳ１２０９において、キャッシュコンテンツエリアを超えていないと判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１２１５に処理を進める。ステップＳ１２０９において、キャッシュコンテンツエリアを超えていると判断した場合、キャッシュコンテンツ管理部１０６は、ステップＳ１２１０に処理を進める。
【００９４】
ステップＳ１２１０において、データベース読み出し部１０７は、キャッシュコンテンツ管理部１０６からの指示に応じて、配列条件保持部３２で保持されている配列条件を読み出す（ステップＳ１２１０）。
そして、データ読み出し部１０７は、読み出した配列条件に基づき、クエリを作成し、作成したクエリをデータベース１０８に対して発行し、データベース１０８を介してディスク１６よりコンテンツを読み出す（ステップＳ１２１１）。
続いて、データ読み出し部１０７は、バックグランドバッファへ読み出したコンテンツを記憶する（ステップＳ１２１２）。
【００９５】
次に、キャッシュコンテンツ管理部１０６は、キャッシュコンテンツエリアを移動し、バックグランドバッファに読み込まれているコンテンツの開始点と、終了点と、を変更する（ステップＳ１２１３）。
【００９６】
次に、キャッシュコンテンツ管理部１０６は、バックグランドバッファに残っているキャッシュコンテンツエリア外のコンテンツを削除する（ステップＳ１２１４）。
次に、表示ＵＩ部１０１は、ユーザにより異なる配列条件への表示の切り替えが行われたか否かを判断する（ステップＳ１２１５）
ステップＳ１２１５において、表示の切り替えが行われていないと判断した場合、表示ＵＩ部１０１は、ステップＳ１２０７に処理を戻す。一方、ステップＳ１２１５において、表示の切り替えが行われたと判断した場合、表示ＵＩ部１０１は、図１３に示す処理を終了する。
【００９７】
このように、本実施形態によれば、表示コンテンツエリアがキャッシュコンテンツエリアを超えた場合に、バックグランドバッファへコンテンツを読み出す。従ってユーザによる異なる配列条件への表示の切り替えがされ、カレントバッファからバックグランドバッファに表示が切り替えられたとしても、コンテンツの表示を迅速に行うことができる。
【００９８】
このように、本発明によれば、コンテンツの配列条件を切り替えて表示させても迅速にコンテンツの表示を行うことができる。
【００９９】
なお、本実施形態では、コンテンツの表示にのみについて説明したが、コンテンツのサムネイル、又はメタデータ等を表示するようにしてもよい。
【０１００】
また、本実施形態では、図１２のステップＳ１１１０におけるカレントバッファにコンテンツを読み出す場合と、図１３のステップＳ１２０９におけるバックグランドバッファにコンテンツを読み出す場合とについて異なる方法を用いた。しかしながら、バックグランドバッファにコンテンツを読み出す場合に、カレントバッファにコンテンツを読み出す方法を用いてもよい。この場合、表示の切り替えを行った直後でも、表示選択コンテンツが変更されてもコンテンツの表示を迅速に行うことができる。
【０１０１】
また、本実施形態では、ソート条件によるバッファ設定と、グループ条件によるバッファ設定を行っていたが、これを混在させることもできる。また、グループ条件によるバッファの設定において、各グループに対して、異なるソート条件を設定させて組み合わせることもできる。これによって、より多種な表示の切り替えが可能となる。
【０１０２】
なお、一時記憶装置には、１つの記憶装置を複数の記憶領域にわけた場合も含まれる。
【０１０３】
以上、上述したように、本実施形態によれば、少ないバッファメモリ量で、表示選択されているコンテンツを基準にして高速に配列を切り替えて表示することができる。また、表示選択されているコンテンツが変更された場合にも、これに対応したコンテンツを先読みすることができ、表示の切り替えに対応することができる。
また、表示の切り替えの条件によって、表示選択されているコンテンツと同一のコンテンツを基準にすることも、その関連するコンテンツを基準にすることもでき、より多種の表示の切り替えを行うことができる。
また、表示選択されているコンテンツのみではなく、その周りにあるコンテンツも表示の状態に従って先読みすることができ、配列順序を切り替えて一覧表示する際に、その周りのコンテンツも高速に表示することができる。
また、コンテンツの配列条件を切り替えて表示させる場合であっても、迅速にコンテンツの表示を行うようにすることができる。
【０１０４】
（その他の実施形態）
上述した実施形態におけるコンテンツ表示装置を構成する各手段、並びにコンテンツ表示方法の各ステップは、コンピュータのＲＡＭやＲＯＭ等に記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読取可能な記録媒体は本発明に含まれる。
【０１０５】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記録媒体等としての実施形態も可能であり、具体的には、複数の機器からなるシステムに適用してもよい。
【０１０６】
なお、本発明は、上述した実施形態の機能を実現するソフトウェアのプログラムを、システム又は装置に直接、又は遠隔から供給する。そして、そのシステム又は装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１０７】
従って、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１０８】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。更に、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳ等が、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１０９】
更に、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１１０】
【図１】コンテンツ表示装置のハードウェア構成の一例を示す図である。
【図２】コンテンツ表示装置の構成の一例を示す図である。
【図３】各バッファ内でソート条件毎に配列されたコンテンツのポインタの一例を示す図である。
【図４】表示装置に表示されるコンテンツの一例を示す図である。
【図５】表示装置に表示されるコンテンツの一例を示す図である。
【図６】各バッファ内でグループ条件毎に配列されたデータのポインタの一例を示す図である。
【図７】カレントバッファにコンテンツを読み出す場合について説明するための例を示す図である。
【図８】バックグランドバッファにコンテンツを読み出す場合について説明するための例を示す図である。
【図９】コンテンツの表示切り替えの一例を示すフローチャートである。
【図１０】ソート条件をバッファに対応させる場合のポインタの位置制御の一例を示すフローチャートである。
【図１１】グループ条件をバッファに対応させる場合のポインタの位置制御の一例を示すフローチャートである。
【図１２】カレントバッファにコンテンツを読み出す処理動作の一例を示すフローチャートである。
【図１３】バックグランドバッファにコンテンツを読み出す処理動作の一例を示すフローチャートである。
【符号の説明】
【０１１１】
１１      ＣＰＵ
１２      ＲＯＭ
１３      ＲＡＭ
１４      入力装置
１５      表示装置
１６      ディスク
２１      バッファ
２２      バッファ
２３      バッファ
３１      配列条件保持部
３２      配列条件保持部
３３      配列条件保持部
１０１    表示ＵＩ部
１０２    表示データ読み出し部
１０３    カレントバッファ情報部
１０４    ポインタ制御部
１０５    位置情報部
１０６    キャッシュコンテンツ管理部
１０７    データベース読み出し部
１０８    データベース
【図１】
2008263540.tif 000003
【図２】
2008263540.tif 000004
【図３】
2008263540.tif 000005
【図４】
2008263540.tif 000006
【図５】
2008263540.tif 000007
【図６】
2008263540.tif 000008
【図７】
2008263540.tif 000009
【図８】
2008263540.tif 000010
【図９】
2008263540.tif 000011
【図１０】
2008263540.tif 000012
【図１１】
2008263540.tif 000013
【図１２】
2008263540.tif 000014
【図１３】
2008263540.tif 000015