(57)【特許請求の範囲】
【請求項１】
複数の画面を操作パネルに表示する画像処理装置であって、
前記複数の画面の優先度を算出するための優先度算出情報を用いて前記画面の優先度を算出し、データテーブルに登録して管理する優先度管理手段と、
前記画面を前記操作パネルに描画する描画手段と、
前記描画手段が解読可能なプログラム言語および形式で記述された前記画面の内部表現データが保存されるキャッシュメモリ手段と、
前記キャッシュメモリ手段に保存すべき内部表現データを判定し、優先度の高い画面の内部表現データを優先的に前記キャッシュメモリ手段に保存する保存手段と
を含み、前記画像処理装置の機能を拡張するプラグインモジュールをインストールする場合、前記優先度管理手段は、前記プラグインモジュールが使用する画面の優先度算出情報を、前記画面に関連する画面の優先度算出情報を用いて算出する、画像処理装置。
【請求項２】
前記優先度算出情報は、優先度を算出すべき画面の利用回数および内部表現データの生成時間を含み、
前記優先度管理手段は、前記プラグインモジュールが使用する画面に関連する画面の利用回数を使用して優先度を算出する、請求項１に記載の画像処理装置。
【請求項３】
複数の画面を操作パネルに表示する画像処理装置が実行する方法であって、前記方法は、前記画像処理装置が、
前記複数の画面の優先度を算出するための優先度算出情報を用いて前記画像の優先度を算出するステップと、
前記画面を前記操作パネルに描画する描画手段が解読可能なプログラム言語および形式で記述された前記画面の内部表現データが保存されるキャッシュメモリ手段に保存すべき内部表現データを判定するステップと、
優先度の高い画面の内部表現データを優先的に前記キャッシュメモリ手段に保存するステップと
を含み、前記画像処理装置の機能を拡張するプラグインモジュールをインストールする場合、前記優先度を算出するステップは、前記プラグインモジュールが使用する画面の優先度算出情報を、前記画面に関連する画面の優先度算出情報を用いて算出する、方法。
【請求項４】
前記優先度算出情報は、優先度を算出すべき画面の利用回数および内部表現データの生成時間を含み、
前記優先度を算出するステップは、前記プラグインモジュールが使用する画面に関連する画面の利用回数を使用して優先度を算出する、請求項３に記載の方法。
【請求項５】
請求項３または４に記載の各ステップを画像処理装置が実行するためのコンピュータ実行可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面を表示する画像処理装置に関し、より詳細には、操作パネルの画面表示を高速化する画像処理装置、方法およびプログラムに関する。
【背景技術】
【０００２】
従来、Ｗｅｂページ等をブラウザで閲覧するＰＣなどの情報処理装置が広く利用されている。このような情報処理装置では、ユーザが指定したＷｅｂページを構成するファイルをＷｅｂサーバから取得して、ブラウザが表示可能な形式のデータに変換してディスプレイに表示する。
【０００３】
しかしながら、ユーザからの閲覧要求があったときに、その都度、Ｗｅｂサーバから閲覧対象のＷｅｂページの構成ファイルを取得し、解析および変換して表示すると、Ｗｅｂページをディスプレイに表示する時間が遅くなり、ユーザビリティが低下するという問題があった。
【０００４】
この点につき、特許文献１は、ブラウザによるＷｅｂページの表示処理を高速化する方法を開示する。この方法では、Ｗｅｂページを構成するファイルを解析し、その解析データをプログラムが可読な形式の内部表現データに変換してキャッシュメモリに保持する。そして、Ｗｅｂページの表示処理において、ユーザが要求するＷｅｂページの内部表現データがキャッシュメモリに保持されているか否か判断し、内部表現データがキャッシュメモリに保持されている場合には、当該内部表現データをキャッシュメモリから取得して表示することにより、Ｗｅｂページの表示処理を高速化する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１が開示する方法では、生成された内部表現データをキャッシュメモリに逐次保存するため、この方法を、キャッシュメモリの容量が制限されている画像処理装置などの組み込み系装置に採用した場合、キャッシュメモリ領域がフルの状態では、新たに生成した内部表現データを保持するためにスワップアウトが発生し、ユーザが閲覧要求する頻度の高い画像の内部表現データをキャッシュメモリからスワップアウトまたは削除する虞があり、表示すべき画像の内部表現データのヒット率が低くなるという問題がある。
【０００６】
このため、メモリの制限により内部表現データを削除する場合、その画面を表示する際に当該画像を構成するファイルを再度取得して解析および変換しなければならず、また、当該内部表現データをスワップアウトする場合には、その画面を表示する際に当該内部表現データをキャッシュメモリにスワップインさせなければならず、いずれの場合にも画面表示が遅延してしまうという問題があった。
【０００７】
本発明は、上記従来技術の問題に鑑みてなされたものであり、操作パネルに表示すべき画面の内部表現データを格納するキャッシュメモリの容量制限によって生じる画面表示の遅延を防止して、操作パネルの画面表示を高速化する画像処理装置、方法およびプログラムを提供することを目的とするものである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の画像処理装置は、画面の優先度を算出するための優先度算出情報を用いて画像の優先度を算出する。そして、画像処理装置は、描画手段が解読可能なプログラム言語および形式で記述された画面の内部表現データが保存されるキャッシュメモリに保存すべき内部表現データを判定し、優先度の高い画面の内部表現データを優先的に保存する。これにより、本発明の画像処理装置は、ユーザの閲覧頻度の高い画面の内部表現データのヒット率を向上させることができ、操作パネルの画面表示を高速化することができる。
【０００９】
さらに、本発明は、ユーザの閲覧頻度の高い画面の内部表現データのヒット率を向上させて操作パネルの画面表示を高速化する方法およびプログラムを提供する。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の画像処理装置の機能構成を示す図。
【図２】本発明が採用するパイプおよびフィルタアーキテクチャの概念図。
【図３】本実施形態の画像処理装置が実装するプラグインモジュールを示す図。
【図４】本実施形態の画像処理装置が実装するブラウザの機能構成を示す図。
【図５】本実施形態の画像処理装置がプラグインモジュールをインストールする場合のシーケンスを示す図。
【図６】本実施形態の画像処理装置が実行する操作パネルに表示すべき画面の内部表現データの生成処理を示すフローチャート。
【図７】本実施形態の画像処理装置が使用する優先度算出情報テーブルおよび優先度テーブルを示す図。
【図８】本実施形態の画像処理装置が使用する優先度テーブルの一実施形態を示す図。
【図９】本実施形態の画像処理装置が使用する優先度テーブルの別の実施形態を示す図。
【図１０】本実施形態の画像処理装置が使用する優先度テーブルを他の実施形態を示す図。
【図１１】本実施形態の画像処理装置が操作パネルに画面を表示する際に実行する処理を示すフローチャート。
【図１２】本実施形態の画像処理装置が使用する内部表現データおよび画面構成情報の一実施形態を示す図。
【図１３】本実施形態の画像処理装置の機能拡張を示す概念図。
【図１４】本実施形態の画像処理装置が実装するプラグインモジュールと、当該プラグインモジュールをインストールする画像処理装置との関係を示す図。
【発明を実施するための形態】
【００１１】
以下、本発明について実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。図１は、本実施形態の画像処理装置の機能構成を示す図である。以下、図１を参照して、画像処理装置１００が実装する機能構成について説明する。
【００１２】
画像処理装置１００は、原稿画像をスキャニングして生成した画像データを印刷してコピーし、画像データをローカルネットワーク等のネットワークを介して配信し、画像データをＦＡＸ送信するＭＦＰ（Multi-Function Peripheral）として構成される。
【００１３】
画像処理装置１００は、画像処理装置１００が実行する処理の全体制御を行うＣＰＵ等のプロセッサ、原稿画像のスキャニングや画像データの各種配信処理、画像データの印刷処理を実行するＡＳＩＣ（Application Specific Integrated Circuit）、キャッシュメモリ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスク装置（ＨＤＤ）、ネットワークＩ／Ｆ、操作パネルなどを含んで実装されており、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）などのＯＳの制御下で、アセンブラ、Ｃ、Ｃ＋＋、ＪＡＶＡ（登録商標）、ＪａｖａＳｃｒｉｐｔ（登録商標）などのプログラミング言語で記述された本実施形態のプログラムをＲＡＭに展開して実行し、後述する機能を当該画像処理装置上で実現する。
【００１４】
図１に示す画像処理装置１００は、ユーザインタフェース部１１０と、コントロール部１２０と、機能実現部１３０と、デバイスサービス部１５０と、デバイス制御部１６０とを含む。
【００１５】
ユーザインタフェース部１１０は、ユーザからの各種ジョブ（例えば、コピーや印刷、スキャン、ファックス、画面表示等）を受け付ける機能手段であり、ブラウザ１１１を含む。ブラウザ１１１は、操作パネルに種々の画面を表示する描画エンジンであり、当該画面に介してユーザが発行するジョブを受け付け、コントロール部１２０に通知する。
【００１６】
コントロール部１２０は、ユーザが発行したジョブを制御する機能手段であり、プラグイン管理部１２１と、リクエスト管理部１２２と、認証管理部１２３とを含む。
【００１７】
プラグイン管理部１２１は、画像処理装置１００の機能を拡張するプログラムモジュール（以下、「プラグインモジュール」とする。）を管理する機能手段である。具体的には、プラグイン管理部１２１は、インストールすべきプラグインモジュールを、当該プラグインモジュールが格納された記憶装置から取得してインストールすると共に、当該プラグインモジュールをインスタンス化する。このとき、プラグイン管理部１２１は、画像処理装置１００にインストールされたプラグインモジュールの識別情報と、当該プラグインモジュールのオブジェクトが格納されているメモリアドレスとを関連付けてプラグイン管理テーブルに登録する。
【００１８】
プラグイン管理部１２１は、後述するデータ管理部１５１が管理するプラグイン管理テーブルを参照し、画像処理装置１００にインストール可能なプラグインモジュールの一覧を生成する。また、プラグイン管理部１２１は、或るオブジェクトから別のオブジェクトの取得要求を受信すると、プラグイン管理テーブルを参照し、指定された別のオブジェクトのメモリアドレスを要求元のオブジェクトに提供することで、オブジェクト間の相互呼び出しを可能にする。
【００１９】
本実施形態では、インストールすべきプラグインモジュールが格納されている記憶装置として、ネットワークを介して接続された情報処理装置、ＵＳＢメモリやＳＤカード等のフラッシュメモリ、ＣＤ−ＲＯＭ等を使用することができる。
【００２０】
リクエスト管理部１２２は、ユーザが発行したジョブを機能実現部１３０に実行させる機能手段である。認証管理部１２３は、ユーザを認証する機能手段であり、操作パネルを介して入力されたユーザのアカウント名やパスワード等のユーザ識別情報によりユーザを認証する。
【００２１】
機能実現部１３０は、ユーザが発行したジョブを実行する機能手段であり、コピーアプリケーション１３１と、送信アプリケーション１３２と、ファックスアプリケーション１３３とを含む。
【００２２】
コピーアプリケーション１３１は、後述するスキャナ部１３４、加工部１３８および印刷部１４０を用いて、原稿をスキャンして印刷するコピー機能を実現するアプリケーションプログラムである。
【００２３】
送信アプリケーション１３２は、後述するスキャナ部１３４およびメール送信部１４２を用いて、原稿をスキャンして得られた原稿画像をメール送信するアプリケーションプログラムである。
【００２４】
ファックスアプリケーション１３３は、後述するスキャナ部１３４およびファックス送信部１４３を用いて、原稿をスキャンして得られた原稿画像をファックス送信するアプリケーションプログラムである。
【００２５】
また、機能実現部１３０は、スキャナ部１３４と、読出部１３５と、メール受信部１３６と、ファックス受信部１３７とを含む。本実施形態では、これらの機能手段は１のプラグインモジュールとして構成されており、当該機能手段以外の他の機能手段に依存することなくインストールおよびアンインストールが可能である。
【００２６】
スキャナ部１３４は、スキャナ装置を制御して原稿をスキャンして原稿画像を生成する機能手段である。読出部１３５は、画像処理装置１００のＨＤＤに格納されている画像データを読み出す機能手段である。メール受信部１３６は、外部からネットワークを介して電子メールを受信する機能手段である。ファックス受信部１３７は、外部からネットワークを介してファックスを受信する機能手段である。
【００２７】
さらに、機能実現部１３０は、加工部１３８と、変換部１３９とを含む。本実施形態では、これらの機能手段は１のプラグインモジュールとして構成されており、当該機能手段以外の他の機能手段に依存することなくインストールおよびアンインストールが可能である。
【００２８】
加工部１３８は、原稿画像等の入力画像データに対して、集約や拡大、縮小等の種々の画像変換処理を施す機能手段である。変換部１３９は、画像データのデータ形式を変換する機能手段であり、例えば、外部から受信したＰｏｓｔＳｃｒｉｐｔ形式の印刷データをＢｉｔｍａｐ形式のデータに変換する。
【００２９】
さらに、機能実現部１３０は、印刷部１４０と、登録部１４１と、メール送信部１４２と、ファックス送信部１４３とを含む。本実施形態では、これらの機能手段は１のプラグインモジュールとして構成されており、当該機能手段以外の他の機能手段に依存することなくインストールおよびアンインストールが可能である。
【００３０】
印刷部１４０は、加工部１３８が入力データをプロッタに印刷出力させる機能手段である。登録部１４１は、画像処理装置１００に入力した画像データやスキャンデータを画像処理装置１００のＨＤＤに保存する機能手段である。メール送信部１４２は、スキャンデータやＨＤＤに格納されている画像データをメール送信する機能手段である。ファックス送信部１４３は、スキャンデータやＨＤＤに格納されている画像データをファックス送信する機能手段である。
【００３１】
さらに、機能実現部１３０は、ユーザ情報管理部１４４と、画面構成情報提供部１４５とを含む。
【００３２】
ユーザ情報管理部１４４は、ユーザ識別情報等の認証情報を管理する機能手段であり、後述するデータ管理部１５１を用いて認証情報の参照や更新、削除、検索を行う。
【００３３】
画面構成情報提供部１４５は、画像処理装置１００にインストールされたプラグインモジュールの画面を構成する情報（以下、「画面構成情報」とする。）を提供する機能手段である。画面構成情報提供部１４５は、画像処理装置１００にプラグインモジュールがインストールされると、画面構成情報提供部１４５が管理する記憶装置に当該プラグインモジュールが使用する画面の画面構成情報を登録する。画面構成情報提供部１４５は、ブラウザ１１１からの画面構成情報の取得要求に応じて、要求されている画面構成情報を当該記憶装置から取得し、ブラウザ１１１に提供する。
【００３４】
デバイスサービス部１５０は、上述した機能手段が適宜呼び出し可能な機能手段であり、データ管理部１５１を含んで構成される。データ管理部１５１は、画像処理装置１００にプラグインモジュールを管理するデータテーブルであるプラグイン管理テーブルを管理する機能手段である。
【００３５】
プラグイン管理テーブルには、画像処理装置１００にインストール可能なプラグインモジュールの識別情報と、プラグインモジュールが登録されているか否かを示す情報と、当該プラグインモジュールをインスタンス化して生成されるオブジェクトの識別情報と、その格納先のメモリアドレスとが登録される。
【００３６】
データ管理部１５１は、新たなプラグインモジュールがインストールされるとプラグイン管理テーブルに当該プラグインモジュールの識別情報を登録し、プラグインモジュールがアンインストールされると、当該プラグインモジュールの識別情報をプラグイン管理テーブルから削除する。
【００３７】
プラグイン管理１２１がプラグインモジュール一覧を生成する場合、データ管理部１５１は、画像処理装置１００にインストール可能なプラグインモジュールの識別情報のうち、未だインストールされていないプラグインモジュールの識別情報をプラグイン管理１２１に提供する。
【００３８】
また、データ管理部１５１は、プラグインモジュールのインストール時に、プラグインモジュールをインスタンス化して生成されるオブジェクトの識別情報と、その格納先のメモリアドレスとを関連付けて登録する。データ管理部１５１は、プラグイン管理部１２１の要求により、これらの情報をプラグイン管理部１２１に提供する。
【００３９】
デバイス制御部１６０は、画像処理装置１００が備えるスキャナ装置やプロッタ等の装置を制御する手段である。
【００４０】
図２は、本発明が採用するパイプおよびフィルタアーキテクチャの概念図である。パイプおよびフィルタアーキテクチャでは、フィルタ２０１，２０３，２０５が入力データを変換し、パイプ２０２，２０４はフィルタが変換したデータを次のフィルタに提供する。
【００４１】
ここで、データの変換を入力、加工および出力として捉えると、図１に示す画像処理装置１００が実装する機能手段は、入力フィルタ、加工フィルタおよび出力フィルタに分類することができる。具体的には、スキャナ部１３４、読出部１３５、メール受信部１３６およびファックス受信部１３７は入力フィルタに該当し、加工部１３８および変換部１３９は加工フィルタに該当する。また、印刷部１４０、登録部１４１、メール送信部１４２およびファックス送信部１４３は出力フィルタに該当する。これらの各フィルタは、１のプラグインモジュールであり、独立して画像処理装置１００に追加および削除が可能である。
【００４２】
図３は、本実施形態の画像処理装置が実装するプラグインモジュールを示す図である。プラグインモジュール３００は、動作オブジェクト３１０と、画面構成情報３２０とを含んで構成される。
【００４３】
動作オブジェクト３１０は、動作中のプラグインモジュールにアクセスするためにメモリ領域上に形成されるクラスのインスタンス、すなわちオブジェクトである。動作オブジェクト３１０は、他のプラグインモジュールの動作オブジェクトからの要求を受けて処理を実行し、または、他のプラグインモジュールの動作オブジェクトに対して処理を依頼する。
【００４４】
例えば、プラグインモジュールであるスキャナ部１３４の動作オブジェクトは、他のプラグインモジュールであるコピーアプリケーション１３１の動作オブジェクトからスキャンの設定情報をパラメータとして受け取り、原稿のスキャンを実行する。スキャンが終了すると、スキャナ部１３４の動作オブジェクトは、コピーアプリケーション１３１の動作オブジェクトにスキャンデータを提供する。
【００４５】
画面構成情報３２０は、画面構造３２２と、画面デザイン３２４と、アイコン３２６と、制御プログラム３２８とを含んで構成される。
【００４６】
画面構造３２２は、ＧＵＩの構造を規定する情報である。画面デザイン３２４は、画面構造３２２が規定する画面構造に基づくＧＵＩの具体的なレイアウトおよびデザインを規定する情報である。アイコン３２６は、ＧＵＩに表示する画像データである。制御プログラム３２８は、ＧＵＩ上に動的に画像を表示し、またはボタン等の押下によってユーザの入力を受け付けてジョブを発行するなどの所定の処理を実行する。
【００４７】
図４は、本実施形態の画像処理装置が実装するブラウザの機能構成を示す図である。以下、図４を参照して、画像処理装置１００のブラウザ１１１について詳細に説明する。
【００４８】
ブラウザ１１１は、リクエスト要否判定部４０１と、リクエスト送信部４０２と、レスポンス受信部４０３とを含む。
【００４９】
リクエスト要否判定部４０１は、遷移先画面の画面構成情報を画面構成情報提供部１４５に要求する必要があるか否か判定する機能手段である。具体的には、リクエスト要否判定部４０１は、ユーザが操作パネルに表示されたＧＵＩを用いて指定する遷移先画面の内部表現データが、ＧＵＩの内部表現データを格納すべき記憶装置である内部表現データメモリ４１１に保持されているか否か判断する。
【００５０】
遷移先画面の内部表現データが内部表現データメモリ４１１に保持されている場合には、リクエスト要否判定部４０１は、遷移先画面の画面構成情報を画面構成情報提供部１４５に要求する必要がないと判断する。一方、遷移先画面の内部表現データが内部表現データメモリ４１１に保持されていない場合には、リクエスト要否判定部４０１は、遷移先画面の画面構成情報を画面構成情報提供部１４５に要求する必要があると判断する。
【００５１】
本実施形態では、内部表現データメモリ４１１は、画像処理装置１００のＣＰＵ等のプロセッサが高速にアクセス可能な不揮発性のキャッシュメモリであり、主記憶装置に比べてメモリ容量が制限されている。
【００５２】
リクエスト送信部４０２は、遷移先画面の画面構成情報を画面構成情報提供部１４５に要求する機能手段である。リクエスト送信部４０２は、遷移先画面の内部表現データが内部表現データメモリ４１１に保存されていない場合に、当該遷移先画面の画面構成情報を画面構成情報提供部１４５に要求する。
【００５３】
レスポンス受信部４０３は、画面構成情報提供部１４５からレスポンスを受信したか否か判断する機能手段である。レスポンス受信部４０３は、リクエスト送信部４０２が送信した遷移先画面の画面構成情報のリクエストに対するレスポンスを受信したか否か判断する。
【００５４】
また、ブラウザ１１１は、解析部４０４と、内部表現データ読出部４０５と、内部表現データ記憶部４０６とを含む。
【００５５】
解析部４０４は、画面構成情報を解析して変換する機能手段である。具体的には、解析部４０４は、ＸＭＬやＨＴＭＬ、ＸＨＴＭＬ等の構造化言語やＣＳＳ等のスタイルシート言語で記述された画面構成情報であるテキスト文書を構文解析および字句解析し、後述する描画部４０７が解読可能なプログラム言語および形式で記述された内部表現データを生成する。本実施形態では、解析部４０４として、ＸＭＬパーサやＨＴＭＬパーサ、ＸＨＴＭＬパーサ、ＣＳＳパーサ等の種々のパーサを採用することができる。
【００５６】
内部表現データ読出部４０５は、内部表現データメモリ４１１に保持された内部表現データを読み出す機能手段である。内部表現データ読出部４０５は、リクエスト要否判定部４０１が遷移先画面の内部表現データが内部表現データメモリ４１１に保持されていると判断した場合に、遷移先画面の内部表現データを内部表現データメモリ４１１から読み出す。
【００５７】
内部表現データ記憶部４０６は、操作パネルに表示される画面の内部表現データを内部表現データメモリ４１１に保存または削除する機能手段である。内部表現データ記憶部４０６は、他の機能手段から呼び出すことができ、指定された画面の内部表現データを、そのメタデータである当該画面の識別情報と共に内部表現データメモリ４１１に保存する。また、内部表現データ記憶部４０６は、指定された内部表現データを、その識別情報と共に内部表現データメモリ４１１から削除する。
【００５８】
さらに、ブラウザ１１１は、描画部４０７と、優先度管理部４０８と、保存判定部４０９と、計測部４１０とを含む。
【００５９】
描画部４０７は、画像処理装置１００の操作パネルに画面を描画する機能手段である。描画部４０７は、内部表現データ読出部４０５を介して内部表現データメモリ４１１から取得した内部表現データを解析して操作パネルに画面を描画する。本実施形態では、描画部４０７として、ＤＯＭ仕様で記述された内部表現データから画面を生成するＪａｖａ（登録商標）アプリケーションやＪａｖａ（登録商標）アプレット等のＪａｖａ（登録商標）プログラムや他の描画プログラムを採用することができる。
【００６０】
優先度管理部４０８は、操作パネルに表示される画面の使用頻度を示す優先度を管理する機能手段である。優先度管理部４０８は、操作パネルに表示される画面の優先度を算出するための情報（以下、「優先度算出情報」とする。）が登録される優先度算出情報テーブルと、画面の優先度が登録される優先度テーブルを管理する。
【００６１】
優先度管理部４０８は、プラグインモジュールのインストール時や画面表示時に優先度算出情報テーブルを更新し、これらの優先度算出情報を使用して優先度を算出し、優先度テーブルを更新する。優先度算出情報テーブルおよび優先度テーブルは、記憶装置４１２に保存される。
【００６２】
本実施形態では、記憶装置４１２は、画像処理装置１００のＣＰＵ等のプロセッサが高速にアクセス可能な不揮発性のキャッシュメモリとすることができる。他の実施形態では、記憶装置４１２を不揮発性のＲＡＭやＨＤＤで構成してもよい。
【００６３】
優先度管理部４０８は、以下の数式１を用いて、プラグインモジュールが使用する画面の優先度を算出することができる。
【００６４】
【数１】
0005803357.tif 000002
【００６５】
ここで、所定の係数は利用回数を重み付けする値であり、静的または動的に設定することができる。この値を調整することにより、利用回数の重要度を変更することができる。
【００６６】
優先度管理部４０８は、プラグインモジュールを新たにインストールする場合、既にインストールされているプラグインモジュールが使用する画面の利用回数を使用して、新たなプラグインモジュールが使用する画面の優先度を算出することができる。なお、新たなプラグインモジュールが使用する画面の優先度の算出方法については、図７を参照して詳細に説明する。
【００６７】
保存判定部４０９は、操作パネルに表示される画面の内部表現データを内部表現データメモリ４１１に保存すべきか否か判断する機能手段である。保存判定部４０９は、画面の優先度や内部表現データメモリ４１１の残量に基づいて、当該画面の内部表現データを内部表現データメモリ４１１に保存すべきか否か判断する。なお、内部表現データの保存の可否を判断する方法については、図６，８〜１１を参照して詳細に説明する。
【００６８】
計測部４１０は、内部表現データの生成時間を計測する手段である。計測部４１０は、Ｓ／ＷタイマーやＨ／Ｗタイマー等のタイマーを使用して、解析部４０４が画面構成情報から内部表現データを生成するまでの時間を計測する。
【００６９】
図５は、本実施形態の画像処理装置がプラグインモジュールをインストールする場合のシーケンスを示す図である。以下、図５を参照して、画像処理装置１００が実行するプラグインモジュールのインストール処理について説明する。
【００７０】
プラグインモジュールのインストール処理は、ユーザが画像処理装置１００の操作パネルを使用してプラグインモジュールのインストール画面の表示要求を発行することにより開始する。画像処理装置１００に実装されたブラウザ１１１は、インストール画面の表示要求を受け付けると、内部表現データメモリ４１１を検索してインストール画面の内部表現データが保持されているか否か判断する。インストール画面の内部表現データが内部表現データメモリ４１１に保持されている場合には、ブラウザ１１１は、内部表現データメモリ４１１からインストール画面の内部表現データを取得する。
【００７１】
次に、ブラウザ１１１は、プラグイン管理部１２１に対し、画像処理装置１００にインストール可能なプラグインモジュールの一覧を要求する。プラグイン管理部１２１は、データ管理部１５１に対して、インストール可能なプラグインモジュールの識別情報を要求する。データ管理部１５１は、プラグイン管理テーブルを参照して画像処理装置１００にインストール可能なプラグインモジュールを検索し、インストール可能なプラグインモジュールの識別情報をプラグイン管理部１２１に提供する。
【００７２】
プラグイン管理部１２１は、プラグインモジュールの識別情報を用いてインストール可能なプラグインモジュールの一覧を生成し、ブラウザ１１１に提供する。ブラウザ１１１は、当該プラグインモジュールの一覧を操作パネルに表示する。
【００７３】
ユーザが、操作パネルに表示されたプラグインモジュールの一覧からインストールすべきプラグインモジュールを選択してインストール要求を発行すると、ブラウザ１１１は、プラグイン管理部１２１に対して、当該プラグインモジュールのインストールを要求する。プラグイン管理部１２１は、プラグインモジュールが格納されている記憶装置からユーザが指定したプラグインモジュールを取得し、当該プラグインモジュールをインスタンス化してオブジェクトを生成する。プラグイン管理部１２１は、当該オブジェクトの識別情報と、その格納先のメモリアドレスとを、データ管理部１５１を介してプラグイン管理テーブルに登録する。
【００７４】
プラグインモジュールのインストールによって新たに生成されたオブジェクト５１２は、当該プラグインモジュールが有する画面構成情報を、画面構成情報提供部１４５に提供して登録する。画面構成情報が登録されると、オブジェクト５１２は、当該画面構成情報の内部表現データの生成要求と共に、当該画面構成情報をプラグイン管理部１２１に送信する。プラグイン管理部１２１は、ブラウザ１１１に内部表現データの生成要求および当該画面構成情報を送信して内部表現データを生成させる。
【００７５】
図６は、本実施形態の画像処理装置が実行する操作パネルに表示すべき画面の内部表現データの生成処理を示すフローチャートである。以下、図６を参照して内部表現データの生成処理について説明する。
【００７６】
図６の処理は、画像処理装置１００に実装されたブラウザ１１１が、プラグイン管理部１２１から内部表現データの生成要求を受信することによりステップＳ６００から開始する。ステップＳ６０１では、ブラウザ１１１の解析部４０４が、内部表現データの生成要求と共に受信した画面構成情報を解析し、内部表現データを生成する。ステップＳ６０２では、計測部４１０が内部表現データの生成時間を計測する。
【００７７】
ステップＳ６０３では、保存判定部４０９が、新たに生成した内部表現データを保存する容量が内部表現データメモリ４１１に有るか否か判断する。内部表現データを保存する容量が有ると判断した場合には（ｙｅｓ）、処理をステップＳ６１０に分岐する。一方、内部表現データを保存する容量が無いと判断した場合には（ｎｏ）、処理をステップＳ６０４に分岐する。
【００７８】
ステップＳ６０４では、優先度管理部４０８は、優先度算出情報テーブルを参照し、これに登録されている総ての優先度算出情報を読み出す。ステップＳ６０５では、優先度管理部４０８は、当該優先度算出情報を使用して、内部表現データメモリに保持されている内部表現データの優先度を算出し、優先度テーブルを更新する。ステップＳ６０６では、優先度管理部４０８は、ステップＳ６０１で新たに生成した内部表現データの優先度を算出する。
【００７９】
ステップＳ６０７では、保存判定部４０９は、新たに生成した内部表現データの優先度と、優先度テーブルに登録された内部表現データの優先度とを比較し、新たに生成した内部表現データよりも優先度の低い内部表現データが存在するか否か判断する。新たに生成した内部表現データよりも優先度の低い内部表現データが存在しない場合には（ｎｏ）、処理をステップＳ６１２に分岐して終了する。一方、新たに生成した内部表現データよりも優先度の低い内部表現データが存在する場合には（ｙｅｓ）、処理をステップＳ６０８に分岐する。
【００８０】
ステップＳ６０８では、保存判定部４０９は、優先度テーブルを参照して、新たに生成された内部表現データと置換すべき内部表現データを特定する。ステップＳ６０９では、内部表現データ記憶部４０６が、内部表現データメモリ４１１から当該置換すべき内部表現データを削除する。
【００８１】
ステップＳ６１０では、内部表現データ記憶部４０６は、新たに生成した内部表現データを内部表現データメモリ４１１に保存する。ステップＳ６１１では、優先度管理部４０８は、優先度算出情報テーブルおよび優先度テーブルを更新し、ステップＳ６１２で処理が終了する。具体的には、優先度管理部４０８は、新たに生成された内部表現データの優先度算出情報および優先度を優先度算出情報テーブルおよび優先度テーブルに登録すると共に、削除された内部表現データの優先度を優先度テーブルから削除する。
【００８２】
図７は、本実施形態の画像処理装置が使用する優先度算出情報テーブルおよび優先度テーブルを示す図である。以下、図７を参照して、優先度算出情報テーブル７１０および優先度テーブル７２０と、新たにインストールするプラグインモジュールが使用する画面の優先度の算出方法とについて説明する。
【００８３】
優先度算出情報テーブル７１０は、画像処理装置１００にインストールされているプラグインモジュールが使用する画面の優先度算出情報を登録するデータテーブルである。優先度算出情報テーブル７１０には、プラグイン名７１１と、画面ＩＤ７１２と、上位画面ＩＤ７１３と、生成時間７１４と、利用回数７１５と、データサイズ７１６とが関連付けて登録される。
【００８４】
プラグイン名７１１は、画像処理装置１００にインストールされているプラグインモジュールの識別情報である。プラグイン名７１１は、プラグインモジュールのインストール時に登録される。図７に示す実施形態では、プラグイン名として「コピーアプリケーション」および「送信アプリケーション」が登録されているが、プラグインモジュールを固有に識別できる限り、如何なる文字や数字、記号、これらの組み合わせを用いてもよい。
【００８５】
画面ＩＤ７１２は、プラグイン名７１１に示すプラグインモジュールが使用する画面の識別情報である。画面ＩＤ７１２は、プラグインモジュールのインストール時に登録される。図７に示す実施形態では、プラグインモジュールである「コピーアプリケーション」が使用する画面の画面ＩＤとして、「ＣＯＰＹ＿ＴＯＰ」や「ＣＯＰＹ＿ＣＯＶＥＲ」、「ＣＯＰＹ＿ＭＡＧＮＩＦＩＣＡＴＩＯＮ」等の識別情報が登録されている。また、「送信アプリケーション」が使用する画面の画面ＩＤとして、「ＳＥＮＤ＿ＴＯＰ」や「ＳＥＮＤ＿ＡＤＤＲＥＳＳ」、「ＳＥＮＤ＿ＳＣＡＮ＿ＳＥＴＴＩＮＧ」等の識別情報が登録されている。
【００８６】
上位画面ＩＤ７１３は、画面ＩＤ７１２に登録された画面ＩＤが示す画面が従属する上位画面の識別情報である。上位画面ＩＤ７１３は、プラグインモジュールのインストール時に登録される。図７に示す実施形態では、画面ＩＤ「ＳＥＮＤ＿ＳＣＡＮ＿ＲＥＳＯＬＵＴＩＯＮ」および「ＳＥＮＤ＿ＳＣＡＮ＿ＳＩＺＥ」が示す画面の上位画面が、画面ＩＤ「ＳＥＮＤ＿ＳＣＡＮ＿ＳＥＴＴＩＮＧ」が示す画面であることを表している。
【００８７】
生成時間７１４は、画面ＩＤ７１２に登録された画面ＩＤが示す画面の内部表現データの生成時間である。内部表現データの生成時間は、プラグインモジュールのインストール時に計測され、生成時間７１４に登録される。
【００８８】
利用回数７１５は、画面ＩＤが示す画面の利用回数である。利用回数は、当該画面が表示される度に更新される。
【００８９】
データサイズ７１６は、画面ＩＤが示す画面の内部表現データのデータサイズである。プラグインモジュールをインストールする際に登録される。
【００９０】
優先度テーブル７２０は、画像処理装置１００の内部表現データメモリ４１１に保持されている内部表現データを用いて描画される画面の優先度を登録するデータテーブルである。優先度テーブル７２０には、プラグイン名７２１と、画面ＩＤ７２２と、優先度７２３と、データサイズ７２４とが登録される。
【００９１】
プラグイン名７２１は、画像処理装置１００にインストールされているプラグインモジュールのうち、内部表現データメモリ４１１に保持されている内部表現データを用いて描画される画面を使用するプラグインモジュールの識別情報である。画面ＩＤ７２２は、プラグイン名７２１が示すプラグインモジュールが使用する画面の識別情報である。優先度７２３は、画面ＩＤ７２２が示す画面の優先度である。データサイズ７２４は、画面ＩＤ７２２が示す画面の内部表現データのデータサイズである。
【００９２】
本実施形態では、新たにインストールするプラグインモジュールが使用する画面（以下、「新規画面」とする。）の優先度は、当該画面に関連する画面の利用回数を用いて算出することができる。具体的には、優先度管理部４０８は、新規画面を使用するプラグインモジュールが使用する他の画面の利用回数の平均値を、当該新規画面の利用回数として使用して、上述した数式１により、新規画面の優先度を算出することができる。
【００９３】
例えば、画面ＩＤ「ＳＥＮＤ＿ＳＣＡＮ＿ＲＥＳＯＬＵＴＩＯＮ」および「ＳＥＮＤ＿ＳＣＡＮ＿ＳＩＺＥ」が示す画面を新規画面と仮定すると、これらの新規画面の優先度は、当該新規画面を使用するプラグインモジュール「送信アプリケーション」が使用する他の画面「ＳＥＮＤ＿ＴＯＰ」、「ＳＥＮＤ＿ＡＤＤＲＥＳＳ」、「ＳＥＮＤ＿ＳＣＡＮ＿ＳＥＴＴＩＮＧ」の利用回数を用いて算出することができる。
【００９４】
また、優先度管理部４０８は、新規画面の上位画面の利用回数を当該新規画面の利用回数として使用して、新規画面の優先度を算出することもできる。例えば、上述した例では、画面ＩＤ「ＳＥＮＤ＿ＳＣＡＮ＿ＲＥＳＯＬＵＴＩＯＮ」および「ＳＥＮＤ＿ＳＣＡＮ＿ＳＩＺＥ」の上位画面である「ＳＥＮＤ＿ＳＣＡＮ＿ＳＥＴＴＩＮＧ」の利用回数を用いて、これらの新規画面の優先度を算出することができる。
【００９５】
図８〜１０は、本実施形態の画像処理装置が使用する優先度テーブルを示す。以下、図８〜１０を参照し、本実施形態の画像処理装置が置換すべき内部表現データを特定する方法を説明する。
【００９６】
図８に示す優先度テーブル８１０は、更新前の優先度テーブルであり、優先度テーブル８２０は、更新後の優先度テーブルである。画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」が示す画面の内部表現データを内部表現データメモリ４１１に保存する場合、ブラウザ１１１の保存判定部４０９は、優先度テーブル８１０を優先度順にソートする。そして、保存判定部４０９は、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」が示す画面の優先度「２８９」よりも優先度が低く、かつ、当該画面の内部表現データのデータサイズ「２００」よりもデータサイズの大きい画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」）を抽出する。保存判定部４０９は、当該画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」）が示す画面の内部表現データを、置換すべき内部表現データと特定する。
【００９７】
更新後の優先度テーブル８２０には、画面ＩＤ「ＣＯＰＹ＿ＣＯＶＥＲ」の代わりに、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」に関連する優先度およびデータサイズが登録される。
【００９８】
図９に示す優先度テーブル９１０は、更新前の優先度テーブルであり、優先度テーブル９２０は、更新後の優先度テーブルである。図８を参照して説明した方法と同様に、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」が示す画面の内部表現データを内部表現データメモリ４１１に保存する場合、ブラウザ１１１の保存判定部４０９は、優先度テーブル９１０を優先度順にソートする。そして、保存判定部４０９は、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」が示す画面の優先度「２８９」よりも優先度が低く、かつ、当該画面の内部表現データのデータサイズ「１６０」よりもデータサイズの大きい画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）を抽出する。
【００９９】
さらに、保存判定部４０９は、抽出した画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）の優先度「２７６」が、当該画面ＩＤよりも優先度の低い画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」および「ＣＯＰＹ＿ＥＤＩＴ」）の優先度の合計値「４５３」とを比較する。これらの画像ＩＤの優先度の合計値「４５３」が、抽出した画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）の優先度「２７６」よりも大きい場合には、保存判定部４０９は、当該抽出した画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）が示す画面の内部表現データを、置換すべき内部表現データと特定する。
【０１００】
更新後の優先度テーブル９２０には、画面ＩＤ「ＣＯＰＹ＿ＤＵＰＬＥＸ」の代わりに、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」に関連する優先度およびデータサイズが登録される。
【０１０１】
図１０に示す優先度テーブル１０１０は、更新前の優先度テーブルであり、優先度テーブル１０２０は、更新後の優先度テーブルである。図９を参照して説明した方法と同様に、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」が示す画面の内部表現データを内部表現データメモリ４１１に保存する場合、ブラウザ１１１の保存判定部４０９は、優先度テーブル１０１０を優先度順にソートする。そして、保存判定部４０９は、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」が示す画面の優先度「２８９」よりも優先度が低く、かつ、当該画面の内部表現データのデータサイズ「１６０」よりもデータサイズの大きい画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）を抽出する。
【０１０２】
さらに、保存判定部４０９は、抽出した画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）の優先度「２７６」が、当該画面ＩＤよりも優先度の低い画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」および「ＣＯＰＹ＿ＥＤＩＴ」）の優先度の合計値「２１８」とを比較する。これらの画像ＩＤの優先度の合計値「２１８」が、抽出した画面ＩＤ（「ＣＯＰＹ＿ＤＵＰＬＥＸ」）の優先度「２７６」よりも小さい場合には、保存判定部４０９は、これらの画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」および「ＣＯＰＹ＿ＥＤＩＴ」）のデータサイズの合計値「１７０」と、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」のデータサイズ「１６０」とを比較する。
【０１０３】
そして、画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」および「ＣＯＰＹ＿ＥＤＩＴ」）のデータサイズの合計値「１７０」が、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」のデータサイズ「１６０」よりも大きい場合には、画面ＩＤ（「ＣＯＰＹ＿ＣＯＶＥＲ」および「ＣＯＰＹ＿ＥＤＩＴ」）が示す画面の内部表現データを、置換すべき内部表現データと特定する。
【０１０４】
更新後の優先度テーブル１０２０には、画面ＩＤ「ＣＯＰＹ＿ＣＯＶＥＲ」および「ＣＯＰＹ＿ＥＤＩＴ」の代わりに、画面ＩＤ「ＮＥＷ＿ＣＯＮＴＥＮＴＳ」に関連する優先度およびデータサイズが登録される。
【０１０５】
図１１は、本実施形態の画像処理装置が操作パネルに画面を表示する際に実行する処理を示すフローチャートである。以下、図１１を参照して、画面の表示処理について説明する。
【０１０６】
図１１の処理は、画像処理装置１００のブラウザ１１１が、ユーザが操作パネルを使用して発行した画面の表示要求を受信することにより、ステップＳ１１００から開始する。ステップＳ１１０１では、リクエスト要否判定部４０１は、表示要求と共に受信した画面ＩＤが示す遷移先画面の内部表現データが、内部表現データメモリ４１１に保持されているか否か判断する。
【０１０７】
遷移先画面の内部表現データが内部表現データメモリ４１１に保持されている場合には（ｙｅｓ）、処理をステップＳ１１０２に分岐する。ステップＳ１１０２では、描画部４０７が、遷移先画面の内部表現データを解析し、画像処理装置１００の操作パネルに遷移先画面を表示する。ステップＳ１１０３では、優先度管理部４０８は、遷移先画面の利用回数をインクリメントして優先度算出情報テーブルを更新し、ステップＳ１１１７で処理が終了する。
【０１０８】
一方、ステップＳ１１０１で遷移先画面の内部表現データが内部表現データメモリ４１１に保持されていないと判断した場合には（ｎｏ）、ステップＳ１１０４でリクエスト送信部４０２が、画面構成情報提供部１４５に遷移先画面の画面構成情報を要求する。ステップＳ１１０５では、レスポンス受信部４０３が、画面構成情報提供部１４５から遷移先画面の画面構成情報を受信したか否か判断し、受信していない場合には（ｎｏ）、当該処理を反復する。一方、遷移先画面の画面構成情報を受信した場合には（ｙｅｓ）、処理をステップＳ１１０６に分岐する。
【０１０９】
ステップＳ１１０６では、解析部４０４が、遷移先画面の画面構成情報を解析して内部表現データを生成する。ステップＳ１１０７では、描画部４０７が、遷移先画面の内部表現データを解析して、操作パネルに遷移先画面を表示する。
【０１１０】
ステップＳ１１０８では、保存判定部４０９が、内部表現データメモリ４１１に遷移先画面の内部表現データを保存する容量があるか否か判断する。遷移先画面の内部表現データを保存する容量がある場合には（ｙｅｓ）、処理をステップＳ１１１５に分岐する。一方、遷移先画面の内部表現データを保存する容量が無い場合には（ｎｏ）、処理をステップＳ１１０９に分岐する。
【０１１１】
ステップＳ１１０９では、優先度管理部４０８が、優先度算出情報テーブルに登録されている総ての優先度算出情報を読み出す。ステップＳ１１１０では、優先度管理部４０８は、優先度算出情報を使用して、内部表現データメモリ４１１に保持されている内部表現データの優先度を算出し、優先度テーブルを更新する。ステップＳ１１１１では、優先度管理部４０８は、優先度算出情報テーブルを参照し、遷移先画面の優先度算出情報を用いて遷移先画面の内部表現データの優先度を算出する。
【０１１２】
ステップＳ１１１２では、保存判定部４０９は、優先度テーブルを参照し、遷移先画面よりも優先度の低い画面が存在するか否か判断する。遷移先画面よりも優先度の低い画面が存在しない場合には（ｎｏ）、処理をステップＳ１１１７に分岐して終了する。一方、遷移先画面よりも優先度の低い画面が存在する場合には（ｙｅｓ）、処理をステップＳ１１１３に分岐する。
【０１１３】
ステップＳ１１１３では、保存判定部４０９は、優先度テーブルを参照して、新たに生成された遷移先画面の内部表現データと置換すべき内部表現データを特定する。ステップＳ１１１４では、内部表現データ記憶部４０６が、内部表現データメモリ４１１から当該置換すべき内部表現データを削除する。ステップＳ１１１５では、内部表現データ記憶部４０６は、新たに生成した遷移先画面の内部表現データを内部表現データメモリ４１１に保存する。
【０１１４】
ステップＳ１１１６では、優先度管理部４０８は、優先度算出情報テーブルおよび優先度テーブルを更新し、ステップＳ１１１７で処理が終了する。具体的には、優先度管理部４０８は、新たに生成された遷移先画面の内部表現データの優先度算出情報である遷移先画面の利用回数を更新し、遷移先画面の優先度を登録する。また、優先度管理部４０８は、内部表現データメモリ４１１から削除された内部表現データの優先度を優先度テーブルから削除する。
【０１１５】
図１２は、本実施形態の画像処理装置が使用する内部表現データおよび画面構成情報の一実施形態を示す図である。以下、図１２を参照して内部表現データおよび画面構成情報について説明する。
【０１１６】
内部表現データメモリ４１１には、画面ＩＤ１２１２と、内部表現データ１２１４とが保存される。画面ＩＤ１２１２は、内部表現データ１２１４によって描画される画面ＩＤであり、内部表現データ１２１４のメタデータとして保存される。内部表現データ１２１４は、内部表現データを格納したファイル名であり、当該ファイルに内部表現データが含まれている。
【０１１７】
画像処理装置１００の操作パネルに画面を表示する場合、ブラウザ１１１は、ユーザが選択した遷移先画面の画面ＩＤを、内部表現データメモリ４１１で使用する形式の画面ＩＤに変換し、対象となる遷移先画面の内部表現データ１２１４を取得することができる。例えば、画面ＩＤ「ＣＯＰＹ＿ＴＯＰ」の遷移先画面の表示が要求された場合、ブラウザ１１１は、画面ＩＤ「ＣＯＰＹ＿ＴＯＰ」を「／ｃｏｐｙ／ｔｏｐ．ｈｔｍｌ」に変換し、内部表現データメモリ４１１からメタデータが「／ｃｏｐｙ／ｔｏｐ．ｈｔｍｌ」である内部表現データ「Ｃｏｐｙ＿ｔｏｐ．ｄａｔ」を読み出すことができる。
【０１１８】
また、置換すべき内部表現データを内部表現データメモリ４１１から削除する場合、ブラウザ１１１は、置換すべき内部表現データによって描画される画面の画面ＩＤを内部表現データメモリ４１１の形式に変換し、該当する内部表現データを削除することができる。さらに、新たに生成した内部表現データを内部表現データメモリ４１１に保存する場合、ブラウザ１１１は、予め規定されている当該内部表現データの画面ＩＤを内部表現データメモリ４１１の形式に変換し、その内部表現データと共に保存する。
【０１１９】
他の実施形態では、内部表現データメモリ４１１に登録する画面ＩＤとして、優先度算出情報テーブルや優先度テーブルに登録される画面ＩＤと共通の画面ＩＤを使用してもよい。
【０１２０】
テキストデータ１２２０は、画像処理装置１００が処理する画面構成情報に含まれる画面構造を規定するテキストデータの一実施形態である。ツリー構造１２３０は、テキストデータ１２２０を用いて生成される内部表現データのツリー構造をＤＯＭ仕様に基づいて表したものである。画像処理装置１００のブラウザ１１１は、このようなテキストデータ１２２０をパースして内部表現データを生成する。
【０１２１】
図１３は、本実施形態の画像処理装置の機能拡張を示す概念図である。本実施形態では、画像処理装置１００が有する基本機能を提供する基本プログラムであるフレームワークに対して、複数のプラグインモジュールを追加することができる。さらに、これらのプラグインモジュールには、当該プラグインモジュールの機能を拡張するプラグインモジュールを追加することができる。これにより、将来的に変更や拡張が予測される機能については、予めフレームワークや拡張対象のプラグインモジュールと切り離して設計することができ、すなわち、拡張すべき機能に特化したプラグインモジュールのみを開発することができ、開発工数等を軽減することができる。
【０１２２】
図１４は、本実施形態の画像処理装置が実装するプラグインモジュールと、当該プラグインモジュールをインストールする画像処理装置との関係を示す図である。
【０１２３】
画像処理装置１４２０，１４３０，１４４０には、それぞれ異なる描画エンジンが搭載されている。画像処理装置１４２０には、汎用的な描画エンジンが搭載されており、画像処理装置１４３０，１４４０には、それぞれ独自の描画エンジンが搭載されている。また、画像処理装置１４２０，１４３０，１４４０は、各描画エンジンが描画可能な形式の内部表現データを生成する内部表現データ生成部を備えている。プラグインモジュール１４１０に含まれる画像構成情報は、これらの描画エンジンが処理可能な形式の情報であり、これにより、画像処理装置１４２０，１４３０，１４４０が、共通のプラグインモジュールを利用することができる。
【０１２４】
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の構成要素の追加や、本実施形態の構成要素の変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【０１２５】
１００…画像処理装置、１１０…ユーザインタフェース部、１１１…ブラウザ、１２０…コントロール部、１２１…プラグイン管理部、１２２…リクエスト管理部、１２３…認証管理部、１３０…機能実現部、１３１…コピーアプリケーション、１３２…送信アプリケーション、１３３…ファックスアプリケーション、１３４…スキャナ部、１３５…読出部、１３６…メール受信部、１３７…ファックス受信部、１３８…加工部、１３９…変換部、１４０…印刷部、１４１…登録部、１４２…メール送信部、１４３…ファックス送信部、１４４…ユーザ情報管理部、１４５…画面構成情報提供部、１５０…デバイスサービス部、１５１…データ管理部、１６０…デバイス制御部
【先行技術文献】
【特許文献】
【０１２６】
【特許文献１】特開２００９−１８７４６５号公報
【図１】
0005803357.tif 000003
【図２】
0005803357.tif 000004
【図３】
0005803357.tif 000005
【図４】
0005803357.tif 000006
【図５】
0005803357.tif 000007
【図６】
0005803357.tif 000008
【図７】
0005803357.tif 000009
【図８】
0005803357.tif 000010
【図９】
0005803357.tif 000011
【図１０】
0005803357.tif 000012
【図１１】
0005803357.tif 000013
【図１２】
0005803357.tif 000014
【図１３】
0005803357.tif 000015
【図１４】
0005803357.tif 000016