(57)【要約】  多重スクリーンの提供装置及び該多重スクリーンの動的構成方法を提供する。本発明による多重スクリーンの提供装置は、物理的なディスプレイ画面に複数のコンテンツを提供する多数のスクリーンを動的に構成するために多数のスクリーンを異なる多数の出力ポートに連結しうる。本発明の実施形態による多重スクリーンの提供装置は、受信されたサービスを表現するためのスクリーンを生成するサービス処理モジュール及びスクリーンと連結された出力ポートを検索する出力モジュールを備える。
2009503603.tif 000002
【特許請求の範囲】
【請求項１】
サービスを表現するためのスクリーンを生成するサービス処理モジュールと、
前記スクリーンと連結された出力ポートを検索する出力モジュールと、を備える多重スクリーンの提供装置。
【請求項２】
前記スクリーンは、前記サービスに含まれたアプリケーションが実行される論理スクリーン及び前記論理スクリーンがマッピングされる出力スクリーンのうち少なくとも一つを含むことを特徴とする請求項１に記載の多重スクリーンの提供装置。
【請求項３】
前記出力スクリーンは、前記アプリケーションが実行されるスクリーンを備えることを特徴とする請求項２に記載の多重スクリーンの提供装置。
【請求項４】
前記スクリーンは、ＰｉＰスクリーンを備えることを特徴とする請求項１に記載の多重スクリーンの提供装置。
【請求項５】
前記スクリーンは、ＰｏＰスクリーンを備えることを特徴とする請求項１に記載の多重スクリーンの提供装置。
【請求項６】
前記出力モジュールは、前記スクリーンに対する前記出力ポートを生成して、前記出力ポートを前記スクリーンとマッピングすることを特徴とする請求項１に記載の多重スクリーンの提供装置。
【請求項７】
サービスを表現するためのスクリーンを生成するサービス処理モジュールと、
前記スクリーンと連結された出力ポートと前記スクリーンとの連結関係を変更する出力モジュールと、を備える多重スクリーンの提供装置。
【請求項８】
前記スクリーンは、前記サービスに含まれたアプリケーションが実行される論理スクリーン及び前記論理スクリーンがマッピングされる出力スクリーンのうち少なくとも一つを備えることを特徴とする請求項７に記載の多重スクリーンの提供装置。
【請求項９】
前記出力スクリーンは、前記アプリケーションが実行されるスクリーンを備えることを特徴とする請求項８に記載の多重スクリーンの提供装置。
【請求項１０】
前記スクリーンは、ＰｉＰスクリーンを備えることを特徴とする請求項７に記載の多重スクリーンの提供装置。
【請求項１１】
前記スクリーンは、ＰｏＰスクリーンを備えることを特徴とする請求項７に記載の多重スクリーンの提供装置。
【請求項１２】
前記出力モジュールは、前記スクリーンに対する前記出力ポートを生成して、前記出力ポートを前記スクリーンとマッピングすることを特徴とする請求項７に記載の多重スクリーンの提供装置。
【請求項１３】
サービスを表現するためのスクリーンを生成するステップと、
前記スクリーンと連結された出力ポートを検索するステップと、を含む多重スクリーンの動的構成方法。
【請求項１４】
前記スクリーンは、前記サービスに含まれたアプリケーションが実行される論理スクリーン及び前記論理スクリーンがマッピングされる出力スクリーンのうち少なくとも一つを備えることを特徴とする請求項１３に記載の多重スクリーンの動的構成方法。
【請求項１５】
前記出力スクリーンは、前記アプリケーションが実行されるスクリーンを備えることを特徴とする請求項１３に記載の多重スクリーンの動的構成方法。
【請求項１６】
前記スクリーンは、ＰｉＰスクリーンを備えることを特徴とする請求項１３に記載の多重スクリーンの動的構成方法。
【請求項１７】
前記スクリーンは、ＰｏＰスクリーンを備えることを特徴とする請求項１３に記載の多重スクリーンの動的構成方法。
【請求項１８】
前記スクリーンに対する前記出力ポートを生成するステップと、
前記出力ポートを前記スクリーンとマッピングするステップと、をさらに含むことを特徴とする請求項１３に記載の多重スクリーンの動的構成方法。
【請求項１９】
サービスを表現するためのスクリーンを生成するステップと、
前記スクリーンと連結された出力ポートと前記スクリーンとの連結関係を変更するステップと、を含む多重スクリーンの動的構成方法。
【請求項２０】
前記スクリーンは、前記サービスに含まれたアプリケーションが実行される論理スクリーン及び前記論理スクリーンがマッピングされる出力スクリーンのうち少なくとも一つを備えることを特徴とする請求項１９に記載の多重スクリーンの動的構成方法。
【請求項２１】
前記出力スクリーンは、前記アプリケーションが実行されるスクリーンを備えることを特徴とする請求項２０に記載の多重スクリーンの動的構成方法。
【請求項２２】
前記スクリーンは、ＰｉＰスクリーンを備えることを特徴とする請求項１９に記載の多重スクリーンの動的構成方法。
【請求項２３】
前記スクリーンは、ＰｏＰスクリーンを備えることを特徴とする請求項１９に記載の多重スクリーンの動的構成方法。
【請求項２４】
前記スクリーンに対する前記出力ポートを生成するステップと、
前記生成された出力ポートを前記スクリーンとマッピングするステップと、をさらに含むことを特徴とする請求項１９に記載の多重スクリーンの動的構成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明による装置及び方法は、多重スクリーンの提供及び該多重スクリーンの動的構成に係り、さらに詳細には、物理的なディスプレイ画面に複数のコンテンツを提供する多数のスクリーンを動的に構成するために、多数のスクリーンを多数の出力ポートに連結することに関する。
【背景技術】
【０００２】
関連技術のデジタルＴＶまたはデジタルセットトップボックスのような放送受信装置では、一つの物理的なディスプレイ画面に一つのコンテンツのみを示すか、または一つの物理的なディスプレイ画面に主画面と副画面との２つの画面を同時に示す場合が一般的である。
【０００３】
このとき、主画面と副画面とを同時に示す場合としても、放送受信装置で既定のいくつかの方式のみで二つの画面を配置しうる。そして、主画面に示されるコンテンツの場合にのみコンテンツを構成する全ての要素（ビデオ、オーディオ、データまたはこれらの組合わせ）が再生され、副画面を通じてはコンテンツを構成する一部要素のみが制限的に再生される。
【０００４】
また、コンテンツを提供するソースであって、衛星放送、地上波放送、ケーブル放送のような放送サービス以外にも、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）のような保存媒体または外部入力端子と連結された外部機器があるが、このように多様なソースから提供されるコンテンツをどのようにディスプレイ画面に表すかについても制限的に固定されている。
【０００５】
一方、ＭＨＰ（Ｍｕｌｔｉｍｅｄｉａ  Ｈｏｍｅ  Ｐｌａｔｆｏｒｍ）、ＡＣＡＰ（Ａｄｖａｎｃｅｄ  Ｃｏｍｍｏｎ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ）、ＯＣＡＰ（Ｏｐｅｎ  Ｃａｂｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ）のようなインタラクティブＴＶに対するアプリケーションプログラム環境では、一般的に、物理的なディスプレイ画面を通じて出力されるスクリーンは、一つであると仮定する。
【０００６】
例えば、インタラクティブＴＶに対するアプリケーションプログラム環境では、ＨＡＶｉ（Ｈｏｍｅ  Ａｕｄｉｏ／Ｖｉｄｅｏ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ）規格によるユーザインターフェース（ＵＩ：Ｕｓｅｒｉｎｔｅｒｆａｃｅ）の構造を採用しているが、ＨＡＶｉ  ＵＩ標準でスクリーンの数に制限をおかないが、実際使用では、ディスプレイ画面を通じて出力されるスクリーンは、一つであると仮定することが一般的である。
【０００７】
このような環境では、複数のコンテンツを多数の独立的なスクリーンを通じて示すと同時に、それぞれのスクリーンに表現されたコンテンツに対してデコーディング、デジタル信号処理、ユーザインタラクション処理を行うか、動的にアプリケーションプログラムのライフサイクル及びリソースの使用をそれぞれのスクリーン別に制御し難い。
【０００８】
したがって、多様なコンテンツを多様な方式でディスプレイ画面に構成して提供する方法が必要になった。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は、物理的なディスプレイ画面に複数のコンテンツを提供する多数のスクリーンを動的に構成するために、多数のスクリーンを異なる多数の出力ポートに連結する装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
前記目的を達成するために、本発明の実施形態による多重スクリーンの提供装置は、受信されたサービスを表現するためのスクリーンを生成するサービス処理モジュール及び前記スクリーンと連結された出力ポートを検索する出力モジュールを備える。
【００１１】
本発明の実施形態による多重スクリーンの提供装置は、受信されたサービスを表現するためのスクリーンを生成するサービス処理モジュール及び前記スクリーンと連結された出力ポートと前記スクリーンとの連結関係を変更する出力モジュールを備える。
【００１２】
本発明の実施形態による多重スクリーンの動的構成方法は、受信されたサービスを表現するためのスクリーンを生成するステップ及び前記スクリーンと連結された出力ポートを検索するステップを含む。
【００１３】
本発明の実施形態による多重スクリーンの動的構成方法は、受信されたサービスを表現するためのスクリーンを生成するステップ及び前記スクリーンと連結された出力ポートと前記スクリーンとの連結関係を変更するステップを含む。
【発明を実施するための最良の形態】
【００１４】
本発明の利点及び特徴、及びそれらを達成する方法は、添付される図面と共に詳細に後述されている実施形態を参照すれば、明確になる。しかし、本発明は、以下で開示される実施形態に限定されず、異なる多様な形態で具現され、単に本実施形態は、本発明の開示を完全にし、当業者に発明の範囲を完全に知らせるために提供されるものであり、本発明は、特許請求の範囲によって定義される。明細書全体にわたって同じ参照符号は、同じ構成要素を指摘する。
【００１５】
以下、本発明の実施形態による多重スクリーンの提供装置及び前記多重スクリーンの動的構成方法を説明するためのブロック図または処理フローチャートに対する図を参照して、本発明について説明する。このとき、処理フローチャートの各ブロック及びフローチャートの組合わせは、コンピュータプログラムインストラクションによって行われるということが分かるであろう。これらのコンピュータプログラムインストラクションは、汎用コンピュータ、特殊用コンピュータまたはその他のプログラム可能なデータプロセシング装備のプロセッサに搭載されるので、コンピュータまたはその他のプログラム可能なデータプロセシング装備のプロセッサを通じて行われる、そのインストラクションがフローチャートのブロックで説明された機能を行う手段を生成する。
【００１６】
これらのコンピュータプログラムインストラクションは、特定方式で機能を具現するためにコンピュータまたはその他のプログラム可能なデータプロセシング装備を指向できるコンピュータ利用可能またはコンピュータ可読メモリに保存されることも可能であるので、そのコンピュータ利用可能またはコンピュータ可読メモリに保存されたインストラクションは、フローチャートのブロックで説明された機能を行うインストラクション手段を含む製造品目を生産することも可能である。
【００１７】
コンピュータプログラムインストラクションは、コンピュータまたはその他のプログラム可能なデータプロセシング装備上に搭載されることも可能であるので、コンピュータまたはその他のプログラム可能なデータプロセシング装備上で一連の動作ステップが行われてコンピュータで実行されるプロセスを生成して、コンピュータまたはその他のプログラム可能なデータプロセシング装備を行うインストラクションは、フローチャートのブロックで説明された機能を実行するためのステップを提供することも可能である。
【００１８】
また、各ブロックは、特定された論理的機能を実行するための一つ以上の実行可能なインストラクションを含むモジュール、セグメントまたはコードの一部を表せる。また、いくつかの代替実行例では、ブロックで説明された機能が順序を逸脱して発生することも可能であるということを注目せねばならない。例えば、相次いで図示されている二つのブロックは、実質的に同時に行われることも可能であり、またはそのブロックが時々該当する機能によって逆順に行われることも可能である。
【００１９】
一方、本発明についての説明を容易にするために、本発明と関連した基本的な概念を定義する。
【００２０】
‘サービス’は、一つの束で表現されるマルチメディアコンテンツであって、多数のサービスコンポーネントが一つのサービスをなす。
‘サービスコンポーネント’は、サービスを構成する一部分であって、ビデオコンポーネント、オーディオコンポーネント、データコンポーネントを含む。このとき、データコンポーネントは、サービス内に存在するアプリケーションを指す。
【００２１】
また、アプリケーションは、アンバウンドアプリケーションとサービスバウンドアプリケーションとに区別されるが、アンバウンドアプリケーションは、特定チャンネルと関連しないので、アプリケーションの実行がチャンネル転換に影響を受けない。また、一般的に高い優先順位を有しているので、実行のための資源が円滑に割当てられる。モニターアプリケーションは、最も高い優先順位を有しうる特殊なアンバウンドアプリケーションに該当する。
【００２２】
一方、サービスバウンドアプリケーションは、伝送ストリームと関連したものであって、アンバウンドアプリケーションに比べて、一般的に低い優先順位が付与される。サービスバウンドアプリケーションは、決定的なシステム機能は行えず、資源に対する競争が発生する場合、アンバウンドアプリケーションより資源割当をあきらめる可能性がさらに大きい。サービスバウンドアプリケーションは、現在伝送中であるストリームと連動して動作する連動型と伝送中であるストリームに関係なく動作する非連動型とがある。
【００２３】
‘サービスコンテキスト’は、サービスの実行に関係される各種のリソース、デバイス、実行状態情報を含んでおり、サービス実行を制御しうる客体を表す。
【００２４】
‘ディスプレイ画面’は、サービスの内容が実際に表現される物理的な装置、サービスの内容が出力される外部出力ポートまたはサービスが保存される保存装置を意味する。
【００２５】
‘出力スクリーン’は、ディスプレイ画面に実際に出力されるスクリーンであって、任意のサービスが出力スクリーンに直接設定されてディスプレイ画面を通じて表現されるか、または出力スクリーンの一定の領域にマッピングされた少なくとも一つ以上の論理スクリーンがディスプレイ画面を通じて出力される。
【００２６】
‘論理スクリーン’は、任意のサービスが表現される空間であって、出力スクリーンにマッピングされる前には、メモリ上に仮想的にのみ存在し、実際ディスプレイ画面には表現されない。
【００２７】
また、論理スクリーンと出力スクリーンとは、バックグラウンドスチールイメージ、ビデオラスター及びグラフィックラスターの組合わせで構成されるが、ここで、グラフィックラスターは、テキスト、線、カラー及びイメージが合成されるか、またはビデオフレームが混合されて提供される。
【００２８】
‘メインサービス’は、ユーザがディスプレイ画面に現れるメニューまたはリモコンを通じるか、またはアプリケーションがＡＰＩを通じて主サービスとして選択したサービスを意味し、メインサービスが表現されるスクリーンを‘メインスクリーン’という。
【００２９】
‘ＰｉＰサービス’は、ユーザがディスプレイ画面に現れるメニューまたはリモコンを通じるか、またはアプリケーションがＡＰＩを通じてメインスクリーン内で副サービスとして選択したサービスを意味し、ＰｉＰサービスは、‘ＰｉＰスクリーン’またはメインスクリーンを通じて表現される。
【００３０】
‘ＰｉＰスクリーン’は、図１Ａないし図１Ｄに示しているように、他のスクリーン内の一部領域を占めるスクリーンと、図１Ｅ及び図１Ｆに示しているように、他のスクリーンと重畳されない領域に同時に見られるスクリーンと、を備え、また、図１Ｇ及び図１Ｈに示しているように、ディスプレイ画面内で任意の位置及び領域に見られるか、または他のスクリーンと重畳されて表現されるスクリーンを備える概念として理解される。
【００３１】
図２は、本発明の一実施形態による論理スクリーンと出力スクリーンとの関係を示す例示図である。図２を参照するに、サービスは、論理スクリーン２１０，２１２，２１４を通じて表現され、このような論理スクリーンは、所定のマッピングブロック２３０によって出力スクリーン２２０，２２２，２２４にマッピングされて表現される。
【００３２】
このとき、２２０で参照される出力スクリーンは、２１０及び２１２で参照される論理スクリーンがマッピングされて表現されており、２２２で参照される出力スクリーンは、２１２及び２１４で参照される論理スクリーンがマッピングされて表現されており、２２４で参照される出力スクリーンは、２１０、２１２及び２１４で参照される論理スクリーンがマッピングされて表現されている。
【００３３】
このように、サービスが表現される少なくとも１以上の論理スクリーンは、マッピングブロック２３０によって出力スクリーンの任意の領域にマッピングされる。
【００３４】
一方、マッピングブロック２３０は、論理スクリーンと出力スクリーンとをマッピングさせる多様な情報の集合体として理解される。このような情報の例として、論理スクリーンが出力スクリーンにマッピングされる領域の座標情報、論理スクリーン及び出力スクリーンを区別する識別情報、出力スクリーンに多数の論理スクリーンが表現される順序についての情報を含みうる。
【００３５】
マッピングブロック２３０は、論理スクリーンのサイズを変更して出力スクリーンの一定の領域に割り当てうる。すなわち、マッピングブロック２３０は、論理スクリーンに対するスケーリング機能及び位置割当機能を行える図３Ａないし図３Ｅでは、このようなマッピングブロック、すなわちマッパを備えるスクリーンの構成を示している。
【００３６】
図３Ａを参照するに、バックグラウンドスチールイメージＢ、ビデオラスターＶ、及びグラフィックラスターＧの組合わせからなるメインスクリーンは、マッパによって、サイズはそのまま維持しつつ、出力スクリーンの全体にマッピングされる。そして、ビデオ成分のみを有するＰｉＰスクリーンは、マッパによって、そのサイズが小さくなりつつ、出力スクリーンの一定領域にマッピングされる。このとき、マッピングされたＰｉＰスクリーンは、メインスクリーン上に置かれ、これは、Ｚ値によって決定される。Ｚは、ｚ−ｏｒｄｅｒ値を表すものであって、ｚ−ｏｒｄｅｒについては後述する。また、オーバーレイスクリーンが前記出力スクリーンと合成されるが、オーバーレイスクリーンは、最外側に置かれる特別のスクリーンであって、例えば、字幕を提供する必要がある場合に利用される。ＰｉＰスクリーンは、図３Ａのように、ビデオ成分のみを有することもできるが、図３Ｂに示したように、バックグラウンドスチールイメージＢ、ビデオラスターＶ、及びグラフィックラスターＧの組合わせからなることもある。
【００３７】
図３Ｃを参照するに、バックグラウンドスチールイメージＢ、ビデオラスターＶ、及びグラフィックラスターＧの組合わせからなるメインスクリーンは、マッパによって、サイズはそのまま維持しつつ、出力スクリーンの全体にマッピングされる。そして、ビデオ成分のみを有する２個のＰｉＰスクリーン＃１,＃２が、それぞれマッパによって、そのサイズが小さくなりつつ、出力スクリーンの一定領域にマッピングされる。このとき、マッピングされたＰｉＰスクリーンは、メインスクリーン上に置かれ、このとき、Ｚ値は、同一に維持される。また、オーバーレイスクリーンが前記出力スクリーンと合成される。スクリーン構成は、図３Ｃのように、ビデオ成分のみを有する複数のＰｉＰスクリーンを備えうるが、図３Ｄに示したように、バックグラウンドスチールイメージＢ、ビデオラスターＶ及びグラフィックラスターＧの組合わせからなる複数のＰｉＰスクリーンで構成されることもある。
【００３８】
図３Ｅでは、ＰＯＰ（Ｐｉｃｔｕｒｅ−Ｏｕｔｓｉｄｅ−Ｐｉｃｔｕｒｅ）スクリーンが示されているが、ＰｉＰスクリーンがメインスクリーンの内部で表現されるスクリーンといえば、関連技術におけるＰＯＰスクリーンは、メインスクリーンの外部で表現されるスクリーンと理解される。図３Ｅを参照するに、バックグラウンドスチールイメージＢ、ビデオラスターＶ、及びグラフィックラスターＧの組合わせからなる複数のＰＯＰスクリーン＃１,＃２が、それぞれマッパによってそのサイズが小さくなりつつ、出力スクリーンの一定領域にマッピングされる。このとき、マッピングされたＰＯＰスクリーン＃１,＃２のＺ値は、同一に維持される。そして、オーバーレイスクリーンが前記出力スクリーンと合成されて表現される。
【００３９】
また、マッピングブロック２３０は、各種のコンピュータプログラム言語で作成されて実行されるインターフェース、関数で具現され、前記のような情報をパラメータとして論理スクリーンと出力スクリーンとの関係を生成または変更することもできる。
【００４０】
また、マッピングブロック２３０は、論理スクリーンと出力スクリーンとの間にマッピング機能を行うようにハードウェアとして具現されることもある。
【００４１】
出力スクリーンには、多様なソースから提供されるサービスが表現されてディスプレイ画面を通じて出力されるが、図４でこれを示している。
【００４２】
一般的に、サービスを提供するソースとして、地上波放送３２０、ケーブル放送３３０のような放送サービスを提供するソースがあり、ＰＶＲ（パーソナルビデオレコーダ）３４０のように、所定の保存媒体に保存されたサービスを提供するソースもある。また、図４では示していないが、有線または無線ネットワークを通じてサービスを提供するソースもここに含まれる。
【００４３】
このとき、放送受信装置３１０は、このようなソースからサービスを受信し、それぞれのサービスを表現する論理スクリーンを生成する。
【００４４】
次いで、既設定の方式、ユーザまたはアプリケーションによって設定された方式によって、任意のサービスが出力スクリーンに直接設定されてディスプレイ画面３５０を通じて表現されるか、または出力スクリーンの一定の領域にマッピングされた少なくとも一つ以上の論理スクリーンがディスプレイ画面３５０を通じて出力される。図４では、地上波放送３２０、ケーブル放送３３０及びＰＶＲ  ３４０によって提供されるサービスがディスプレイ画面３５０を通じて表現されることを示している。
【００４５】
図４では、サービスを提供するソースの例として、地上波放送３２０、ケーブル放送３３０、ＰＶＲ  ３４０を示しているが、サービスを提供するソースは、これに限定されず、一つの束で表現されるマルチメディアコンテンツを提供すれば、本発明でのソースに含まれる。
【００４６】
一方、本発明でのサービスには、抽象サービスと非抽象サービスとがあるが、これを図５Ａ及び図５Ｂにそれぞれ示している。
【００４７】
抽象サービスは、放送信号からリアルタイムで伝えられるサービスではない、放送チャンネルに対して独立されたサービスであって、サービスコンポーネントのうちからビデオコンポーネント、オーディオコンポーネントなしに、データコンポーネント、すなわちアプリケーションのみからなるサービスが抽象サービスに該当しうる。例えば、ＯＣＡＰ（Ｏｐｅｎ  Ｃａｂｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｌａｔｆｏｒｍ）規格でアンバウンドアプリケーションからなるサービスがここに属している。
【００４８】
非抽象サービスは、抽象サービスを除外した残りのサービスと理解される。
【００４９】
本発明では、抽象サービスと非抽象サービスとのそれぞれに対して独立性を付与しうる。例えば、抽象サービスは、論理スクリーンを経ずに直接出力スクリーンに設定され、非抽象サービスは、論理スクリーンに表現されて抽象サービスが設定された出力スクリーンにマッピングされる。次いで、前記出力スクリーンがディスプレイ画面を通じて出力されるが、これにより、一つの出力スクリーンで抽象サービスと非抽象サービスとが独立的に表現される。また、抽象サービス及び非抽象サービスが何れもそれぞれ別途の論理スクリーンにマッピングされた後、それぞれの論理スクリーンが一つの出力スクリーンにマッピングされることもある。すなわち、抽象サービスと非抽象サービスとは、それぞれ独立された形態として出力スクリーンに表現される。
【００５０】
一方、本発明での論理スクリーンと出力スクリーンとは、それぞれ別途の客体として定義されるが、‘スクリーン’という一つの客体が有する属性情報によって、‘スクリーン’が論理スクリーンとして機能するか、または出力スクリーンとして機能することもできる。
【００５１】
すなわち、スクリーン客体に関する属性情報のうち、タイプ（Ｔｙｐｅ）情報を通じてスクリーンが論理スクリーンであるか出力スクリーンであるかが分かる。
【００５２】
このようなスクリーン客体の属性情報として、‘Ｔｙｐｅ’、‘ｚ−ｏｒｄｅｒ’、‘Ｄｉｓｐｌａｙ＿Ａｒｅａ’、‘Ｖｉｓｉｂｉｌｉｔｙ’、‘Ａｓｓｏｃｉａｔｅｄ＿Ｄｉｓｐｌａｙ＿Ｓｃｒｅｅｎ’、‘Ａｓｓｏｃｉａｔｅｄ＿Ｓｅｒｖｉｃｅ＿Ｃｏｎｔｅｘｔｓ’、‘ＯｕｔｐｕｔＰｏｒｔ’のような属性情報がある。
【００５３】
図６は、スクリーン客体の属性情報とこのような属性情報を処理するインターフェースとの種類を示している。
【００５４】
‘Ｔｙｐｅ’属性５１０は、スクリーンが論理スクリーンであるか出力スクリーンであるかを表す属性情報である。
【００５５】
‘ｚ−ｏｒｄｅｒ’属性５２０は、論理スクリーンが出力スクリーン上で表現されるとき、ｚ軸上での順序を決定するためのものであって、図７では、論理スクリーンが出力スクリーン上でｚ−ｏｒｄｅｒ属性によってどのように見られるかを例示している。
【００５６】
図７で、出力スクリーン６１０上には、第１論理スクリーン６２０と第２論理スクリーン６３０とが一定の領域にマッピングされて表現されている。このとき、第１論理スクリーン６２０が出力スクリーン上で表現され、その上に第２論理スクリーン６３０が表現されている。すなわち、ｚ軸方向に出力スクリーン６１０、第１論理スクリーン６２０及び第２論理スクリーン６３０の順序で表現されているが、このような場合に、第１論理スクリーン６２０のｚ−ｏｒｄｅｒ属性値が１に設定され、第２論理スクリーン６２０のｚ−ｏｒｄｅｒ属性値が２に設定される。このとき、ｚ−ｏｒｄｅｒ属性値は、出力スクリーンのｚ軸上で論理スクリーンが表現される順序を表す情報ならば、いかなる数字または文字形態も可能である。
【００５７】
‘Ｄｉｓｐｌａｙ＿Ａｒｅａ’属性５３０は、論理スクリーンが出力スクリーンにマッピングされて出力される出力スクリーンの領域についての情報を意味するが、図８Ａ及び図８Ｂにこれを例示している。
【００５８】
図８Ａは、論理スクリーン７１０が出力スクリーン７２０の全体領域にマッピングされて出力されることを示しており、図８Ｂは、論理スクリーン７３０が出力スクリーン７４０の一部領域にマッピングされて出力されることを示している。
【００５９】
このとき、‘Ｄｉｓｐｌａｙ＿Ａｒｅａ’属性５３０を表す情報は、出力スクリーン上の２次元座標情報であるか、出力スクリーン上での特定位置及び前記特定位置からのオフセット値で表現される。
【００６０】
‘Ｖｉｓｉｂｉｌｉｔｙ’属性５４０は、論理スクリーンが出力スクリーン上に見られるか否かを決定する属性であって、この属性値を変更することにより、論理スクリーンを物理的なディスプレイ画面に表れるように、または消えるようにできる。
【００６１】
‘Ａｓｓｏｃｉａｔｅｄ＿Ｄｉｓｐｌａｙ＿Ｓｃｒｅｅｎ’属性５５０は、該当論理スクリーンと連結された出力スクリーンの識別情報を表す。出力スクリーンに連結されていない論理スクリーンは、ディスプレイ画面に表れないか、または他の外部出力に伝送されない。
【００６２】
‘Ａｓｓｏｃｉａｔｅｄ＿Ｓｅｒｖｉｃｅ＿Ｃｏｎｔｅｘｔｓ’属性５６０は、論理スクリーンまたは出力スクリーン自体に連結されたサービスコンテキストについての情報を表すが、サービスコンテキストに設定されたサービスが論理スクリーンまたは出力スクリーンに表現される。
【００６３】
‘ＯｕｔｐｕｔＰｏｒｔ’属性５７０は、出力スクリーンが出力される対象についての情報を表すが、出力スクリーンが出力される対象として、ディスプレイ画面、有／無線通信媒体、各種の保存媒体を含みうる。
【００６４】
一方、図６に示された属性情報に対する値を得るか、または変更するためのインターフェースが提供されるが、ここには、図６に示したように、属性情報の値を設定するか、または論理スクリーンを出力スクリーンと連結するための‘ｓｅｔ’インターフェース、属性情報の値を追加するか、または論理スクリーンをサービスと連結するための‘ａｄｄ’インターフェース、属性情報の値を得るための‘ｇｅｔ’インターフェース、属性情報の値を削除するための‘ｒｅｍｏｖｅ’インターフェースがある。このようなインターフェースは、それぞれの機能を行うプロセス、関数、プリシージャ、方法と理解される。
【００６５】
例えば、‘ｇｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ（ｖｏｉｄ）’方法は、現在スクリーンと関連された出力スクリーンを返還する機能を行う。例えば、現在スクリーンが論理スクリーンである場合には、関連された出力スクリーンが返還され、現在スクリーンが出力スクリーンである場合には、現在スクリーンについての参照情報が返還され、現在スクリーンが論理スクリーンであるが、関連された出力スクリーンが存在していない場合には、‘ＮＵＬＬ’が返還される。
【００６６】
さらに他の例として、‘ｐｕｂｌｉｃ  ｖｏｉｄ  ｓｅｔＤｉｓｐｌａｙＡｒｅａ（ＨＳｃｒｅｅｎＲｅｃｔａｎｇｌｅｒｅｃｔ）ｔｈｒｏｗｓ  ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ、ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’方法は、現在の論理スクリーンを関連された出力スクリーンの所定の領域にマッピングさせる機能を提供する。パラメータに提供されるインスタンスは、‘ｏｒｇ.ｈａｖｉ.ｕｉ’パッケージの‘ＨＳｃｒｅｅｎＲｅｃｔａｎｇｌｅ’クラスタイプであって、２次元位置情報を有する。そして、前記‘ｓｅｔＯｕｔｐｕｔＳｃｒｅｅｎ（ＨＳｃｒｅｅｎｓｃｒｅｅｎ）’方法に対する例外処理として、‘ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ’例外と‘ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’例外とが行われる。‘ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’例外は、現在のスクリーンが論理スクリーンでないか、またはハードウェアまたはソフトウェアプラットホームの特性上現在の論理スクリーンと関連された出力スクリーンの領域が変更されない場合に行われる。
【００６７】
さらに他の例として、‘ｇｅｔＯｕｔｐｕｔＡｒｅａ（ｖｏｉｄ）’方法は、現在スクリーンの領域についての情報を‘ＨＳｃｒｅｅｎＲｅｃｔａｎｇｌｅ’クラスの形態で返還する。もし、現在のスクリーンが出力スクリーンである場合には、‘ＨＳｃｒｅｅｎＲｅｃｔａｎｇｌｅ（０,０,１,１）’と同じ値を有する‘ＨＳｃｒｅｅｎＲｅｃｔａｎｇｌｅ’情報を返還し、現在のスクリーンが論理スクリーンである場合には、関連された出力スクリーンで前記論理スクリーンの占める領域についての情報が返還される。そして、現在のスクリーンが論理スクリーンであるが、関連された出力スクリーンが存在していない場合には、‘ＮＵＬＬ’値が返還される。
【００６８】
前述したそれぞれのインターフェース名は、それぞれの機能を表すための名称に過ぎないので、その名称に限定されず、その機能として理解されねばならない。
【００６９】
図９は、二つのサービスが二つの論理スクリーンにそれぞれ設定され、一つの出力スクリーンにマッピングされて出力される過程を示す例示図である。図９を参照するに、第１サービスは、ビデオ／オーディオ／データの３つのサービスコンポーネントが何れも存在するサービスであり、第２サービスは、ビデオコンポーネント及びオーディオコンポーネントのみが存在する場合を例として挙げたものである。もちろん、本発明では、サービスコンポーネントに対する制約事項をおかず、図９の場合は、一つの可能な例を示したものである。
【００７０】
図９に示したように、第１サービスと第２サービスとが従来の方式と類似した形態でディスプレイ画面に現れるが、本発明による場合、マッピングを通じてディスプレイ画面上に数の制限なしに複数のサービスを多様な位置に独立的に表現しうる。
【００７１】
図１０は、本発明の一実施形態による多重スクリーンの提供装置の構成を示すブロック図である。図１０を参照するに、本発明による多重スクリーン提供装置９００は、デジタル信号処理モジュール９４０、サービス処理モジュール９５０、出力モジュール９６０及びユーザ／アプリケーションインターフェースモジュール９６５を備える。
【００７２】
このとき、サービスを提供するソースとして、放送信号受信モジュール９１０、保存媒体９２０または外部入力モジュール９３０を備え、サービスが出力される媒体として、ディスプレイ画面９７０、保存媒体９８０または外部出力モジュール９９０を備えうる。
【００７３】
このとき、本実施形態で使われる‘モジュール’という用語は、ソフトウェアまたはＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）またはＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）のようなハードウェア構成要素を意味し、モジュールは、ある役割を行う。しかしながら、モジュールは、ソフトウェアまたはハードウェアに限定される意味ではない。モジュールは、アドレッシングする保存媒体にあるように構成されることもあり、一つまたはそれ以上のプロセッサを再生させるように構成されることもある。したがって、一例として、モジュールは、ソフトウェア構成要素、客体指向ソフトウェア構成要素、クラス構成要素及びタスク構成要素のような構成要素、プロセス、関数、属性、プリシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイ、及び変数を含む。構成要素及びモジュール内で提供される機能は、さらに小さな数の構成要素及びモジュールに結合されるか、または追加的な構成要素及びモジュールにさらに分離される。それだけでなく、構成要素及びモジュールは、デバイスまたは保安マルチメディアカード内の一つまたはそれ以上のＣＰＵを再生させるように具現されることもある。
【００７４】
デジタル信号処理モジュール９４０は、放送信号受信モジュール９１０、保存媒体９２０または外部入力モジュール９３０からマルチメディアコンテンツのようなサービスを構成する多様な構成情報、例えば、ビデオ情報、オーディオ情報またはデータ情報を受信する。
【００７５】
このとき、放送信号受信モジュール９１０は、衛星、地上波またはケーブル放送信号を受信して伝達するモジュールであり、保存媒体９２０は、サービスを構成するビデオ情報、オーディオ情報またはデータ情報が保存された機器を表し、外部入力モジュール９３０は、ネットワークインターフェースモジュールのようにネットワークに連結された他の機器からサービスを構成するビデオ情報、オーディオ情報またはデータ情報を受信して伝達するモジュールとして理解される。
【００７６】
デジタル信号処理モジュール９４０は、受信されたサービスコンポーネントを利用してサービスを復元するが、このとき、複数のサービスを復元しうる。このとき、前記復元されたサービスは、抽象サービスまたは非抽象サービスを含む。
【００７７】
また、ここで、‘複数のサービス’とは、例えば、放送信号受信モジュール９１０で伝えられる２個以上のサービスを意味することもでき、放送信号受信モジュール９１０と保存媒体９２０とのそれぞれから伝えられる２個以上のサービスを意味することもできる。
【００７８】
デジタル信号処理モジュール９４０で復元されるサービスは、ユーザ／アプリケーションインターフェースモジュール９６５を通じたユーザまたはアプリケーションの選択によって復元されることもある。このとき、ユーザまたはアプリケーションは、どのサービスをどんなスクリーンに連結するか選択しうる。
【００７９】
サービス処理モジュール９５０は、デジタル信号処理モジュール９４０によって復元されたサービスを表現するための一つ以上の論理スクリーン及び出力スクリーンを生成する。
【００８０】
出力モジュール９６０は、出力スクリーン上の所定の領域にサービス処理モジュール９５０によって生成された論理スクリーンをマッピングして出力する。このとき、出力スクリーン上へのマッピングは、既に設定されているか、またはユーザ／アプリケーションインターフェースモジュール９６５を通じてユーザまたはアプリケーションによって設定される。
【００８１】
また、デジタル信号処理モジュール９４０によって復元されたサービスは、サービス処理モジュール９５０で論理スクリーンと連結されず、出力スクリーンと直接連結されて出力モジュール９６０によって出力される。
【００８２】
出力モジュール９６０によって出力スクリーンは、物理的なディスプレイ画面９７０を通じて出力されるか、または保存媒体９８０に保存される。ここで、保存媒体９８０は、コンピュータによって可読であり、フロッピー（登録商標）ディスク、ハードディスク、ＣＤ−ＲＯＭ（リードオンリメモリ）、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＢＤ（Ｂｌｕｅ−ｒａｙ  Ｄｉｓｃ）及び半導体メモリを備える。
【００８３】
また、外部出力モジュール９９０を通じてネットワークに連結された他の機器に伝えられることもある。
【００８４】
このために、出力モジュール９６０は、出力スクリーンが提供される多数の出力ポートを備えうるが、このような場合に、既設定の基本出力ポートまたはユーザ／アプリケーションインターフェースモジュール９６５を通じて指定された出力ポートを通じて出力スクリーンが提供される。
【００８５】
ここで、出力モジュール９６０は、スクリーンと連結された出力ポートを検索しうる。すなわち、サービス処理モジュール９５０によって生成されたスクリーンのうち、特定スクリーンと連結された出力ポートを検索する。
【００８６】
出力モジュール９６０によって検索される出力ポートと連結されたスクリーンとしては、サービスに含まれたアプリケーションが実行される論理スクリーン及び論理スクリーンがマッピングされる出力スクリーンのうち少なくとも一つを備える。
【００８７】
また、出力モジュール９６０によって検索される出力ポートと連結された出力スクリーンは、アプリケーションが実行される論理スクリーンがマッピングされたスクリーンでもあり、論理スクリーンのマッピングなしにアプリケーションが直接実行されるスクリーンでもある。
【００８８】
そして、出力モジュール９６０は、一つのスクリーンに対する出力ポートを少なくとも一つ以上生成してスクリーンにマッピングすることもできる。言い換えれば、ユーザまたはアプリケーションは、ユーザ／アプリケーションインターフェースモジュール９６５を通じてスクリーンに含まれたコンテンツをディスプレイ画面９７０、保存媒体９８０または外部出力モジュール９９０に伝送しうるが、出力モジュール９６０は、各経路への出力ポートを別途に生成してスクリーンにマッピングしうる。
【００８９】
また、出力モジュール９６０は、スクリーンと連結された出力ポートとスクリーンとの連結関係を変更しうる。例えば、第１スクリーンと第１出力ポートとがマッピングされており、第２スクリーンと第２出力ポートとがマッピングされている状態で、出力モジュール９６０は、ユーザまたはアプリケーションの選択によって第１スクリーンを第２出力ポートに連結させ、第２スクリーンを第１出力ポートに連結させうる。
【００９０】
ユーザまたはアプリケーションは、ユーザ／アプリケーションインターフェースモジュール９６５を通じて所望のサービスを選択または復元させうる。また、ユーザまたはアプリケーションは、ユーザ／アプリケーションインターフェースモジュール９６５を通じて多数の出力スクリーンのうち、任意の出力スクリーンを選択することもできる。
【００９１】
図１０に示された各モジュールは、それぞれの機能によって分離されて示されているので、実際具現においては、それぞれ異なるモジュールとの結合も可能である。
【００９２】
図１１Ａは、本発明の一実施形態によって多重スクリーンの動的構成方法を示すフローチャートである。
【００９３】
一般的に、マルチメディアコンテンツを構成するビデオ情報、オーディオ情報、データ情報は、例えば、ＭＰＥＧストリームのような所定のフォーマットによって伝えられる。したがって、マルチメディアコンテンツのようなサービスを実行する装置は、前記のような情報を受信して該当するサービスを復元する（Ｓ１０１０）。このとき、復元されるサービスは、ユーザまたはアプリケーションによって選択されるか、またはあらかじめ設定される。ユーザがディスプレイ画面で現れるメニューやリモコンを利用するか、またはアプリケーションがＡＰＩを利用してどのサービスをどんなスクリーンに連結するかを選択しうる。
【００９４】
一方、データ情報は、サービス内に存在するアプリケーションに関するアプリケーション情報を含み、このようなアプリケーション情報は、アプリケーションがＰｉＰスクリーンで実行されるか否かを表すシグナル情報を含む。アプリケーション情報の例として、ＭＨＰ規格によるＡＩＴ（Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅ）とＯＣＡＰ規格によるＸＡＩＴ（ｅＸｔｅｎｄｅｄ  Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔａｂｌｅ）とがあり、このようなアプリケーション情報に前記シグナル情報を追加しうる。
【００９５】
次いで、前記復元されたサービスを本発明による論理スクリーンで表現されるように設定し（Ｓ１０２０）、前記論理スクリーンを本発明による出力スクリーンにマッピングした後（Ｓ１０３０）、ディスプレイ画面、保存媒体またはネットワークを通じて前記出力スクリーンが提供される（Ｓ１０４０）。
【００９６】
図１１Ｂは、出力スクリーンが提供される過程を具体的に示すフローチャートであって、出力モジュール９６０は、ユーザまたはアプリケーションの制御命令によって出力スクリーンと連結された出力ポートを検索（Ｓ１０５０）または変更しうる（Ｓ１０６０）。すなわち、ユーザまたはアプリケーションから出力ポート検索に対する制御命令が入力されれば、出力モジュール９６０は、現在出力スクリーンと連結された出力ポートを検索し、出力ポート変更に対する制御命令が入力されれば、出力モジュール９６０は、現在スクリーンに連結された出力ポートを他の出力ポートに連結することによって、その連結関係を変更しうる。
【００９７】
一方、図１１Ａ及び図１１Ｂでは、復元されたサービスが論理スクリーンを経て出力スクリーンを通じて提供されると表現されているが、論理スクリーンを経ずに直接出力スクリーンを通じて提供されることもある。
【００９８】
また、ユーザがＰｉＰサービスを選択する場合には、２つのモードとしてＰｉＰサービスが表現されるが、第１モードでは、ＰｉＰサービスのための別途の論理スクリーン、例えば、ＰｉＰスクリーンが生成されず、メインスクリーンで選択されたＰｉＰサービスのビデオコンポーネントのみが表現され、第２モードでは、ＰｉＰサービスのための別途の論理スクリーンが生成され、生成されたＰｉＰスクリーン内で選択されたＰｉＰサービスが表現される。
【００９９】
一方、図１１Ａ及び図１１Ｂでは、説明の便宜上一つのサービスが出力スクリーンにマッピングされる過程を説明しているが、スクリーン属性情報を利用して、多数のサービスが多数の論理スクリーンを介してまたは直接的に一つの出力スクリーン内の任意の領域にマッピングされる。
【０１００】
したがって、出力スクリーンがディスプレイ画面を通じて提供される場合には、ユーザまたはアプリケーションは、多数のサービスを実行しうる。
【０１０１】
図１２は、本発明の実施によって多重スクリーンを提供するためのソフトウェアアーキテクチャーを示す例示図である。図１２を参照するに、本発明によるソフトウェアアーキテクチャー１１００は、デバイスドライバレイヤ１１１０、ＡＰＩレイヤ１１２０、及びアプリケーションレイヤ１１３０を備える。
【０１０２】
デバイスドライバレイヤ１１１０は、マルチメディアコンテンツを提供する多様なソースからサービスを構成するサービスコンポーネントを受信してデコーディングする。このとき、サービスコンポーネントの例として、ビデオ情報、オーディオ情報またはデータ情報を含む。
【０１０３】
ＡＰＩレイヤ１１２０は、論理スクリーン及び出力スクリーンを生成し、サービス、論理スクリーン、出力スクリーン間のマッピングを行う。
【０１０４】
アプリケーションレイヤ１１３０は、サービスが表現される論理スクリーンをユーザが動的に構成できるようにするユーザインターフェースを提供するか、またはユーザの命令をＡＰＩレイヤ１１２０に伝達して該当命令による動作を行うようにできる。
【０１０５】
一方、ユーザは、アプリケーションレイヤ１１３０を通じてデバイスドライバレイヤ１１１０にとって出力スクリーンを物理的なディスプレイ画面を通じて出力させるか、または保存媒体に保存させうる。また、デバイスドライバレイヤ１１１０によって出力スクリーンをネットワークを通じて他の機器に伝送することもできる。
【０１０６】
このために、デバイスドライバレイヤ１１１０は、前記出力スクリーンを提供する多数の出力ポートを備えうるが、多数の出力ポートは、ＡＰＩレイヤ１１２０に存在することもできる。
【０１０７】
一方、多数の論理スクリーンを出力スクリーン上に動的に構成するためにＡＰＩレイヤ１１２０は、多数のソフトウェアモジュールを備えうるが、ここでは、‘ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒ’モジュール、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’モジュール、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＬｉｓｔｅｎｅｒ’モジュール、及び‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＥｖｅｎｔ’モジュールを例として説明し、このようなモジュールの関係を図１３に示している。
【０１０８】
‘ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒ’モジュール１２１０は、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’モジュールを管理しつつ、所望のスクリーンを探すか、スクリーン間のデバイス共有情報を知らせるか、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＬｉｓｔｅｎｅｒ’モジュール１２５０の登録または解除を担当する役割を行う。
【０１０９】
‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’モジュール１２３０は、スクリーン客体１２２０と関連してスクリーン客体に対するインターフェース客体であって、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’モジュール１２３０のインターフェース動作によってスクリーン客体が論理スクリーンと出力スクリーンとにスクリーンの類型が決定され、図６に示されている多様な属性情報が設定される。前述した‘ｓｅｔ’、‘ａｄｄ’、‘ｇｅｔ’、‘ｒｅｍｏｖｅ’インターフェースは、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’モジュール１２３０によって提供される。
【０１１０】
‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＥｖｅｎｔ’モジュール１２４０は、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’のインターフェース客体１２３０によってスクリーン客体１２２０の属性情報が変わった場合、これを知らせるためのイベントクラスであり、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＬｉｓｔｅｎｅｒ’モジュール１２５０は、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＥｖｅｎｔ’モジュール１２４０によるイベントを受信しようとする所定のアプリケーションクラスに具現されるリスナーインターフェース客体である。
【０１１１】
一方、アプリケーション１２６０は、アプリケーションレイヤ１１３０で動作するモジュールであって、ユーザにとって所望のサービスを選択させ、出力スクリーンに多数の論理スクリーンを所望の形態によって自由に配させる。
【０１１２】
したがって、アプリケーション１２６０は、ユーザが論理スクリーンを動的に配し、その管理に関する命令をＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０に伝達すれば、ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０は、ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔモジュール１２３０を通じて前記命令に対応する動作を行う。
【０１１３】
一方、ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔモジュール１２３０は、スクリーン客体１２２０と関連して、図６に示されたスクリーン客体１２２０の属性情報を管理でき、このような管理のために多様な関数または方法を含みうる。
【０１１４】
一方、本発明の一実施形態によれば、ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０は、デバイスドライバレイヤ１１１０から多様なソースから提供されたサービスコンポーネントを受信して論理スクリーンまたは出力スクリーンで表現できるように動作することもできる。もちろん、このような機能は、別途のモジュール（図示せず）を通じて行われることもある。
【０１１５】
図１４は、図１３に示された各モジュールによって複数のサービスを論理スクリーンを通じて出力スクリーンに表す過程を示すフローチャートである。
【０１１６】
まず、ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０は、一つの出力スクリーンと実行されるサービス数ほどの論理スクリーンとを生成する（Ｓ１３１０）。
【０１１７】
次いで、ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０は、それぞれの論理スクリーンをデバイスドライバレイヤ１１１０から受信したサービスと連結させる（Ｓ１３２０）。このとき、それぞれの論理スクリーンに対して、連結するサービスに対するサービスコンテキスト客体をパラメータとして論理スクリーン客体の‘ａｄｄＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法を呼び出せる。ここで、‘ａｄｄＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法は、論理スクリーンとサービスとを連結する機能を行う方法として理解され、ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔモジュール１２３０によって提供される。
【０１１８】
論理スクリーンとサービスとが連結されれば、ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０は、それぞれの論理スクリーンを出力スクリーンと連結する（Ｓ１３３０）。このとき、それぞれの論理スクリーンに対して、連結する出力スクリーン客体をパラメータとして、論理スクリーン客体の‘ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ’方法を呼び出せる。ここで、‘ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ’方法は、論理スクリーンと出力スクリーンとを連結する機能を行う方法として理解され、ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔモジュール１２３０によって提供される。
【０１１９】
例えば、‘ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ’方法は、‘ｐｕｂｌｉｃ  ｖｏｉｄ  ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ（ＨＳｃｒｅｅｎｓｃｒｅｅｎ）ｔｈｒｏｗｓ
ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ、ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’の形態で表現され、この方法は、パラメータに提供される‘ＨＳｃｒｅｅｎ’インスタンスを現在の論理スクリーンと関連させる機能を提供する。このとき、前記‘ＨＳｃｒｅｅｎ’インスタンスは、出力スクリーンであることが望ましい。
【０１２０】
そして、前記‘ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ（ＨＳｃｒｅｅｎｓｃｒｅｅｎ）’方法のパラメータは、‘ＮＵＬＬ’を含みうるが、この場合、例外処理なしに‘ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ（ＨＳｃｒｅｅｎｓｃｒｅｅｎ）’方法が実行されれば、現在の論理スクリーンは、それ以上出力スクリーンと関連されない。
【０１２１】
そして、‘ｓｅｔＤｉｓｐｌａｙＳｃｒｅｅｎ（ＨＳｃｒｅｅｎｓｃｒｅｅｎ）’方法に対する例外処理として、‘ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ’例外と‘ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’例外とが行われる。
【０１２２】
‘ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’例外は、現在のスクリーンが論理スクリーンではないか、またはハードウェアまたはソフトウェアプラットホームの特性上パラメータに提供される出力スクリーンが特定の論理スクリーンと関連されて、現在の論理スクリーンを前記パラメータに該当する出力スクリーンと関連させられない場合に行われる。
【０１２３】
サービスと論理スクリーン、及び多数の論理スクリーンと一つの出力スクリーンとが連結されれば、それぞれの論理スクリーンが表現される出力スクリーンの領域が設定される（Ｓ１３４０）。このとき、それぞれの論理スクリーンに対して、出力スクリーンに見られる領域を設定するために、ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔモジュール１２３０によって提供される方法を呼び出せる。
【０１２４】
図１５は、本発明の実施形態による出力モジュール９６０の動作を示す例示図であって、出力モジュール９６０は、前述したように、出力ポート検索１５１０または出力ポート変更１５２０を行える。
【０１２５】
出力ポート検索１５１０を行うために、出力モジュール９６０は、‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法を呼び出せる。‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法は、スクリーンがマッピングされたビデオ出力ポートを抽出する方法であって、そのデータ形態は、‘ｏｒｇ.ｏｃａｐ.ｈａｒｄｗａｒｅ’パッケージの‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ［］’クラスタイプである。すなわち、‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法は、‘ＨＳｃｒｅｅｎ’に連結された‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスの集合を返還することである。
【０１２６】
このとき、該当スクリーンの種類が出力スクリーンであり、ビデオ出力ポートと連結された場合、‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法は、少なくとも一つ以上の‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスを返還し、該当スクリーンの種類が論理スクリーンの状態でその論理スクリーンが出力スクリーンと連結された場合、‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法は、出力スクリーンに連結された‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスを返還する。また、該当スクリーンの種類が論理スクリーンの状態でその論理スクリーンが出力スクリーンと連結されていない場合、‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法は、ＮＵＬＬを返還することもできる。
【０１２７】
図１６Ａは、スクリーンに連結された出力ポートを検索するためのコードの例示図であって、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔ’モジュールのスクリーン客体の‘ｓｃｒｅｅｎ’に対して‘ｇｅｔＯｕｔｐｕｔＰｏｒｔｓ’方法が適用されたことを表す。
【０１２８】
出力ポート変更１５２０を行うために、出力ポート９６０は、‘ａｄｄＯｕｔｐｕｔＰｏｒｔ’方法または‘ｒｅｍｏｖｅＯｕｔｐｕｔＰｏｒｔ’方法を呼び出せる。‘ａｄｄＯｕｔｐｕｔＰｏｒｔｓ’方法は、スクリーンがマッピングされたビデオ出力ポートの集合に‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスを追加する方法であって、そのパラメータとして‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’を含む。
【０１２９】
‘ａｄｄＯｕｔｐｕｔＰｏｒｔ’方法は、‘ｖｏｉｄａｄｄＯｕｔｐｕｔＰｏｒｔ（ｏｒｇ.ｏｃａｐ.ｈａｒｄｗａｒｅ.ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔｐｏｒｔ）ｔｈｒｏｗｓｊａｖａ.ｌａｎｇ.ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ、ｊａｖａ.ｌａｎｇ.ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’の形態で表現される。
【０１３０】
‘ａｄｄＯｕｔｐｕｔＰｏｒｔ’方法による例外処理が行われるのにおいて、所定権限が与えられない場合、‘ｊａｖａ.ｌａｎｇ.ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ’例外が行われ、該当スクリーンが出力スクリーンではない場合、指定された出力ポートが既に他のスクリーンと連結されている場合、該当スクリーンに対する‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスが変更されない場合（例えば、プラットホームが‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスの特定集合に永久的に連結されている場合）または該当スクリーンに指定された‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスが既に連結されている場合、‘ｊａｖａ.ｌａｎｇ.ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’例外が行われる。
【０１３１】
‘ｒｅｍｏｖｅＯｕｔｐｕｔＰｏｒｔ’方法は、スクリーンがマッピングされたビデオ出力ポートの集合で‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスを除去する方法であって、そのパラメータとして‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’を含む。
【０１３２】
‘ｒｅｍｏｖｅＯｕｔｐｕｔＰｏｒｔ’方法は、‘ｖｏｉｄｒｅｍｏｖｅＯｕｔｐｕｔＰｏｒｔ（ｏｒｇ.ｏｃａｐ.ｈａｒｄｗａｒｅ.ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔｐｏｒｔ）ｔｈｒｏｗｓｊａｖａ.ｌａｎｇ.ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ、ｊａｖａ.ｌａｎｇ.ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ、ｊａｖａ.ｌａｎｇ.ＩｌｌｅｇａｌＡｒｇｕｍｅｎｔＥｘｃｅｐｔｉｏｎ’の形態で表現される。
【０１３３】
‘ｒｅｍｏｖｅＯｕｔｐｕｔＰｏｒｔ’方法による例外処理が行われるのにおいて、所定権限が与えられない場合、‘ｊａｖａ.ｌａｎｇ.ＳｅｃｕｒｉｔｙＥｘｃｅｐｔｉｏｎ’例外が行われ、該当スクリーンが出力スクリーンでない場合、該当スクリーンに対する‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスが変更されない場合（例えば、プラットホームが‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスの指定された集合に永久的に連結されている場合）、‘ｊａｖａ.ｌａｎｇ.ＩｌｌｅｇａｌＳｔａｔｅＥｘｃｅｐｔｉｏｎ’例外が行われる。また、指定された‘ＶｉｄｅｏＯｕｔｐｕｔＰｏｒｔ’インスタンスが該当スクリーンに連結されていない場合、‘ｊａｖａ.ｌａｎｇ.ＩｌｌｅｇａｌＡｒｇｕｍｅｎｔＥｘｃｅｐｔｉｏｎ’例外が行われる。
【０１３４】
図１６Ｂは、スクリーンに連結された出力ポートを変更するためのコードの例示図であって、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｆｉｇｕｒａｂｌｅＣｏｎｔｅｘｔ’モジュールのスクリーン客体である‘ｓｃｒｅｅｎ’に対して‘ａｄｄＯｕｔｐｕｔＰｏｒｔ’方法が適用されたことを表す。
【０１３５】
図１７は、図１３に示された各モジュールによって、論理スクリーンに表現されるサービスが交換される過程を示すフローチャートである。
【０１３６】
まず、ＭｕｌｔｉＳｃｒｅｅｎＭａｎａｇｅｒモジュール１２１０は、サービスが相互交換される二つの論理スクリーンに存在するサービスを一時中止させる（Ｓ１４１０）。
【０１３７】
次いで、二つの論理スクリーンに連結されたサービスの情報を交換する（Ｓ１４２０）。このとき、二つの論理スクリーン客体のそれぞれに対して‘ｒｅｍｏｖｅＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法と‘ａｄｄＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法とを呼び出すことによって、論理スクリーンに設定されたサービスコンテキストを交換しうる。ここで、‘ｒｅｍｏｖｅＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法は、論理スクリーンに連結されていたサービスコンテキストを除去する機能を行う方法として理解され、‘ａｄｄＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法は、論理スクリーンに新たなサービスコンテキストを追加する機能を行う方法として理解され、‘ｒｅｍｏｖｅＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法と‘ａｄｄＳｅｒｖｉｃｅＣｏｎｔｅｘｔ’方法とは、ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔモジュール１２３０によって提供される。すなわち、本発明では、論理スクリーンに連結されたサービスについての情報を交換することによって、従来の主画面と副画面とを相互交換する効果だけでなく、例えば、ディスプレイ画面に３個以上のサービスが実行されていても、任意の数の論理スクリーン間にサービスの交換が可能になる。
【０１３８】
二つの論理スクリーンに連結されたサービスの情報が交換されれば、サービスと論理スクリーンとの連結が変わったというイベントが発生し（Ｓ１４３０）、次いで、‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＥｖｅｎｔ’モジュール１２４０は、発生したイベントを‘ＭｕｌｔｉＳｃｒｅｅｎＣｏｎｔｅｘｔＬｉｓｔｅｎｅｒ’モジュール１２５０に伝達し、二つの論理スクリーンに新たに連結されたサービスに対する実行が再開される（Ｓ１４４０）。
【産業上の利用可能性】
【０１３９】
本発明の多重スクリーンの提供装置及び前記多重スクリーンの動的構成方法によれば、物理的なディスプレイ画面に複数のコンテンツを提供する多数のスクリーンを動的に構成するために多数のスクリーンを異なる多数の出力ポートに連結することによって、ユーザにとって生成されたスクリーンをその用途に合わせて運用させうる。
【０１４０】
以上、添付された図面を参照して本発明の実施形態を説明したが、当業者は、本発明がその技術的思想や必須な特徴を変更せずに他の具体的な形態で実施されるということが分かるであろう。したがって、前述した実施形態は、全ての面で例示的なものであり、限定的でないと理解せねばならない。
【図面の簡単な説明】
【０１４１】
【図１Ａ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｂ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｃ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｄ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｅ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｆ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｇ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図１Ｈ】本発明の一実施形態によってＰｉＰスクリーンが配される形態を示す例示図である。
【図２】本発明の一実施形態による論理スクリーンと出力スクリーンとの関係を示す例示図である。
【図３Ａ】本発明の一実施形態によるマッパを備えるスクリーンの構成を示す図である。
【図３Ｂ】本発明の一実施形態によるマッパを備えるスクリーンの構成を示す図である。
【図３Ｃ】本発明の一実施形態によるマッパを備えるスクリーンの構成を示す図である。
【図３Ｄ】本発明の一実施形態によるマッパを備えるスクリーンの構成を示す図である。
【図３Ｅ】本発明の一実施形態によるマッパを備えるスクリーンの構成を示す図である。
【図４】本発明の一実施形態によってサービスを提供するソースの例を示す例示図である。
【図５Ａ】本発明の一実施形態によって抽象サービスの例を示す例示図である。
【図５Ｂ】本発明の一実施形態によって非抽象サービスの例を示す例示図である。
【図６】論理スクリーン及び出力スクリーンにおける属性情報及びインターフェース種類を示す例示図である。
【図７】論理スクリーンの‘ｚ−ｏｒｄｅｒ’属性を示す例示図である。
【図８Ａ】論理スクリーンの‘Ｄｉｓｐｌａｙ＿Ａｒｅａ’属性を示す例示図である。
【図８Ｂ】論理スクリーンの‘Ｄｉｓｐｌａｙ＿Ａｒｅａ’属性を示す例示図である。
【図９】二つのサービスが一つの出力スクリーンにマッピングされて出力される過程を示す例示図である。
【図１０】本発明の一実施形態による多重スクリーンの提供装置の構成を示すブロック図である。
【図１１Ａ】本発明の一実施形態によって多重スクリーンの動的構成方法を示すフローチャートである。
【図１１Ｂ】本発明の一実施形態によって多重スクリーンの動的構成方法を示すフローチャートである。
【図１２】本発明の実施によって多重スクリーンを提供するためのソフトウェアアーキテクチャーを示す例示図である。
【図１３】本発明の実施によってＡＰＩレイヤを構成するモジュールの関係を示す例示図である。
【図１４】本発明の一実施形態によって、図１３で示された各モジュールによって複数のサービスを論理スクリーンを通じて出力スクリーンに示す過程を示すフローチャートである。
【図１５】本発明の実施形態による出力モジュールの動作を示す例示図である。
【図１６Ａ】本発明の実施形態による出力ポート検索のためのコードの例示図である。
【図１６Ｂ】本発明の実施形態による出力ポート変更のためのコードの例示図である。
【図１７】本発明の一実施形態によって、図１３で示された各モジュールによって論理スクリーンに表現されるサービスが交換される過程を示すフローチャートである。
【図１Ａ】
2009503603.tif 000003
【図１Ｂ】
2009503603.tif 000004
【図１Ｃ】
2009503603.tif 000005
【図１Ｄ】
2009503603.tif 000006
【図１Ｅ】
2009503603.tif 000007
【図１Ｆ】
2009503603.tif 000008
【図１Ｇ】
2009503603.tif 000009
【図１Ｈ】
2009503603.tif 000010
【図３Ａ】
2009503603.tif 000011
【図３Ｂ】
2009503603.tif 000012
【図３Ｃ】
2009503603.tif 000013
【図３Ｄ】
2009503603.tif 000014
【図３Ｅ】
2009503603.tif 000015
【図４】
2009503603.tif 000016
【図５Ａ】
2009503603.tif 000017
【図５Ｂ】
2009503603.tif 000018
【図６】
2009503603.tif 000019
【図７】
2009503603.tif 000020
【図８Ａ】
2009503603.tif 000021
【図８Ｂ】
2009503603.tif 000022
【図９】
2009503603.tif 000023
【図１０】
2009503603.tif 000024
【図１１Ａ】
2009503603.tif 000025
【図１１Ｂ】
2009503603.tif 000026
【図１２】
2009503603.tif 000027
【図１３】
2009503603.tif 000028
【図１４】
2009503603.tif 000029
【図１５】
2009503603.tif 000030
【図１６Ａ】
2009503603.tif 000031
【図１６Ｂ】
2009503603.tif 000032
【図１７】
2009503603.tif 000033
【図２】
2009503603.tif 000034
【国際調査報告】
2009503603.tif 000035
2009503603.tif 000036