(57)【要約】【課題】画像処理装置のオペレーションパネルに表示されるＵＩを画像処理装置以外の装置で容易にエミュレートできるＵＩエミュレート装置及びＵＩエミュレートプログラムを提供することを目的とする。【解決手段】画像処理装置のオペレーションパネルに表示されるＵＩをエミュレートするＵＩエミュレート装置２００であって、エミュレートの対象となる対象プログラム２１１を含み、対象プログラム２１１を擬似的に再現する実行手段２１０と、画像処理装置上で対象プログラム２１１からの関数呼び出しに応じてオペレーティングシステムにオペレーションパネルへの描画を行わせるオペレーションパネル制御部のエミュレート手段２２５とを有し、エミュレート手段２２５はオペレーションパネル制御部の機能を再現する機能再現部とエミュレートを支援するエミュレート支援部とを有することにより上記課題を解決する。【選択図】図３
2009223577.tif 000002
【特許請求の範囲】
【請求項１】
オペレーションパネルを備えた画像処理装置の前記オペレーションパネルに表示されるユーザインタフェース（ＵＩ）をエミュレートするユーザインタフェースエミュレート装置であって、
エミュレートの対象となる対象プログラムを含み、前記対象プログラムを擬似的に再現する実行手段と、
前記画像処理装置上で前記対象プログラムからの関数呼び出しに応じてオペレーティングシステムに前記オペレーションパネルへの描画を行わせるオペレーションパネル制御部のエミュレート手段と
を有し、前記エミュレート手段は前記オペレーションパネル制御部の機能を再現する機能再現部とエミュレートを支援するエミュレート支援部とを有することを特徴とするユーザインタフェースエミュレート装置。
【請求項２】
前記エミュレート手段は、前記オペレーションパネル制御部の機能と異なるように前記機能を再現する機能制限再現部を更に有することを特徴とする請求項１記載のユーザインタフェースエミュレート装置。
【請求項３】
前記エミュレート手段は、モジュール化されている前記画像処理装置の機種毎に異なる機種依存部分を読み出して利用することを特徴とする請求項１又は２記載のユーザインタフェースエミュレート装置。
【請求項４】
前記エミュレート手段は、前記画像処理装置の各種状態が記述された状態情報を読み出して利用することを特徴とする請求項１乃至３何れか一項記載のユーザインタフェースエミュレート装置。
【請求項５】
前記状態情報は画面上で編集可能であることを特徴とする請求項１乃至４何れか一項記載のユーザインタフェースエミュレート装置。
【請求項６】
オペレーションパネルを備えた画像処理装置の前記オペレーションパネルに表示されるユーザインタフェース（ＵＩ）をエミュレートするユーザインタフェースエミュレート装置を、
エミュレートの対象となる対象プログラムを含み、前記対象プログラムを擬似的に再現する実行手段と、
前記画像処理装置上で前記対象プログラムからの関数呼び出しに応じてオペレーティングシステムに前記オペレーションパネルへの描画を行わせるオペレーションパネル制御部のエミュレート手段として機能させ、
前記エミュレート手段は、前記オペレーションパネル制御部の機能を再現する機能再現部と、エミュレートを支援するエミュレート支援部として機能させるためのユーザインタフェースエミュレートプログラム。
【請求項７】
前記エミュレート手段は、前記オペレーションパネル制御部の機能と異なるように前記機能を再現する機能制限再現部を更に有することを特徴とする請求項６記載のユーザインタフェースエミュレートプログラム。
【請求項８】
前記エミュレート手段は、モジュール化されている前記画像処理装置の機種毎に異なる機種依存部分を読み出して利用することを特徴とする請求項６又は７記載のユーザインタフェースエミュレートプログラム。
【請求項９】
前記エミュレート手段は、前記画像処理装置の各種状態が記述された状態情報を読み出して利用することを特徴とする請求項６乃至８何れか一項記載のユーザインタフェースエミュレートプログラム。
【請求項１０】
前記状態情報は画面上で編集可能であることを特徴とする請求項６乃至９何れか一項記載のユーザインタフェースエミュレートプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザインタフェース（以下、単にＵＩという）エミュレート装置及びＵＩエミュレートプログラムに係り、特に画像処理装置が備えるオペレーションパネルに表示されるＵＩをエミュレートするＵＩエミュレート装置及びＵＩエミュレートプログラムに関する。
【背景技術】
【０００２】
近年、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を１つの筐体内に収納した画像形成装置（以下、複合機という。）が一般的に知られるようになった。複合機は１つの筐体内にオペレーションパネル、印刷（プロッタ）部、撮像部（スキャナ）等を設けるとともに、プリンタ、コピー、ファクシミリ、スキャナなどの各装置にそれぞれ対応する３種類のソフトウェアを設け、ソフトウェアの切り替えによって、プリンタ、コピー、ファクシミリ、スキャナなどの各装置として動作させるものである。
【０００３】
複合機はオペレーションパネルの表示部に表示した各種キー(オブジェクト）を操作者が押下することにより、プリンタ、コピー、ファクシミリ、スキャナ等のユーザサービスを操作者のキー操作に応じて提供するようになっている。このため、複合機の開発段階においては、操作者のキー操作に応じた動作が正常に機能するか否かのデバッグ作業が重要な位置づけを帯びてくる。
【０００４】
従来の複合機には操作者のオペレーションパネルからのキー操作による動作をデバッグするものがあった（例えば特許文献１参照）。
【特許文献１】特開２００３−２１６３１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の複合機におけるデバック作業はデバックの対象となるプログラムを複合機に組み込んで行う必要があり、複合機が必要となるという問題があった。
【０００６】
本発明は、上記の点に鑑みなされたもので、画像処理装置のオペレーションパネルに表示されるＵＩを画像処理装置以外の装置で容易にエミュレートできるＵＩエミュレート装置及びＵＩエミュレートプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するため、本発明は、オペレーションパネルを備えた画像処理装置の前記オペレーションパネルに表示されるユーザインタフェース（ＵＩ）をエミュレートするユーザインタフェースエミュレート装置であって、エミュレートの対象となる対象プログラムを含み、前記対象プログラムを擬似的に再現する実行手段と、前記画像処理装置上で前記対象プログラムからの関数呼び出しに応じてオペレーティングシステムに前記オペレーションパネルへの描画を行わせるオペレーションパネル制御部のエミュレート手段とを有し、前記エミュレート手段は前記オペレーションパネル制御部の機能を再現する機能再現部とエミュレートを支援するエミュレート支援部とを有することを特徴とする。
【０００８】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によれば、画像処理装置のオペレーションパネルに表示されるＵＩを画像処理装置以外の装置で容易にエミュレートできるＵＩエミュレート装置及びＵＩエミュレートプログラムを提供可能である。
【発明を実施するための最良の形態】
【００１０】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。本実施例では図１及び図２に示すような構成の複合機を画像処理装置の一例として説明するが、他の構成の画像処理装置であってもよい。
【００１１】
図１は複合機の一実施例の構成図を示す。複合機１は、プロッタ１１，スキャナ１２，ファクシミリなどのハードウェアリソース１３，ソフトウェア群２０，起動部５０を有する。ソフトウェア群２０は、アプリケーション３０，プラットフォーム４０を有する。
【００１２】
起動部５０は、複合機１の電源投入時に最初に実行され、アプリケーション３０及びプラットフォーム４０を起動するものである。例えば起動部５０は、アプリケーション３０及びプラットフォーム４０のプログラムをＨＤＤ（ハードディスクドライブ）から読み出し、読み出した各プログラムをメモリ領域に転送して起動するものである。図１のアプリケーション３０は、プリンタアプリ３１，コピーアプリ３２，ファックスアプリ３３，スキャナアプリ３４を有している。
【００１３】
プラットフォーム４０はアプリケーション３０からの処理要求を解釈してハードウェア資源の獲得要求を発生するコントロールサービス，１つ以上のハードウェア資源の管理を行ってコントロールサービスからの獲得要求を調停するシステムリソースマネージャ（以下、ＳＲＭという）４３，オペレーティングシステム（ＯＳ）４１を有するように構成されている。図１のコントロールサービスは、システムコントロールサービス（以下、ＳＣＳという）４２，エンジンコントロールサービス（以下、ＥＣＳという）４４，メモリコントロールサービス（以下、ＭＣＳという）４５，オペレーションパネルコントロールサービス（以下、ＯＣＳという）４６，ファックスコントロールサービス（以下、ＦＣＳという）４７，ネットワークコントロールサービス（以下、ＮＣＳという）４８等のサービスモジュールを有するように構成されている。
【００１４】
なお、プラットフォーム４０は予め定義されている関数によりアプリケーション３０からの処理要求を受信可能とするアプリケーションプログラムインターフェース（以下、ＡＰＩという）を有するように構成されている。ＯＳ４１は、ＵＮＩＸ（登録商標）等であり、アプリケーション３０およびプラットフォーム４０の各ソフトウェアをプロセスとして並列実行する。
【００１５】
ＳＲＭ４３のプロセスは、ＳＣＳ４２と共にシステムの制御およびリソースの管理を行うものである。ＳＣＳ４２のプロセスは、アプリケーション管理，操作部制御，システム画面表示，ＬＥＤ表示，リソース管理，割り込みアプリケーション制御などの処理を行うものである。
【００１６】
ＥＣＳ４４のプロセスはプロッタ１１，スキャナ１２，その他のハードウェアリソース１３等のエンジン部の制御を行うものである。ＭＣＳ４５のプロセスは、画像メモリの取得および解放，ＨＤＤの利用，画像データの圧縮および伸張などのメモリ制御を行うものである。
【００１７】
ＯＣＳ４６のプロセスは操作者と複合機１との間の情報伝達手段となるオペレーションパネルの制御を行うものである。ＦＣＳ４７のプロセスは、アプリケーション３０からＰＳＴＮまたはＩＳＤＮ網を利用したファクシミリ送受信，バックアップ用のメモリで管理されている各種ファクシミリデータの登録／引用，ファクシミリ読み取り，ファクシミリ受信印刷等を行うためのＡＰＩを提供するものである。
【００１８】
ＮＣＳ４８のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルにより受信したデータを各アプリケーション３０に振り分けたり、各アプリケーション３０からのデータをネットワーク側に送信する際の仲介を行ったりするものである。
【００１９】
図２は本発明による複合機の一実施例のハードウェア構成図を示す。複合機１は、コントローラ６０，オペレーションパネル７０，ファックスコントロールユニット（以下、ＦＣＵという）８０，ＵＳＢデバイス９０，ＩＥＥＥ１３９４デバイス１００，エンジン部１１０を有する。
【００２０】
また、コントローラ６０は、ＣＰＵ６１，ＭＥＭ−Ｐ６２，ノースブリッジ（以下、ＮＢという）６３，サウスブリッジ（以下、ＳＢという）６４，ＡＳＩＣ６６，ＭＥＭ−Ｃ６７，ＨＤＤ６８を有する。
【００２１】
ＣＰＵ６１は、複合機１の全体制御を行うものである。ＣＰＵ６１は、ＯＳ４１上にＳＣＳ４２，ＳＲＭ４３，ＥＣＳ４４，ＭＣＳ４５，ＯＣＳ４６，ＦＣＳ４７およびＮＣＳ４８をそれぞれプロセスとして起動して実行させると共に、アプリケーション３０を形成するプリンタアプリ３１，コピーアプリ３２，ファックスアプリ３３，スキャナアプリ３４を起動して実行させる。
【００２２】
ＮＢ６３は、ＣＰＵ６１，ＭＥＭ−Ｐ６２，ＳＢ６４およびＡＳＩＣ６６を接続するためのブリッジである。ＭＥＭ−Ｐ６２は、複合機１の描画用メモリなどとして用いるシステムメモリである。ＳＢ６４は、ＮＢ６３とＲＯＭ，ＰＣＩバス，周辺デバイスとを接続するためのブリッジである。
【００２３】
ＭＥＭ−Ｃ６７は、コピー用画像バッファ，符号バッファとして用いるローカルメモリである。ＡＳＩＣ６６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣである。ＨＤＤ６８は、画像データ，文書データ，プログラム，フォントデータ等の蓄積を行うためのストレージである。
【００２４】
オペレーションパネル７０は、操作者からの入力操作をＵＩで受け付けると共に、操作者に向けた表示をＵＩで行う操作部である。オペレーションパネル７０は、タッチパネルなどの表示部を備えており、表示部にプリンタアプリ３１，コピーアプリ３２，ファックスアプリ３３，スキャナアプリ３４から各機能の選択指示、ＯＫ、キャンセルなどの選択指示のボタン、ウィンドウ、その他の文字、図形などの描画データがＯＣＳ４６経由で表示される。また、オペレーションパネル７０のタッチパネルなどの表示部に表示されたボタンやキーを操作者が押下する（触れる）ことによって、操作者の操作はＳＣＳ４２にイベントとして通知される。
【００２５】
例えば図３に示すような構成のＵＩエミュレート装置２００を利用して複合機１に搭載予定のプログラム（対象プログラム）をエミュレートすることにより、対象プログラムのデバック作業を複合機１に組み込むことなく、ＰＣ上などで行うことができる。
【００２６】
図３は、ＵＩエミュレート装置の一実施例のソフトウェア構成図である。図３のＵＩエミュレート装置２００は、ｅｘｅ（エグゼ）ファイル２１０，エミュレートライブラリ２２０，Ｗｉｎｄｏｗｓ（登録商標）等のＯＳ２３０を有する。
【００２７】
ｅｘｅファイル２１０は、対象プログラム２１１が収められており、対象プログラム２１１を疑似的に再現するファイルである。ｅｘｅファイル２１０は対象プログラム２１１の他、リソース状態情報２１２及びビットマップファイル２１３が収められている。ここでリソース状態情報２１２は複合機１のリソースの状態が記述されたものである。ビットマップファイル２１３はオペレーションパネル７０に後述のダイアログ等を表示する為の画像データである。
【００２８】
エミュレートライブラリ２２０は、ｅｘｅファイル２１０が呼び出すｄｌｌファイルやｌｉｂファイル等が格納されている。エミュレートライブラリ２２０は複合機１向けに開発された対象プログラム２１１をＰＣ上などで実行するためのものである。
【００２９】
図３のエミュレートライブラリ２２０には、複合機１とＰＣとの違いを吸収し、複合機１のＳＣＳ４２，ＳＲＭ４３，ＥＣＳ４４，ＭＣＳ４５，ＯＣＳ４６，ＦＣＳ４７及びＮＣＳ４８に対応する機能を実現する、ＳＣＳエミュレートライブラリ２２１，ＳＲＭエミュレートライブラリ２２２，ＥＣＳエミュレートライブラリ２２３，ＭＣＳエミュレートライブラリ２２４，ＯＣＳエミュレートライブラリ２２５，ＦＣＳエミュレートライブラリ２２６，ＮＣＳエミュレートライブラリ２２７が格納されている。
【００３０】
なお、ＯＣＳエミュレートライブラリ２２５は複合機１のＯＣＳ４６に対応する機能をＰＣ上で実現する以外に、対象プログラム２１１のデバック作業を支援する後述のような機能もＰＣ上で実現する。
【００３１】
図４は、ＵＩエミュレート装置の一例のハードウェア構成図である。ＵＩエミュレート装置２００は、バスＢで相互に接続されている入力装置２５１，出力装置２５２，ドライブ装置２５３，補助記憶装置２５４，主記憶装置２５５，演算処理装置２５６およびインターフェース装置２５７を含むように構成される。
【００３２】
入力装置２５１はキーボードやマウスなどで構成され、各種信号を入力するために用いられる。出力装置２５２はディスプレイ装置などで構成され、各種ウィンドウやデータ等を表示するために用いられる。インターフェース装置２５７は、モデム，ＬＡＮカードなどで構成されており、ネットワークに接続する為に用いられる。
【００３３】
本発明のＵＩエミュレートプログラムは、ＵＩエミュレート装置２００を制御する各種プログラムの少なくとも一部である。ＵＩエミュレートプログラムは例えば記録媒体２５８の配布やネットワークからのダウンロードなどによって提供される。ＵＩエミュレートプログラムを記録した記録媒体２５８は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００３４】
また、ＵＩエミュレートプログラムを記録した記録媒体２５８がドライブ装置２５３にセットされると、ＵＩエミュレートプログラムは記録媒体２５８からドライブ装置２５３を介して補助記憶装置２５４にインストールされる。ネットワークからダウンロードされたＵＩエミュレートプログラムは、インターフェース装置２５７を介して補助記憶装置２５４にインストールされる。
【００３５】
ＵＩエミュレート装置２００は、インストールされたＵＩエミュレートプログラムを格納すると共に、必要なファイル，データ等を格納する。主記憶装置２５５は、起動時に補助記憶装置２５４からＵＩエミュレートプログラムを読み出して格納する。演算処理装置２５６は主記憶装置２５５に格納されたＵＩエミュレートプログラムに従って、後述するような各種処理を実現している。
【００３６】
図５はＯＣＳエミュレートライブラリの一実施例の機能ブロック図である。図５のＯＣＳエミュレートライブラリ２２５は、オブジェクト生成機能部３０１，オブジェクト属性設定機能部３０２，オブジェクト表示／非表示機能部３０３，ＬＥＤ制御機能部３０４，ブザー音種類確認機能部３０５，画面データのコピー機能部３０６，アイコンＩＤ／メッセージＩＤ表示機能部３０７，関数コールログ機能部３０８，ワーニング表示機能部３０９，オブジェクトの階層表示機能部３１０，オブジェクト数表示機能部３１１，オブジェクトの全属性表示機能部３１２を有する。
【００３７】
オブジェクト生成機能部３０１，オブジェクト属性設定機能部３０２，オブジェクト表示／非表示機能部３０３，ＬＥＤ制御機能部３０４は、複合機１のＯＣＳ４６が有する機能を実現するものである。
【００３８】
ブザー音種類確認機能部３０５は、複合機１のＯＣＳ４６が有する機能と異なるように機能を実現するものである。例えばブザー音種類確認機能部３０５は、複合機１のＯＣＳ４６が実際にブザーを出力してブザー音の種類を確認させるのに対し、ブザー音の種類をディスプレイ装置等にテキスト等で表示してブザー音の種類を確認させる。
【００３９】
画面データのコピー機能部３０６，アイコンＩＤ／メッセージＩＤ表示機能部３０７，関数コールログ機能部３０８，ワーニング表示機能部３０９，オブジェクトの階層表示機能部３１０，オブジェクト数表示機能部３１１，オブジェクトの全属性表示機能部３１２は、対象プログラム２１１のデバック作業を支援する機能を実現するものである。
【００４０】
オブジェクト生成機能部３０１は、後述の仮想オペパネ領域に表示するオブジェクトを作成する。オブジェクト属性設定機能部３０２は仮想オペパネ領域に表示するオブジェクトの属性を設定する。オブジェクト表示／非表示機能部３０３は、仮想オペパネ領域へのオブジェクトの表示／非表示を制御する。ＬＥＤ制御機能部３０４は、仮想オペパネ領域のＬＥＤの点灯／消灯を制御する。ブザー音種類確認機能部３０５はブザー音の種類を仮想オペパネ領域にテキスト等で表示して操作者にブザー音の種類を確認させる。
【００４１】
画面データのコピー機能部３０６は、例えば操作者により仮想オペパネ領域を左ダブルクリックされると、その時点の仮想オペパネ領域の画像データをビットマップファイルでクリップボードにコピーする。
【００４２】
アイコンＩＤ／メッセージＩＤ表示機能部３０７は、例えば操作者により仮想オペパネ領域に表示されているオブジェクトを右クリックされると、そのオブジェクトのアイコンＩＤ及びメッセージＩＤを図６に示すように仮想オペパネ領域に表示する。
【００４３】
図６はアイコンＩＤ／メッセージＩＤ表示機能部により仮想オペパネ領域に表示されたアイコンＩＤ及びメッセージＩＤの一例のイメージ図である。図６のイメージ図では、オブジェクト６００の右クリックによりアイコンＩＤ６０１及びメッセージＩＤ６０２が表示されている。
【００４４】
関数コールログ機能部３０８は、関数呼び出し（関数コール）を行った関数名及び戻り値を仮想オペパネ領域等に表示する。ワーニング表示機能部３０９は、関数呼び出しの戻り値のエラー，無意味な属性の設定，文字列の指定矩形はみ出しが発生すると、ワーニング表示としてログを出力する。
【００４５】
オブジェクトの階層表示機能部３１０は、オブジェクトの作成状況をディスプレイ装置などにツリー表示する。オブジェクト数表示機能部３１１はオブジェクトの種類毎にオブジェクトの数を表示する。オブジェクトの全属性表示機能部３１２は現在選択されているオブジェクトの属性を例えば図７に示すように、ディスプレイ装置等に表示する。図７はオブジェクトに設定されている属性の一例のイメージ図である。
【００４６】
図８はＵＩエミュレート装置の起動時の処理手順を表したシーケンス図である。ｅｘｅファイル２１０はビットマップファイル２１３を利用してディスプレイ装置にダイアログボックスを表示する。
【００４７】
ステップＳ２に進み、ｅｘｅファイル２１０はＯＣＳエミュレートライブラリ２２５の関数呼び出しによって、仮想オペパネ領域の作成をＯＣＳエミュレートライブラリ２２５に要求する。ステップＳ３に進み、ＯＣＳエミュレートライブラリ２２５はＯＳ２３０に対して描画領域確保を要求し、仮想オペパネ領域を作成する。
【００４８】
ステップＳ４に進み、ｅｘｅファイル２１０は必要とするオブジェクトの数だけ、オブジェクトの作成指示をＯＣＳエミュレートライブラリ２２５に対して行う。オブジェクトの作成指示は、ＯＣＳエミュレートライブラリ２２５の関数呼び出しによって行う。
【００４９】
オブジェクトの作成指示に対し、ＯＣＳエミュレートライブラリ２２５はオブジェクトを作成し、作成したオブジェクトを識別する為のオブジェクトハンドルを、ｅｘｅファイル２１０に通知する。ＯＣＳエミュレートライブラリ２２５は作成したオブジェクトの情報を保持する。
【００５０】
ステップＳ５に進み、ｅｘｅファイル２１０はＯＣＳエミュレートライブラリ２２５に対し、オブジェクトハンドル含むウィンドウ／アイテムの描画指示を行う。オブジェクトハンドル含むウィンドウ／アイテムの描画指示はＯＣＳエミュレートライブラリ２２５の関数呼び出しによって行う。
【００５１】
ステップＳ６に進み、ＯＣＳエミュレートライブラリ２２５はウィンドウ／アイテムの描画指示に含まれるオブジェクトハンドルからオブジェクトを検索する。ステップＳ７に進み、ＯＣＳエミュレートライブラリ２２５は検索したオブジェクトの情報を用いてＯＳ２３０に描画指示を行い、仮想オペパネ領域を描画する。
【００５２】
図８に示す処理手順により、ＵＩエミュレート装置２００はディスプレイ装置に仮想オペパネ領域を表示できる。ディスプレイ装置に表示された仮想オペパネ領域は複合機１のオペレーションパネルを模擬するものであり、同様な動作を行う。
【００５３】
図９はＵＩエミュレート装置の動作時の処理手順を表したシーケンス図である。ディスプレイ装置に表示された仮想オペパネ領域の表示部を操作者が左クリックすると、ｅｘｅファイル２１０は仮想オペパネ領域の表示部の座標（Ｘ，Ｙ）が左クリックされた旨をＳＣＳエミュレートライブラリ２２１からイベントとして通知される。
【００５４】
ステップＳ１１に進み、ｅｘｅファイル２１０はＯＣＳエミュレートライブラリ２２５の関数呼び出しによって仮想オペパネ領域の表示部の座標（Ｘ，Ｙ）が左クリックされた旨をＯＣＳエミュレートライブラリ２２５に通知する。
【００５５】
ステップＳ１２に進み、ＯＣＳエミュレートライブラリ２２５は、座標（Ｘ，Ｙ）から操作者が左クリックしたボタンやキー等のアイテムを識別する。ＯＣＳエミュレートライブラリ２２５はステップＳ１３に進み、識別したアイテムをキー情報としてｅｘｅファイル２１０に通知する。
【００５６】
ステップＳ１４に進み、ｅｘｅファイル２１０はＯＣＳエミュレートライブラリ２２５から通知されたキー情報に応じて、操作者に左クリックされた例えばボタンが仮想オペパネ領域上で押された状態となるようにＯＣＳライブラリ２２５の関数呼び出しによってボタン押下指示を行う。
【００５７】
また、ステップＳ１５に進み、ｅｘｅファイル２１０はＯＣＳエミュレートライブラリ２２５から通知されたキー情報に応じて、仮想オペパネ領域に表示されたウィンドウを切り替えるようにＯＣＳライブラリ２２５の関数呼び出しによって指示する。
【００５８】
なお、ディスプレイ装置に表示された仮想オペパネ領域の表示部を右クリックされた場合、ｅｘｅファイル２１０は仮想オペパネ領域の表示部の座標（Ｘ，Ｙ）が右クリックされた旨をＳＣＳエミュレートライブラリ２２１からイベントとして通知される。
【００５９】
ステップＳ１６に進み、ｅｘｅファイル２１０はＯＣＳエミュレートライブラリ２２５の関数呼び出しによって仮想オペパネ領域の表示部の座標（Ｘ，Ｙ）が右クリックされた旨をＯＣＳエミュレートライブラリ２２５に通知する。
【００６０】
ステップＳ１７に進み、ＯＣＳエミュレートライブラリ２２５は、座標（Ｘ，Ｙ）から操作者が右クリックしたボタンやキー等のアイテムを識別し、そのアイテムの情報を取得する。ＯＣＳエミュレートライブラリ２２５はＯＳ２３０に描画指示を行い、取得したアイテムの情報をディスプレイ装置に表示する。
【００６１】
図９に示す処理手順により、ＵＩエミュレート装置２００はディスプレイ装置に表示した仮想オペパネ領域を操作（左クリックなど）された場合、操作の内容とクリックされた座標とに応じて、仮想オペパネ領域の状態を変化させたり、アイテム（オブジェクト）の情報を表示したりすることができる。
【００６２】
図１０は複合機とＵＩエミュレート装置との違いの一例を表したイメージ図である。複合機１とＵＩエミュレート装置２００とは、例えばオブジェクトの重なり制御に以下のような違いがある。
【００６３】
複合機１のＯＣＳ４６はハードウェアが自動でオブジェクトの階層管理を行う。例えば図１０（ａ）のようにオブジェクトＡとオブジェクトＢとが重なって表示されているものとする。複合機１では、ハードウェアが自動でオブジェクトＡ，Ｂの階層管理を行っている為、図１０（ａ）のオブジェクトＢが非表示になったとしても、図１０（ｂ）のようにオブジェクトＢによって隠れていた部分も表示される。
【００６４】
一方、ＵＩエミュレート装置２００のＯＣＳエミュレートライブラリ２２５は例えば図１０（ｃ）のようにオブジェクトＡとオブジェクトＢとが重なって表示されているときにオブジェクトＢが非表示になると、図１０（ｄ）のようにオブジェクトＢによって隠れていた部分が表示されない。
【００６５】
したがって、ＯＣＳエミュレートライブラリ２２５はオブジェクトＢが非表示となる場合にオブジェクトＡ全体の再描画を行うことで、図１０（ｅ）のようなオブジェクトＡを表示する。
【００６６】
図１１はエミュレートライブラリの機種依存部分の取り扱いについて説明する為の模式図である。複合機１の環境では機種毎に異なる機種依存部分が存在するため、機種毎に異なるモジュール（ＳＣＳ４２Ａ，ＳＣＳ４２Ｂなど）が存在する。例えば図１１では機種ＡのＳＣＳ４２Ａに機種Ａの依存部分１１０１が存在し、機種ＡのＭＣＳ４５Ａに機種Ａの依存部分１１０２が存在し、機種ＢのＳＣＳ４２Ｂに機種Ｂの依存部分１１０３が存在し、機種ＢのＭＣＳ４５Ｂに機種Ｂの依存部分１１０２が存在することを表している。
【００６７】
ＵＩエミュレート装置２００の環境では機種毎に異なる機種依存部分をモジュール化したため、各機種で共通のモジュール（ＳＣＳ２２１'，ＭＣＳ２２４'）が存在する。例えば図１１では機種Ａの機種依存部分として機種Ａ用ＭａｃｈｉｎｅＬｉｂ１１０５が存在し、機種Ｂの機種依存部分として機種Ｂ用ＭａｃｈｉｎｅＬｉｂ１１０６が存在する。
【００６８】
各機種で共通のモジュールであるＳＣＳエミュレートライブラリ２２１'及びＭＣＳエミュレートライブラリ２２４'は、必要に応じて機種Ａ用ＭａｃｈｉｎｅＬｉｂ１１０５や機種Ｂ用ＭａｃｈｉｎｅＬｉｂ１１０６をロードすることにより、各機種に依存したモジュールであるＳＣＳエミュレートライブラリ２２１Ａ及びＭＣＳエミュレートライブラリ２２４Ｂとなる。
【００６９】
このように、ＵＩエミュレート装置２００の環境では機種毎に異なる機種依存部分を機種Ａ用ＭａｃｈｉｎｅＬｉｂ１１０５，機種Ｂ用ＭａｃｈｉｎｅＬｉｂ１１０６というようにモジュール化したため、各機種でモジュールを共通化できる。
【００７０】
図１２はＭａｃｈｉｎｅＬｉｂについて説明する為の説明図である。機種Ａ用ＭａｃｈｉｎｅＬｉｂ１１０５や機種Ｂ用ＭａｃｈｉｎｅＬｉｂ１１０６等の機種依存部分を扱うＭａｃｈｉｎｅＬｉｂ１２０１は、ＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイル１２０２から複合機１の各種状態を表す状態情報をロードする。
【００７１】
ＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイル１２０２には、複合機１の各種状態を表す状態情報として、例えば給紙トレイの接続状態や搭載されている言語情報などを記述することができる。ＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイル１２０２に記述されている状態情報を変更することで、複合機１で実際に発生させにくい状態を容易に再現させることができる。
【００７２】
ＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイル１２０２に記述されている状態情報の変更は例えば図１３に示すような画面１３０１上で行うことができる。図１３はＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイルの編集を行う画面の一例のイメージ図である。図１３の画面１３０１では操作者がチェックボックスやコンボボックスを操作することによりｉｎｉファイルの編集を行うことができる。
【００７３】
以上、本発明によるＵＩエミュレート装置２００によれば、複合機１のオペレーションパネル７０の表示部に表示されるＵＩを複合機１以外の装置で容易にエミュレートすることができる。
【００７４】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【図面の簡単な説明】
【００７５】
【図１】複合機の一実施例の構成図を示す。
【図２】本発明による複合機の一実施例のハードウェア構成図を示す。
【図３】ＵＩエミュレート装置の一実施例のソフトウェア構成図である。
【図４】ＵＩエミュレート装置の一例のハードウェア構成図である。
【図５】ＯＣＳエミュレートライブラリの一実施例の機能ブロック図である。
【図６】アイコンＩＤ／メッセージＩＤ表示機能部により仮想オペパネ領域に表示されたアイコンＩＤ及びメッセージＩＤの一例のイメージ図である。
【図７】オブジェクトに設定されている属性の一例のイメージ図である。
【図８】ＵＩエミュレート装置の起動時の処理手順を表したシーケンス図である。
【図９】ＵＩエミュレート装置の動作時の処理手順を表したシーケンス図である。
【図１０】複合機とＵＩエミュレート装置との違いの一例を表したイメージ図である。
【図１１】エミュレートライブラリの機種依存部分の取り扱いについて説明する為の模式図である。
【図１２】ＭａｃｈｉｎｅＬｉｂについて説明する為の説明図である。
【図１３】ＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイルの編集を行う画面の一例のイメージ図である。
【符号の説明】
【００７６】
１    複合機
１１    プロッタ
１２    スキャナ
１３    ハードウェアリソース
２０    ソフトウェア群
３０    アプリケーション
３１    プリンタアプリ
３２    コピーアプリ
３３    ファックスアプリ
３４    スキャナアプリ
４０    プラットフォーム
４１，２３０    オペレーティングシステム（ＯＳ）
４２    システムコントロールサービス（ＳＣＳ）
４３    システムリソースマネージャ（ＳＲＭ）
４４    エンジンコントロールサービス（ＥＣＳ）
４５    メモリコントロールサービス（ＭＣＳ）
４６    オペレーションパネルコントロールサービス（ＯＣＳ）
４７    ファックスコントロールサービス（ＦＣＳ）
４８    ネットワークコントロールサービス（ＮＣＳ）
５０    起動部
６０    コントローラ
６１    ＣＰＵ
６２    ＭＥＭ−Ｐ
６３    ノースブリッジ（ＮＢ）
６４    サウスブリッジ（ＳＢ）
６６    ＡＳＩＣ
６７    ＭＥＭ−Ｃ
６８    ＨＤＤ
７０    オペレーションパネル
８０    ファックスコントロールユニット（ＦＣＵ）
９０    ＵＳＢデバイス
１００    ＩＥＥＥ１３９４デバイス
１１０    エンジン部
２００    ＵＩエミュレート装置
２１０    ｅｘｅ（エグゼ）ファイル
２１１    対象プログラム
２１２    リソース状態情報
２１３    ビットマップファイル
２２０    エミュレートライブラリ
２２１    ＳＣＳエミュレートライブラリ
２２２    ＳＲＭエミュレートライブラリ
２２３    ＥＣＳエミュレートライブラリ
２２４    ＭＣＳエミュレートライブラリ
２２５    ＯＣＳエミュレートライブラリ
２２６    ＦＣＳエミュレートライブラリ
２２７    ＮＣＳエミュレートライブラリ
２５１    入力装置
２５２    出力装置
２５３    ドライブ装置
２５４    補助記憶装置
２５５    主記憶装置
２５６    演算処理装置
２５７    インターフェース装置
３０１    オブジェクト生成機能部
３０２    オブジェクト属性設定機能部
３０３    オブジェクト表示／非表示機能部
３０４    ＬＥＤ制御機能部
３０５    ブザー音種類確認機能部
３０６    画面データのコピー機能部
３０７    アイコンＩＤ／メッセージＩＤ表示機能部
３０８    関数コールログ機能部
３０９    ワーニング表示機能部
３１０    オブジェクトの階層表示機能部
３１１    オブジェクト数表示機能部
３１２    オブジェクトの全属性表示機能部
６００    オブジェクト
６０１    アイコンＩＤ
６０２    メッセージＩＤ
１２０１    ＭａｃｈｉｎｅＬｉｂ
１２０２    ＭａｃｈｉｎｅＣｏｍｐｏ．ｉｎｉファイル
１３０１    画面
【図１】
2009223577.tif 000003
【図２】
2009223577.tif 000004
【図３】
2009223577.tif 000005
【図４】
2009223577.tif 000006
【図５】
2009223577.tif 000007
【図６】
2009223577.tif 000008
【図７】
2009223577.tif 000009
【図８】
2009223577.tif 000010
【図９】
2009223577.tif 000011
【図１０】
2009223577.tif 000012
【図１１】
2009223577.tif 000013
【図１２】
2009223577.tif 000014
【図１３】
2009223577.tif 000015