(57)【要約】【課題】  情報処理装置を複数ユーザが使用する場合に、ユーザ毎に定義された機能と割り当てたコードを適切に提示する技術を提供する。【解決手段】  コード入力判断手段は、入力コードに基いて、ユーザ情報テーブルとコード情報テーブルから、ユーザ情報をユーザ情報テーブルに記録する。入力されたコードの情報は、実行命令判断手段と内部状態管理手段に送られる。実行命令判断手段は、コード情報テーブルと機能情報テーブルから判断し、その機能を実行する命令を機能実行手段に送る。機能実行手段は、情報処理装置内部の機能を実行する。内部状態管理手段１１は情報処理装置の制御などを行う。提示方法決定手段は、内部状態管理手段１１からの命令により、ユーザ情報テーブル、コード情報テーブル、及び、提示設定テーブルに記録されている内容により、提示方法を決定し、それを割当提示手段に送る。割当提示手段は、その機能を提示する。【選択図】  図１
2005165921.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに関する情報を格納したユーザ情報テーブルと、ユーザ毎に設定されたコード及び該コードに割り当てられた機能を格納するコード情報テーブルと、ユーザ毎にコード及び機能を提示する方法を格納する提示設定テーブルと、該提示設定テーブルに格納された情報に基づいて機能を提示する提示手段と、を有する情報処理装置。
【請求項２】
請求項１の情報処理装置において、上記ユーザ情報テーブルと上記コード情報テーブルを参照してコードを入力したユーザを特定することを特徴とする情報処理装置。
【請求項３】
請求項１の情報処理装置において、上記提示手段は、ユーザとコードと機能を対応させて提示することを特徴とする情報処理装置。
【請求項４】
請求項１の情報処理装置において、上記提示手段は、複数のユーザの間で機能を割り当てられているコードの提示方法に共通点が存在する場合に、それに対応してコード及び機能を提示することを特徴とする情報処理装置。
【請求項５】
請求項１の情報処理装置において、上記提示設定テーブルに設定されたコード及び機能を提示する方法を変更する変更手段を有することを特徴とする情報処理装置。
【請求項６】
請求項５の情報処理装置において、上記変更手段は、機能を提示したユーザの順番に応じて、提示方法を変更することを特徴とする情報処理装置。
【請求項７】
請求項５の情報処理装置において、上記変更手段は、他のユーザの機能およびコードの提示方法に応じて、機能を実行するコードの設定を変更することを特徴とする情報処理装置。
【請求項８】
請求項１の情報処理装置において、上記ユーザ情報テーブル及び上記コード情報テーブルの情報に基づいて、入力したコードに対応した機能を実行する機能実行手段を有することを特徴とする情報処理装置。
【請求項９】
ユーザに関する情報を格納するユーザ情報テーブルと、コードと該コードに割り当てられた機能に関する情報を格納するコード情報テーブルと、機能に関する情報を格納する機能情報テーブルと、ユーザ毎にコードと該コードに割り当てられた機能の提示方法の設定を格納する提示設定テーブルと、ユーザによって入力されたコードに基いて、上記ユーザ情報テーブルからそのコードを使用しているユーザとそのコードに対応する機能を判断する入力判断手段と、入力されたコードに対応する機能を実行する機能実行手段と、機能を実行しないで機能の提示を行うか否かを判断し機能を提示する場合には提示方法を決定する提示方法決定手段と、該提示方法決定手段からの命令によりユーザ毎にコードと機能を提示する提示手段と、を有する情報処理装置。
【請求項１０】
請求項９記載の情報処理装置において、上記コード入力判断手段は、上記提示設定テーブルからユーザが設定した「提示時間」を読み込み、該「提示時間」とユーザからの入力時刻の和を、上記ユーザ情報テーブルに記録し、上記提示方法決定手段は、上記ユーザ情報テーブルに記録された「提示時刻」を越えるまで、上記ユーザ情報テーブル、上記コード情報テーブル、及び上記提示設定テーブルの情報に基づいて機能及びコードを提示する命令を上記提示手段に出力することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信機器、ＡＶ機器、放送受信装置、等の情報処理装置に関し、特に、多機能を備えた情報処理装置に関する。
【背景技術】
【０００２】
通信機器、ＡＶ機器、放送受信装置、等の情報処理装置には、１つの機器に多数の機能が設けられている。このような機器には、ユーザが機能を選択するための操作ボタンが設けられている。通常、操作ボタンの数は機能の数に比べて少ない。従って、ユーザは、１つの機能を選択するために、操作ボタンを複数回操作しなければならず、操作が煩雑になる。操作を簡単化するためには、操作ボタンを機能の数と同一数だけ設ければよい。しかしながら、それでは、操作ボタン毎に機能を定義しなければならない。
【０００３】
ＢＳデジタル放送等で実施されているデータ放送においては、多数の機能と選択項目が存在するが、デジタル放送運用規定技術資料「ＡＲＩＢ  ＳＴＤ−Ｂ２４」に定義されている４色（青、赤、緑、黄）のカラーキーを併用することにより、ユーザに理解し易いインターフェースを提供することができる。
【０００４】
また、特許文献１には、定義された機能に関してボタンを割当て、それを表示することにより、ユーザが選択しやすいようにしたインターネットテレビにおけるリモコンボタン動的割付方式が記載されている。
【０００５】
図２７を参照して、特許文献１に記載された発明の概要を説明する。情報処理装置は、コードとその機能に関する情報を格納するコード情報テーブル０２、情報処理装置の内部の機能に関する情報を格納する機能情報テーブル０３、コードとその機能の提示方法の設定を格納する提示設定テーブル０４を有する。情報処理装置は、更に、コード入力手段０５、コード入力判断手段０６、実行命令判断手段０７、機能実行手段０８、提示方法決定手段０９、割当提示手段１０、及び、内部状態管理手段１１を有する。
【０００６】
コード入力手段０５からコードが入力されると、そのコードはコード入力判断手段０６に送られる。コード入力判断手段０６は、コードに関する情報が記録されているコード情報テーブル０２とデータを照合して、どのコードが送られてきたかを判断する。そしてその結果を実行命令判断手段０７と、内部状態管理手段１１に送る。
【０００７】
実行命令判断手段０７は、機能に関する情報が記録されている機能情報テーブル０３とデータを照合して、どの機能を実行するかを判断する。そして、実行する機能の実行命令を機能実行手段０８に送る。機能実行手段０８は、機能を実行し、その状態を内部状態管理手段１１に送る。
【０００８】
内部状態管理手段１１は、コード入力判断手段０６と機能実行手段０８からのデータを受けて内部状態を把握し、状況に応じて提示方法決定手段０９に命令を送る。提示方法決定手段０９は、提示設定テーブル０４からの情報と内部状態管理手段１１からの命令により、提示方法を決定しそれを割当提示手段１０に送る。割当提示手段１０は、命令に基づいて機能等の提示を行う。
【０００９】
これにより、コードとそれに割り当てられた機能をユーザに提示することが可能であり、ユーザはコードに割り当てられた機能を理解することができる。従って、ユーザは、多くの機能の中から特定の機能を使用するとき、少ないコードを入力することにより実行することができる。
【００１０】
【特許文献１】特開平１０−９８６５４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
ＢＳデジタル放送等で実施されているデータ放送においては、色ボタンに割り当てられた機能が表示されるため、機能を実行する操作が簡単化される。しかしながら、ボタンに割り当てる機能はコンテンツ作成時点で決定している。従って、コンテンツ作成者が作成した割り当て以外の割り当ては実現できないという問題点がある。
【００１２】
また、特許文献１に記載された例では、機能に対してコードの割り当てを行い、それをユーザに提示することにより、ユーザは、機能を効率的に選択できる。しかしながら、情報処理装置を１人のユーザが使用することが前提である。それ故に、情報処理装置を複数のユーザが使用する場合でも、機能とコードの提示方法は同一となる。
【００１３】
すなわち、特許文献１には、情報処理装置を１ユーザが使用する場合に機能をコードに割り当てる場合が記載されており、情報処理装置を複数ユーザが使用する場合にユーザ毎に機能をコードに割り当てる方法は記載されていない。
【００１４】
本発明の目的は、多機能を備えた情報処理装置を複数ユーザが使用する場合に、ユーザ毎に異なる機能とコードの割り付けができるようにすることにある。
【課題を解決するための手段】
【００１５】
本発明によると、多機能を有する情報処理装置において、
１）ユーザの情報及び、各ユーザが使用するコード、提示方法を記録する手段、及び、
２）ユーザに対応したコード及び機能を判断し、ユーザ毎にコード及び機能を提示する手段、を設け、単一ユーザのみならず複数のユーザが同時に使用した場合でも、各々のユーザのコードとそれに割り当てられた機能を判断し提示するから、ユーザがそのコードを選択することにより、希望する機能のみを比較的簡単に実行することができる。
【００１６】
本発明によれば、入力されたコードに従って複数の機能のうち少なくとも１つを実行する多機能の情報処理装置において、複数の機能を管理する手段と、機能を実行させるためのコードを割り当てる手段とを設け、複数のユーザが自己及び他人の機能とコードを判断することができるように機能を提示することができる。
【００１７】
本発明によれば、さらに、コードとそれを使用するユーザのデータを記録するユーザ情報データベースを設ける。これにより、入力されたコードによって、現在使用しているユーザを判断することができる。
【００１８】
さらに、使用しているユーザによって機能およびコードの提示方法を変更する手段を設ける。それにより、例えば、機能を提示したユーザの順番に応じた提示方法を変更する。更に、コードに割振られた機能を自動的に変更する。これにより、ユーザのコード選択を容易化することができる。
【００１９】
本発明によると、さらに、複数のユーザ間で機能、コード及びその提示方法に共通点が存在する場合に、その提示方法を変更する手段を設ける。これによって、提示が容易となり、ユーザのコード選択を容易化することができる。
【発明の効果】
【００２０】
本発明によると、複数のユーザが使用する場合でも、ユーザ毎に機能とコードの対応を提示することができる。
【発明を実施するための最良の形態】
【００２１】
[第１の実施の形態]
図１を参照して本発明による情報処理装置の第１の例を説明する。本例の情報処理装置は、ユーザに関する情報を格納するユーザ情報テーブル０１、コードとその機能に関する情報を格納するコード情報テーブル０２、情報処理装置の内部の機能に関する情報を格納する機能情報テーブル０３、コードとその機能の提示方法の設定を格納する提示設定テーブル０４を有する。提示設定テーブル０４はユーザ設定０４Ａと提示フォーマット０４Ｂを含む。こられのテーブルの詳細は以下（図２から図７）に説明する。
【００２２】
本例の情報処理装置は、更に、コード入力手段０５、コード入力判断手段０６、実行命令判断手段０７、機能実行手段０８、提示方法決定手段０９、割当提示手段１０、内部状態管理手段１１を有する。
【００２３】
まず、ユーザはコード入力手段０５より自己が使用するコードを入力する。入力したコードとユーザの関係を特定できるように、コード入力手段０５はユーザ毎に設けられてよい。しかしながら、コードとユーザの関係を特定できるなら、複数のユーザが１つのコード入力手段０５を使用してもよい。
【００２４】
ここで、コードとは、ユーザが情報処理装置に入力する際に、ユーザと機能を特定するための入力情報を意味する。コードはユーザ毎に且つ機能毎に割り当てられる。コード入力手段０５には、ボタン、タッチパネル、音声入力手段などがあり、１つのコードを特定して入力できるならどのようなものであってもよい。
【００２５】
コード入力判断手段０６は、ユーザ情報テーブル０１からそのコードを使用しているユーザとそのコードに対応する機能を判断する。更に、提示設定テーブル０４のユーザ設定０４Ａから「提示時間」を読み込み、「提示時間」と現在時刻の和を、ユーザ情報テーブル０１の「提示時刻」の欄に記録する。コード入力判断手段０６は、入力されたコードの情報を、実行命令判断手段０７と内部状態管理手段１１に出力する。実行命令判断手段０７は、コード情報テーブル０２と機能情報テーブル０３から、入力されたコードに対応する機能が存在するか否かを判断する。入力されたコードに対応する機能が存在する場合には、その機能を実行する命令を機能実行手段０８に出力する。コード入力判断手段０６と実行命令判断手段０７の詳細は後述（図８）する。
【００２６】
機能実行手段０８は、実行命令判断手段０７からの実行命令に基いてその機能を実行する。この機能の実行状況やその結果などは、内部状態管理手段１１に送られる。
【００２７】
内部状態管理手段１１は、情報処理装置の内部の状態を管理し、コードの入力状況や機能の実行状況だけでなく、情報処理装置の制御などを行う。内部状態管理手段１１は、機能の提示方法を変更する必要があるか否かを判断し、機能の提示方法を変更する必要があると判断した場合に、機能の提示方法を決定する命令を、提示方法決定手段０９に送信する。機能の提示方法を変更させる必要がある場合とは、例えば、機能実行手段０８により機能が実行されたため、機能の提示方法を変更する必要がある場合、未使用だったユーザのコードが入力されたため、機能の提示方法を変更する必要がある場合、等である。
【００２８】
提示方法決定手段０９は、内部状態管理手段１１からの命令により、ユーザ情報テーブル０１、コード情報テーブル０２、提示設定テーブル０４に記録されている内容に基づいて、機能の提示に関する判断を行う。まず、機能とそのコードを提示する必要があるか否かを判断し、その結果をユーザ情報テーブル０１に送る。機能とそのコードを提示する必要がある場合には提示方法を決定し、それを割当提示手段１０に送る。割当提示手段１０は、提示方法決定手段０９から送信された提示方法に基づいて機能を提示する。これによりユーザは、各コードにどのような機能が割り当てられているかを判断することができる。ここで提示方法には、画像や音声などが含まれるが、ユーザにコードとそれに割り当てられた機能を提示することができれば、どのような方法であってもよい。尚、提示方法決定手段０９の詳細については、後述（図９、図１０）する。
【００２９】
図２は、図１に示したユーザ情報テーブル０１の例である。ユーザ情報テーブルには、ユーザの情報が記録される。「ユーザＩＤ」はユーザの識別符号であり、他のテーブルからユーザ情報を呼び出すときに使用する。「対象オブジェクト」は、ユーザの名称である「ユーザ名」、ユーザが所有する「端末」及び「メモリカード」を含む。「対象オブジェクト」の詳細は、図３の機能情報テーブルにて説明する。
【００３０】
「提示時刻」はそのユーザの機能を提示する時刻を示す。ユーザＩＤ「Ｔ」の場合、２０時０３分２２秒であり、これを「２０：０３：２２」と表す。以下に、時刻に関してはこの形式で表す。ユーザＩＤ「Ｊ」の場合、「−」が示されているが、これはデータが存在しないことを示す。以下に、データが存在しない場合は、この符号「−」を使用する。「機能提示」は現在そのユーザのコードと機能が提示されているか否かを示している。この例の場合はユーザＩＤ「Ｔ」は現在提示中であり、ユーザＩＤ「Ｊ」は未提示であることを示している。
【００３１】
図２の例では、ユーザ情報テーブル０１には、以上の項目が含まれるが、ユーザに関する情報であればこれに限らない。例えば、「ユーザの使用しているメールアドレス」、「視聴制限などに使用する年齢などの情報」などが挙げられる。
【００３２】
図３は、図１に示した機能情報テーブル０３の例を示す。機能情報テーブルには、コードに割り当てられた機能の情報が記録される。「機能ＩＤ」は、機能の識別符号であり、他のテーブルから機能情報を呼び出すときに使用する。「実行機能」はその機能が実行する内容を示す。「対象オブジェクト」は、その機能を実行する際に必要となるオブジェクトを表す。
【００３３】
例えば、機能ＩＤが＃０２の「ＴＶブックマーク登録」の場合は、メモリカードを必要とし、機能ＩＤが＃０３の「端末にメールを転送」の場合はユーザ名と端末を必要とする。ユーザ情報テーブルのユーザＩＤが「Ｔ」である太郎が、機能ＩＤが＃０２である「ＴＶブックマーク登録」を実行しようとする場合には、以下の手順で処理を行う。
【００３４】
１．「ＴＶブックマーク登録」機能を実行するため必要な「対象オブジェクト」には何があるかを判断する。
２．「メモリカード」が必要であるから、ユーザ情報テーブル（図２）の「対象オブジェクト」中の「メモリカード」の情報を参照する。
３．「太郎」の所有する「メモリカード」は「メモリカードＡ」であることが判る。
４．従って、「ＴＶブックマーク登録」機能を実行するためのメモリカードには「メモリカードＡ」を使用する。
【００３５】
このように機能を実行するユーザによって、ユーザ情報テーブル（図２）を参照することにより使用する対象を切り替えることが可能である。
【００３６】
図３の例では、機能情報テーブル０３には、以上の項目が含まれるが、機能に関する情報であればこれに限らない。例えば、「機能を使用可能なユーザの情報」、「複数のユーザが同時に実行可能であるかどうかの情報」などが挙げられる。
【００３７】
図４は、図１に示したコード情報テーブル０２の例を示す。コード情報テーブルには、機能を割り当てるコードに関する情報が記録されている。「コード」とは、上述のように、ユーザがコード入力手段０５から入力するユーザと機能を特定する情報を表す。「対応ユーザＩＤ」は、そのコードに対応するユーザのユーザＩＤを表している。「対応機能ＩＤ」は、そのコードが入力された際に実行される機能の機能ＩＤを表している。
【００３８】
例えば、ユーザが「コード」として「ボタンＴＡ」を入力した場合、「対応ユーザＩＤ」は「Ｔ」であり、「対応機能ＩＤ」は「＃０１」である。従って、ユーザ情報テーブル（図２）のユーザＩＤ「Ｔ」より、ユーザは「太郎」であり、機能情報テーブル（図３）の機能ＩＤ「＃０１」より、このコードで実行する機能は「ＴＶでメールを読む」である。
【００３９】
図４の例では、コード情報テーブル０２には、以上の項目が含まれるが、コードに関する情報であればこれに限らない。例えば、「各コードの使用履歴」などが挙げられる。
【００４０】
図５及び図６は、図１に示した提示設定テーブル０４に含まれるユーザ設定０４Ａの例を示す。ユーザ設定には、ユーザや機能等を提示する方法などが記録されている。この例ではユーザＩＤ「Ｔ」（図５）とユーザＩＤ「Ｊ」（図６）の２人分に関する記述が存在する。
【００４１】
「ユーザＩＤ」は、ユーザ情報テーブル（図２）のユーザＩＤの項目に相当し、「提示フォーマットＩＤ」は、提示設定テーブル内の提示フォーマット０４Ｂ（図７）の提示フォーマットＩＤに対応している。これは、提示フォーマット０４Ｂ（図７）に記載された内容を呼び出すときに使用する。
【００４２】
「ユーザ名提示テキスト」は、このユーザ名を提示するためのテキストを示しており、提示フォーマット（図７）の指示に従ってユーザ名を提示する。「提示時間」はユーザからコード入力などがあった際に、ユーザ名や機能などを表示する期間を表している。この詳細な実施例は後述（図９）する。
【００４３】
「機能提示方法設定」は、そのユーザが使用する機能とコードの組み合わせと、それに対応する機能のテキストとコードの提示画像の関係を示す。「対応機能ＩＤ」は、機能情報テーブル（図３）の機能ＩＤに対応しており、「対応コード」はコード情報テーブル（図４）のコードに対応している。「機能提示テキスト」と「コード提示画像」は、それぞれ機能を示すテキストと、コードを示す画像を示している。
【００４４】
例えば、図５の「機能提示方法設定」の２行目（欄が灰色になっている部分）について説明する。ユーザが、「対応機能ＩＤ」として「＃０１」、即ち「ＴＶでメールを読む」（図３）を選択し、「対応コード」として、「ボタンＴＡ」を使用する場合、機能の提示テキストとして「メールを読む」、コードの提示画像として「ＴＡ．ＢＭＰ」を使用することを示している。
【００４５】
「機能提示テキスト」と「コード提示画像」は、提示フォーマット（図７）の機能のテキスト座標とコード画像座標に従ってそれぞれ提示される。実際の表示例は後述（図１２）する。ここでは、「対応機能ＩＤ」と「対応コード」の組み合わせを選択すると、それによって、「機能提示テキスト」と「コード提示画像」を決定するが、「対応機能ＩＤ」のみで「機能提示テキスト」を、「対応コード」のみで「コード提示画像」をそれぞれ決定してもよい。
【００４６】
図５及び図６の例では、ユーザと機能を提示するためにテキストを使用し、コードを提示するために画像を使用しているが、ユーザにそれらを提示できればこれに限らない。また上記の項目以外でも、各ユーザの提示に使用する情報であればこれに限らない。
【００４７】
図７は、図１に示した提示設定テーブル０４に含まれる提示フォーマット０４Ｂの例を示す。提示フォーマットには、テキストや画像を提示する位置等のフォーマットが記録されている。図７Ａには、提示フォーマットＩＤ「Ｆ０１」が示され、図７Ｂには、提示フォーマットＩＤ「Ｆ０２」が示されている。
【００４８】
「ユーザ名」は使用しているユーザを提示する項目であり、この例の場合では提示設定テーブルのユーザ設定（図５、図６）に含まれる「ユーザ名提示テキスト」を「テキスト座標」に提示する。「第１機能」から「第３機能」は、コードとそれに割り当てられている機能を提示する項目であり、割り当てられている機能を第１機能から順番に割り当てていく。本例では、コードに関しては、提示設定テーブルのユーザ設定（図５、図６）の「コード提示画像」を「コード画像座標」に提示し、機能に関しては、提示設定テーブルのユーザ設定（図５、図６）の「機能提示テキスト」を「テキスト座標」に提示する。ここでは、第３機能までが設定してあるが機能が表示できれば更に他の機能を設定しても良い。
【００４９】
図７の例では、提示テキストおよび提示画像の座標に関してのみ設定されているが、提示するフォーマットに関する情報であればこれに限らない。例えば、「テキスト表示におけるフォントや色などの設定」、「画像表示における表示の大きさや縮小拡大などの設定」などが挙げられる。
【００５０】
図８は、本発明の情報処理装置の第１の例におけるコード受信処理のフローチャートを示したものである。この中で、ステップ１００１〜１００６及びステップ１０１０、１０１１は、図１のコード入力判断手段０６の処理を表し、破線で囲んであるステップ１００７〜１００９は図１の実行命令判断手段０７の処理を表す。
【００５１】
ステップ１００１にて処理が開始される。ステップ１００２にて、コードが入力されたか否かを判断する。コードが入力されていなければステップ１０１０に進み、入力されていればステップ１００３に進む。ステップ１００３にて、コード入力手段０５から入力されたコードを受信する。ステップ１００４にて、コード情報テーブル（図４）の中から入力コードに対応する「対応ユーザＩＤ」と「対応機能ＩＤ」を読み込む。こうして検索された「対応ユーザＩＤ」が、入力したユーザのユーザＩＤである。
【００５２】
ステップ１００５にて、「対応ユーザＩＤ」と同一のユーザＩＤを有する提示設定テーブル０４内のユーザ設定０４Ａ（図５、図６）から「提示時間」を読み込む。そして、「提示時間」と現在時刻との和をユーザ情報テーブル（図２）の「提示時刻」に設定する。
【００５３】
例えば、現在時刻が１０：００：００の時に、ユーザＩＤ「Ｔ」の入力があったと仮定する。ユーザＩＤ「Ｔ」を有する提示設定テーブル０４のユーザ設定０４Ａ（図５）から提示時間「００：００：３０」を読み込み、現在時刻との和である「１０：００：３０」をユーザ情報テーブル（図２）の「提示時刻」に設定する。
【００５４】
ステップ１００６にて、入力したユーザのユーザ情報テーブル（図２）の「機能提示」を判断する。「機能提示」が「提示中」であればステップ１００７に進み、「未提示」であればステップ１０１１に進む。ステップ１０１１にて、「未提示」は、まだコードに割り当てた機能が実行されていないと判断し、機能を実行せず機能提示判断処理を開始するよう内部状態管理手段１１に命令を送り、ステップ１０１０へ進む。機能提示判断処理に関しては後述（図９）する。
【００５５】
この例の場合では、「未提示」の場合は機能を実行しないで機能提示判断処理を行うが、コードと機能が常に固定されている場合など、コードと機能の関係を判断することができる場合には、ユーザ情報テーブル（図２）に「機能提示」が無くても機能を実行するようにしても良い。
【００５６】
ステップ１００７にて、入力されたコードに対してコード情報テーブル（図４）の「対応機能ＩＤ」の値が存在するか否かを判断する。値が存在しない場合はステップ１０１０に進み、値が存在する場合にはステップ１００８に進む。ステップ１００８にて、実行命令判断手段０７は、コード情報テーブル（図４）の「対応機能ＩＤ」に対応する機能情報テーブル（図３）の対応機能ＩＤの機能を実行する命令を機能実行手段０８に送る。ステップ１００９にて、機能が実行されたとして、ユーザのユーザ情報テーブル０１の「提示時刻」のデータをクリアする。「提示時刻」をクリアすることで、その機能が実行済みであることを示す。そしてステップ１０１０に進む。
【００５７】
ステップ１０１０にて、新しい入力コードを待つためステップ１００２に戻り、処理を繰り返す。従って、このフローチャートにて、ステップ１００２とステップ１０１０を繰り返し、常にコードの入力を待つような処理を行っている。この処理の詳細は図１０を参照して説明する。
【００５８】
図９は、図８のステップ１０１１のユーザの機能提示判断処理のフローチャートを示したものである。この処理は図１の提示方法決定手段０９によって処理される。図８のステップ１０１１にて、内部状態管理手段１１は、コード入力判断手段０６から送信された機能提示判断処理を開始する命令を受信すると、提示方法決定手段０９に、機能提示判断処理の実行命令を送信する。
【００５９】
ステップ１１０１にて処理が開始される。ステップ１１０２にて、この処理を実行するか否かを判断するための処理フラグを０とし、ユーザ情報テーブル（図２）の１番目のユーザに関する処理を行う。ステップ１１０３にて、ユーザ情報テーブル（図２）からユーザの「提示時刻」を読み込む。ステップ１１０４にて、「提示時刻」にデータが存在するか否かを判断する。データが存在しなければステップ１１０５へ進み、存在すればステップ１１０６へ進む。
【００６０】
ステップ１１０５にて、ユーザ情報テーブル（図２）の「機能提示」が「提示中」であるか否かを判断する。このとき「提示中」でなければ、このユーザからの入力は行われておらず機能も提示されていないと判断し、ステップ１１１０へ進む。もし提示中であれば、機能が実行されたために「提示時刻」のデータがクリアされている（図８のステップ１００９）ため、ステップ１１０７に進む。
【００６１】
ステップ１１０６にて、現在時間がユーザ情報テーブル（図２）の「提示時刻」を超えているか否かを判断する。現在時刻が提示時刻を超えていれば提示を行わないと決定し、ステップ１１０７へ進み、超えていなければ提示を行うためにステップ１１０８へ進む。
【００６２】
ステップ１１０７にて、機能を提示しないとしてユーザ情報テーブル（図２）の「機能提示」を未提示に変更し、「提示時刻」のデータをクリアする。ステップ１１０８にて、機能の提示を行うとしてユーザ情報テーブル（図２）の「機能提示」を「提示中」に変更する。
【００６３】
ステップ１１０７とステップ１１０８の後、ステップ１１０９にて、処理フラグを１とし、ステップ１１１０へ進む。
【００６４】
ステップ１１１０にて、全ユーザに関して処理が行われたか否かを判断し、全ユーザに関して行われていない場合にはステップ１１１１に進む。ステップ１１１１にて、次のユーザに関して処理を開始し、ステップ１１０３に戻る。全ユーザに関して処理が終了していればステップ１１１２に進む。
【００６５】
ステップ１１１２にて処理フラグが０であるか否かを判断する。この時点で処理フラグが０であれば、全てのユーザに関してステップ１１０３、ステップ１１０４、ステップ１１０５、及びステップ１１１０の処理が実行されていることになる。従って、ステップ１１１４にて、全てのユーザにおいて現在及び過去に機能提示が「提示中」でない状態であったと判断しこの提示処理を終了する。フラグが１であれば、いずれかのユーザに関して機能提示は現在「提示中」であるか又は過去に「提示中」であったかのいずれかである。従って、ステップ１１１３にて、機能提示に関する処理を行う。機能提示に関する処理に関しては後述（図１１）する。ステップ１１１３の機能提示に関する処理を終了後、再度ステップ１１０２からの処理を行いフラグが０になるまで処理を行う。
【００６６】
図１０Ａ〜図１０Ｅは、コード受信処理（図８）及び機能提示判断処理（図９）におけるユーザ情報テーブルの変化を示す。図１０Ａ〜図１０Ｅを参照しながら、コード受信処理（図８）及び機能提示判断処理（図９）の実際の手順の例を説明する。ここでは次のような条件を想定する。（１）ユーザは一人であり、そのユーザＩＤは「Ｔ」である。（２）図１の割当提示手段１０に「機能」が提示されていない。（３）コード「ボタンＴＡ」が時刻１２：００：００に入力される。（４）コード「ボタンＴＢ」が時刻１２：００：０５に入力される。
【００６７】
なおデータとして、図３の機能情報テーブル、図４のコード情報テーブル、図５の提示設定テーブルのユーザ設定、図７の提示設定テーブルの提示フォーマットを使用する。
【００６８】
１．図１０Ａは、ユーザ情報テーブルの初期状態を示す。「提示時刻」のデータはクリアされており、「機能提示」は「未提示」となっている。
２．時刻１２：００：００に、１番目のコード「ボタンＴＡ」が入力される。
３．コードの入力があったので、図１のコード入力手段０５からのコードを受信する。（図８のステップ１００３）
【００６９】
４．コード情報テーブル（図４）からコード「ボタンＴＡ」に対応する対応ユーザＩＤ「Ｔ」と対応機能ＩＤ「＃０１」を読み込む。（図８のステップ１００４）
５．ユーザＩＤ「Ｔ」の提示設定テーブル内のユーザ設定（図５）から「提示時間」の００：００：３０を読み出し、現在時間の１２：００：００との和である、１２：００：３０をユーザ情報テーブルの「提示時刻」にする。（図８のステップ１００５）このときのユーザ情報テーブルを図１０Ｂに示す。
【００７０】
６．ユーザ情報テーブルの「機能提示」は「未提示」である（図１０Ｂ）ので（図８のステップ１００６）、機能提示判断処理（図９の処理）を開始する命令を内部状態管理手段１１に送る。（ステップ１０１１）
７．図８のコード受信処理に関しては、次のコード入力（この例の場合は「ボタンＴＢ」の入力のある１２：００：０５）があるまで待機する。（図８のステップ１０１０）
８．手順６で、内部状態管理手段１１からの命令で機能提示判断処理を開始した（図９のステップ１１０１）ので、処理フラグを０とし、１番目のユーザに関して処理を行う。（図９のステップ１１０２）
【００７１】
９．ユーザ情報テーブル（図１０Ｂ）から提示時刻「１２：００：３０」を読み込む。（図９のステップ１１０３）
１０．ユーザ情報テーブルに提示時刻が存在するので（図９のステップ１１０４）、図９のステップ１１０６へ進む。
１１．コード「ボタンＴＡ」入力（上述の手順２）から、ここまでの処理は高速で処理できると考えられ、現在時刻は提示時刻「１２：００：３０」を超えていない（図９のステップ１１０６）とし、図９のステップ１１０８へ進む。
１２．ユーザ情報テーブルの「機能提示」を「提示中」に変更する。（図９のステップ１１０８）このときのユーザ情報テーブルを図１０Ｃに示す。
【００７２】
１３．処理フラグを１とする。（図９のステップ１１０９）
１４．全ユーザに関して処理が終了したか否かを判断（図９のステップ１１１０）する。ここでは、１ユーザのみなので、図９のステップ１１１２へ進む。
１５．処理フラグは１となっている（手順１３）ので（図９のステップ１１１２）、図９のステップ１１１３へ進む。
１６．機能提示に関する処理（図９のステップ１１１３）を行う。詳細は後述（図１１）する。
【００７３】
１７．機能提示に関する処理の終了後、図９のステップ１１０２に戻り処理を繰り返す。
１８．機能提示判断処理（図９）は、ユーザ情報テーブルの「提示時刻」が変化するか、現在時刻が提示時刻（１２：００：３０）を超えるまで、手順８から手順１７が繰り返される。
１９．時刻１２：００：０５に、２番目のコード「ボタンＴＢ」が入力される。これにより、コード受信処理（図８）が再開される。
【００７４】
２０．コードの入力があったので、図１のコード入力手段０５からのコードを受信する。（図８のステップ１００３）
２１．コード情報テーブル（図４）からコード「ボタンＴＢ」に対応する対応ユーザＩＤ「Ｔ」と対応機能ＩＤ「＃０２」を読み込む。（図８のステップ１００４）
２２．ユーザＩＤ「Ｔ」の提示設定テーブル内のユーザ設定（図５）から「提示時間」の００：００：３０を読み出し、現在時間の１２：００：０５との和である、１２：００：３５をユーザ情報テーブルの「提示時刻」に設定する（図８のステップ１００５）。このときのユーザ情報テーブルを図１０Ｄに示す。
【００７５】
２３．ユーザ情報テーブル（図１０Ｄ）のユーザＩＤ「Ｔ」の「機能提示」は提示中であるので（図８のステップ１００６）、図８のステップ１００７へ進む。
２４．コード情報テーブル（図４）より、入力されたコード「ボタンＴＢ」の「対応機能ＩＤ」に「＃０２」が存在する（図８のステップ１００７）ので、図８のステップ１００８へ進む。
２５．機能情報テーブル（図３）の中で、対応機能ＩＤと同一の機能ＩＤの「＃０２」である機能を実行する命令を機能実行手段０８に送る。機能ＩＤ「＃０２」の機能は「ＴＶブックマーク登録」である。この機能は、対象オブジェクトとしてメモリカードを有するので、ユーザ情報テーブル（図１０Ｄ）のユーザＩＤ「Ｔ」の「メモリカード」である「メモリカードＡ」を対象とする。つまり、機能実行手段０８に「メモリカードＡ」を対象とする「ＴＶブックマーク登録」の命令を送る。（図８のステップ１００８）
２６．ユーザ情報テーブル０１の提示時刻のデータをクリアする。このときのユーザ情報テーブルを図１０Ｅに示す。（図８のステップ１００９）
【００７６】
２７．コード受信処理（図８）は、新しいコードの入力を待つ。（図８のステップ１０１０）
２８．手順２６でユーザ情報テーブル（図１０Ｅ）が変化したので、機能提示判断処理（図９）が変化するので、図９のステップ１１０２に戻る。
２９．処理フラグを０とし、１番目のユーザに関して処理を行う。（図９のステップ１１０２）
３０．ユーザ情報テーブル（図１０Ｅ）から提示時刻を読み込む。（図９のステップ１１０３）
３１．ユーザ情報テーブルに提示時刻が存在しないので、図９のステップ１１０５へ進む。（図９のステップ１１０４）
【００７７】
３２．ユーザ情報テーブル（図１０Ｅ）の機能提示の項目が「提示中」であるので、図９のステップ１１０７へ進む。（図９のステップ１１０５）
３３．ユーザ情報テーブルの「機能提示」を「未提示」に変更して、提示時刻のデータをクリアする。このときのユーザ情報テーブルは、図１０Ａとなる。（図９のステップ１１０７）
３４．処理フラグを１とする。（図９のステップ１１０９）
３５．全ユーザに関して処理が終了したか否かを判断する。この例では、１ユーザのみなので、図９のステップ１１１２へ進む。（図９のステップ１１１０）
３６．処理フラグは１なので、機能提示に関する処理（図１１）を行う。（図９のステップ１１１３）
【００７８】
３７．機能提示に関する処理の終了後、図９のステップ１１０２に進む。
３８．処理フラグを０とし、１番目のユーザに関して処理を行う。（図９のステップ１１０２）
３９．ユーザ情報テーブル（図１０Ａ）から提示時刻を読み込む。（図９のステップ１１０３）
４０．ユーザ情報テーブルに提示時刻が存在しないので、図９のステップ１１０５へ進む。（図９のステップ１００４）
４１．ユーザ情報テーブル（図１０Ａ）の「機能提示」が「未提示」であるので、図９のステップ１１１０へ進む。（図９のステップ１１０５）
【００７９】
４２．全ユーザに関して処理が終了したか否かを判断する。この例では、１ユーザのみなので、図９のステップ１１１２へ進む。（図９のステップ１１１０）
４３．処理フラグは０となっているので、機能提示判断のフローチャートを終了する。（図９のステップ１１１４）
【００８０】
上述の手順４にて、コード情報テーブル（図４）からコード「ボタンＴＡ」に対応する対応ユーザＩＤ「Ｔ」と対応機能ＩＤ「＃０１」を読み込んだが、（図８のステップ１００４）コード情報テーブルにて、対応ユーザＩＤ「Ｔ」と対応機能ＩＤ「＃０１」が入力されていなかった場合には、現在時間が提示時刻を超えた時に、機能提示判断のフローチャート中の図９のステップ１１０６から図９のステップ１１０７へ進み、ユーザ情報テーブルの「機能提示」を未提示に変更する。従って、図９のステップ１１１３において割当提示手段１０の機能の提示を消去する。
【００８１】
図１１は、図９のステップ１１１３の機能提示に関する処理のフローチャートを示したものである。この処理は図１の提示方法決定手段０９によって処理される。ステップ１２０１にて、機能提示に関する処理が開始される。ステップ１２０２にて、ユーザ情報テーブル（図２）の１番目のユーザに関する処理を行う。ステップ１２０３にて、対象ユーザのユーザ情報テーブル（図２）の「機能提示」が「提示中」であるか否かを判断する。提示中でない場合には、機能提示しないと判断し、ステップ１２０９に進む。ステップ１２０９にて、割当提示手段１０に提示されているそのユーザの機能の提示を消去する。「提示中」である場合には、ステップ１２０４に進み、以下の提示処理を行う。
【００８２】
ステップ１２０４にて、ユーザ情報テーブルのユーザＩＤと同一のユーザ設定０４Ａを、提示設定テーブルより読み込む。例えば、ユーザＩＤ「Ｔ」の場合は、提示設定テーブル中より、図５に示す、ユーザＩＤ「Ｔ」のユーザ設定を読み込む。ステップ１２０５にて、読み込んだユーザ設定の中の提示フォーマットＩＤと同一の提示フォーマットを、提示設定テーブルより読み込む。例えば、図５のユーザ設定の場合は、提示フォーマットＩＤが「Ｆ０１」である提示フォーマット（図７Ａ）を読み込む。
【００８３】
次にステップ１２０６にて、ユーザ設定（図５、図６）の中のユーザ名提示テキストを提示フォーマットの「ユーザ名」のテキスト座標に従って提示する。ステップ１２０７にて、コード情報テーブル（図４）の「対応ユーザＩＤ」とユーザＩＤが同一のコードを全て抽出する。これによって、そのユーザが機能を割り当てているコードを全て抽出することができる。次に、ステップ１２０８のコード提示に関する処理を行う。ステップ１２０８のコード提示に関する処理の詳細は、以下にステップ１３０１〜ステップ１３１０にて説明する。
【００８４】
ステップ１２１０にて、全ユーザに関して処理が行われているか否かを判断する。全ユーザに対して行われていれば、ステップ１２１２にて、機能提示に関する処理を終了する。行われていなければ、ステップ１２１１に進み、次のユーザに関する処理を行う。従って、ステップ１２０３に戻る。
【００８５】
コード提示に関する処理を説明する。ステップ１３０１にて、コード提示に関する処理を開始する。ステップ１３０２にて、最初に提示機能数を０として初期化する。ステップ１３０３にて、そのユーザの１番目のコードについて処理を行う。ステップ１３０４にて、コード情報テーブル（図４）の中の対応機能ＩＤに機能ＩＤが存在するか否かを判断する。機能ＩＤが存在しない場合は、コード提示に関する処理は行わずステップ１３０８に進む。機能ＩＤが存在する場合はステップ１３０５に進む。
【００８６】
ステップ１３０５にて、提示機能数を１加算する。ステップ１３０６にて、提示設定テーブルのユーザ設定（図５、図６）の「機能提示方法設定」から、現在のコードと機能ＩＤの組み合わせと一致する、対応機能ＩＤと対応コードの「機能提示テキスト」と「コード提示画像」を決定する。ステップ１３０７にて、提示設定テーブルの提示フォーマット（図７）の中の提示機能数に対応する「コード画像座標」に「コード提示画像」を表示し、「テキスト座標」に「機能提示テキスト」を提示する。例えば、現在の提示機能数が１であれば、提示フォーマット（図７）の第１機能の部分の「コード画像座標」と「テキスト座標」を参照する。
【００８７】
ステップ１３０８にて、抽出した全コードについて終了したか否かを判断する。終了していなければステップ１３０９に進み、次のコードについて処理を行う。終了していればステップ１３１０に進み、コード提示に関する処理を終了する。
【００８８】
図１１に示した機能提示に関する処理及びコード提示に関する処理の実際の手順の例を説明する。ここでは次のような条件を想定する。（１）ユーザ情報テーブル（図２）に登録されている２ユーザに関して機能を提示する。尚、図２では、ユーザＩＤ「Ｊ」の機能提示は未提示となっているが、提示中であると仮定する。（２）データとして、図３の機能情報テーブル、図４のコード情報テーブル、図５及び図６の提示設定テーブルのユーザ設定、図７の提示設定テーブルの提示フォーマットを使用する。
【００８９】
図１２は、図１１の機能提示に関する処理及びコード提示に関する処理に従って提示した例である。参照符号１２０２Ａ、１２０２Ｂ、１２０２Ｃは、ユーザＩＤ「Ｔ」に関する提示内容を表し、参照符号１２０３Ａ、１２０３Ｂ、１２０３Ｃは、ユーザＩＤ「Ｊ」に関する提示内容を表す。
【００９０】
１．機能提示を開始し、ユーザ情報テーブル（図２）の１番目のユーザ（この場合はユーザＩＤ「Ｔ」）に関しての処理を行う。（図１１のステップ１２０１、ステップ１２０２）
２．ユーザ情報テーブルの「機能提示」が提示中であるので、図１１のステップ１２０４に進む。（図１１のステップ１２０３）
３．ユーザＩＤ「Ｔ」に対応する提示設定テーブルのユーザ設定（図５）を読み込む。（図１１のステップ１２０４）
【００９１】
４．提示設定テーブルのユーザ設定（図５）の提示フォーマットＩＤ「Ｆ０１」と同一の提示フォーマットＩＤを有する提示フォーマット（図７Ａ）を読み込む。（図１１のステップ１２０５）
５．ユーザ設定（図５）のユーザ名提示テキスト「太郎」を、提示フォーマット（図７Ａ）のユーザ名のテキスト座標「（５０、５０）」に表示する。これが図１２における参照符号１２０２Ａに対応する。（図１１のステップ１２０６）
６．コード情報テーブル（図４）の中から、「対応ユーザＩＤ」がユーザＩＤ「Ｔ」と一致するコードを抽出する。ここでは、ボタンＴＡとボタンＴＢを抽出する。（図１１のステップ１２０７）
【００９２】
７．コード提示に関する処理を行うためステップ１３０１に進む。（図１１のステップ１２０８）
８．提示機能数を０とし、１番目のコード「ボタンＴＡ」に関する処理を行う。（図１１のステップ１３０２、ステップ１３０３）
９．コード情報テーブル（図４）のコード「ボタンＴＡ」については、対応機能ＩＤに機能ＩＤ「＃０１」が存在するので、ステップ１３０５に進む。（図１１のステップ１３０４）
【００９３】
１０．提示機能数を１加算し、１とする。（図１１のステップ１３０５）
１１．提示設定テーブルのユーザ設定（図５）の機能提示方法設定の中から、機能ＩＤ「＃０１」とコード「ボタンＴＡ」に対応する「機能提示テキスト」と「コード提示画像」を抽出する。この場合は、機能提示テキストが「メールを読む」、コード提示画像が「ＴＡ．ＢＭＰ」である。（図１１のステップ１３０６）
１２．提示設定テーブルの提示フォーマット（図７Ａ）の提示機能数１（手順１０より）に対応した部分である「第１機能」の項目を参照する。これにより「コード画像座標」は（１００、５０）、「テキスト表示座標」は（１３０、５０）となり、それぞれの座標に画像「ＴＡ．ＢＭＰ」とテキスト「メールを読む」を表示する。これが図１２における参照符号１２０２Ｂに対応する。（図１１のステップ１３０７）
【００９４】
１３．全コードについて終了していないので、次のコードである「ボタンＴＢ」に関する処理を行う。（図１１のステップ１３０８及びステップ１３０９）
１４．コード情報テーブル（図４）の「ボタンＴＢ」については、対応機能ＩＤに機能ＩＤ「＃０２」が存在するので、ステップ１３０５に進む。（図１１のステップ１３０４）
１５．提示機能数を１加算し、２とする。（図１１のステップ１３０５）
【００９５】
１６．提示設定テーブルのユーザ設定（図５）の機能提示方法設定の中から、機能ＩＤ「＃０２」とコード「ボタンＴＢ」に対応する「機能提示テキスト」と「コード提示画像」を抽出する。この場合は、機能提示テキストが「ＢＭ（ブックマーク）登録」、コード提示画像が「ＴＢ．ＢＭＰ」である。（図１１のステップ１３０６）
１７．提示設定テーブルの提示フォーマット（図７Ａ）の提示機能数２（手順１５より）に対応した部分である「第２機能」の項目を参照する。これにより「コード画像座標」は（２００、５０）、「テキスト表示座標」は（２３０、５０）となり、それぞれの座標に画像「ＴＢ．ＢＭＰ」とテキスト「ＢＭ（ブックマーク）登録」を表示する。これが図１２における参照符号１２０２Ｃに対応する。（図１１のステップ１３０７）
【００９６】
１８．全コードに関してコード提示に関する処理を終了したので、コード提示に関する処理を終了する。（図１１のステップ１３１０）図１１のステップ１２１０に進む。
１９．全ユーザに関して機能提示の処理が終了していないので、次のユーザであるユーザＩＤ「Ｊ」の処理を実行する。（図１１のステップ１２１０及びステップ１２１１）
２０．ユーザＩＤ「Ｊ」に関しては、ユーザＩＤ「Ｔ」の場合と同様（手順２から手順５）に、ユーザ設定（図６）のユーザ名提示テキストである「ＪＩＲＯ」を、提示フォーマット（図７Ｂ）のユーザ名のテキスト座標「（３０，１００）」に表示する。（図１１のステップ１２０３、１２０４、１２０５、１２０６）する。これが図１２における参照符号１２０３Ａに対応する。
【００９７】
２１．コード情報テーブル（図４）の中から、「対応ユーザＩＤ」がユーザＩＤ「Ｊ」と一致するコードを抽出する。ここでは、ボタンＪＡとボタンＪＢを抽出する。（図１１のステップ１２０７）
２２．１つめのコードである「ボタンＪＡ」に関する提示を、ユーザＩＤ「Ｔ」の場合と同様（手順７から手順１２）に行う。提示設定テーブルのユーザ設定（図６）の機能提示方法設定の中から、機能ＩＤ「＃０１」とコード「ボタンＪＡ」に対応する「機能提示テキスト」と「コード提示画像」を抽出する。「機能提示テキスト」は「表示しない」である。提示設定テーブルの提示設定フォーマット（図７Ｂ）の提示機能数１に対応した部分である「第１機能」の項目を参照する。機能提示テキストは表示せず、コード表示画像「ＪＡ０３．ＢＭＰ」を座標（３０，１５０）に表示する。（図１１のステップ１２０８、１３０１、１３０２、１３０３、１３０４、１３０５、１３０６、１３０７）これが図１２における参照符号１２０３Ｂに対応する。
【００９８】
２３．２つめのコードである「ボタンＪＢ」に関する提示を、ユーザＩＤ「Ｔ」の場合と同様（手順１３から手順１７）に行う。提示設定テーブルのユーザ設定（図６）の機能提示方法設定の中から、機能ＩＤ「＃０２」とコード「ボタンＪＡ」に対応する「機能提示テキスト」と「コード提示画像」を抽出する。「機能提示テキスト」は「表示しない」である。提示設定テーブルの提示設定フォーマット（図７Ｂ）の提示機能数２に対応した部分である「第２機能」の項目を参照する。機能提示テキストは表示せず、コード表示画像「ＪＢ０２．ＢＭＰ」を座標（３０，１５０）に表示する。（図１１のステップ１３０８、１３０９、１３０４、１３０５、１３０６、１３０７）これが図１２における参照符号１２０３Ｃの部分に対応する
【００９９】
２４．以上でユーザＩＤ「Ｊ」に関する全コードに関する処理が終了した（図１１のステップ１３０８）ので、コード提示に関する処理を終了する。（図１１のステップ１３１０）従って、図１１のステップ１２０８からステップ１２１０に進む。
２５．全ユーザに関して機能の提示処理が終了したので機能提示処理を終了する。（図１１のステップ１２１０、１２１２）
これにより、割当提示手段０９に、各ユーザの機能が提示される。
【０１００】
[第２の実施の形態]
図１３を参照して本発明による情報処理装置の第２の例を説明する。本例の情報処理装置は、ユーザに関する情報を格納するユーザ情報テーブル０１、コードとその機能に関する情報を格納するコード情報テーブル０２、情報処理装置の内部の機能に関する情報を格納する機能情報テーブル０３、コードとその機能の提示方法の設定を格納する提示設定テーブル０４、及び、提示に関するデータを格納する提示データテーブル１２を有する。提示設定テーブル０４はユーザ設定０４Ａと提示フォーマット０４Ｂを含む。
【０１０１】
本例の情報処理装置は、更に、コード入力手段０５、コード入力判断手段０６、実行命令判断手段０７、機能実行手段０８、提示方法決定手段０９、割当提示手段１０、内部状態管理手段１１、及び、テーブル変更手段１３を有する。
【０１０２】
本例の情報処理装置の構成のうち、第１の例と同一であるのは、   ユーザ情報テーブル（図２）、機能情報テーブル（図３）、コード情報テーブル（図４）、提示設定テーブルのユーザ設定（図５、図６）、コード受信待ちおよび受信処理時の処理（図８）、及び、機能提示判断処理（図９）である。
【０１０３】
本例の情報処理装置の構成のうち、第１の例と異なる点に関して以下に説明する。提示データテーブル１２は、提示の優先順序、コード提示に使用するテキストデータや画像データの記録、コードに使用する提示フォーマットの割当て、等を格納する。提示データテーブル１２のデータの読み書きは、提示方法決定手段０９によって実行される。この詳細については後述（図１５）する。
【０１０４】
テーブル変更手段１３は、ユーザの命令により、ユーザ情報テーブル０１、コード情報テーブル０２、機能情報テーブル０３、提示設定テーブル０４の内容の変更、追加、削除を行う。
【０１０５】
図１４は第２の例における提示設定テーブル０４の提示フォーマット０４Ｂの例である。このフォーマットに従いテキストや画像の提示を行う。第１の例の提示フォーマット（図７）と異なる点は、１つの機能提示について、ユーザやコード、機能に関して複数のデータを同時に提示できることである。
【０１０６】
「提示フォーマットＩＤ」は、第１の例と同様に提示設定テーブルのユーザ設定０４Ａ（図６）に記録されている提示フォーマットＩＤから参照する場合に使用する。「機能番号」は、機能を提示するグループを表す。「提示項目」は、コードの機能をユーザに提示するときに使用するデータを表し、提示設定テーブルのユーザ設定（図５、図６）に含まれる項目に対応している。
【０１０７】
「データ数」は、１つの「機能番号」で提示する「提示項目」のデータの数を表し、データの数が異なると、提示する時の設定が変化する。「Ｎｏ」は、複数のデータが存在する場合の各データの提示設定を表す。「提示座標」は、テキスト及び画像を提示する座標を表す。
【０１０８】
例えば、第３機能に２個の「コード提示画像」が存在する場合には、「機能番号」が「第３機能」、「提示項目」が「コード提示画像」、「データ数」が「２」に対応する行を見ればよい。１つ目のデータは、「Ｎｏ」が「１」の提示座標である「（４１０、３５０）」を使用し、２つ目のデータは、「Ｎｏ」が「２」の提示座標である「（４１０、４５０）」を使用する。
【０１０９】
尚、第１の例の提示フォーマット（図７）の場合と同様に、ここに記載されている項目以外でも機能の提示フォーマットに関するデータであれば、追加、変更することは可能である。実際の例の詳細については後述（図２０）する。
【０１１０】
図１５は、第２の例の提示データテーブル１２の例を示す。「提示順序」は、ユーザに機能を提示する順序を表す。この順序に従って機能を提示するから、先に提示されていた機能が後から提示された機能によって影響を受けることを小さくすることができる。「ユーザＩＤ」、「ユーザ名提示テキスト」、「機能提示テキスト」、「コード提示画像」は提示設定テーブルのユーザ設定（図５、図６、図１７、図１８）と同様である。「コード」、「対応機能ＩＤ」はコード情報テーブル（図４）と同様である。「提示機能番号」は、提示設定テーブルの提示フォーマット（図１４）の「機能番号」に対応している。このデータの作成手順の詳細および実際の例については後述（図１６）する。
【０１１１】
図１６は、第２の例の提示データテーブル（図１５）作成に関する処理のフローチャートを示す。ステップ１４０１にて、処理が開始される。このフローチャートの処理は、機能提示判断のフローチャートの中の機能提示に関する処理（図９のステップ１１１３）の時点で、内部状態管理手段１１に命令が送られた後に実行される。ステップ１４０２にて、提示データテーブル１２にデータが存在するか否かを判断する。存在しない場合は、提示データテーブルの内容を削除する必要が無いのでステップ１４０９に進む。存在する場合は、提示データテーブルのデータを削除する必要があるか否かを調査するために、ステップ１４０３に進む。
【０１１２】
ステップ１４０３にて、提示データテーブルの「提示順序」１番目の機能について実行する。ステップ１４０４にて、この「提示順序」に示されるユーザＩＤのユーザ情報テーブル（図２）の機能提示の部分が提示中であるか否かを判断する。提示中であればステップ１４０６に進み、提示中で無ければステップ１４０５に進む。ステップ１４０５にて、「提示順序」のデータを消去し、ステップ１４０６へ進む。
【０１１３】
ステップ１４０６にて、全「提示順序」のデータに関して処理が終了したか否かを判断する。終了していなければステップ１４０７に進み、次の「提示順序」のデータに関して処理を行う。終了していれば、ステップ１４０８に進み、提示データテーブルの提示順序に欠番があった場合に詰める。例えば、提示順序１と３が存在する場合、２は欠番であるから、提示順序３を詰めて提示順序２とする。
【０１１４】
ステップ１４０９にて、次にユーザ情報テーブルの１番目のユーザから処理を開始する。ステップ１４１０にて、提示データテーブルのユーザＩＤに同一のデータが存在するか否かを判断する。存在する場合は、提示データテーブルにデータを追加する必要がないと判断し、ステップ１４２２へ進む。存在しない場合は、ステップ１４１１にて、そのユーザのユーザ情報テーブル（図２）における機能提示が提示中であるか否かを判断する。提示中であれば新規に提示を行うと判断し、ステップ１４１２に進み、提示中でない場合はステップ１４２２へ進む。
【０１１５】
ステップ１４１２にて、提示データテーブルの提示順序の最後に新しく提示順序とユーザＩＤとユーザ名提示テキストを加える。例えば提示順序が２まで存在していれば、提示順序３を追加し、ユーザＩＤとユーザ名提示テキストを追加する。ステップ１４１３にて、追加したユーザＩＤと一致するユーザＩＤのコードをコード情報テーブル（図４）にて検索し、そのうちの１番目のコードに関して処理を行う。ステップ１４１４にて、コード情報テーブルから読み出したコードと提示機能ＩＤを提示データテーブルに追加する。ステップ１４１５にて、追加したコードと提示機能ＩＤに対応した、「機能提示テキスト」と「コード提示画像」をユーザ設定（図１７、図１８）から読み出し、それを提示データテーブルに追加する。
【０１１６】
ステップ１４１６にて、提示データテーブル中に、追加した機能ＩＤと同一の機能ＩＤを有するデータが存在するか否かを判断する。データが存在する場合は、ステップ１４１８に進む。データが存在しない場合は、ステップ１４１７に進み、提示データテーブル中に、追加したコード提示画像と同一のコード提示画像を有するデータが存在するか否かを判断する。同一のコード提示画像を有するデータが存在する場合は、ステップ１４１８に進み、同一のコード提示画像を有するデータが存在しない場合は、ステップ１４１９に進む。
【０１１７】
ステップ１４１８にて、追加したデータの提示機能番号として、同一の機能ＩＤを有するデータの「提示機能番号」又は同一のコード提示画像を有するデータの「提示機能番号」を設定する。ステップ１４１９にて、追加したデータの提示機能番号として、新規に「提示機能番号」を作成する。
【０１１８】
ステップ１４２０にて、全てのコードについて処理が終了したか否かを判断する。終了していなければ、ステップ１４２１に進み、次のコードに関する処理を開始し、終了していれば、ステップ１４２２に進み、全ユーザに関して処理が終了したか否かを判断する。全ユーザに関して処理が終了していなければ、ステップ１４２３に進み、次のユーザに関する処理を開始する。全ユーザに関して処理が終了していれば提示データテーブルの作成を終了し、ステップ１４２４に進み、機能提示に関する処理のフローチャート（図１９、後述する）に進む。この実際の例は後述（図１７、図１８）する。
【０１１９】
この例では、追加したデータに対して、「提示データテーブルに同一の機能ＩＤが存在」する場合、又は、「提示データテーブルに同一のコード提示画像が存在」する場合に、同一の「提示機能番号」を使用する。これ以外でも「提示機能番号」を決定するための条件であればこれに限らない。例えば、追加したデータに対して、同一の「機能提示テキスト」が存在すれば、現在の「提示機能番号」を使用してよく、又は、１つの「提示機能番号」に割り当てる機能数を限定してもよい。
【０１２０】
図１７及び図１８は第２の例における提示設定テーブル０４のユーザ設定０４Ａの例である。本例のユーザ設定の項目は、図５及び図６に示した第１の例における提示設定テーブルのユーザ設定の項目と同一であり、データが異なるだけである。図１７及び図１８を参照しながら、提示データテーブル（図１５）作成に関する処理の実際の手順の例を説明する。ここでは次のような条件を想定する。（１）ユーザは２人であり、そのユーザＩＤは「Ｔ」と「Ｊ」である。（２）現在、割当提示手段１０に機能は提示されていない。図２のユーザ情報テーブルでは、ユーザＩＤ「Ｔ」の提示時刻は２０：０３：２２であり、機能提示は提示中であるが、ここでは、２ユーザ（ユーザＩＤ「Ｔ」、「Ｊ」）とも最終入力日時にデータは無く、機能提示は未提示であると仮定する。提示データテーブル（図１５）にもデータは存在しないと仮定する。（３）コード「ボタンＴＡ」が、時刻１２：００：００に入力される。コード「ボタンＪＢ」が、時刻１２：００：１０に入力される。コード「ボタンＴＢ」が、時刻１２：００：２０に入力される。（４）コード情報テーブルは図４、ユーザ設定は図１７、図１８を使用する。また、コード受信待ち及び受信時の処理（図８）、機能提示判断処理（図９）は第１の例と同様のフローチャートを使用する。
【０１２１】
１．時刻１２：００：００にコード「ボタンＴＡ」が入力される。
２．コード受信待ちのフローチャート（図８）より、ユーザＩＤ「Ｔ」のユーザ情報テーブル（図２）の提示時刻が１２：００：００に変更され、機能提示判断のフローチャート（図９）を開始する。
３．機能提示判断のフローチャート（図９）より、ユーザＩＤ「Ｔ」のユーザ情報テーブル（図２）の機能提示を提示中に変更し、機能提示に関する処理（図９のステップ１１１３）から、提示データテーブル作成のフローチャート（図１６）を開始する。
【０１２２】
４．まず、提示データテーブルにデータが存在するか否かを判断（図１６のステップ１４０２）する。ここでは、提示データテーブルにデータが存在しないため図１６のステップ１４０９に進む
５．ユーザ情報テーブル（図２）の１番目のユーザであるユーザＩＤ「Ｔ」から処理を開始する。（図１６のステップ１４０９）
６．提示データテーブルにユーザＩＤのデータがあるか否かを判断（図１６のステップ１４１０）する。ここでは、データが存在しないので図１６のステップ１４１１に進む。
７．ユーザ情報ＩＤの機能提示が提示中となっている（手順３にて変更した。）ので、図１６のステップ１４１２に進む。
８．提示データテーブルにはデータが存在しないため、提示順序１のデータを作成し、ユーザＩＤに「Ｔ」、ユーザ名提示テキストに「太郎」を追加する。（図１６のステップ１４１２）
【０１２３】
９．コード情報テーブル（図４）におけるユーザＩＤ「Ｔ」のコードのうち、１番目のコードである「ボタンＴＡ」に関して処理を行う。（図１６のステップ１４１３）
１０．提示データテーブルにコード情報テーブル（図４）のコード「ボタンＴＡ」と対応機能ＩＤ「＃０１」を追加する。（図１６のステップ１４１４）
１１．ユーザＩＤ「Ｔ」の提示設定テーブルのユーザ設定（図１７）から、コード「ボタンＴＡ」と対応機能ＩＤ「＃０１」に対応する、機能提示テキスト「メールを読む」とコード提示画像「Ｒｅｄ．ＢＭＰ」を読み取り、それを提示データテーブルに追加する。（図１６のステップ１４１５）
【０１２４】
１２．提示データテーブル中に、追加したデータと同一の機能ＩＤが存在するか否かを判断（図１６のステップ１４１６）する。ここでは、存在しないので図１６のステップ１４１７に進む。
１３．提示データテーブル中に、追加したデータと同一のコード提示画像が存在するか否かを判断（図１６のステップ１４１７）する。ここでは、存在しないので、追加したデータに対して、新規の提示機能番号である「第１機能」を割り当てる（図１６のステップ１４１９）。
【０１２５】
１４．全コードについて終了したか否かを判断（図１６のステップ１４２０）する。ここでは、終了していないためユーザＩＤ「Ｔ」の次のコードである「ボタンＴＢ」に関して処理を行う。（図１６のステップ１４２１）
１５．コード「ボタンＴＡ」と同様（手順１０から手順１３）に、提示データテーブルに「コード」、「対応機能ＩＤ」、「機能提示テキスト」、「コード提示画像」を追加し、追加したデータに対して、新規の提示機能番号「第２機能」を割り当てる（図１６のステップ１４１４、ステップ１４１５、ステップ１４１６、ステップ１４１７、ステップ１４１９）。この時点での提示データテーブルを図１５Ａに示す。
【０１２６】
１６．ユーザＩＤ「Ｔ」の全コードに関して処理が終了したので、図１６のステップ１４２２に進む。（図１６のステップ１４２０）
１７．全ユーザに関して処理が終了したか否かを判断（図１６のステップ１４２２）する。ここでは、まだユーザＩＤ「Ｊ」について処理を終了していないので次のユーザＩＤ「Ｊ」に関する処理を行う。（図１６のステップ１４２３）
１８．ユーザＩＤ「Ｊ」のデータは提示データテーブルに存在せず、ユーザ情報テーブル（図２）の機能提示は「提示中」ではないので、図１６のステップ１４２２に進む。（図１６のステップ１４１０、ステップ１４１１）
１９．全ユーザについて終了したので、提示処理へ進み実際の提示を行う（図１６のステップ１４２４）。提示処理に関しては後述（手順２０）する。提示処理終了後、機能提示判断のフローチャート（図９のステップ１１１３）に戻り、次のコード入力があるか、又は、現在時間がユーザ情報テーブルの提示時刻を超えるまで、現在の提示が継続される。
【０１２７】
２０．時刻１２：００：１０にコード「ボタンＪＢ」が入力される。
２１．コード受信待ちのフローチャート（図８）より、ユーザＩＤ「Ｊ」のユーザ情報テーブル（図２）の提示時刻が１２：００：４０に変更される。機能提示判断のフローチャート（図９）は手順１９により処理が継続されているので新規に開始はしない（図８のステップ１０１１）。
２２．機能提示判断のフローチャート（図９）より、ユーザＩＤ「Ｊ」のユーザ情報テーブル（図２）の機能提示を「提示中」に変更し、機能提示に関する処理（図９のステップ１１１３）から、提示データテーブル作成のフローチャート（図１６）を開始する。
２３．まず、提示データテーブルにデータが存在するか否かを判断（図１６のステップ１４０２）する。ここでは、提示データテーブルにデータが存在するため図１６のステップ１４０３に進む。
【０１２８】
２４．提示データテーブルの提示順序１番目の項目について処理を行う。（図１６のステップ１４０３）
２５．提示順序１番目のユーザＩＤ「Ｔ」のユーザ情報テーブル（図２）の機能提示が「提示中」であるかどうか否かを判断する（図１６のステップ１４０４）。「提示中」であるので（手順３）、図１６のステップ１４０６に進む。
２６．全提示データに関して処理を終了したので、図１６のステップ１４０８に進む。
２７．提示データテーブルの提示順序に欠番は存在しないので、変更せずに図１６のステップ１４０９に進む。
【０１２９】
２８．ユーザ情報テーブル（図２）の１番目のユーザであるユーザＩＤ「Ｔ」から処理を開始する。
２９．提示データテーブルにデータがあるか否かを判断（図１６のステップ１４１０）する。ここでは、データが存在する（図１５Ａ）ので図１６のステップ１４２２に進む。
３０．全ユーザに関して処理が終了していないので、次のユーザであるユーザＩＤ「Ｊ」に関して処理を開始する。（図１６のステップ１４２２、ステップ１４２３）
３１．提示データテーブルにユーザＩＤ「Ｊ」のデータが存在するか否かを判断（図１６のステップ１４１０）する。ここでは、データが存在しない（図１５Ａ）ので図１６のステップ１４１１に進む。
【０１３０】
３２．ユーザ情報ＩＤの機能提示は「提示中」である（手順３）ので、図１６のステップ１４１２に進む。
３３．提示データテーブルにユーザＩＤ「Ｊ」のデータが存在しないため、提示順序２のデータを作成し、ユーザＩＤに「Ｊ」、ユーザ名提示テキストに「ＪＩＲＯ」を追加する。（図１６のステップ１４１２）
３４．コード情報テーブル（図４）におけるユーザＩＤ「Ｊ」のコードのうち、１番目のコードである「ボタンＪＡ」に関して処理を行う。（図１６のステップ１４１３）
３５．提示データテーブルにコード情報テーブル（図４）のコード「ボタンＪＡ」と対応機能ＩＤ「＃０３」を追加する。（図１６のステップ１４１４）
【０１３１】
３６．ユーザＩＤ「Ｊ」の提示設定テーブルのユーザ設定（図１８）から、コード「ボタンＪＡ」と対応機能ＩＤ「＃０３」に対応する、機能提示テキスト「Ｆｏｒｗａｒｄ」とコード提示画像「Ｒｅｄ．ＢＭＰ」を提示データテーブルに追加する。（図１６のステップ１４１５）
３７．提示データテーブル中に、追加したデータと同一の機能ＩＤが存在するか否かを判断（図１６のステップ１４１６）する。ここでは、存在しないので図１６のステップ１４１７に進む。
３８．提示データテーブル中に、追加したデータと同一のコード提示画像が存在するか否かを判断（図１６のステップ１４１７）する。ここでは、追加したデータのコード提示画像とコード「ボタンＴＡ」のコード提示画像が一致するので、追加したデータに対して、コード「ボタンＴＡ」の提示機能番号と同一の提示機能番号「第１機能」を割り当てる（図１６のステップ１４１８）。
【０１３２】
３９．全コードについて処理が終了したか否かを判断（図１６のステップ１４２０）する。ここでは、終了していないため、コード情報テーブル（図４）におけるユーザＩＤ「Ｊ」のコードのうち、２番目のコードである「ボタンＪＢ」に関して処理を行う。（図１６のステップ１４２１）
４０．コード「ボタンＪＡ」と同様（手順３５から手順３６）に、提示データテーブルに「コード」、「対応機能ＩＤ」、「機能提示テキスト」、「コード提示画像」を追加する。（図１６のステップ１４１４、ステップ１４１５）
【０１３３】
４１．提示データテーブル内に、追加したデータと同一の機能ＩＤが存在するか否かを判断（図１６のステップ１４１６）する。ここでは、追加したデータの機能ＩＤとコード「ボタンＴＢ」の機能ＩＤは一致するので、追加したデータに対して、コード「ボタンＴＢ」の提示機能番号と同一の提示機能番号「第２機能」を割り当てる（図１６のステップ１４１８）。この時点での提示データテーブルを図１５Ｂに示す。
４２．ユーザＩＤ「Ｊ」の全コードに関して処理が終了し、全ユーザに関して処理が終了したので図１６のステップ１４２４に進む。（図１６のステップ１４２０、ステップ１４２２）
【０１３４】
４３．機能提示に関する処理（後述、図１９）を行う（図１６のステップ１４２４）。機能提示に関する処理の終了後、機能提示判断のフローチャート（図９のステップ１１１３）に戻り、次のコード入力があるか、又は、現在時間がユーザ情報テーブルの提示時刻を超えるまで、現在の提示が継続される。
４４．時刻１２：００：２０にコード「ボタンＴＢ」が入力される。
４５．コード受信待ちのフローチャート（図８）より、ユーザＩＤ「Ｔ」のユーザ情報テーブル（図２）の提示時刻が１２：００：５０に変更される。ユーザ情報テーブルのユーザＩＤ「Ｔ」の機能提示は「提示中」となっているので、図８のステップ１００７に進む。
【０１３５】
４６．入力されたコード「ボタンＴＢ」には、コード情報テーブル（図４）より対応機能ＩＤ「＃０２」が存在するので、図８のステップ１００８に進む。
４７．対応機能ＩＤ「＃０２」に対応する機能を実行する命令を機能実行手段０８に送り（図８のステップ１００８）、ユーザ情報テーブルの提示時刻のデータをクリアする（図８のステップ１００９）。その後、コード入力を待つ（図８のステップ１０１０）。
４８．手順４７でユーザ情報テーブルの提示時刻のデータがクリアされたので、機能提示判断手段のフローチャート（図９）の動きが変化するので、図９のステップ１１０２から説明する。
【０１３６】
４９．１番目のユーザであるユーザＩＤ「Ｔ」に関して処理を行う（図９のステップ１１０２）。ユーザ情報テーブルから提示時刻を読み込み（図９のステップ１１０３）、データが存在しないので図９のステップ１１０５に進む。
５０．ユーザ情報テーブル（図２）の機能提示が「提示中」となっているので、図９のステップ１１０７に進む。（図９のステップ１１０５）
５１．ユーザ情報テーブル（図２）の機能提示を「未提示」に変更し、提示時刻のデータをクリアする。（図９のステップ１１０７）
５２．その後、ユーザＩＤ「Ｊ」について実行し、機能提示は「提示中」であるから、データの変更は無く、全ユーザに関しての処理を変更する。（図９のステップ１１０９、ステップ１１１０、ステップ１１１１、ステップ１１０３、ステップ１１０４、ステップ１１０６、ステップ１１０８、ステップ１１０９、ステップ１１１０、ステップ１１１２）
【０１３７】
５３．機能提示判断のフローチャート（図９）の機能提示に関する処理（図９のステップ１１１３）から、提示データテーブル作成のフローチャート（図１６）を開始する。
５４．まず、提示データテーブルにデータが存在するか否かを判断（図１６のステップ１４０２）する。ここでは、提示データテーブルにデータが存在するため図１６のステップ１４０３に進む。
５５．提示データテーブルの提示順序１番目の項目について処理を行う。（図１６のステップ１４０３）
【０１３８】
５６．提示順序１番目のユーザＩＤ「Ｔ」のユーザ情報テーブル（図２）の機能提示が「提示中」であるか否かを判断する（図１６のステップ１４０４）。「未提示」であるので（手順５１）、図１６のステップ１４０５に進む。
５７．提示順序の１番目のデータを削除する。
５８．全提示データに関しては処理が終了していないので、提示順序の２番目のデータに関して処理を行う。（図１６のステップ１４０６、ステップ１４０７）
５９．提示順序２番目のユーザＩＤ「Ｊ」について、ユーザ情報テーブルの機能提示は「提示中」であるので図１６のステップ１４０６へ進む。（図１６のステップ１４０４）
【０１３９】
６０．全提示データについて終了したので、図１６のステップ１４０８に進む。
６１．提示順序１を削除したため、欠番が発生している。従って、提示順序２を１とすることで詰める（図１６のステップ１４０８）。このときの提示データテーブルを図１５Ｃに示す。
６２．ユーザ情報テーブル（図２）の１番目のユーザであるユーザＩＤ「Ｔ」について処理を開始する。（図１６のステップ１４０９）
６３．ユーザＩＤ「Ｔ」のデータは、提示データテーブルに存在せず、ユーザ情報テーブル（図２）の機能提示は「提示中」となっていないため、次のユーザＩＤ「Ｊ」について処理を行う。（図１６のステップ１４１０、ステップ１４１１、ステップ１４２２、ステップ１４２３）
【０１４０】
６４．ユーザＩＤ「Ｊ」のデータは、提示データテーブルに存在するので、提示データテーブル作成フローチャートを終了し、機能提示に関する処理を行う（図１６のステップ１４１０、ステップ１４２２、ステップ１４２３）。以後、新しいコードが入力されるか、又は、現在時間が提示時刻を超えるまで、この提示データテーブルの設定で割当提示手段１２に提示される。
【０１４１】
本例の場合、まず、１２：００：００直後にユーザＩＤ「Ｔ」の機能とコードが提示される（手順１９）。その後、１２：００：１０直後にユーザＩＤ「Ｔ」と「Ｊ」の機能とコードが提示される（手順４３）。そして、１２：００：２０直後にユーザＩＤ「Ｔ」の機能「ＴＶブックマーク登録（対応機能ＩＤ＃０２）」が実行され（手順４７）、ユーザＩＤ「Ｊ」のみの機能とコードが提示される（手順６４）。
【０１４２】
図１９は、本発明の情報処理装置の第２の例における機能提示に関する処理のフローチャートである。割当提示手段１０は、提示設定テーブルの提示フォーマット（図１４）と提示データテーブル１２を使用して、機能を提示する。このフローチャートは、提示データテーブル作成フローチャート終了後（図１６のステップ１４２４）に開始される。
【０１４３】
ステップ１５０１にて、処理が開始される。ステップ１５０２にて、提示機能番号の「第１機能」について処理が実行される。ステップ１５０３にて、提示データテーブル１２から同一の提示機能番号のデータを抜き出す。ステップ１５０４にて、同一の提示機能番号のデータが存在するか否かを判断する。同一の提示機能番号のデータが存在する場合は、ステップステップ１５０８に進み、存在しない場合はステップステップ１５０５へ進む。
【０１４４】
ステップ１５０８にて、処理に使用するＤ１、Ｄ２、Ｄ３の各定数を、ステップ１５０３にて抜き出したデータの個数と同一数に設定する。ステップ１５０９にて、抜き出したデータ全てのコード提示画像が一致するか否かを判断する。一致しない場合は、ステップ１５１１に進む。一致する場合は、ステップ１５１０にて、Ｄ１に１を代入し、ステップ１５１１に進む。
【０１４５】
ステップ１５１１にて、ステップ１５０３にて抜き出した１番目のデータのコード提示画像を、提示フォーマット（図１４）の「データ数」がＤ１、「Ｎｏ」が１の設定で提示を行う。ステップ１５１２にて、ステップ１５０３にて抜き出したデータの番号がＤ１と同一であるか否かを判断する。例えば、Ｄ１が１で、データが１番目のデータであれば同一であると判断する。同一である場合は、ステップ１５１４へ進み、同一でない場合は、ステップ１５１３に進む。ステップ１５１３にて、ステップ１５０３にて抜き出した次の（２番目の）データの「コード提示画像」を、データ数がＤ１、Ｎｏに１を加えた値の設定で提示し、ステップ１５１２に戻る。Ｄ１がデータ番号と同一になるまで提示処理を繰り返す。Ｄ１がデータ番号と同一になったら、ステップ１５１４に進む。ステップ１５１４にて、抜き出したデータ全ての機能提示テキストが一致するか否かを判断する。一致しない場合は、ステップ１５１６に進み、一致する場合は、ステップ１５１５にて、Ｄ２に１を代入し、ステップ１５１６に進む。ステップ１５１６にて、抜き出した１番目のデータの機能提示テキストを、提示フォーマット（図１４）の「データ数」がＤ２、「Ｎｏ」が１の設定で、提示する。
【０１４６】
ステップ１５１７にて、データの番号がＤ２と同一であるか否かを判断する。ステップ１５１２と同様に、Ｄ２が１で、データが１番目のデータであれば同一であると判断する。同一であればステップ１５１９へ進み、同一でなければステップ１５１８に進む。ステップ１５１８にて、次のデータの「機能提示テキスト」をデータ数がＤ２、Ｎｏに１を加えた値の設定で提示し、ステップ１５１７に戻る。Ｄ１がデータ番号と同一となるまで提示処理を繰り返す。
【０１４７】
ステップ１５１９にて、「Ｄ１＝１」、「Ｄ２＝１」、「Ｄ３＝提示ユーザ数」の全条件を満たすか否かを判断する。ここで「提示ユーザ数」とは、提示データテーブル（図１５）の中のユーザＩＤの項目の数を表し、現在機能を提示しているユーザ数を表す。Ｄ１、Ｄ２とも１である場合には、コード提示画像と機能提示テキストが１つのみ提示されており、Ｄ３（＝この機能番号に提示されているデータ数、ステップ１５０８より）が提示ユーザ数の場合には、提示中の全ユーザがその機能番号に提示していることを意味している。つまりこれらの条件を満たしていれば、提示中の全ユーザのコード提示画像と機能提示テキストが一致しており、ユーザ名を提示せずとも全ユーザが一意に理解できることを表す。全条件を満たす場合は、ユーザ名を表示しないとしてステップ１５０５に進み、それ以外の場合には、ステップ１５２０へ進む。
【０１４８】
ステップ１５２０にて、抜き出した１番目のデータのユーザ提示テキストを、提示フォーマット（図１４）の「データ数」がＤ３、「Ｎｏ」が１の設定で、提示する。ステップ１５２１にて、データの番号がＤ３と同一であるか否かを判断する。ステップ１５１２と同様に、Ｄ３が１で、データが１番目のデータであれば同一であると判断する。同一であればステップ１５０５へ進み、同一でなければ、ステップ１５２２に進む。ステップ１５２２にて、次のデータの「ユーザ提示テキスト」をデータ数がＤ３、Ｎｏに１を加えた値の設定で提示する。ステップ１５２１に戻り、Ｄ３がデータ番号と同一となるまで提示処理を繰り返す。
【０１４９】
ステップ１５０５にて、全提示機能番号について処理が終了したか否かを判断する。終了した場合は、ステップ１５０７に進み、機能提示に関する処理を終了する。終了していない場合は、ステップ１５０６に進み、次の提示機能番号について処理を開始する。この実際の例については、後述（図２０）する。
【０１５０】
本例では、同一の機能番号のデータが複数存在した場合の表示方法として、「全てのコード提示画像が一致する（ステップ１５０９）」、「全ての機能提示テキストが一致する（ステップ１５１４）」、「全てのコード提示画像と機能提示テキストが一致し、更に提示ユーザ数と同一数の機能の割り当てが存在する（ステップ１５１９）」場合にのみ、提示方法を１つに纏めているが、提示内容とデータ個数の関係により提示方法変更できれば、条件はこれに限らない。
【０１５１】
図２０は、図１４の提示設定テーブルの提示フォーマットと、図１５Ｂの提示データテーブルのデータを使用し、図１９の提示処理のフローチャートに従って提示した例である。参照符号２００２Ａ、２００２Ｂ、２００２Ｃは、提示機能番号「第１機能」に関する提示内容を表し、参照符号２００３Ａ、２００３Ｂ、２００３Ｃは、提示機能番号「第２機能」に関する提示内容を表す。以下に処理の流れの具体例を説明する。
【０１５２】
１．提示機能番号「第１機能」に関して処理を開始する。（図１９のステップ１５０２）
２．提示データテーブル（図１５Ｂ）から「第１機能」となるデータを抜き出す。ここでは、コード「ボタンＴＡ」とコード「ボタンＪＡ」の２つとなる。（図１９のステップ１５０３）
３．データは存在するので図１９のステップ１５０８に進む。「ボタンＴＡ」と「ボタンＪＡ」の２つのデータが存在するため、Ｄ１、Ｄ２、Ｄ３をそれぞれ２に設定する。
４．全てのコード提示画像が一致するか否かを判断する（図１９のステップ１５０９）。ここでは、２つのデータとも「Ｒｅｄ．ＢＭＰ」で一致するので、Ｄ１＝１とする（図１９のステップ１５１０）。
【０１５３】
５．１番目のデータ（ボタンＴＡ）の「コード提示画像」である「Ｒｅｄ．ＢＭＰ」を、提示フォーマット（図１４）の「第１機能」「コード提示画像」「データ数が１（手順４よりＤ１＝１）」「Ｎｏが１」の設定である提示座標（１０、４００）で提示する。図２０の参照符号２００２Ａは、手順５の提示内容を表す。
６．データ番号は１番目で、Ｄ１＝１であり、両者は一致するので図１９のステップ１５１４に進む。
７．全ての機能提示テキストが一致するか否かを判断する（図１９のステップ１５１４）。ここでは「メールを読む」と「Ｆｏｒｗａｒｄ」は一致しないので、図１９のステップ１５１６に進む（図１９のステップ１５１０）。
【０１５４】
８．１番目のデータ（ボタンＴＡ）の「機能提示テキスト」である「メールを読む」を、提示フォーマット（図１４）の「第１機能」「機能提示テキスト」「データ数が２（手順３よりＤ２＝２）」「Ｎｏが１」の設定である提示座標（１００、３５０）で提示する。
９．データ番号は１番目で、Ｄ２＝２であり、両者は一致しないので図１９のステップ１５１８に進む。（図１９のステップ１５１７）
１０．次の（２番目の）データ（ボタンＪＡ）の「機能提示テキスト」である「Ｆｏｒｗａｒｄ」を、提示フォーマット（図１４）の「第１機能」「機能提示テキスト」「データ数が２（手順３よりＤ２＝２）」「Ｎｏが２」の設定である提示座標（１００、４５０）で提示する。図２０の参照符号２００２Ｃは、手順８、手順１０の提示内容を表す。
１１．データ番号は２番目で、Ｄ２＝２であり、両者は一致するので図１９のステップ１５１９に進む。（図１９のステップ１５１７）
【０１５５】
１２．条件「Ｄ１＝１、Ｄ２＝１、Ｄ３＝提示ユーザ数」を満たすか否かを判断する。ここで、提示ユーザ数は提示データテーブル（図１５）よりユーザＩＤ「Ｔ」とユーザＩＤ「Ｊ」の２である。Ｄ２＝２である（手順９）ため、条件を満たさない。従って図１９のステップ１５２０に進む。
１３．１番目のデータ（ボタンＴＡ）の「ユーザ名提示テキスト」である「太郎」を、提示フォーマット（図１４）の「第１機能」「ユーザ名提示テキスト」「データ数が２（手順３よりＤ３＝２）」「Ｎｏが１」の設定である提示座標（５０、３５０）で提示する。
１４．データ番号は１番目で、Ｄ３＝２であり、両者は一致しないので図１９のステップ１５２２に進む。（図１９のステップ１５２１）
【０１５６】
１５．次の（２番目の）データ（ボタンＪＡ）の「ユーザ名提示テキスト」である「ＪＩＲＯ」を、提示フォーマット（図１４）の「第１機能」「ユーザ名提示テキスト」「データ数が２（手順３よりＤ３＝２）」「Ｎｏが２」の設定である提示座標（５０、４５０）で提示する。図２０の参照符号２００２Ｂは、手順１３、手順１５の提示内容を表す。
１６．データ番号は２番目で、Ｄ３＝２であり、両者は一致するので図１９のステップ１５０５に進む。（図１９のステップ１５２１）
１７．全提示機能番号に関して処理が終了していないので、次の機能提示番号である「第２機能」に関しての処理を行う。
【０１５７】
１８．提示データテーブル（図１５Ｂ）から「第２機能」となるデータを抜き出す。この例の場合は、コード「ボタンＴＢ」とコード「ボタンＪＢ」の２つとなる。（図１９のステップ１５０３）
１９．データは存在するので図１９のステップ１５０８に進む。「ボタンＴＢ」と「ボタンＪＢ」の２つのデータが存在するため、Ｄ１、Ｄ２、Ｄ３をそれぞれ２に設定する。
２０．全てのコード提示画像が一致するか否かを判断する（図１９のステップ１５０９）。ここでは「Ｂｌｕｅ．ＢＭＰ」と「ＪＢ０２．ＢＭＰ」は一致しないので、図１９のステップ１５１１に進む。
２１．１番目のデータ（ボタンＴＢ）の「コード提示画像」である「Ｂｌｕｅ．ＢＭＰ」を、提示フォーマット（図１４）の「第２機能」「コード提示画像」「データ数が２（手順１９よりＤ１＝２）」「Ｎｏが１」の設定である提示座標（２１０、３５０）で提示する。
【０１５８】
２２．データ番号は１番目で、Ｄ１＝２であり、両者は一致しないので図１９のステップ１５１３に進む。
２３．次の２番目のデータ（ボタンＪＢ）の「コード提示画像」である「ＪＢ０２．ＢＭＰ」を、提示フォーマット（図１４）の「第２機能」「コード提示画像」「データ数が２（手順１９よりＤ１＝２）」「Ｎｏが２」の設定である提示座標（２１０、４５０）で提示する。図２０の参照符号２００３Ａは、手順２１と手順２３の提示内容を表す。
２４．データ番号は２番目で、Ｄ１＝２であり、両者は一致するので図１９のステップ１５１４に進む。
【０１５９】
２５．全ての機能提示テキストが一致するか否かを判断する（図１９のステップ１５１４）。ここでは、「ＢＭ（ブックマーク）登録」で一致するので、Ｄ２＝１とし（図１９のステップ１５１５）、図１９のステップ１５１６に進む。
２６．１番目のデータ（ボタンＴＢ）の「機能提示テキスト」である「ＢＭ（ブックマーク）登録」を、提示フォーマット（図１４）の「第２機能」「機能提示テキスト」「データ数が１（手順２４よりＤ２＝１）」「Ｎｏが１」の設定である提示座標（３００、４００）で提示する。図２０の参照符号２００３Ｃは手順２６の提示内容を表す。
２７．データ番号は１番目で、Ｄ２＝１であり、両者は一致するので図１９のステップ１５１９に進む。（図１９のステップ１５１７）
【０１６０】
２８．条件「Ｄ１＝１、Ｄ２＝１、Ｄ３＝提示ユーザ数」を満たすか否かを判断する。ここで、提示ユーザ数は提示データテーブル（図１５）よりユーザＩＤ「Ｔ」とユーザＩＤ「Ｊ」の２である。Ｄ１＝２である（手順２２）ため、条件を満たさない。従って、図１９のステップ１５２０に進む。
２９．１番目のデータ（ボタンＴＢ）の「ユーザ名提示テキスト」である「太郎」を、提示フォーマット（図１４）の「第２機能」「ユーザ名提示テキスト」「データ数が２（手順１９よりＤ３＝２）」「Ｎｏが１」の設定である提示座標（２５０、３５０）で提示する。
【０１６１】
３０．データ番号は１番目で、Ｄ３＝２であり、両者は一致しないので図１９のステップ１５２２に進む。（図１９のステップ１５２１）
３１．次の２番目のデータ（ボタンＪＢ）の「ユーザ名提示テキスト」である「ＪＩＲＯ」を、提示フォーマット（図１４）の「第２機能」「ユーザ名提示テキスト」「データ数が２（手順３よりＤ３＝２）」「Ｎｏが２」の設定である提示座標（２５０、４５０）で提示する。図２０の参照符号２００３Ｂは手順２９、手順３１の提示内容を表す。
３２．データ番号は２番目で、Ｄ３＝２であり、両者は一致するので図１９のステップ１５０５に進む。（図１９のステップ１５２１）
３３．全提示番号について終了したので、提示処理を終了する。
【０１６２】
図２１は、図１４の提示設定テーブルの提示フォーマットと、図１５Ｄの提示データテーブルのデータを使用し、図１９の提示処理のフローチャートに従って提示した例である。
【０１６３】
参照符号２１０２Ａ、２１０２Ｂ、２１０２Ｃは、提示機能番号「第１機能」に関する提示内容を表し、参照符号２１０３Ａ、２１０３Ｂ、２１０３Ｃは、提示機能番号「第２機能」に関する提示内容を表し、参照符号２１０４Ａ、２１０４Ｂ、２１０４Ｃは、提示機能番号「第３機能」に関する提示内容を表す。提示機能番号「第２機能」に関しては、コード提示画像と対応機能ＩＤと機能提示テキストが、２ユーザで完全に一致しているので、参照符号２１０３Ｂのユーザ名提示テキストは提示されていない。参照符号２１０３Ａのコード提示画像と参照符号２１０３Ｃの機能提示テキストのみが提示されている。
【０１６４】
[第３の実施の形態]
図２２を参照して本発明による情報処理装置の第３の例を説明する。本例の情報処理装置は、ユーザに関する情報を格納するユーザ情報テーブル０１、コードとその機能に関する情報を格納するコード情報テーブル０２、情報処理装置の内部の機能に関する情報を格納する機能情報テーブル０３、コードとその機能の提示方法の設定を格納する提示設定テーブル０４、及び、提示に関するデータを格納する提示データテーブル１２を有する。提示設定テーブル０４はユーザ設定０４Ａと提示フォーマット０４Ｂを含む。
【０１６５】
本例の情報処理装置は、更に、コード入力手段０５、コード入力判断手段０６、実行命令判断手段０７、機能実行手段０８、提示方法決定手段０９、割当提示手段１０、内部状態管理手段１１、及び、テーブル変更手段１３、及び、割当変更手段１４を有する。
【０１６６】
本例の情報処理装置の構成のうち、第２の例と異なるのは、割当変更手段１４を追加的に設けた点である。割当変更手段１４は、提示方法決定手段０９よりコードに割り当てる機能を変更する場合に、コード情報テーブル０２の内容を書き換えることにより、提示方法を変更する。この処理の詳細については、後述（図２３、図２４）する。
【０１６７】
図２３は、本発明の情報処理装置の第３の例における提示データテーブル作成処理のフローチャートである。図１６の第２の例における提示データテーブル作成処理のフローチャートと異なる点は、ステップ１４１２とステップ１４１３の間にステップ１４２５が追加された点である。ステップ１４２５は、提示データテーブルにデータを新規追加する際に、現在の提示データテーブルのデータと、新しく割り当てるべき機能の種類から、最も良いと思われるコードを判断して機能を割り当てる。尚、この処理の詳細は後述（図２４）する。また、第２の例で使用した提示処理のフローチャート（図１９）については変化は無い。
【０１６８】
図２４は、本発明の情報処理装置の第３の例におけるコード割当て決定処理のフローチャートである。図２３のステップ１４２５に相当する。
【０１６９】
ステップ１６０１にて、コード割当て決定処理を開始する。ステップ１６０２にて、入力されたユーザＩＤと一致する対応機能ＩＤをコード情報テーブル（図４）の中から抽出する。ここで抽出された対応機能ＩＤを以後の処理でコードに割り当てる。ステップ１６０３にて、抽出したユーザＩＤに対応する対応機能ＩＤの情報を、コード情報テーブル（図４）より全てクリアする。ステップ１６０４にて、抽出した１番目の機能ＩＤに関して処理を行う。
【０１７０】
まず、ステップ１６０５にて、入力されたユーザＩＤの対応機能ＩＤの情報がクリアされたコード情報テーブル（図４）において、ユーザＩＤに対応したコードの１番目のコードに関して処理を行う。次にステップ１６０６にて、提示設定テーブルのユーザＩＤに対応したユーザ設定からコード提示画像を抽出する。そして、ステップ１６０７にて、提示データテーブル中に同一のコード提示画像が存在するか否かを判断する。存在する場合は、ステップ１６０９に進み、存在しない場合は、ステップ１６１１に進む。
【０１７１】
ステップ１６０９にて、現在のコードは条件に当てはまらなかったので、次の対応機能ＩＤの存在しないコードを検索する。ステップ１６１０にて、該当するコードが存在するか否かを判断する。存在しない場合は、ステップ１６１１に進み、存在する場合は、ステップ１６０７に進む。ステップ１６０７にて、次のコードに関して処理を行うために、ステップ１６０６に戻る。
【０１７２】
ステップ１６１１にて、現在のコードに機能を割振ることが決定したので、現在の対応機能ＩＤをコード情報テーブル（図４）の対応機能ＩＤに記録する。ステップ１６１２にて、抽出した全機能（ステップ１６０２）について処理が終了したか否かを判断する。終了した場合は、ステップ１６１４に進み、コード割当決定処理を終了する。終了していない場合は、ステップ１６１４にて、次の対応機能ＩＤに関して処理を行う。実際の例に関しては後述（図２５）する。
【０１７３】
本例では、ステップ１６０７にて、同一のコード提示画像が存在するか否かを判断の基準としているが、コード決定の判断基準であればこれ以外でも良い。例えば（１）機能提示テキストにより判断する。（２）コードの提示座標により判断する。
【０１７４】
図２４に示したコード割当て決定処理の実際の手順の例を説明する。随時、図２５を参照する。ここでは次のような条件を想定する。
（１）現在ユーザＩＤ「Ｔ」は表示済みであり、提示データテーブルは図２５Ｄである。
（２）新規にユーザＩＤ「Ｊ」を表示する。
（３）初期のコード情報テーブルは図２５Ａとする。
【０１７５】
尚、データとして、図１７、及び、図１８の提示設定テーブルのユーザ設定を使用する。
【０１７６】
１．コード情報テーブル（図２５Ａ）より、ユーザＩＤ「Ｊ」の対応機能ＩＤを抽出する。ここでは、対応機能ＩＤとして「＃０２」を抽出する。（図２４のステップ１６０２）
２．コード情報テーブルより、ユーザＩＤ「Ｊ」の対応機能ＩＤを全てクリアする。このときのコード情報テーブルを図２５Ｂに示す。（図２４のステップ１６０３）
３．１番目の対応機能ＩＤである「＃０２」について処理する。（図２４のステップ１６０４）
【０１７７】
４．コード情報テーブル（図２５Ｂ）において、ユーザＩＤ「Ｊ」の１番目のコードである「ボタンＪＡ」について処理を開始する。（図２４のステップ１６０５）
５．提示設定テーブルのユーザ設定（図１８）から、コード「ボタンＪＡ」で対応機能ＩＤ「＃０２」の時の「Ｒｅｄ．ＢＭＰ」を抽出する。（図２４のステップ１６０６）
６．提示データテーブル（図２５Ｄ）に、同一のコード提示画像である「Ｒｅｄ．ＢＭＰ」が存在するので、図２４のステップ１６０９に進む。
【０１７８】
７．コード情報テーブル（図２５Ｂ）において、ユーザＩＤ「Ｊ」の次のコードを検索する（図２４のステップ１６０９）。
８．この例の場合は、「ボタンＪＢ」が存在するので、図２４のステップ１６０７に進む。（図２４のステップ１６１０）
９．「ボタンＪＢ」について処理を行い、提示設定テーブルのユーザ設定（図１８）から、コード「ボタンＪＢ」で対応機能ＩＤ「＃０２」の時の「ＪＢ０２．ＢＭＰ」を抽出する。（図２４のステップ１６０６）
【０１７９】
１０．提示データテーブル（図２５Ｄ）に、同一のコード提示画像は存在しないので、ステップ１６１１に進む。（図２４のステップ１６０８）
１１．対応機能ＩＤ「＃０２」はコード「ボタンＪＢ」に割り当てることを決定し、コード情報テーブルに記録する。このときのコード情報テーブルを図２５Ｃに示す。（図２４のステップ１６１１）
１２．全機能に関して処理が終了しているので、コード割当て決定処理を終了する。
【０１８０】
図２６は、第３の例によってコードの割り当てを変更した場合の機能の提示例を示す。
図２６Ａはコードの割り当てを変化させなかった場合であり、図２５Ａのコード情報テーブルに従って提示した場合である。ユーザ名、機能共に異なっているが、コード提示画像（参照符号２６０１Ａ）が同一であるため、ユーザ名（参照符号２６０１Ｂ）及び機能（参照符号２６０１Ｃ）は纏めて提示されている。図２６Ｂはコード割当変更を行った後に提示を行った場合であり、図２５Ｃのコード情報テーブルに従って提示を行った場合である。これによると、コード提示画像が同一であったために割り当てを変更したので、異なるコード提示画像（参照符号２６０２Ａ、２６０２Ｄ）で表示され、区別が容易になっている。
以上に説明したように本発明による情報処理装置は以下のような効果を発揮する。
【０１８１】
１．複数の機能を有する多機能装置において、ユーザ毎に機能を実行するためのコードが割り当てられて提示されるため、複数のユーザが使用する場合でも煩雑なコード入力を行う必要がなく、各自独立して機能を実行することができる。
２．コードを使用するユーザの情報が記録されているため、入力されたコードから現在情報処理装置を使用しているユーザを判断することができる。
３．ユーザは機能およびコードの提示方法を所望の態様に変更することが可能であるため、ユーザは容易な提示方法を選択することができる。
【０１８２】
４．コード及び機能はユーザ名と共に提示されるから、複数のユーザが使用する場合でも、各ユーザが使用できる機能およびコードを容易に把握することができる。
５．複数のユーザ間でコードの提示方法に共通点が存在する場合に、共通点を纏めて提示することにより、提示を簡単化しユーザのコード選択を容易化することができる。
６．複数のユーザ間で実行する機能に共通点が存在する場合に、共通点を纏めて提示することにより、提示を簡単化しユーザのコード選択を容易化することができる。
【０１８３】
７．複数のユーザ間で実行する機能の提示方法に共通点が存在する場合に、共通点を纏めて提示することにより、提示を簡単化しユーザのコード選択を容易化することができる。８．ユーザは、提示に関する設定を変更することが可能であり、各ユーザは所望の態様に提示方法を変更できる。
９．過去の提示履歴の順番に従って提示することにより、ユーザのコード選択を容易化することができる。
１０．コードに割り振られた機能を自動的に変更することが可能であり、これによって、各ユーザの提示状態に応じて、機能を割り振るコードを変更でき、ユーザのコード選択を容易とすることができる。
【０１８４】
以上、本発明の例を説明したが、本発明は上述の例に限定されるものではなく、特許請求の範囲に記載された発明の範囲にて様々な変更が可能であることは当業者に理解されよう。
【図面の簡単な説明】
【０１８５】
【図１】本発明の情報処理装置の第１の例の構成を表す図である。
【図２】本発明の情報処理装置の第１の例におけるユーザ情報テーブルの一例を示す図である。
【図３】本発明の情報処理装置の第１の例における機能情報テーブルの一例を示す図である。
【図４】本発明の情報処理装置の第１の例におけるコード情報テーブルの一例を示す図である。
【図５】本発明の情報処理装置の第１の例における提示設定テーブル内のユーザ情報設定の一例を示す図である。
【図６】本発明の情報処理装置の第１の例における提示設定テーブル内のユーザ情報設定の一例を示す図である。
【図７】本発明の情報処理装置の第１の例における提示設定テーブル内の提示フォーマットの一例を示す図である。
【図８】本発明の情報処理装置の第１の例におけるコード受信待ちの処理の一例を示す図である。
【図９】本発明の情報処理装置の第１の例における機能提示判断処理の一例を示す図である。
【図１０】本発明の情報処理装置の第１の例におけるコード入力時のユーザ情報テーブルの変化の一例を示す図である。
【図１１】本発明の情報処理装置の第１の例における機能提示時の処理の一例を示す図である。
【図１２】本発明の情報処理装置の第１の例における機能の提示例の一例を示す図である。
【図１３】本発明の情報処理装置の第２の例の構成を示す図である。
【図１４】本発明の情報処理装置の第２の例における提示設定テーブル内の提示フォーマットの一例を示す図である。
【図１５】本発明の情報処理装置の第２の例における提示データテーブルの一例を示す図である。
【図１６】本発明の情報処理装置の第２の例における提示データテーブル作成の処理の一例を示す図である。
【図１７】本発明の情報処理装置の第２の例における提示設定テーブル内のユーザ設定の一例を示す図である。
【図１８】本発明の情報処理装置の第２の例における提示設定テーブル内のユーザ設定の一例を示す図である。
【図１９】本発明の情報処理装置の第２の例における提示処理の一例を示す図である。
【図２０】本発明の情報処理装置の第２の例における機能提示の一例を示す図である。
【図２１】本発明の情報処理装置の第２の例における機能提示の一例を示す図である。
【図２２】本発明の情報処理装置の第３の例の構成を示す図である。
【図２３】本発明の情報処理装置の第３の例における提示データテーブル作成の処理の一例を示す図である。
【図２４】本発明の情報処理装置の第３の例におけるコード割当て決定処理の一例を示す。
【図２５】本発明の情報処理装置の第３の例におけるコード情報テーブルおよび提示データテーブルの一例を示す図である。
【図２６】本発明の情報処理装置の第３の例における機能提示の一例を示す図である。
【図２７】従来例の情報処理装置の例の構成を示す図である。
【符号の説明】
【０１８６】
０１…ユーザ情報テーブル、０２…コード情報テーブル、０３…機能情報テーブル、０４…提示設定テーブル、０４Ａ…ユーザ設定、０４Ｂ…提示フォーマット、０５…コード入力手段、０６…コード入力判断手段、０７…実行命令判断手段、０８…機能実行手段、０９…提示方法決定手段、１０…割当提示手段、１１…内部状態管理手段、１２…提示データテーブル、１３…テーブル変更手段、１４…割当変更手段
【図１】
2005165921.tif 000003
【図２】
2005165921.tif 000004
【図３】
2005165921.tif 000005
【図４】
2005165921.tif 000006
【図５】
2005165921.tif 000007
【図６】
2005165921.tif 000008
【図７】
2005165921.tif 000009
【図８】
2005165921.tif 000010
【図９】
2005165921.tif 000011
【図１０】
2005165921.tif 000012
【図１１】
2005165921.tif 000013
【図１２】
2005165921.tif 000014
【図１３】
2005165921.tif 000015
【図１４】
2005165921.tif 000016
【図１５】
2005165921.tif 000017
【図１６】
2005165921.tif 000018
【図１７】
2005165921.tif 000019
【図１８】
2005165921.tif 000020
【図１９】
2005165921.tif 000021
【図２０】
2005165921.tif 000022
【図２１】
2005165921.tif 000023
【図２２】
2005165921.tif 000024
【図２３】
2005165921.tif 000025
【図２４】
2005165921.tif 000026
【図２５】
2005165921.tif 000027
【図２６】
2005165921.tif 000028
【図２７】
2005165921.tif 000029