(57)【特許請求の範囲】
【請求項１】
汎用型リモコン装置をプログラミングする方法であって、
リモートコントロール学習プログラムにおいて、デバイスを制御するためのオリジナルのリモコン装置からの、又は、前記デバイスを制御するためにプログラムされた他の汎用型リモコン装置からの、１よりも多くのコマンドを有するコマンドシーケンスを実行するようにユーザにリクエストするステップと、
前記コマンドシーケンスからの取得されたコマンドを解析するステップと、
解析されたコマンドを、コードツリーデータベースのブランチ又はコードセットとマッチングさせるステップと、
前記デバイスを含む動作を実行するためのマクロを生成するために前記コマンドシーケンスを用いるステップとを有し、
前記リモートコントロール学習プログラムにおいて、仮想デバイスが、前記オリジナルのリモートコントロールにより制御される前記デバイスに対応して起動され、
前記仮想デバイスのステータスは、取得され解析されたコマンドに応じて変えられる、
方法。
【請求項２】
前記リモートコントロール学習プログラムは、パーソナルコンピュータ上のアプリケーションである、請求項１に記載の方法。
【請求項３】
前記パーソナルコンピュータは、直接的に又は前記汎用型リモコン装置を介して前記コマンドを取得する、請求項２に記載の方法。
【請求項４】
前記仮想デバイスが起動する前に前記仮想デバイスを表示するため、前記オリジナルのリモコン装置により制御される前記デバイスのデバイスタイプ及びブランド名を入力することをユーザにリクエストする更なるステップを有する、請求項１に記載の方法。
【請求項５】
解析されたコマンドを用いて、マッチしたコードセット又はコードツリーを改良する更なるステップを有する、請求項１に記載の方法。
【請求項６】
解析されたコマンドがマッチされ得る利用可能なコードツリーデータベースのブランチがないか又はコードセットがない場合において、前記オリジナルのリモコン装置のコードを学習する更なるステップを有する、請求項１に記載の方法。
【請求項７】
当該方法が用いられるデバイスに関する統計データを収集する更なるステップを有する、請求項１に記載の方法。
【請求項８】
ユーザは、前記動作に加わるデバイスを選択するようにリクエストされ、全ての選択されたデバイスに関するコマンドを含むコマンドシーケンスを実行することによりマクロを記録する、請求項１に記載の方法。
【請求項９】
コンピュータプログラムがプログラム可能なハードウェア上で動作したときに、請求項１〜８のうちいずれか一項に記載の方法のステップを実行するように適合されたコンピュータプログラムコード手段を有する、コンピュータプログラム。
【請求項１０】
汎用型リモコン装置をプログラミングするコントローラを有するシステムであって、
リモートコントロール学習プログラムにおいて、デバイスを制御するためのオリジナルのリモコン装置からの、又は、前記デバイスを制御するためにプログラムされた他の汎用型リモコン装置からの、１よりも多くのコマンドを有するコマンドシーケンスを実行するようにユーザにリクエストする手段、
前記コマンドシーケンスからの取得されたコマンドを解析する手段、
解析されたコマンドを、コードツリーデータベースのブランチ又はコードセットとマッチングさせる手段、
前記デバイスを含む動作を実行するためのマクロを生成するために前記コマンドシーケンスを用いる手段、及び、
前記リモートコントロール学習プログラムにおいて、前記オリジナルのリモートコントロールにより制御される前記デバイスに対応する仮想デバイスを起動し、かつ、前記の取得され解析されたコマンドに応じて前記仮想デバイスのステータスを変える手段、
を有する、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、汎用型リモコン装置（ＵＲＣ；Universal Remote Control）をプログラミングするためにリモートコントロールコマンドを学習させる方法及びシステムに関する。
【背景技術】
【０００２】
ＵＲＣは、典型的には、赤外線コードセットのデータベースにアクセスすることによりプログラムされる。これらのコードセットは、多くの場合、ブランド及びデバイスタイプ（ＴＶ、ＤＶＤ等）毎にグループ化される。しかしながら、リモコン装置で制御される、市場における多様なデバイスのため、これらのデータベースの情報は、しばしば不十分である。この場合において、これは、汎用型リモコン装置を設定し、動作させるために必要とされる全てのボタンをプログラムするために問題になり得る。正しいコードセットがデータベースにおいて利用可能である場合であっても、これを見つけることは実に困難であり得る。
【０００３】
米国特許第５，８１９，２９４号明細書は、この問題を扱う方法を開示している。この方法によれば、プログラム可能なＵＲＣはＰＣによりプログラムされる。様々な商業的に利用可能なリモコン装置により用いられるコードのセットに関するデータベースがあり、これは、ＰＣにあるか又はリモコン装置にある。データベースは、圧縮されたコードのセットを含む。装置を制御するためのＵＲＣをプログラムするために、ユーザは、一方の装置を制御するための特定の既知のリモコン装置により出力された単一パルスコード（コマンド）と他方のデータベース内のアイテムとの間の一致をＰＣに見つけさせる。前記一致を見つけると、一致するアイテムを含むセットは、特定のリモコン装置を介して制御可能な特定の装置に対応するプログラム可能なリモートコントロールコントローラ内に格納される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、汎用リモコン装置（ＵＲＣ）をプログラムするためにリモートコントロールコマンドを学習させる改良された方法及びシステムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、独立請求項により規定される。従属請求項は、有利な実施形態を規定する。
【０００６】
有利には、本発明は、オリジナルのリモコン装置からの情報を取得する点について更にステップを行い、コードの一致だけでなく、リモコン装置が幾つかの動作（例えば、デバイスのオン及びオフ、デバイスの入力切替等）を実行するためにユーザによりどのように用いられるかについての情報も取得する。
【０００７】
本発明の第１の態様によれば、汎用型リモコン装置をプログラミングする方法であって、リモコン装置の学習プログラムにおいて、デバイスを制御するためのオリジナルのリモコン装置からの、又は、前記デバイスを制御するためにプログラムされた他の汎用型リモコン装置からの、１よりも多くのコマンドを有するコマンドシーケンスを実行するようにユーザにリクエストするステップと、前記シーケンスからの取得されたコマンドを解析するステップと、解析されたコマンドを、コードツリーデータベースのブランチ又はコードセットとマッチングさせるステップと、前記デバイスを含む動作を実行するためのマクロを生成するために前記コマンドシーケンスを用いるステップとを有する、方法が提供される。
【０００８】
コマンドシーケンスを実行することをユーザにリクエストすることにより、ユーザがデバイスをどのように制御するかについての動作データが収集され得る。例えば、どのコード（コマンド）がデバイスをオフにするために用いられるか、どのコードがデバイスをオンにするために用いられるか、ユーザがどのようにマルチデジタルチャンネル（例えばチャンネル２５）に切り替えるか、ユーザがどのようにデバイス上の或る入力（例えばＨＤＭＩ（登録商標）−２）に切り替えるか等についての情報が取り出され得る。この動作データは、動作に関連したマクロを自動的に生成するために用いられる。一例として、ユーザは、一般的に言えば、パワートグルボタンを押すことにより、チャンネルボタン（例えば"１"）を押すことにより、又は、チャンネルアップボタンを押すことにより、スタンバイモードにあるＴＶをオンにし得る。しかしながら、一部の旧式のＴＶ装置において、パワートグルボタンが、ＴＶをオフにするために用いられるだけであり、ＴＶをオンにするためには用いられない場合もある。従って、斯様なＴＶ装置をオンにするステップを含むマクロを作成する場合において、この目的のためのパワートグルボタンに対応するコードの使用は避けられるべきである。動作データを収集することにより、ユーザがＴＶ装置をオンにするためにパワートグルボタンを用いないことを通知することができ、マクロにおける対応するコードの使用が避けられ得る。
【０００９】
マクロの生成が明らかではない他の例は、Apple TV，iPod又はMacを制御するために用いられる、Apple社のリモコン装置である。このリモコン装置のコードセットはパワーコードをもたない。それ故、コードセットを調べることによっては、制御されたデバイスがどのようにオンにされるかを知ることはできない。Apple TVをオンにするためにボタンを押すことをユーザに尋ねることにより、この目的のために用いられるコード（この場合においてはメニューボタン）が取り出され、その情報は、後にマクロの生成に用いられ得る。
【００１０】
更に他の例は、アンプ／チューナ及びＤＶＤプレーヤをもつホームシアターシステムの場合であり、例えば、チューナが入力１に接続され、ＤＶＤプレーヤがＴＶ装置の入力２に接続される。しばしば、コードセットは、チューナに切り替えるための特定のコード（"tuner"）を有さない。チューナに切り替えるようにユーザにリクエストし、この目的のために入力１のコードを用いるという情報を取り出すことにより、マクロは、チューナをオンにするという動作のために生成され、ＴＶ及びチューナの双方がオンにされ、ＴＶが入力１に切り替えられる。
【００１１】
更なる利点は、オリジナルのリモコン装置からのコマンドを取得することにより、ＵＲＣは、オリジナルのリモコン装置のタイミングをより良くマッチさせるようにそのタイミングを調節することができる。例えば、幾つかのブランドのリモコン装置は、信頼性の目的で、他のもの（０．５秒）よりも長い時間（例えば２秒）の間、パワーオン／オフのような幾つかのコマンドを出力する。斯様な挙動をＵＲＣにコピーすることにより、より確実な手法でオリジナルのリモコン装置に対応するデバイスを制御することができる。更に、汎用型リモコン装置は、保証された成功のためにデータベースコマンドの代わりに取得されたコマンドを用いることができる。
【００１２】
一実施形態によれば、リモートコントロール学習プログラムにおいて、仮想デバイスが、オリジナルのリモートコントロールにより制御されるデバイスに対応して起動され、仮想デバイスのステータスは、取得され解析されたコマンドに応じて変えられる。この手法において、ユーザに直感的なフィードバックが与えられ、仮想デバイスは、実際のデバイスと同じ態様でコマンドに反応する。
【００１３】
他の実施形態によれば、リモートコントロール学習プログラムは、直接的に又は汎用型リモコン装置を介してコマンド取得するパーソナルコンピュータ上のアプリケーションである。結果として、汎用リモコン装置のプログラミングは、最近ではほとんどの家庭で利用可能な装置（ＰＣ）により実行され得る。
【００１４】
更に他の実施形態によれば、本方法は、オリジナルのリモコン装置により制御されるデバイスのデバイスタイプ及びブランド名を入力することをユーザにリクエストする更なるステップを有する。この情報は、正しい仮想デバイスを表示するために用いられ得る。
【００１５】
更に他の実施形態によれば、本方法は、解析されたコマンドを用いて、マッチしたコードセット又はコードツリーを改良する更なるステップを有する。時々、既存のコードセット又はコードツリーは、不十分であるか又はデバイスを制御するために用いられるコードセット／コードツリーと完全には一致しない（幾つかのコマンドは一致し、幾つかの他のものは一致しない）。この場合において、これは、誤ったコマンドを置換し、及び／又は、オリジナルのリモコン装置から受信されるコマンドをもつコマンドを追加するために役立つ。
【００１６】
更に他の実施形態によれば、本方法は、解析されたコマンドがマッチされ得る利用可能なコードツリーデータベースのブランチがないか又はコードセットがない場合において、オリジナルのリモコン装置のコードを学習する更なるステップを有する。結果として、新たなもの（即ち、データベースにおいて前に利用可能ではなかったコードセット）も学習され、アクティビティマクロ生成のために用いられ得る。
【００１７】
更に他の実施形態によれば、本方法は、当該方法が用いられるデバイス及びこれらの対応するコードセットに関する統計データを収集するステップを有する。この手法において、前記コードセットが優先され、どれが他のものよりも人気があるかが決定され得る。更に、旧式の（ほとんど用いられていない）コードセットが決定され、メモリスペースを節約するためにサーバ又はデータベースから削除され得る。
【００１８】
更に他の実施形態によれば、ユーザは、前記動作に加わるデバイスを選択するようにリクエストされ、マクロは、全ての選択されたデバイスに関するコマンドを含むコマンドシーケンスを実行することにより記録される。従って、複数のデバイスに関するマクロが便利に取得され得る。
【００１９】
好ましくは、本発明の方法は、任意のハードウェア（例えば、コンピュータ、デジタル信号プロセッサ、フィールドプログラム可能ゲートアレイ、アプリケーション特定用途向け集積回路、マイクロプロセッサ、又は、マイクロコントローラ）上で実行し得るコンピュータプログラムにより実装される。
【００２０】
コンピュータプログラムがコンピュータ読み取り可能な媒体上で具現され得るか、又は、キャリア媒体がコンピュータプログラムを実行し得る。
【００２１】
本発明の第２の態様によれば、リモコン装置の学習プログラムにおいて、デバイスを制御するためのオリジナルのリモコン装置からの、又は、前記デバイスを制御するためにプログラムされた他の汎用型リモコン装置からの、１よりも多くのコマンドを有するコマンドシーケンスを実行するようにユーザにリクエストし、前記シーケンスからの取得されたコマンドを解析し、解析されたコマンドを、コードツリーデータベースのブランチ又はコードセットとマッチングさせ、前記デバイスを含む動作を実行するためのマクロを生成するために前記コマンドシーケンスを用いるように構成されたコントローラを有する、システムが提供される。
【００２２】
一実施形態において、本システムはＵＲＣであり得る。
【００２３】
本発明のこれらの及び他の態様は、後述される実施形態から明らかになり、これらの実施形態を参照して説明されるだろう。
【００２４】
本発明のこれらの及び他の態様は、以下の説明における例により説明される実施形態及び添付図面から明らかになり、これらを参照して更に説明されるだろう。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態のシステムのブロック図である。
【図２】本発明の一実施形態のディスプレイ上の仮想デバイスの表現を示す。
【図３】汎用型リモコン装置のプログラミングのステップを説明するフロー図である。
【図４】本発明の他の実施形態のシステムのブロック図である。
【発明を実施するための形態】
【００２６】
図中、類似の参照番号は類似の要素に言及する。
【００２７】
図１は、第１の例のシステム１００のブロック図である。システム１００は、ホームエンターテイメントシステムである。システム１００は、第１の装置１０２、ここではＴＶ装置を有する。装置１０２は、ユーザ制御可能な複数の機能、例えば"ＴＶのオン／オフ"、"チャンネルのアップ／ダウン"、"ミュート"、"ブライトネスのアップ"等をもつ。ＴＶ装置１０２は、対応するリモコン装置１０３をもつ。また、システム１００は、複数のユーザ制御可能な機能（"オン"、"再生"、"早送り"、"ディスク取り出し"等）をもつ第２の装置１０４、ここではＤＶＤプレーヤを有する。また、ＤＶＤプレーヤ１０４は、対応するリモコン装置１０５をもつ。システム１００は、プログラム可能な汎用型リモコン装置（ＵＲＣ）１１０を更に有する。ＵＲＣは、ＩＲレシーバ１１２、ＩＲトランスミッタ１１４、（関連するメモリをもつプロセッサとして実装された）コントローラ１１６、メモリ１１８、及び、複数のユーザ入力（例えば、ボタン又はＧＵＩ上のソフトキー；図示省略）をもつユーザインタフェース（ＵＩ）１２０を有する。複数のユーザ入力は、ＵＲＣ１１０がプログラムされると複数の制御信号（コマンド）のうち特定の１つを送ることにより装置１０２，１０４の機能のうち特定の１つの選択的制御を提供する。システム１００は、ＵＲＣ１１０のプログラミングのためのパーソナルコンピュータ（ＰＣ）１３０を更に有する。ＰＣは、（関連するメモリをもつプロセッサとして実装された）コントローラ１３２と、複数のデータをもつデータベースを格納するメモリ１３４とを有する。各データは、圧縮されたデジタルフォーマットにおける制御コマンド（信号）のそれぞれのセットを表す。各セットは、複数の装置のそれぞれの制御に関する制御コマンドを有する。装置は、タイプが異なってもよく（例えば、ＤＶＤプレーヤに対するＴＶレシーバ）、及び／又は、装置は、ブランドが異なってもよい（例えば、Philips，Marantz等）。ＰＣは、従来どおり、ディスプレイ１３６及びユーザインタフェース１３８（例えばキーボード及びマウス）を更に有する。ＵＲＣ１１０は、良く知られているように、通信ポートを介してＰＣ１３０に接続され、ＰＣのＩＲレシーバとして機能する。代わりに、ＰＣは、ＩＲコマンドを受信するための別個のＩＲレシーバを有してもよく、ＵＲＣは、ＰＣ１３０の他のポートに接続されてもよい。
【００２８】
ＵＲＣ１１０のＩＲレシーバ１１２は、ＴＶ装置１０２及びＤＶＤプレーヤ１０４に付属するオリジナルのリモコン装置１０３，１０５のうち１つにより与えられた制御コマンドを受信する。制御コマンド（又はコード、タームコード及びコマンドがこの説明において同義語として用いられる）は、例えば、会社Ｚ（Philips）により製造されたタイプＹの装置（ＴＶ装置１０２）の機能Ｘ（パワーオン）を制御するＩＲ制御信号である。ＩＲレシーバ１１２は、取得した特定の信号をサンプリングし、サンプリングされた信号を圧縮データのデジタル語に変換し、これは、それ自体知られた手法でＰＣに転送される。ＰＣのコントローラ１３２は、デジタル語を解析し、メモリ１３４がこのデジタル語を表すデータアイテムを格納しているかどうかを確認するためにメモリ１３４に問い合わせる。コントローラ１３２が一致するデータアイテムを取り出す場合には、第１の可能性に従って、この特定の制御信号を含む制御信号の完全なセットに対応するデータが一致するものとして識別される。即ち、識別は、レシーバ１１２により受信された特定の制御信号に基づいて達成される。セットが識別されると、ＰＣ１３０は、識別されたセットの制御コマンドを複数のユーザ入力と関連付けるようにプログラム可能なコントローラ１１６を設定する。ＤＶＤプレーヤ１０４のためのＵＲＣ１１０の設定は、この直後に、ＤＶＤプレーヤ１０４に付属するリモコン装置１０５を用いて、同様の態様で達成される。コードセットをもつデータベースは、当然に、ＰＣのメモリ１３４の代わりにインターネットによりアクセス可能な外部サーバにより与えられてもよい。
【００２９】
第２の可能性によれば、コードセットの代わりに赤外線（ＩＲ）ツリーが用いられる。コードセットを一致させるためのこの技術は、国際公開第２００９／１０７０２９号においてより詳細に述べられている。このアプローチにおいて、同一のパワートグルコードをもつコードセットは、１つのＩＲツリーにグループ化される。ここで前述された第１のアプローチとの主な違いは、ＩＲツリーにおいては各コードが幾つかの選択肢（事象）を持ち得ることである。これらの事象は、人気順に格納される。この時点では、幾つかの機能に関するツリー内に幾つかの取り得るＩＲコードが依然として存在する。例えば、受信したパワートグルコードに基づいてＩＲツリーを選択した後、ボリュームキーのための幾つかの可能性が依然として存在する。仮想ＴＶ上のボリュームを上げることをユーザに尋ねることにより、どのボリューム機能のセットが用いられるべきかについての情報が得られる。より多くの情報がリモコン装置から収集されるほど、ＩＲコードのセットがより正確になる。
【００３０】
この例においてはＴＶ装置１０２のためのコントローラとしてこのデバイスを設定するように、識別されたセットの信号をＵＲＣ１１０のメモリ１１８に書き込むことは、それ自体知られた及び米国特許第５，８１９，２９４号明細書において詳細に述べられた様々な態様で実現され得る。
【００３１】
図３は、コントローラ１３２により実行されたリモートコントロール学習プログラムを示すフロー図である。これに加えて、そのプロセッサ（の関連するメモリ）が適切なソフトウェアアプリケーションによりロードされる。ユーザが汎用型リモコン装置によりＴＶ装置を制御したいと仮定する。ＵＲＣがプログラムされたデバイスのセットにＴＶ装置を追加したいことを選択し、ＴＶ装置のブランドを入力した後（ステップ３０２）、シミュレーションされた"仮想"ＴＶ装置２０２が、図２に示されるように、コンピュータのディスプレイ１３６上に現れる（ステップ３０４）。ＴＶ装置２０２は再生中である。ユーザは、或る動作、この場合においてはこの仮想ＴＶ装置２０２をオフにすることを実行するためにオリジナルのリモコン装置１０３を用いることを尋ねられる（ステップ３０６）。赤外線コードは、取得されて解析される（ステップ３０８）。取得されたコードはデータベース内の情報と単純に比較するほど十分正確ではないので、これは解析されなければならない。ユーザリモコン装置を振っている等のような、ＩＲ信号のタイミングに関して許容誤差が存在する。信号は、解析される必要がある。即ち、データベース中のデータと比較するために処理され、クリーンアップされ、単純化される必要がある。そして、コードは、デバイス及びブランドに関するＩＲコードの最も可能性の高いセットにマッチされ（ステップ３１０）、仮想ＴＶ装置２０２はオフになる（ステップ３１２）。ステップ３１０及び３１２は、必ずしもこの順序で実行される必要はない。代わりに、マッチングは、バックグラウンドで行われてもよく、これにより、ユーザインタフェースの応答性を維持する。ユーザにより入力されるべきコマンドシーケンスの全てのコマンドが取得されたかどうかを確認した後（ステップ３１４）、本方法は、ステップ３０６に戻り、ユーザは、仮想ＴＶ装置２０２をオンにすることを尋ねられる。赤外線コードが取得されると（ステップ３０８）、マッチングステップ３１０が再び実行され、ＴＶ装置に関するコードセットの任意の微調整が可能であり仮想ＴＶがオンになるかどうかを確認する（ステップ３１２）。
【００３２】
アプリケーションは、このＴＶ装置をオン及びオフにする方法を知っているので、単一のボタン押下で複数のデバイスがオン及びオフに切り替えられる動作マクロを生成するためにこの情報を容易に用いることができる。
【００３３】
ステップ３０６〜３１２は、更なるコマンドに対して繰り返され得る。例えば、ユーザは、ボリュームを上げること、或るチャンネルに切り替えること、カーソルキーを用いること等を尋ねられる。これらのＩＲコード（コマンド）の全てが取得され、アプリケーションがこのＴＶのために用いられるＩＲコードのセットを更に微調整し、良好な動作マクロを生成することを可能にする（ステップ３１６）。
【００３４】
この例の拡張は、仮想デバイスのセットとインタラクトすることにより動作マクロを記録するために用いられ得る。例えば、図３を参照して述べられた前述した方法によりＴＶセット及びＤＶＤプレーヤを追加した後、ユーザは、"ＤＶＤを観る"というアクティビティを追加することを望む。ユーザは、このアクティビティに加わるデバイスを選択することを尋ねられ、これら２つのデバイスを選択する。２つのデバイス、即ちＴＶ装置２０２及びＤＶＤプレーヤ２０４は、コンピュータのディスプレイ１３６上に現れ、これらのデバイスとインタラクトすることによりマクロを記録し得る。ユーザは、オリジナルのリモコン装置１０３，１０５を用いることにより、又は、これらの２つのデバイスとインタラクトするために既にプログラムされた汎用型リモコン装置を用いることにより、デバイスとインタラクトすることができる。従って、この実施形態において、単一のコマンドシーケンスが２つのデバイスを制御するために用いられる。
【００３５】
図４は、システム１００の代替例を示している。ここで、ＵＲＣ４００自体のコントローラ１１６は、ＵＲＣをプログラミングするためのソフトウェアアプリケーションを備えている。コントローラ１１６は、コードセットをもつデータベースを有するメモリ回路４０２に結合される。ＵＲＣは、フィードバックを与えるためのディスプレイ４０４を更に有し、仮想デバイス２０２，２０４を表示するのと同様にユーザに指示する。
【００３６】
他の例において、ソフトウェアアプリケーションは、ＩＲレシーバに（有線又は無線で）接続されたスマートフォンのようなモバイルコンピューティングデバイス上で動作する。
【００３７】
ＰＣ／ＵＲＣのメモリにおける不十分なコードセット又はコードツリーは、オリジナルのリモコン装置１０３，１０５のうち１つから受信された、取得され解析されたコマンドを用いて改良され得る。
【００３８】
更に、解析されたコマンドがマッチし得る利用可能なコードツリーデータベースのブランチがないか又はコードセットがない場合において、オリジナルのリモコン装置のコードが１つずつ学習され得る。
【００３９】
本方法が用いられるデバイスに関する統計データが収集され得る。コードツリーは人気ランキングに基づいて幾つかのコードセットを組み合わせるデータ構造であるので、データベース供給者により提供された情報だけに頼る代わりに、統計データを収集することにより、ツリーのルート（root）が常に最も人気のあるコードセットであることが推定され得る。更に、この手法において、データベース中のどのコードセットが頻繁に用いられるか又はどれが旧式であるのかが決定され得る。旧式のものは、メモリスペースを節約するためにデータベースから削除され得る。
【００４０】
前述された実施形態は、本発明を限定するよりむしろ例示であり、当業者は、特許請求の範囲から逸脱することなく多くの代替実施形態を設計することが可能であることが理解されるべきである。特定の手段が相互に異なる従属請求項に記載されるという単なる事実は、これらの手段の組み合わせが有利に用いられ得ないことを示すものではない。"有する"という用語は、記載されたものとは異なる要素又はステップの存在を除外するものではなく、要素の単数表記は斯様な要素の複数の存在を除外するものではない。任意の参照符号は、請求項の範囲を限定するものではない。本発明は、ハードウェア及びソフトウェアの双方により実装されてもよく、幾つかの要素は、ハードウェア又はソフトウェアの同一アイテムにより表されてもよく、プロセッサは、場合によりハードウェア要素と協働して、１又はそれ以上の機能を満たしてもよい。
【図１】
0005902678.tif 000002
【図２】
0005902678.tif 000003
【図３】
0005902678.tif 000004
【図４】
0005902678.tif 000005