JP5387221B2 - Information processing apparatus, information processing method, and information processing program - Google Patents

Information processing apparatus, information processing method, and information processing program Download PDF

Info

Publication number
JP5387221B2
JP5387221B2 JP2009186748A JP2009186748A JP5387221B2 JP 5387221 B2 JP5387221 B2 JP 5387221B2 JP 2009186748 A JP2009186748 A JP 2009186748A JP 2009186748 A JP2009186748 A JP 2009186748A JP 5387221 B2 JP5387221 B2 JP 5387221B2
Authority
JP
Japan
Prior art keywords
operation panel
information
information processing
difference
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009186748A
Other languages
Japanese (ja)
Other versions
JP2011041010A (en
Inventor
拓 南雲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2009186748A priority Critical patent/JP5387221B2/en
Publication of JP2011041010A publication Critical patent/JP2011041010A/en
Application granted granted Critical
Publication of JP5387221B2 publication Critical patent/JP5387221B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関し、特にプログラムの実行環境を有する情報処理装置、情報処理方法、及び情報処理プログラムに関する。   The present invention relates to an information processing device, an information processing method, and an information processing program, and more particularly, to an information processing device, an information processing method, and an information processing program having a program execution environment.

近年、主として複合機又は融合機と呼ばれる画像形成装置においては、公開されたAPIを備えたアプリケーションプラットフォーム(アプリケーション実行環境)が搭載されている。したがって、画像形成装置のメーカー以外のサードベンダ等によって開発されたアプリケーションも画像形成装置上で利用することが可能である。   2. Description of the Related Art In recent years, application platforms (application execution environments) equipped with public APIs are mounted on image forming apparatuses called mainly multifunction peripherals or multifunction peripherals. Therefore, an application developed by a third vendor other than the manufacturer of the image forming apparatus can also be used on the image forming apparatus.

斯かるアプリケーションプラットフォームが提供するAPIは、画像形成装置の機種に対して独立していることが望ましい。すなわち、機種A上のアプリケーションプラットフォームAと、機種B上のアプリケーションプラットフォームBとではAPIが共通していることが望ましい。APIが共通していることにより、APIを利用して動作するアプリケーションは、機種の違いに対する互換性を確保することができるからである。   It is desirable that the API provided by such an application platform is independent of the model of the image forming apparatus. That is, it is desirable that the application platform A on the model A and the application platform B on the model B have the same API. This is because, by sharing the API, applications that operate using the API can ensure compatibility with different models.

しかし、機種間におけるハードウェア構成の違いがAPIの違い(APIの非互換部分)となって現れてしまうことが避けられない場合がある。特に、操作パネルの構成の違いは、APIに与える影響が大きい。操作パネルが備える液晶パネルの表示能力の違いに応じて表示可能な表示要素が異なる場合があるからである。   However, it may be unavoidable that a difference in hardware configuration between models appears as a difference in API (incompatible part of API). In particular, the difference in the configuration of the operation panel has a great influence on the API. This is because the display elements that can be displayed may differ depending on the difference in display capability of the liquid crystal panel included in the operation panel.

したがって、操作パネルの構成(主として液晶パネルの表示能力)が従来のものと大きく異なる画像形成装置上にアプリケーションプラットフォームを実装(移植)する場合、従来のアプリケーションプラットフォーム上で動作していたアプリケーションについても非互換部分に関する移植作業、又は新規にアプリケーションを作り直すための作業が必要とされる。   Therefore, when an application platform is mounted (ported) on an image forming apparatus whose operation panel configuration (mainly the display capability of the liquid crystal panel) is significantly different from that of the conventional one, the application running on the conventional application platform is also non-existent. Porting work for compatible parts or work for recreating a new application is required.

斯かるアプリケーション及びアプリケーションプラットフォームの開発作業に関して、リリース時期と開発期間との関係により、アプリケーションの開発及びテスト等が、当該アプリケーションプラットフォームの開発に先行して又は並行して行われる場合がある。   With regard to such application and application platform development work, depending on the relationship between the release time and the development period, application development and testing may be performed prior to or in parallel with the development of the application platform.

そのような場合、従来においては、アプリケーションプラットフォームの振る舞いを模したスタブと呼ばれるプログラムを利用してアプリケーションの開発が行われていた。   In such a case, conventionally, an application has been developed using a program called a stub that imitates the behavior of the application platform.

しかしながら、スタブは全てのAPIに関して実際のアプリケーションプラットフォームの振る舞いを表面上模しているものである。したがって、従来のアプリケーションプラットフォームと新規なアプリケーションプラットフォームとの間で互換性の有る部分についても、スタブによって実行される処理は実際のアプリケーションプラットフォームとは異なる。斯かるスタブを利用したアプリケーションの開発が行われた場合、実際のアプリケーションプラットフォーム上における当該アプリケーションの評価(テスト)の段階において予期せぬ不具合が発生することが多く、開発効率が低下するという問題があった。   However, the stub is a superficial imitation of the actual application platform behavior for all APIs. Therefore, the processing executed by the stub is different from the actual application platform even for the compatible part between the conventional application platform and the new application platform. When an application is developed using such a stub, unexpected problems often occur at the evaluation (testing) stage of the application on the actual application platform, resulting in a problem that the development efficiency is lowered. there were.

本発明は、上記の点に鑑みてなされたものであって、プログラムの実行環境が整っていない場合におけるプログラムの開発作業を効率化することのできる情報処理装置、情報処理方法、及び情報処理プログラムの提供を目的とする。   The present invention has been made in view of the above points, and is an information processing apparatus, an information processing method, and an information processing program capable of improving the efficiency of program development when the program execution environment is not prepared The purpose is to provide.

そこで上記課題を解決するため、本発明は、情報処理装置であって、当該情報処理装置が備える第一の操作パネルと異なる種別の第二の操作パネルを有する第二の画像形成装置に対応したプログラムに対して、前記第二の画像形成装置が前記プログラムに提供する前記第二の操作パネルの制御用のインタフェースと同じインタフェースを提供し、該インタフェースの呼び出しに応じて、前記第一の操作パネルに対する制御を実行するラッパー手段を有し、前記ラッパー手段は、前記操作パネルの種別ごとに構成情報を記憶する構成情報記憶手段と、前記第一の操作パネルの第一の種別情報を当該情報処理装置より取得する装置情報取得手段と、前記プログラムが対応する前記第二の操作パネルの第二の種別情報を取得するアプリ情報取得手段と、前記第一の種別情報に係る前記構成情報と前記第二の種別情報に係る前記構成情報とを前記構成情報記憶手段より取得し、取得された前記構成情報の差分を判定する差分判定手段と、前記差分に含まれる構成要素を前記第一の操作パネルの表示領域に表示させる差分表示制御手段とを有する。   Therefore, in order to solve the above problem, the present invention is an information processing apparatus corresponding to a second image forming apparatus having a second operation panel of a type different from the first operation panel included in the information processing apparatus. The program provides the same interface as the control interface of the second operation panel provided to the program by the second image forming apparatus, and the first operation panel is provided in response to the call of the interface. Wrapper means for executing control on the configuration information, and the wrapper means stores configuration information for each type of the operation panel, and the first type information of the first operation panel as the information processing Device information acquisition means for acquiring from the device, and application information acquisition means for acquiring second type information of the second operation panel corresponding to the program A difference determination unit that acquires the configuration information related to the first type information and the configuration information related to the second type information from the configuration information storage unit, and determines a difference between the acquired configuration information; And difference display control means for displaying the constituent elements included in the difference in the display area of the first operation panel.

このような情報処理装置では、プログラムの実行環境が整っていない場合におけるプログラムの開発作業を効率化することができる。   In such an information processing apparatus, it is possible to improve the efficiency of program development work when the program execution environment is not prepared.

本発明によれば、プログラムの実行環境が整っていない場合におけるプログラムの開発作業を効率化することができる。   According to the present invention, it is possible to improve the efficiency of program development work when the program execution environment is not prepared.

本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。1 is a diagram illustrating an example of a hardware configuration of an image forming apparatus according to an embodiment of the present invention. 本発明の実施の形態における画像形成装置のソフトウェア構成例を示す図である。FIG. 3 is a diagram illustrating a software configuration example of an image forming apparatus in an embodiment of the present invention. 本実施の形態における操作パネルの構成例を示す図である。It is a figure which shows the structural example of the operation panel in this Embodiment. 異機種への移植後のSDKプラットフォームの構成例を示す図である。It is a figure which shows the structural example of the SDK platform after transplanting to a different model. 移植後のSDKプラットフォーム上におけるアプリCによる表示制御の処理手順を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the process sequence of the display control by the application C on the SDK platform after a transplant. 移植後のSDKプラットフォーム上におけるアプリCによる入力制御の処理手順を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the process sequence of the input control by the application C on the SDK platform after a transplant. アプリCと移植前のSDKプラットフォームとの関係を示す図である。It is a figure which shows the relationship between the application C and the SDK platform before a transplant. 本実施の形態におけるラッパーモジュールの構成例を示す図である。It is a figure which shows the structural example of the wrapper module in this Embodiment. アプリCによるラッパーモジュールを用いた表示制御処理の処理手順を説明するためのシーケンス図である。FIG. 10 is a sequence diagram for explaining a processing procedure of display control processing using a wrapper module by application C. ラッパーモジュールによるウィンドウの表示要求処理の処理手順を説明するためのフローチャートである。It is a flowchart for demonstrating the process sequence of the display request process of a window by a wrapper module. パネル構成情報の例を示す図である。It is a figure which shows the example of panel structure information. 異機種の操作パネルとの差分が液晶パネル内に表示された操作パネルの例を示す図である。It is a figure which shows the example of the operation panel by which the difference with the operation panel of a different model was displayed in the liquid crystal panel. ラッパーモジュールを介したアプリCによる入力制御の処理手順を説明するためのシーケンス図である。It is a sequence diagram for demonstrating the process sequence of the input control by the application C via a wrapper module. SDKアプリが対応する操作パネルと画像形成装置が有する操作パネルとの差分のラッパーモジュールによる動的な判定の様子を示す図である。FIG. 5 is a diagram illustrating a dynamic determination by a wrapper module of a difference between an operation panel supported by an SDK application and an operation panel included in the image forming apparatus. 画像形成装置のエミュレータを有するPC上でアプリCを動作させる場合のソフトウェア構成例を示す図である。FIG. 3 is a diagram illustrating a software configuration example when an application C is operated on a PC having an emulator of the image forming apparatus.

以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図1において、画像形成装置10は、コントローラ11、スキャナ12、プリンタ13、モデム14、操作パネル15、ネットワークインタフェース16、及びSDカードスロット17等のハードウェアを有する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram illustrating a hardware configuration example of an image forming apparatus according to an embodiment of the present invention. 1, the image forming apparatus 10 includes hardware such as a controller 11, a scanner 12, a printer 13, a modem 14, an operation panel 15, a network interface 16, and an SD card slot 17.

コントローラ11は、CPU111、RAM112、ROM113、及びHDD114等を有する。ROM113には、各種のプログラムやプログラムによって利用されるデータ等が記録されている。RAM112は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU111は、RAM112にロードされたプログラムを処理することにより、各種の機能を実現する。HDD114には、プログラムやプログラムが利用する各種のデータ等が記録される。   The controller 11 includes a CPU 111, a RAM 112, a ROM 113, an HDD 114, and the like. The ROM 113 stores various programs and data used by the programs. The RAM 112 is used as a storage area for loading a program, a work area for the loaded program, and the like. The CPU 111 realizes various functions by processing a program loaded in the RAM 112. The HDD 114 records programs and various data used by the programs.

スキャナ12は、原稿より画像データを読み取るためのハードウェアである。プリンタは13、印刷データを印刷用紙に印刷するためのハードウェアである。モデム14は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。操作パネル15は、ユーザからの入力の受け付けを行うめのボタン等の入力手段や、液晶パネル等の表示手段(表示領域)を備えたハードウェアである。ネットワークインタフェース16は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット17は、SDカード80に記録されたプログラムを読み取るために利用される。すなわち、画像形成装置10では、ROM113に記録されたプログラムだけでなく、SDカード80に記録されたプログラムもRAM112にロードされ、実行されうる。   The scanner 12 is hardware for reading image data from a document. The printer 13 is hardware for printing print data on printing paper. The modem 14 is hardware for connecting to a telephone line, and is used to execute transmission / reception of image data by FAX communication. The operation panel 15 is hardware including input means such as buttons for accepting input from a user, and display means (display area) such as a liquid crystal panel. The network interface 16 is hardware for connecting to a network such as a LAN (whether wired or wireless). The SD card slot 17 is used for reading a program recorded on the SD card 80. That is, in the image forming apparatus 10, not only the program recorded in the ROM 113 but also the program recorded in the SD card 80 can be loaded into the RAM 112 and executed.

図2は、本発明の実施の形態における画像形成装置のソフトウェア構成例を示す図である。同図において、画像形成装置10は、標準アプリ121、SDKアプリ122、SDKプラットフォーム123、コントロールサービス124、及びOS125等を有する。   FIG. 2 is a diagram illustrating a software configuration example of the image forming apparatus according to the embodiment of the present invention. In FIG. 1, the image forming apparatus 10 includes a standard application 121, an SDK application 122, an SDK platform 123, a control service 124, an OS 125, and the like.

標準アプリ121は、画像形成装置10に標準的に(出荷時に予め)実装されているアプリケーションの集合である。同図では、スキャンアプリ1211、印刷アプリ1212、コピーアプリ1213、及びFAXアプリ1214が例示されている。スキャンアプリ1211は、スキャンジョブを実行する。印刷アプリ1212は印刷ジョブを実行する。コピーアプリ1213は、コピージョブを実行する。FAXアプリ1214は、FAXの送信ジョブ又は受信ジョブを実行する。   The standard application 121 is a set of applications that are mounted on the image forming apparatus 10 in a standard manner (in advance at the time of shipment). In the figure, a scan application 1211, a print application 1212, a copy application 1213, and a FAX application 1214 are illustrated. The scan application 1211 executes a scan job. The print application 1212 executes a print job. The copy application 1213 executes a copy job. The FAX application 1214 executes a FAX transmission job or reception job.

コントロールサービス124は、各種のハードウェアリソース等を制御するための機能を上位アプリケーション等に対して提供するソフトウェアモジュール群であり、例えば、ネットワーク通信に関する機能、スキャナの制御機能、プリンタの制御機能、メモリの管理機能等を有する。   The control service 124 is a software module group that provides a function for controlling various hardware resources and the like to a higher-level application. For example, a function related to network communication, a scanner control function, a printer control function, a memory Management function.

SDKアプリ122は、画像形成装置10の出荷後において、画像形成装置10の機能拡張を図るためのプラグインとして追加的にインストールされるアプリケーションである。同図では、SDKアプリ122として、アプリA1221、アプリB1222、アプリC1223、及びラッパーモジュール1224が例示されている。各SDKアプリ122の本実施の形態における位置付けについては後述する。   The SDK application 122 is an application that is additionally installed as a plug-in for expanding the functions of the image forming apparatus 10 after the image forming apparatus 10 is shipped. In the figure, as the SDK application 122, an application A1221, an application B1222, an application C1223, and a wrapper module 1224 are illustrated. The positioning of each SDK application 122 in the present embodiment will be described later.

SDKプラットフォーム123は、SDKアプリ122の実行環境を提供する、SDKアプリ122のアプリケーションプラットフォーム(プログラム実行手段)である。各SDKアプリ122は、SDKプラットフォーム123が提供するAPI(Application Program Interface)を利用して開発される。SDKプラットフォーム123のAPIは公開されており、サードベンダ等によってもSDKアプリ122は開発されうる。APIとは、具体的には、関数又はメソッド等の集合である。また、広義においては、画像形成装置10において非同期に発生するイベント等をSDKアプリ122に通知するための仕組み等もAPIに含まれる。   The SDK platform 123 is an application platform (program execution means) for the SDK application 122 that provides an execution environment for the SDK application 122. Each SDK application 122 is developed using an API (Application Program Interface) provided by the SDK platform 123. The API of the SDK platform 123 is open to the public, and the SDK application 122 can be developed by a third vendor or the like. Specifically, the API is a set of functions or methods. In a broad sense, the API includes a mechanism for notifying the SDK application 122 of events that occur asynchronously in the image forming apparatus 10.

同図において、SDKプラットフォーム123は、スキャンサービス部1231、印刷サービス部1232、及びパネルサービス部1233等を含む。スキャンサービス部1231は、画像形成装置10のスキャン機能に関する制御を行うためのインタフェース(API)をSDKアプリ122に提供する。印刷サービス部1232は、画像形成装置10の印刷機能に関する制御を行うためのインタフェースをSDKアプリ122に提供する。パネルサービス部1233は、操作パネル15に関する制御を行うためのインタフェースをSDKアプリ122に提供する。なお、実際は、他の多様なインタフェースもSDKプラットフォーム123によって提供されるが、本実施の形態ではその説明は便宜上省略する。   In the figure, the SDK platform 123 includes a scan service unit 1231, a print service unit 1232, a panel service unit 1233, and the like. The scan service unit 1231 provides the SDK application 122 with an interface (API) for performing control related to the scan function of the image forming apparatus 10. The print service unit 1232 provides the SDK application 122 with an interface for performing control related to the print function of the image forming apparatus 10. The panel service unit 1233 provides the SDK application 122 with an interface for performing control related to the operation panel 15. Actually, various other interfaces are also provided by the SDK platform 123, but the description thereof is omitted in this embodiment for convenience.

OS125は、いわゆるOS(Operating System)である。画像形成装置10上の各ソフトウェアは、OS125上においてプロセス又はスレッドとして動作する。   The OS 125 is a so-called OS (Operating System). Each software on the image forming apparatus 10 operates as a process or thread on the OS 125.

図2において例示されている各SDKアプリ122の位置付けについて説明する。前提として、本実施の形態における画像形成装置10は、特定の機種に属する画像形成装置であるとする。アプリA1221及びアプリB1222は、画像形成装置10が属する機種(画像形成装置10が属する機種用のSDKプラットフォーム123)に対応して開発されたSDKアプリ122の例示である。一方、アプリC1223は、画像形成装置10とは異なる機種の画像形成装置20(後に図示される。)のSDKプラットフォームに対応して開発中のSDKアプリ122の例示である。なお、アプリC1223は、特定の一つのSDKアプリ122を示すものではなく、開発中のSDKアプリ122全般を示す。   The positioning of each SDK application 122 illustrated in FIG. 2 will be described. As a premise, it is assumed that the image forming apparatus 10 in the present embodiment is an image forming apparatus belonging to a specific model. The application A 1221 and the application B 1222 are examples of the SDK application 122 developed corresponding to the model to which the image forming apparatus 10 belongs (the SDK platform 123 for the model to which the image forming apparatus 10 belongs). On the other hand, the application C 1223 is an example of the SDK application 122 under development corresponding to the SDK platform of the image forming apparatus 20 (illustrated later) of a model different from that of the image forming apparatus 10. Note that the application C 1223 does not indicate one specific SDK application 122 but indicates the entire SDK application 122 under development.

本実施の形態において画像形成装置10と画像形成装置20とのSDKプラットフォームのAPIの間には非互換部分が存在する。ラッパーモジュール1224は、当該非互換部分を吸収するためのプログラムモジュールである。すなわち、ラッパーモジュール1224は、当該非互換部分について、画像形成装置20のSDKプラットフォームが提供するAPIと同じAPIをアプリC1223に対して提供する。   In the present embodiment, an incompatible portion exists between the SDK platform APIs of the image forming apparatus 10 and the image forming apparatus 20. The wrapper module 1224 is a program module for absorbing the incompatible part. In other words, the wrapper module 1224 provides the application C 1223 with the same API as the API provided by the SDK platform of the image forming apparatus 20 for the incompatible part.

本実施の形態において、非互換部分とは、操作パネルの制御に関する部分である。すなわち、画像形成装置10の操作パネル15と画像形成装置20の操作パネルとは、その構成(種別)が異なる。   In the present embodiment, the incompatible part is a part related to control of the operation panel. That is, the operation panel 15 of the image forming apparatus 10 and the operation panel of the image forming apparatus 20 have different configurations (types).

図3は、本実施の形態における操作パネルの構成例を示す図である。同図において、上側が画像形成装置10の操作パネル15を示し、下側が画像形成装置20の操作パネル25を示す。   FIG. 3 is a diagram showing a configuration example of the operation panel in the present embodiment. In the drawing, the upper side shows the operation panel 15 of the image forming apparatus 10, and the lower side shows the operation panel 25 of the image forming apparatus 20.

操作パネル15は、液晶パネル151、テンキー152、スタートキー153、クリアキー154等を備える。液晶パネル151は、操作パネル15における表示領域である。液晶パネル151の解像度は、例えばWVGA程度であり、各種のGUI(Graphical User Interface)を表示可能な能力を有する。また、液晶パネル151には、タッチパネルを備えている。したがって、液晶パネル151には、タッチパネルを介して操作可能な表示要素を含む各種の操作画面を表示可能である。テンキー152は、いわゆるテンキーである。スタートキー153は、ジョブの実行開始指示を受け付けるためのボタンである。クリアキー154は、ジョブの中断指示等を受け付けるためのボタンである。   The operation panel 15 includes a liquid crystal panel 151, a numeric keypad 152, a start key 153, a clear key 154, and the like. The liquid crystal panel 151 is a display area on the operation panel 15. The resolution of the liquid crystal panel 151 is, for example, about WVGA, and has a capability of displaying various GUIs (Graphical User Interfaces). The liquid crystal panel 151 includes a touch panel. Therefore, various operation screens including display elements that can be operated via the touch panel can be displayed on the liquid crystal panel 151. The numeric keypad 152 is a so-called numeric keypad. The start key 153 is a button for receiving a job execution start instruction. The clear key 154 is a button for accepting a job interruption instruction or the like.

一方、操作パネル25は、液晶パネル251、テンキー252、スタートキー253、及びクリアキー254に加え、e1〜e14で示される各種の構成要素(ボタン等)を備える。操作パネル25が操作パネル15に比較して多くのハード的な構成要素を有するのは、液晶パネル251の性能に起因する。すなわち、液晶パネル251は、タッチパネルを備えていない。また、液晶パネル251は、4行分の文字列等を表示可能な表示能力を有し、表示可能な表示要素は所定のボタンや文字列等に限られている。そのため、操作パネル25は、各種の動作モード等を設定するためのユーザインタフェースとしてe1〜e14で示される構成要素を有するのである。なお、テンキー252、スタートキー253、及びクリアキー254の用途及び機能は、操作パネル151のテンキー152、スタートキー153、クリアキー154と同様である。また、本実施の形態における液晶パネル151及び液晶パネル251の性能(表示能力、タッチパネルの有無等)はあくまでも例示であり、本発明の適用範囲を限定するものではない。液晶パネル151は、操作パネル25の全部、又は操作パネル25において操作パネル15との共通部分を除く部分をソフト的(仮想的)に再現可能な表示能力を有していればよい。   On the other hand, the operation panel 25 includes various components (buttons and the like) indicated by e1 to e14 in addition to the liquid crystal panel 251, the numeric keypad 252, the start key 253, and the clear key 254. The operation panel 25 has more hardware components than the operation panel 15 due to the performance of the liquid crystal panel 251. That is, the liquid crystal panel 251 does not include a touch panel. Further, the liquid crystal panel 251 has a display capability capable of displaying character strings and the like for four lines, and the display elements that can be displayed are limited to predetermined buttons and character strings. Therefore, the operation panel 25 has components indicated by e1 to e14 as a user interface for setting various operation modes and the like. The uses and functions of the numeric keypad 252, the start key 253, and the clear key 254 are the same as those of the numeric keypad 152, the start key 153, and the clear key 154 of the operation panel 151. Further, the performance (display capability, presence / absence of touch panel, etc.) of the liquid crystal panel 151 and the liquid crystal panel 251 in this embodiment is merely an example, and does not limit the application range of the present invention. The liquid crystal panel 151 only needs to have a display capability that allows the entire operation panel 25 or a portion of the operation panel 25 other than the common portion with the operation panel 15 to be reproduced in a software (virtual) manner.

本実施の形態では、画像形成装置20に対して、SDKプラットフォーム123の移植が行われる場合を想定する。移植後のSDKプラットフォーム123は、図4に示されるような構成を有する。   In the present embodiment, it is assumed that the SDK platform 123 is transplanted to the image forming apparatus 20. The SDK platform 123 after transplantation has a configuration as shown in FIG.

図4は、異機種への移植後のSDKプラットフォームの構成例を示す図である。同図に示されるように、画像形成装置20におけるSDKプラットフォーム223は、スキャンサービス部2231、印刷サービス部2232、及び4行パネルサービス部2233等を含む予定である。スキャンサービス部2231は、画像形成装置20のスキャン機能に関する制御を行うためのインタフェース(API)をアプリC1223に提供する。印刷サービス部2232は、画像形成装置20の印刷機能に関する制御を行うためのインタフェースをアプリC1223に提供する。4行パネルサービス部2233は、操作パネル25に関する制御を行うためのインタフェースをアプリC1223に提供する。   FIG. 4 is a diagram illustrating a configuration example of the SDK platform after porting to a different model. As shown in the figure, the SDK platform 223 in the image forming apparatus 20 is scheduled to include a scan service unit 2231, a print service unit 2232, a 4-line panel service unit 2233, and the like. The scan service unit 2231 provides the application C 1223 with an interface (API) for performing control related to the scan function of the image forming apparatus 20. The print service unit 2232 provides the application C 1223 with an interface for performing control related to the print function of the image forming apparatus 20. The 4-line panel service unit 2233 provides the application C1223 with an interface for performing control related to the operation panel 25.

画像形成装置20は、必ずしも複数の機能が実装された複合機でなくてもよい。例えば、プリンタ又はスキャナ等の単体の機能を実現する機器であってもよい。この場合、SDKプラットフォーム223は、スキャンサービス部2231又は印刷サービス部2232のいずれか一方を有していればよい。なお、複合機でなくてもよいのは画像形成装置10についても同様である。   The image forming apparatus 20 does not necessarily have to be a multifunction machine having a plurality of functions. For example, a device that realizes a single function such as a printer or a scanner may be used. In this case, the SDK platform 223 only needs to include either the scan service unit 2231 or the print service unit 2232. The same applies to the image forming apparatus 10 that does not have to be a multifunction peripheral.

SDKプラットフォーム223の移植が完了した場合、アプリC1223がSDKプラットフォーム223上においてどのように表示制御処理及び入力制御処理を実行するかについて説明する。   A description will be given of how the application C 1223 executes the display control process and the input control process on the SDK platform 223 when the porting of the SDK platform 223 is completed.

図5は、移植後のSDKプラットフォーム上におけるアプリCによる表示制御の処理手順を説明するためのシーケンス図である。同図のシーケンスにおけるステップは、便宜上簡略化されている。   FIG. 5 is a sequence diagram for explaining a display control processing procedure by the application C on the post-transplant SDK platform. The steps in the sequence of the figure are simplified for convenience.

ステップS101において、アプリC1223は、ウィンドウの作成を4行パネルサービス部2233に対して要求する。ウィンドウの作成要求においては、当該ウィンドウの属性情報(サイズ等)も指定される。4行パネルサービス部2233は、当該要求に応じてウィンドウを作成する(S102)。厳密には、ウィンドウの管理データがメモリ内に作成される。したがって、この段階では表示は行われない。4行パネルサービス部2233は、作成されたウィンドウの識別子(ウィンドウID)をアプリC1223に返却する(S103)。   In step S 101, the application C 1223 requests the 4-line panel service unit 2233 to create a window. In the window creation request, attribute information (size, etc.) of the window is also specified. The 4-line panel service unit 2233 creates a window in response to the request (S102). Strictly speaking, window management data is created in the memory. Therefore, no display is performed at this stage. The 4-line panel service unit 2233 returns the created window identifier (window ID) to the application C1223 (S103).

続いて、アプリC1223は、表示要素(ボタン等の表示部品)の作成を4行パネルサービス部2233に対して要求する(S104)。表示要素の作成要求においては、当該表示要素の属性情報(サイズ等)も指定される。4行パネルサービス部2233は、当該要求に応じて表示要素を作成する(S105)。厳密には、表示要素の管理データがメモリ内に作成される。4行パネルサービス部2233は、作成された表示要素の識別子(要素ID)をアプリC1223に返却する(S106)。その他にも表示要素を表示させる場合、ステップS104〜S106と同様の処理が繰り返される(S107〜S109)。   Subsequently, the application C 1223 requests the 4-line panel service unit 2233 to create a display element (display component such as a button) (S104). In the display element creation request, attribute information (size, etc.) of the display element is also specified. The 4-line panel service unit 2233 creates a display element in response to the request (S105). Strictly speaking, the management data of the display element is created in the memory. The 4-line panel service unit 2233 returns the created display element identifier (element ID) to the application C1223 (S106). In addition, when displaying a display element, the process similar to step S104-S106 is repeated (S107-S109).

続いて、アプリC1223は、ウィンドウID及び要素IDを指定して、ウィンドウに対する表示要素の登録を4行パネルサービス部2233に要求する(S110)。4行パネルサービス部2233は、指定されたウィンドウIDに対応するウィンドウに対して、指定された要素IDに対応する表示要素を登録する(関連付ける)(S111)。4行パネルサービス部2233は、表示要素の登録処理の実行結果をアプリC1223に返却する(S112)。   Subsequently, the application C 1223 specifies the window ID and the element ID, and requests the 4-line panel service unit 2233 to register the display element for the window (S110). The 4-line panel service unit 2233 registers (associates) the display element corresponding to the specified element ID with respect to the window corresponding to the specified window ID (S111). The 4-line panel service unit 2233 returns the execution result of the display element registration processing to the application C 1223 (S112).

続いて、アプリC1223は、ウィンドウIDを指定して、ウィンドウの表示を4行パネルサービス部2233に要求する(S113)。4行パネルサービス部2233は、指定されたウィンドウIDに対応するウィンドウの管理データ及び当該ウィンドウに登録されている表示要素の管理データに基づいて、液晶パネル251にウィンドウを表示させる(S114)。その結果、例えば図3に示されるような画面が液晶パネル251に表示される。続いて、4行パネルサービス部2233は、ウィンドウの表示処理の処理結果をアプリC1223に返却する(S115)。   Subsequently, the application C 1223 designates the window ID and requests the 4-line panel service unit 2233 to display the window (S113). The 4-line panel service unit 2233 displays the window on the liquid crystal panel 251 based on the management data of the window corresponding to the designated window ID and the management data of the display element registered in the window (S114). As a result, for example, a screen as shown in FIG. 3 is displayed on the liquid crystal panel 251. Subsequently, the 4-row panel service unit 2233 returns the processing result of the window display process to the application C1223 (S115).

また、図6は、移植後のSDKプラットフォーム上におけるアプリCによる入力制御の処理手順を説明するためのシーケンス図である。   FIG. 6 is a sequence diagram for explaining the processing procedure of the input control by the application C on the post-transplant SDK platform.

ユーザによって、操作パネル25上のいずれかのハードキーが押下されると、ハードキーの押下イベント(ハードキーの押下の通知情報)はSDKプラットフォーム223の4行パネルサービス部2233に通知される(S201)。イベントには、押下されたハードキーの識別子が含まれている。なお、ハードキーとは、ハード的な構成要素のうち、操作可能なものをいう。4行パネルサービス部2233は、液晶パネル251を現在占有しているアプリC1223に対して当該イベントを通知する(S202)。続いて、アプリC1223は、押下されたハードキーに応じた処理を実行し(S202)、必要に応じてSDKプラットフォーム223を呼び出す(S203)。例えば、液晶パネル25の表示内容を変更する場合は、4行パネルサービス部2233が呼び出される。この場合、図5の処理が実行される。または、スキャン条件を設定する場合は、スキャンサービス部2231が呼び出される。   When any hard key on the operation panel 25 is pressed by the user, a hard key pressing event (hard key pressing notification information) is notified to the 4-line panel service unit 2233 of the SDK platform 223 (S201). ). The event includes the identifier of the pressed hard key. Note that the hard key is an operable component among the hardware components. The 4-row panel service unit 2233 notifies the event to the application C1223 that currently occupies the liquid crystal panel 251 (S202). Subsequently, the application C 1223 executes processing corresponding to the pressed hard key (S202), and calls the SDK platform 223 as necessary (S203). For example, when changing the display content of the liquid crystal panel 25, the 4-line panel service unit 2233 is called. In this case, the process of FIG. 5 is executed. Alternatively, when setting scan conditions, the scan service unit 2231 is called.

なお、図5及び図6において、アプリC1223と4行パネルサービス部2233若しくはSDKプラットフォーム223との間の矢印が、SDKプラットフォーム223によって提供されているインタフェースを示す。   5 and 6, an arrow between the application C 1223 and the 4-row panel service unit 2233 or the SDK platform 223 indicates an interface provided by the SDK platform 223.

SDKプラットフォーム223において、スキャンサービス部2231及び印刷サービス部2232は、画像形成装置10のSDKプラットフォーム123におけるスキャンサービス部1231又は印刷サービス部1232と共通のインタフェースを備える。一方、4行パネルサービス部2233のインタフェースは、操作パネル15と操作パネル25との構成の違いの影響を受けてパネルサービス部1233のインタフェースとは異なる。すなわち、SDKプラットフォーム223において、4行パネルサービス部2233のインタフェースがSDKプラットフォーム123に対する非互換部分に相当する。したがって、ラッパーモジュール1224は、当該非互換部分を吸収する。すなわち、ラッパーモジュール1224は、パネルサービス部1233が実装された画像形成装置10上(SDKプラットフォーム123上)において、4行パネルサービス部2233のインタフェースをアプリC1223に対して提供する。したがって、SDKプラットフォーム223に対応させて開発されているアプリC1223は、図7に示されるようにSDKプラットフォーム123を利用する。   In the SDK platform 223, the scan service unit 2231 and the print service unit 2232 have a common interface with the scan service unit 1231 or the print service unit 1232 in the SDK platform 123 of the image forming apparatus 10. On the other hand, the interface of the 4-line panel service unit 2233 is different from the interface of the panel service unit 1233 due to the influence of the difference in configuration between the operation panel 15 and the operation panel 25. That is, in the SDK platform 223, the interface of the 4-line panel service unit 2233 corresponds to an incompatible part with the SDK platform 123. Therefore, the wrapper module 1224 absorbs the incompatible part. That is, the wrapper module 1224 provides the interface of the 4-line panel service unit 2233 to the application C 1223 on the image forming apparatus 10 (on the SDK platform 123) on which the panel service unit 1233 is mounted. Therefore, the application C 1223 developed in correspondence with the SDK platform 223 uses the SDK platform 123 as shown in FIG.

図7は、アプリCと移植前のSDKプラットフォームとの関係を示す図である。同図に示されるように、アプリC1223は、スキャンサービス部1231及び印刷サービス部1232については直接呼び出すことができる。スキャンサービス部1231及び印刷サービス部1232のインタフェースは、スキャンサービス部2231又は印刷サービス部2232のインタフェースと共通化されているからである。一方、アプリC1223は、パネルサービス部1233は直接呼び出すことはできない。アプリC1223は、4行パネルサービス部2233を呼び出すように実装されているからである。したがって、アプリC1223は、4行パネルサービス部2233と同一のインタフェースを提供するラッパーモジュール1224を呼び出す。ラッパーモジュール1224は、アプリC1223からの要求をパネルサービス部1233に対する要求に変換し、パネルサービス部1233を呼び出す。パネルサービス部1233は、ラッパーモジュール1224からの要求に応じて液晶パネル151に対する表示制御を実行する。これにより、アプリC1223が要求する表示内容が液晶パネル151上において実現される。   FIG. 7 is a diagram showing the relationship between the application C and the SDK platform before porting. As shown in the figure, the application C 1223 can directly call the scan service unit 1231 and the print service unit 1232. This is because the interface of the scan service unit 1231 and the print service unit 1232 is shared with the interface of the scan service unit 2231 or the print service unit 2232. On the other hand, the application C 1223 cannot be called directly by the panel service unit 1233. This is because the application C 1223 is mounted so as to call the four-row panel service unit 2233. Therefore, the application C 1223 calls the wrapper module 1224 that provides the same interface as the 4-row panel service unit 2233. The wrapper module 1224 converts the request from the application C 1223 into a request for the panel service unit 1233 and calls the panel service unit 1233. The panel service unit 1233 executes display control for the liquid crystal panel 151 in response to a request from the wrapper module 1224. Thereby, the display content requested by the application C 1223 is realized on the liquid crystal panel 151.

なお、図4において4行パネルサービス部2233に付された点線、及び図7においてラッパーモジュール1224に付された点線は、4行パネルサービス部2233のインタフェースを表現している。   Note that the dotted line attached to the 4-row panel service unit 2233 in FIG. 4 and the dotted line attached to the wrapper module 1224 in FIG.

続いて、ラッパーモジュール1224について詳しく説明する。図8は、本実施の形態におけるラッパーモジュールの構成例を示す図である。   Next, the wrapper module 1224 will be described in detail. FIG. 8 is a diagram illustrating a configuration example of the wrapper module in the present embodiment.

同図において、ラッパーモジュール1224は、操作画面表示部1224a、イベント処理部1224b、差分表示部1224c、差分判定部1224d、装置情報取得部1224e、アプリ情報取得部1224f、及びパネル構成情報記憶部1224g等を有する。   In the figure, a wrapper module 1224 includes an operation screen display unit 1224a, an event processing unit 1224b, a difference display unit 1224c, a difference determination unit 1224d, a device information acquisition unit 1224e, an application information acquisition unit 1224f, a panel configuration information storage unit 1224g, and the like. Have

操作画面表示部1224a及びイベント処理部1224bは、アプリC1223に対して4行パネルサービス部2233のインタフェースを提供する部分である。操作画面表示部1224aは、表示制御に関するインタフェースを提供する。イベント処理部1224bは、入力に応じたイベントの通知に関するインタフェースを提供する。   The operation screen display unit 1224a and the event processing unit 1224b are portions that provide an interface of the four-row panel service unit 2233 to the application C1223. The operation screen display unit 1224a provides an interface related to display control. The event processing unit 1224b provides an interface related to notification of an event corresponding to an input.

差分表示部1224cは、操作パネル15と操作パネル25との差分(相違部分)の表示制御を行う。具体的には、操作パネル25が有しており、操作パネル15が有していないハードキーをソフト的に液晶パネル151に表示させる。したがって、差分表示部1224cによって操作パネル25が有するハードキーの一部が操作パネル15に表示される。差分判定部1224dは、装置情報取得部1224eによって取得される情報、アプリ情報取得部1224fによって取得される情報、及びパネル構成情報記憶部1224gに記録されている情報に基づいて、ラッパーモジュール1224が動作している装置(画像形成装置10)が有する操作パネル(操作パネル15)と、アプリC1223が対応している操作パネル(操作パネル25)との差分を判定する。パネル構成情報記憶部1224gは、HDD114において、操作パネルの種別ごとに操作パネルの構成情報を記憶する記憶領域(例えば、ファイル)である。装置情報取得部1224eは、ラッパーモジュール1224が動作する画像形成装置10より操作パネル15の種別を示す情報(種別情報)を動的に取得する。アプリ情報取得部1224fは、ラッパーモジュール1224を利用して操作画面を表示させようとするアプリC1223が対応する操作パネルの種別情報を取得する。   The difference display unit 1224c performs display control of a difference (difference portion) between the operation panel 15 and the operation panel 25. Specifically, hard keys that the operation panel 25 has and the operation panel 15 does not have are displayed on the liquid crystal panel 151 in software. Therefore, some of the hard keys of the operation panel 25 are displayed on the operation panel 15 by the difference display unit 1224c. The difference determination unit 1224d operates the wrapper module 1224 based on information acquired by the device information acquisition unit 1224e, information acquired by the application information acquisition unit 1224f, and information recorded in the panel configuration information storage unit 1224g. The difference between the operation panel (operation panel 15) of the device (image forming apparatus 10) that is being operated and the operation panel (operation panel 25) supported by the application C1223 is determined. The panel configuration information storage unit 1224g is a storage area (for example, a file) that stores operation panel configuration information for each type of operation panel in the HDD 114. The apparatus information acquisition unit 1224e dynamically acquires information (type information) indicating the type of the operation panel 15 from the image forming apparatus 10 on which the wrapper module 1224 operates. The application information acquisition unit 1224f acquires the type information of the operation panel corresponding to the application C1223 that is to display the operation screen using the wrapper module 1224.

以下、画像形成装置10上においてアプリC1223を動作させる際の処理手順について説明する。図9は、アプリCによるラッパーモジュールを用いた表示制御処理の処理手順を説明するためのシーケンス図である。同図において、アプリC1223とラッパーモジュール1224とのやりとりは、図5におけるアプリC1223と4行パネルサービス部2233とのやりとりと一致する。   Hereinafter, a processing procedure when the application C1223 is operated on the image forming apparatus 10 will be described. FIG. 9 is a sequence diagram for explaining the processing procedure of the display control process using the wrapper module by the application C. In the figure, the exchange between the application C 1223 and the wrapper module 1224 is the same as the exchange between the application C 1223 and the 4-line panel service unit 2233 in FIG.

ステップS301において、アプリC1223は、ウィンドウの作成をラッパーモジュール1224の操作画面表示部1224aに対して要求する。操作画面表示部1224aは、パネルサービス部1233のインタフェースに従ってウィンドウの作成要求をパネルサービス部1233に入力する(S302)。パネルサービス部1233は、当該要求に応じてウィンドウを作成する(S303)。厳密には、ウィンドウの管理データがメモリ内に作成される。したがって、この段階では表示は行われない。パネルサービス部1233は、作成されたウィンドウの識別子(ウィンドウID)を操作画面表示部1224aに返却する(S304)。続いて、操作画面表示部1224aは、ウィンドウIDをアプリC1223に返却する(S305)。但し、4行パネルサービス部2233のインタフェースに係るウィンドウIDと、パネルサービス部1233のインタフェースに係るウィンドウIDとのデータ形式が異なったり、ID体系が異なったりする場合、操作画面表示部1224aは、斯かる相違点を吸収するための変換を実行し、変換後のウィンドウIDをアプリC1223に返却する。斯かる変換は、後述される要素IDについても実行されうる。   In step S301, the application C 1223 requests the operation screen display unit 1224a of the wrapper module 1224 to create a window. The operation screen display unit 1224a inputs a window creation request to the panel service unit 1233 according to the interface of the panel service unit 1233 (S302). The panel service unit 1233 creates a window in response to the request (S303). Strictly speaking, window management data is created in the memory. Therefore, no display is performed at this stage. The panel service unit 1233 returns the created window identifier (window ID) to the operation screen display unit 1224a (S304). Subsequently, the operation screen display unit 1224a returns the window ID to the application C1223 (S305). However, when the data format of the window ID related to the interface of the 4-line panel service unit 2233 and the window ID related to the interface of the panel service unit 1233 are different or the ID system is different, the operation screen display unit 1224a Conversion for absorbing such differences is executed, and the window ID after conversion is returned to the application C1223. Such conversion can also be executed for an element ID described later.

続いて、アプリC1223は、表示要素の作成を操作画面表示部1224aに対して要求する(S306)。操作画面表示部1224aは、当該表示要素が、パネルサービス部1233によって提供される表示要素と一対一に対応する場合、パネルサービス部1233のインタフェースに従って当該表示要素の作成要求をパネルサービス部1233に入力する(S307)。パネルサービス部1233は、当該要求に応じて表示要素を作成する(S308)。厳密には、表示要素の管理データがメモリ内に作成される。パネルサービス部1233は、作成された表示要素の識別子(表示要素ID)を操作画面表示部1224aに返却する(S309)。続いて、操作画面表示部1224aは、表示要素IDをアプリC1223に返却する(S310)。   Subsequently, the application C 1223 requests the operation screen display unit 1224a to create a display element (S306). When the display element corresponds to the display element provided by the panel service unit 1233 on a one-to-one basis, the operation screen display unit 1224a inputs a display element creation request to the panel service unit 1233 according to the interface of the panel service unit 1233. (S307). The panel service unit 1233 creates a display element in response to the request (S308). Strictly speaking, the management data of the display element is created in the memory. The panel service unit 1233 returns the created display element identifier (display element ID) to the operation screen display unit 1224a (S309). Subsequently, the operation screen display unit 1224a returns the display element ID to the application C1223 (S310).

更に表示要素を表示させる必要が有る場合、アプリC1223は、当該表示要素の作成を操作画面表示部1224aに対して要求する(S311)。当該表示要素が、パネルサービス部1233によって提供される表示要素と一対一に対応しない場合、操作画面表示部1224aは、当該表示要素又は当該表示要素の擬似的に表現する表示要素を表示させるためにパネルサービス部1233の複数のインタフェースを呼び出す。図9では、操作画面表示部1224aは、ステップS312及びS315において表示要素の作成をパネルサービス部1233に要求している。パネルサービス部1233は、それぞれの要求に応じて表示要素(表示要素の管理データ)を作成し(S313、S316)、各表示要素の要素IDを操作画面表示部1224aに返却している(S314、S317)。すなわち、この例では、アプリC1223から要求された一つの表示要素は、パネルサービス部1233においては二つの表示要素で構成可能な場合が示されている。   Further, when it is necessary to display a display element, the application C 1223 requests the operation screen display unit 1224a to create the display element (S311). When the display element does not correspond to the display element provided by the panel service unit 1233 on a one-to-one basis, the operation screen display unit 1224a displays the display element or a display element that represents the display element in a pseudo manner. Calls a plurality of interfaces of the panel service unit 1233. In FIG. 9, the operation screen display unit 1224a requests the panel service unit 1233 to create a display element in steps S312 and S315. The panel service unit 1233 creates display elements (display element management data) in response to each request (S313, S316), and returns the element ID of each display element to the operation screen display unit 1224a (S314, S317). That is, in this example, the case where one display element requested from the application C 1223 can be configured with two display elements in the panel service unit 1233 is shown.

続いて、操作画面表示部1224aは、パネルサービス部1233より返却された二つの要素IDに対して一つの要素IDを生成し、生成された要素IDをアプリC1223に返却する(S318)。なお、ラッパーモジュール1224は、パネルサービス部1233より返却された二つの要素IDと、当該二つの要素IDに対して生成した一つの要素IDとを関連付けてRAM112に記録しておく。   Subsequently, the operation screen display unit 1224a generates one element ID for the two element IDs returned from the panel service unit 1233, and returns the generated element ID to the application C1223 (S318). Note that the wrapper module 1224 records the two element IDs returned from the panel service unit 1233 and the one element ID generated for the two element IDs in the RAM 112 in association with each other.

続いて、アプリC1223は、操作画面表示部1224aより返却されたウィンドウID及び要素IDを指定して、ウィンドウに対する表示要素の登録を操作画面表示部1224aに要求する(S110)。操作画面表示部1224aは、当該ウィンドウID及び要素IDを必要に応じて変換し、変換後のウィンドウID及び要素IDを指定して、ウィンドウに対する表示要素の登録をパネルサービス部1233に要求する(S320)。本実施の形態では、少なくとも、ステップS318においてアプリC1223に返却された要素IDについて、当該要素IDに関連付けられてRAM112に記録されている二つの要素IDへの変換が行われる。   Subsequently, the application C 1223 specifies the window ID and element ID returned from the operation screen display unit 1224a, and requests the operation screen display unit 1224a to register the display element for the window (S110). The operation screen display unit 1224a converts the window ID and element ID as necessary, specifies the converted window ID and element ID, and requests the panel service unit 1233 to register the display element for the window (S320). ). In the present embodiment, at least the element ID returned to the application C1223 in step S318 is converted into two element IDs associated with the element ID and recorded in the RAM 112.

続いて、パネルサービス部1233は、指定されたウィンドウIDに対応するウィンドウに対して、指定された要素IDに対応する表示要素を登録する(関連付ける)(S321)。パネルサービス部1233は、表示要素の登録処理の実行結果を操作画面表示部1224aに返却する(S322)。操作画面表示部1224aは、当該実行結果をアプリC1223に返却する(S323)。なお、実行結果を示すデータについて、パネルサービス部1233のインタフェースと4行パネルサービス部2233のインタフェースの間でデータ型等が異なる場合、操作画面表示部1224aは、斯かる相違を吸収するための変換を行う。この点については、後述されるステップS328においても同様である。   Subsequently, the panel service unit 1233 registers (associates) the display element corresponding to the specified element ID with respect to the window corresponding to the specified window ID (S321). The panel service unit 1233 returns the execution result of the display element registration process to the operation screen display unit 1224a (S322). The operation screen display unit 1224a returns the execution result to the application C1223 (S323). If the data type or the like of the data indicating the execution result is different between the interface of the panel service unit 1233 and the interface of the 4-line panel service unit 2233, the operation screen display unit 1224a converts the difference to absorb such a difference. I do. This also applies to step S328 described later.

続いて、アプリC1223は、ウィンドウIDを指定して、ウィンドウの表示を操作画面表示部1224aに要求する(S324)。操作画面表示部1224aは、必要に応じてウィンドウIDの変換を行い、変換後のウィンドウIDを指定してウィンドウの表示をパネルサービス部1233に要求する(S324)。続いて、アプリC1223は、ウィンドウIDを指定して、ウィンドウの表示を4行パネルサービス部2233に要求する(S325)。パネルサービス部1233は、指定されたウィンドウIDに対応するウィンドウの管理データ及び当該ウィンドウに登録されている表示要素の管理データに基づいて、液晶パネル151にウィンドウを表示させる(S326)。続いて、パネルサービス部1233は、ウィンドウの表示処理の処理結果を操作画面表示部1224aに返却する(S327)。操作画面表示部1224aは、ウィンドウの表示処理の処理結果をアプリC1223に返却する(S328)。   Subsequently, the application C 1223 specifies the window ID and requests the operation screen display unit 1224a to display the window (S324). The operation screen display unit 1224a converts the window ID as necessary, specifies the converted window ID, and requests the panel service unit 1233 to display the window (S324). Subsequently, the application C 1223 designates the window ID and requests the 4-line panel service unit 2233 to display the window (S325). The panel service unit 1233 displays the window on the liquid crystal panel 151 based on the window management data corresponding to the specified window ID and the display element management data registered in the window (S326). Subsequently, the panel service unit 1233 returns the processing result of the window display process to the operation screen display unit 1224a (S327). The operation screen display unit 1224a returns the processing result of the window display process to the application C1223 (S328).

続いて、ステップS325の詳細について説明する。図10は、ラッパーモジュールによるウィンドウの表示要求処理の処理手順を説明するためのフローチャートである。   Next, details of step S325 will be described. FIG. 10 is a flowchart for explaining the processing procedure of the window display request processing by the wrapper module.

アプリC1223からのウィンドウの表示要求に応じ、操作画面表示部1224aは、操作パネル15とアプリC1223が対応している操作パネル(操作パネル25)との差分は、液晶パネル151に表示されているか否かを判定する(S401)。当該判定は、液晶パネル151の表示状態を確認することによって行われてもよいし、差分が表示中であるか否かを管理するためのフラグ変数等を参照して行われてもよい。   In response to the window display request from the application C1223, the operation screen display unit 1224a determines whether the difference between the operation panel 15 and the operation panel (operation panel 25) supported by the application C1223 is displayed on the liquid crystal panel 151. Is determined (S401). The determination may be performed by confirming the display state of the liquid crystal panel 151, or may be performed with reference to a flag variable for managing whether or not the difference is being displayed.

差分は表示中ではない場合(S401でNo)、装置情報取得部1224eは、SDKプラットフォーム123を介して画像形成装置10が備えている操作パネル15の種別情報(以下、「装置側種別情報」という。)を取得する(S402)。例えば、装置側種別情報として「WVGA」といった識別子が取得される。なお、装置側種別情報は、画像形成装置10のROM113又はHDD114に記録されている。   When the difference is not being displayed (No in S401), the apparatus information acquisition unit 1224e displays the type information (hereinafter referred to as “apparatus side type information”) of the operation panel 15 provided in the image forming apparatus 10 via the SDK platform 123. .) Is acquired (S402). For example, an identifier such as “WVGA” is acquired as the device-side type information. The device type information is recorded in the ROM 113 or HDD 114 of the image forming apparatus 10.

続いて、アプリ情報取得部1224fは、ウィンドウの表示要求元のアプリC1223が対応している操作パネル25の種別情報(以下、「アプリ側種別情報」という。)を取得する(S403)。例えば、アプリ側種別情報として「4LINES」といった識別子が取得される。なお、アプリ側種別情報は、アプリC1223に関連付けられてSDカード80又はHDD114に記録されているアプリC1223の属性情報ファイルより取得される。又は、アプリC1223に対して動的に問い合わせることにより取得されてもよい。   Subsequently, the application information acquisition unit 1224f acquires type information (hereinafter, referred to as “application-side type information”) of the operation panel 25 supported by the window display request source application C1223 (S403). For example, an identifier such as “4LINES” is acquired as the application-side type information. Note that the application-side type information is acquired from the attribute information file of the application C 1223 that is associated with the application C 1223 and recorded in the SD card 80 or the HDD 114. Alternatively, it may be acquired by dynamically inquiring to the application C1223.

続いて、差分判定部1224dは、装置側種別情報、アプリ側種別情報、及びパネル構成情報記憶部1224gに記録されているパネル構成情報に基づいて、操作パネル15と操作パネル25との差分を判定する(S404)。   Subsequently, the difference determination unit 1224d determines the difference between the operation panel 15 and the operation panel 25 based on the device side type information, the application side type information, and the panel configuration information recorded in the panel configuration information storage unit 1224g. (S404).

図11は、パネル構成情報の例を示す図である。同図に示されるように、パネル構成情報には、操作パネルの種別(パネル種別)ごとに、構成情報が記録されている。構成情報としては、構成要素ごとにその識別子が記録されている。例えば、パネル種別が「WVGA」である操作パネルは、WVGA、START、CLEAR、1、2、3等のハードキーを有することが示されている。WVGAは液晶パネル、STARTはスタートキー、CLEARはクリアキー、1、2、3等は、テンキーの各ボタンを示す。   FIG. 11 is a diagram illustrating an example of panel configuration information. As shown in the figure, in the panel configuration information, configuration information is recorded for each type of operation panel (panel type). As the configuration information, an identifier is recorded for each component. For example, an operation panel having a panel type “WVGA” has hard keys such as WVGA, START, CLEAR, 1, 2, 3, and the like. WVGA is a liquid crystal panel, START is a start key, CLEAR is a clear key, 1, 2, 3, etc. are buttons on a numeric keypad.

なお、同図では、各構成要素の識別子のみが記録されている例が示されているが、構成要素ごとに、操作パネル上における位置情報(座標情報)、色、形状、及びサイズ等の属性情報についても、例えば、各構成要素の識別子に続いて記録されている。   In addition, although the example in which only the identifier of each component is recorded is shown in the figure, attributes such as position information (coordinate information), color, shape, and size on the operation panel are shown for each component. Information is also recorded, for example, following the identifier of each component.

また、本実施の形態では、液晶パネルの種別がパネル種別の識別子として利用されているが、これは便宜的なものである。液晶パネルの種別と操作パネルの構成とが一対一に対応しない場合は、液晶パネルに依存しないパネル種別の識別子を別途設ければよい。例えば、画像形成装置の機種名をパネル種別の識別子としてもよい。基本的に機種と操作パネルとの構成との間には対応関係が有るからである。   In this embodiment, the type of the liquid crystal panel is used as an identifier of the panel type, but this is for convenience. If the type of the liquid crystal panel and the configuration of the operation panel do not correspond one-to-one, a panel type identifier that does not depend on the liquid crystal panel may be separately provided. For example, the model name of the image forming apparatus may be used as the panel type identifier. This is because there is basically a correspondence between the model and the configuration of the operation panel.

差分判定部1224dは、装置側種別情報の「WVGA」とアプリ側種別情報の「4LINES」とをパネル構成情報のパネル種別に当てはめることにより、それぞれに対応する構成情報を取得する。差分判定部1224dは、二つの構成情報を比較し、アプリ側種別情報に係る構成情報に含まれていて、装置側種別情報に係る構成情報に含まれていない構成要素を差分として抽出する。構成要素の一致又は不一致は、構成要素の識別子に基づいて判定される。したがって、構成要素の属性情報は考慮されない。但し、構成要素の属性情報についても、当該一致又は不一致の判定材料としてもよい。   The difference determination unit 1224d obtains configuration information corresponding to each of the device type information by applying “WVGA” of the device side type information and “4LINES” of the application side type information to the panel type of the panel configuration information. The difference determination unit 1224d compares the two pieces of configuration information, and extracts, as a difference, a configuration element that is included in the configuration information related to the application-side type information and is not included in the configuration information related to the device-side type information. A match or mismatch of the components is determined based on the identifier of the component. Therefore, the attribute information of the constituent elements is not considered. However, the attribute information of the constituent elements may also be used as a material for determining the coincidence or mismatch.

本実施の形態では、図11の「4LiNES」に係る構成情報の中で、破線で囲まれた部分が差分として抽出される。当該差分は、図3において、e1〜e14で示される構成要素、及び液晶パネル251である。但し、図11においては、便宜上、e1〜e14に対応する全ての構成要素の識別子は記載されていない。   In the present embodiment, a portion surrounded by a broken line is extracted as a difference in the configuration information related to “4LiNES” in FIG. The difference is the components indicated by e1 to e14 and the liquid crystal panel 251 in FIG. However, in FIG. 11, for the sake of convenience, identifiers of all the constituent elements corresponding to e1 to e14 are not described.

続いて、差分表示部1224cは、差分に含まれている構成要素の表示要求をパネルサービス部1233に要求する(S405)。ステップS405では、差分に含まれている構成要素の数に応じて、パネルサービス部1233に対して複数回の表示要求が入力されうる。また、構成要素の種別等に応じて複数種類の表示要求(関数又はメソッドの呼び出し)がパネルサービス部1233に対して行われうる。差分に含まれる構成要素と完全に一致する構成要素を表示させるためのインタフェースがパネルサービス部1233に無い場合、差分表示部1224cは、当該構成要素に類似した構成要素を表示可能なインタフェースを呼び出す。   Subsequently, the difference display unit 1224c requests the panel service unit 1233 to display a component included in the difference (S405). In step S405, a plurality of display requests can be input to the panel service unit 1233 according to the number of components included in the difference. Also, a plurality of types of display requests (function or method call) can be made to the panel service unit 1233 according to the type of component. When the panel service unit 1233 does not have an interface for displaying a component that completely matches the component included in the difference, the difference display unit 1224c calls an interface that can display a component similar to the component.

続いて、操作画面表示部1224aは、アプリC1223より要求されたウィンドウの表示要求をパネルサービス部1233に要求する(S406)。当該ウィンドウは、差分としてソフト的(仮想的)に再現された液晶パネル251の中に表示される。   Subsequently, the operation screen display unit 1224a requests the panel service unit 1233 to display a window requested by the application C1223 (S406). The window is displayed in the liquid crystal panel 251 reproduced in a software (virtual) manner as a difference.

一方、既に差分は表示されている場合(S401でYes)、ステップS402〜S405は実行されることなくステップS406が実行される。   On the other hand, when the difference is already displayed (Yes in S401), step S406 is executed without executing steps S402 to S405.

図10の処理の結果、操作パネル15は、図12に示されるような状態となる。図12は、異機種の操作パネルとの差分が液晶パネル内に表示された操作パネルの例を示す図である。   As a result of the processing in FIG. 10, the operation panel 15 is in a state as shown in FIG. FIG. 12 is a diagram illustrating an example of an operation panel in which a difference from an operation panel of a different model is displayed in the liquid crystal panel.

図12中、図3と同一部分には同一符号を付し、その説明は省略する。同図に示されるように、操作パネル15の液晶パネル151内には、操作パネル25との差分であるハードウェア(液晶パネル251及びハードキー等)がソフト的に再現されている。ソフト的に再現された液晶パネル251内には、アプリC1223より要求された表示要素が表示されている。   In FIG. 12, the same parts as those of FIG. As shown in the figure, in the liquid crystal panel 151 of the operation panel 15, hardware (liquid crystal panel 251, hard keys, etc.) that is a difference from the operation panel 25 is reproduced in software. Display elements requested by the application C1223 are displayed in the liquid crystal panel 251 reproduced in software.

液晶パネル151内に差分のみが表示されることにより、操作パネル15上において実際の操作パネル25に近い操作感をユーザに提供することができる。また、各構成要素をより大きく表示させることができる。すなわち、仮に、操作パネル25の全部を液晶パネル15内に表示させようとした場合、各構成要素のサイズは小さくせざるを得ない。   By displaying only the difference in the liquid crystal panel 151, it is possible to provide the user with an operation feeling close to the actual operation panel 25 on the operation panel 15. Moreover, each component can be displayed larger. That is, if the entire operation panel 25 is to be displayed in the liquid crystal panel 15, the size of each component must be reduced.

なお、差分は、パネル構成情報に基づいて判定されるため、テンキー252やスタートキー253等も液晶パネル151に表示させたい場合は、WVGAに係る構成情報より、テンキー152やスタートキー153に対応する識別子等を削除すればよい。   Since the difference is determined based on the panel configuration information, when the numeric keypad 252 and the start key 253 are to be displayed on the liquid crystal panel 151, the difference corresponds to the numeric keypad 152 and the start key 153 from the configuration information related to WVGA. What is necessary is just to delete an identifier etc.

続いて、図12に示されるような状態の操作パネル15において操作指示が入力された際の処理手順について説明する。   Next, a processing procedure when an operation instruction is input on the operation panel 15 in the state shown in FIG. 12 will be described.

図13は、ラッパーモジュールを介したアプリCによる入力制御の処理手順を説明するためのシーケンス図である。   FIG. 13 is a sequence diagram for explaining a processing procedure of input control by the application C via the wrapper module.

ユーザによって、操作パネル15上のいずれかのハードキーが押下されると、ハードキーの押下イベント(ハードキーの押下の通知情報)はSDKプラットフォーム123のパネルサービス部1233に通知される(S501)。パネルサービス部1233は、現在液晶パネル151を占有しているラッパーモジュール1224のイベント処理部1224bに対して当該イベントを通知する(S502)。イベント処理部1224bは、最後のウィンドウの表示要求元であるアプリC1223にイベントを通知する(S503)。すなわち、ラッパーモジュール1224の操作画面表示部1224aは、ウィンドウの表示要求を受けた際に、表示要求元の識別子をRAM112に記録しておく。なお、操作パネル15と操作パネル25とにおいて共通するハードキーであっても、パネルサービス部1233と4行パネルサービス部2233とにおいてイベントのデータ形式や割り当てている識別子等が異なる場合がある。斯かる場合、ラッパーモジュール1224は、当該相違点を吸収するための変換を行い、変換後のイベントをアプリC1223に通知する。   When one of the hard keys on the operation panel 15 is pressed by the user, a hard key press event (hard key press notification information) is notified to the panel service unit 1233 of the SDK platform 123 (S501). The panel service unit 1233 notifies the event to the event processing unit 1224b of the wrapper module 1224 that currently occupies the liquid crystal panel 151 (S502). The event processing unit 1224b notifies the event to the application C 1223 that is the display request source of the last window (S503). That is, the operation screen display unit 1224a of the wrapper module 1224 records the identifier of the display request source in the RAM 112 when receiving a window display request. Even if the operation panel 15 and the operation panel 25 have the same hard key, the event data format and the assigned identifier may differ between the panel service unit 1233 and the 4-line panel service unit 2233. In such a case, the wrapper module 1224 performs conversion to absorb the difference, and notifies the converted event to the application C1223.

続いて、アプリC1223は、押下されたハードキーに応じた処理を実行し(S504)、必要に応じてラッパーモジュール1224の操作画面表示部1224a又はSDKプラットフォーム123を呼び出す。例えば、ソフト的に再現されている液晶パネル251の表示内容を変更する場合は、ラッパーモジュール1224の操作画面表示部1224aが呼び出される(S505)。当該呼び出しに応じ、図9において説明した処理が実行される。また、スキャンサービス部1231又は印刷サービス部1232等、SDKプラットフォーム223とインタフェースが共通する部分(互換性を有する部分)を呼び出す必要が有る場合、アプリC1223は、SDKプラットフォーム123を直接呼び出す。   Subsequently, the application C 1223 executes processing corresponding to the pressed hard key (S504), and calls the operation screen display unit 1224a of the wrapper module 1224 or the SDK platform 123 as necessary. For example, when changing the display content of the liquid crystal panel 251 reproduced in software, the operation screen display unit 1224a of the wrapper module 1224 is called (S505). In response to the call, the processing described in FIG. 9 is executed. In addition, when there is a need to call a part having a common interface with the SDK platform 223 (part having compatibility), such as the scan service part 1231 or the print service part 1232, the application C 1223 directly calls the SDK platform 123.

また、ユーザによって、液晶パネル151上にソフト的(仮想的)に再現された操作パネル251のいずれかのハードキー(以下、「仮想ハードキー」という。)が押下されると、仮想ハードキーの押下イベントはSDKプラットフォーム123のパネルサービス部1233に通知される(S201)。パネルサービス部1233は、現在液晶パネル151を占有しているイベント処理部1224bに対して当該イベントを通知する(S512)。ここで、イベント処理部1224bには、当該イベントは表示要素に対する押下イベントとして通知される。仮想ハードキーは、パネルサービス部1233にとっては液晶パネル151上の表示要素だからである。したがって、イベント処理部1224bは、イベントの内容を表示要素に関するものから、操作パネル251におけるハードキーに関するものに変換する。当該変換のための対応情報(表示要素とハードキーとの対応情報)は、差分表示部1224cが差分の表示要求をパネルサービス部1233に行った際にRAM112に記録される。すなわち、差分表示部1224cは、ハードキーに対する構成要素の表示要求に対してパネルサービス部1233より返却される要素IDと、ハードキーの識別子(パネル構成情報に記録されている識別子)とを対応情報をRAM112に記録しておく。イベント処理部1224bは、当該対応情報に基づいて、イベントの内容を変換する。   Further, when one of the hard keys (hereinafter referred to as “virtual hard key”) of the operation panel 251 reproduced softly (virtually) on the liquid crystal panel 151 is pressed by the user, the virtual hard key is displayed. The press event is notified to the panel service unit 1233 of the SDK platform 123 (S201). The panel service unit 1233 notifies the event processing unit 1224b currently occupying the liquid crystal panel 151 of the event (S512). Here, the event processing unit 1224b is notified of the event as a press event for the display element. This is because the virtual hard key is a display element on the liquid crystal panel 151 for the panel service unit 1233. Therefore, the event processing unit 1224b converts the contents of the event from those related to the display elements to those related to the hard keys on the operation panel 251. Corresponding information for the conversion (corresponding information between display elements and hard keys) is recorded in the RAM 112 when the difference display unit 1224c makes a difference display request to the panel service unit 1233. That is, the difference display unit 1224c associates the element ID returned from the panel service unit 1233 with respect to the display request of the component for the hard key and the hard key identifier (identifier recorded in the panel configuration information). Is stored in the RAM 112. The event processing unit 1224b converts the content of the event based on the correspondence information.

続いて、イベント処理部1224bは、最後のウィンドウの表示要求元であるアプリC1223に変換後のイベントを通知する(S513)。続いて、アプリC1223は、押下された仮想ハードキーに応じた処理を実行し(S514)、必要に応じてラッパーモジュール1224の操作画面表示部1224a又はSDKプラットフォーム123を呼び出す(S515)。   Subsequently, the event processing unit 1224b notifies the converted event to the application C1223 which is the display request source of the last window (S513). Subsequently, the application C 1223 executes processing corresponding to the pressed virtual hard key (S514), and calls the operation screen display unit 1224a of the wrapper module 1224 or the SDK platform 123 as necessary (S515).

なお、本実施の形態の内容は、本実施の形態において説明した操作パネルと異なる操作パネルを備えた画像形成装置とアプリC1223との間においても適用可能である。装置側種別情報及びアプリ側種別情報は、ラッパーモジュール1224によって動的に取得され、ラッパーモジュール1224が有するパネル構成情報に基づいて動的に判定されるからである。この点について図14を用いて説明する。   Note that the contents of this embodiment can also be applied between the application C1223 and an image forming apparatus having an operation panel different from the operation panel described in this embodiment. This is because the device-side type information and the application-side type information are dynamically acquired by the wrapper module 1224 and are dynamically determined based on the panel configuration information included in the wrapper module 1224. This point will be described with reference to FIG.

図14は、SDKアプリが対応する操作パネルと画像形成装置が有する操作パネルとの差分のラッパーモジュールによる動的な判定の様子を示す図である。   FIG. 14 is a diagram illustrating a dynamic determination by a wrapper module of a difference between an operation panel supported by the SDK application and an operation panel included in the image forming apparatus.

同図では、機種Aの画像形成装置40a、機種Bの画像形成装置40b、及び機種Cの画像形成装置40cにおいてアプリC1223が実装されている例が示されている。機種毎に操作パネルの構成は異なるものとする。なお、SDKプラットフォーム123等は便宜上省略されている。   In the drawing, an example in which the application C1223 is mounted on the model A image forming apparatus 40a, the model B image forming apparatus 40b, and the model C image forming apparatus 40c is illustrated. The configuration of the operation panel differs for each model. Note that the SDK platform 123 and the like are omitted for convenience.

画像形成装置40aにおいてアプリC1223が動作する場合、ラッパーモジュール1224の差分判定部1224dは、アプリC1223より取得されるアプリ側種別情報1223fと、画像形成装置40aより取得され装置側種別情報41aと、ラッパーモジュール1224のパネル構成情報記憶部1224gに記録されているパネル構成情報とに基づいて、アプリC1223が対応する操作パネル25と画像形成装置40aが備える操作パネルとの差分を判定する。   When the application C1223 operates in the image forming apparatus 40a, the difference determination unit 1224d of the wrapper module 1224 includes the application side type information 1223f acquired from the application C1223, the apparatus side type information 41a acquired from the image forming apparatus 40a, and the wrapper. Based on the panel configuration information recorded in the panel configuration information storage unit 1224g of the module 1224, the difference between the operation panel 25 corresponding to the application C1223 and the operation panel included in the image forming apparatus 40a is determined.

また、画像形成装置40bにおいてアプリC1223が動作する場合、ラッパーモジュール1224の差分判定部1224dは、アプリC1223より取得されるアプリ側種別情報1223fと、画像形成装置40bより取得され装置側種別情報41bと、ラッパーモジュール1224のパネル構成情報記憶部1224gに記録されているパネル構成情報とに基づいて、アプリC1223が対応する操作パネル25と画像形成装置40bが備える操作パネルとの差分を判定する。   When the application C1223 operates in the image forming apparatus 40b, the difference determination unit 1224d of the wrapper module 1224 includes the application side type information 1223f acquired from the application C1223, the apparatus side type information 41b acquired from the image forming apparatus 40b, Based on the panel configuration information recorded in the panel configuration information storage unit 1224g of the wrapper module 1224, the difference between the operation panel 25 corresponding to the application C 1223 and the operation panel included in the image forming apparatus 40b is determined.

更に、画像形成装置40cにおいてアプリC1223が動作する場合、ラッパーモジュール1224の差分判定部1224dは、アプリC1223より取得されるアプリ側種別情報1223fと、画像形成装置40cより取得され装置側種別情報41cと、ラッパーモジュール1224のパネル構成情報記憶部1224gに記録されているパネル構成情報とに基づいて、アプリC1223が対応する操作パネル25と画像形成装置40cが備える操作パネルとの差分を判定する。   Further, when the application C1223 operates in the image forming apparatus 40c, the difference determination unit 1224d of the wrapper module 1224 includes the application side type information 1223f acquired from the application C1223, and the apparatus side type information 41c acquired from the image forming apparatus 40c. Based on the panel configuration information recorded in the panel configuration information storage unit 1224g of the wrapper module 1224, the difference between the operation panel 25 corresponding to the application C1223 and the operation panel included in the image forming apparatus 40c is determined.

したがって、アプリC1223がどのような機種の画像形成装置上で動作する場合であっても、画像形成装置20の操作パネル25に近い操作感が各画像形成装置上で再現される。   Therefore, no matter what type of image forming apparatus the application C1223 operates on, the operation feeling close to the operation panel 25 of the image forming apparatus 20 is reproduced on each image forming apparatus.

また、画像形成装置20の操作パネル25を再現可能な装置は、操作パネルを備えた画像形成装置に限定されない。例えば、図15に示されるようなソフトウェア構成を有するPC(Personal Computer)等のコンピュータにおいても画像形成装置20の操作パネルの再現は可能である。   Further, an apparatus capable of reproducing the operation panel 25 of the image forming apparatus 20 is not limited to the image forming apparatus provided with the operation panel. For example, the operation panel of the image forming apparatus 20 can be reproduced even in a computer such as a PC (Personal Computer) having a software configuration as shown in FIG.

図15は、画像形成装置のエミュレータを有するPC上でアプリCを動作させる場合のソフトウェア構成例を示す図である。   FIG. 15 is a diagram illustrating a software configuration example when the application C is operated on a PC having an emulator of the image forming apparatus.

図15中、図2と同一部分には同一符号を付し、その説明は省略する。同図においてPC50は、画像形成装置10のエミュレータ126を備える。したがって、PC50には、エミュレータ126上において、画像形成装置10に実装されているソフトウェアを実行可能である。   In FIG. 15, the same parts as those of FIG. In the figure, the PC 50 includes an emulator 126 of the image forming apparatus 10. Therefore, the PC 50 can execute software installed in the image forming apparatus 10 on the emulator 126.

このようなソフトウェア構成を有するPC50は、上述した画像形成装置10と同様の処理手順を実行することができる。したがって、アプリC1223を実行する際に、PC50に接続された表示装置に画像形成装置20の操作パネルを再現することができる。なお、画像形成装置10の操作パネル15の表示機能が予めエミュレータ126に実装されている場合がある。この場合、エミュレータ126が表示する仮想的な操作パネルが、PC50が備える操作パネルに相当する。エミュレータ126が表示する仮想的な操作パネルについても、その構成情報をパネル構成情報記憶部1224gに記録(登録)しておけばよい。ラッパーモジュール1224の差分判定部1224dは、エミュレータ126より取得される装置側種別情報をパネル構成情報に当てはめることにより、エミュレータ126が表示可能な操作パネルの構成を判定すればよい。そうすることにより、差分判定部1224dは、エミュレータ126が表示可能な操作パネルと、アプリC1223が対応する操作パネル25との差分を動的に判定することができる。   The PC 50 having such a software configuration can execute the same processing procedure as that of the image forming apparatus 10 described above. Therefore, when the application C1223 is executed, the operation panel of the image forming apparatus 20 can be reproduced on the display device connected to the PC 50. Note that the display function of the operation panel 15 of the image forming apparatus 10 may be mounted in the emulator 126 in advance. In this case, the virtual operation panel displayed by the emulator 126 corresponds to the operation panel provided in the PC 50. The configuration information of the virtual operation panel displayed by the emulator 126 may be recorded (registered) in the panel configuration information storage unit 1224g. The difference determination unit 1224d of the wrapper module 1224 may determine the configuration of the operation panel that can be displayed by the emulator 126 by applying the device-side type information acquired from the emulator 126 to the panel configuration information. By doing so, the difference determination unit 1224d can dynamically determine the difference between the operation panel that can be displayed by the emulator 126 and the operation panel 25 to which the application C1223 corresponds.

すなわち、本実施の形態を実現するための装置は、画像形成装置やコンピュータ等を含む情報処理装置であればよい。   That is, an apparatus for realizing the present embodiment may be an information processing apparatus including an image forming apparatus and a computer.

なお、ラッパーモジュール1224の実装形態としては、独立して一つのソフトウェアコンポーネントとして実装されてもよいし、SDKプラットフォーム123の一部として実装されてもよいし、ラッパーモジュール1224が適用されるアプリC1223の一部として実装されてもよい。独立して一つのソフトウェアコンポーネントとして実装される場合、又はSDKプラットフォーム123の一部として実装される場合、複数のアプリC1223によって一つのラッパーモジュール1224を共用できるという利点がある。アプリC1223の一部として実装される場合、ラッパーモジュール1224の存在をユーザが特に意識する必要はないという利点がある。例えば、アプリC1223をインストールすれば、ラッパーモジュール1224を利用可能な状態が実現される。   In addition, as a mounting form of the wrapper module 1224, it may be independently mounted as one software component, may be mounted as a part of the SDK platform 123, or the application C1223 to which the wrapper module 1224 is applied. It may be implemented as part. When implemented independently as a single software component or as part of the SDK platform 123, there is an advantage that a single wrapper module 1224 can be shared by a plurality of applications C1223. When implemented as a part of the application C 1223, there is an advantage that the user does not need to be particularly aware of the presence of the wrapper module 1224. For example, if the application C1223 is installed, the wrapper module 1224 can be used.

上述したように、本実施の形態によれば、実際のSDKプラットフォーム123上においてアプリC1223の動作確認及び評価を行うことができる。SDKプラットフォーム123は、移植後のSDKプラットフォーム223と完全に同一なものではないが、スタブに比べればその類似度は著しく高い。したがって、アプリC1223をSDKプラットフォーム223上で動作させた場合に予期せぬ不具合が発生する可能性を著しく低減させることができる。よって、開発効率を向上させることができる。   As described above, according to the present embodiment, the operation check and evaluation of the application C1223 can be performed on the actual SDK platform 123. The SDK platform 123 is not completely the same as the SDK platform 223 after transplantation, but its similarity is significantly higher than that of the stub. Therefore, when the application C1223 is operated on the SDK platform 223, it is possible to remarkably reduce the possibility that an unexpected malfunction occurs. Therefore, development efficiency can be improved.

また、非互換部分については、ラッパーモジュール1224によって適切に吸収される。ラッパーモジュール1224は、単に操作パネル25の画像を操作パネル15の液晶パネル151上に表示させるのではなく、操作パネル25と操作パネル15との差分の画像を液晶パネル151に表示させる。したがって、操作パネル25に近い操作感をユーザに与えることができる。斯かる点においても、アプリC1223を画像形成装置20上で動作させた場合における予期せぬ不具合の低減を期待することができる。   Further, the incompatible part is appropriately absorbed by the wrapper module 1224. The wrapper module 1224 does not simply display the image of the operation panel 25 on the liquid crystal panel 151 of the operation panel 15 but displays the difference image between the operation panel 25 and the operation panel 15 on the liquid crystal panel 151. Therefore, an operation feeling close to that of the operation panel 25 can be given to the user. Also in this respect, it is possible to expect an unexpected reduction in malfunction when the application C1223 is operated on the image forming apparatus 20.

また、図15に示されるようにエミュレータ126を利用する場合においても、ラッパーモジュール1224の存在により、既存のエミュレータ126(すなわち、画像形成装置10のエミュレータ)をそのまま利用することができる。したがって、画像形成装置20のエミュレータを改めて開発する必要を無くすことができる。   As shown in FIG. 15, even when the emulator 126 is used, the existing emulator 126 (that is, the emulator of the image forming apparatus 10) can be used as it is because of the presence of the wrapper module 1224. Therefore, it is possible to eliminate the need to newly develop an emulator of the image forming apparatus 20.

以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。   As mentioned above, although the Example of this invention was explained in full detail, this invention is not limited to such specific embodiment, In the range of the summary of this invention described in the claim, various deformation | transformation・ Change is possible.

10、20 画像形成装置
11 コントローラ
12 スキャナ
13 プリンタ
14 モデム
15、25 操作パネル
16 ネットワークインタフェース
17 SDカードスロット
80 SDカード
111 CPU
112 RAM
113 ROM
114 HDD
121 標準アプリ
122 SDKアプリ
123 SDKプラットフォーム
124 コントロールサービス
125 OS
126 エミュレータ
151、251 液晶パネル
152、252 テンキー
153、253 スタートキー
154、254 クリアキー
1211 スキャンアプリ
1212 印刷アプリ
1213 コピーアプリ
1214 FAXアプリ
1221 アプリA
1222 アプリB
1223 アプリC
1224 ラッパーモジュール
1224a 操作画面表示部
1224b イベント処理部
1224c 差分表示部
1224d 差分判定部
1224e 装置情報取得部
1224f アプリ情報取得部
1224g パネル構成情報記憶部
1231 スキャンサービス部
1232 印刷サービス部
1233 パネルサービス部
2231 スキャンサービス部
2232 印刷サービス部
2233 4行パネルサービス部
10, 20 Image forming apparatus 11 Controller 12 Scanner 13 Printer 14 Modem 15 and 25 Operation panel 16 Network interface 17 SD card slot 80 SD card 111 CPU
112 RAM
113 ROM
114 HDD
121 Standard application 122 SDK application 123 SDK platform 124 Control service 125 OS
126 Emulators 151 and 251 LCD panels 152 and 252 Ten keys 153 and 253 Start key 154 and 254 Clear key 1211 Scan application 1212 Print application 1213 Copy application 1214 FAX application 1221 Application A
1222 App B
1223 Application C
1224 Wrapper module 1224a Operation screen display unit 1224b Event processing unit 1224c Difference display unit 1224d Difference determination unit 1224e Device information acquisition unit 1224f Application information acquisition unit 1224g Panel configuration information storage unit 1231 Scan service unit 1232 Print service unit 1233 Panel service unit 2231 Scan Service unit 2232 Print service unit 2233 4-line panel service unit

特開2005−321954号公報JP-A-2005-321554

Claims (12)

情報処理装置であって、
当該情報処理装置が備える第一の操作パネルと異なる種別の第二の操作パネルを有する画像形成装置に対応したプログラムに対して、前記画像形成装置が提供する前記第二の操作パネルの制御用のインタフェースと同じインタフェースを提供するラッパー手段を有し、
前記ラッパー手段は、
前記操作パネルの種別ごとに構成情報を記憶する構成情報記憶手段と、
前記第一の操作パネルの第一の種別情報を当該情報処理装置より取得する装置情報取得手段と、
当該ラッパー手段が有するインタフェースの呼び出しを当該情報処理装置に実行させた前記プログラムが対応する前記第二の操作パネルの第二の種別情報を取得するアプリ情報取得手段と、
前記第一の種別情報に係る前記構成情報と前記第二の種別情報に係る前記構成情報とを前記構成情報記憶手段より取得し、取得された前記構成情報の差分を判定する差分判定手段と、
前記差分に含まれる構成要素を前記第一の操作パネルの表示領域に表示させる差分表示制御手段とを有する情報処理装置。
An information processing apparatus,
For control of the second operation panel provided by the image forming apparatus, for a program corresponding to an image forming apparatus having a second operation panel of a type different from the first operation panel provided in the information processing apparatus. has a wrapper means that Kyosu Hisage the same interfaces,
The wrapper means is
Configuration information storage means for storing configuration information for each type of the operation panel;
Device information acquisition means for acquiring the first type information of the first operation panel from the information processing device;
Application information acquisition means for acquiring second type information of the second operation panel corresponding to the program that causes the information processing apparatus to call the interface of the wrapper means ;
Difference determining means for acquiring the configuration information relating to the first type information and the configuration information relating to the second type information from the configuration information storage means, and determining a difference between the acquired configuration information;
An information processing apparatus comprising: a difference display control unit configured to display a component included in the difference in a display area of the first operation panel.
前記第一の操作パネルの表示領域の表示能力は、前記第二の操作パネルの表示領域の表示能力よりも高い請求項1記載の情報処理装置。   The information processing apparatus according to claim 1, wherein a display capability of the display area of the first operation panel is higher than a display capability of the display area of the second operation panel. 前記ラッパー手段は、
前記差分表示制御手段によって表示された前記構成要素、又は前記差分に含まれない前記第一の操作パネルの構成要素に対する入力に応じて当該情報処理装置より通知される通知情報を、前記プログラムに通知するイベント処理手段を有する請求項1又は2記載の情報処理装置。
The wrapper means is
Notification information notified from the information processing apparatus in response to an input to the component displayed by the difference display control means or to the component of the first operation panel not included in the difference is notified to the program The information processing apparatus according to claim 1, further comprising an event processing unit.
前記ラッパー手段は、
前記第一の操作パネルの表示領域に前記構成要素として表示される前記第二の操作パネルの表示領域に、前記プログラムより表示要求される操作画面を表示させる操作画面表示手段を有し、
前記イベント処理手段は、前記操作画面に対する入力に応じて当該情報処理装置より通知される通知情報を、前記プログラムに通知する請求項記載の情報処理装置。
The wrapper means is
An operation screen display means for displaying an operation screen requested to be displayed by the program in the display area of the second operation panel displayed as the component in the display area of the first operation panel;
It said event processing means, the notification information notified from the information processing apparatus in response to an input to the operation screen, before the information processing apparatus according to claim 3, wherein notifying the Kipu program.
情報処理装置における情報処理方法であって、
当該情報処理装置が備える第一の操作パネルと異なる種別の第二の操作パネルを有する画像形成装置に対応したプログラムに対して、前記画像形成装置が提供する前記第二の操作パネルの制御用のインタフェースと同じインタフェースを提供するラッパー手段が、
前記第一の操作パネルの第一の種別情報を当該情報処理装置より取得する装置情報取得手順と、
当該ラッパー手段が有するインタフェースの呼び出しを当該情報処理装置に実行させた前記プログラムが対応する前記第二の操作パネルの第二の種別情報を取得するアプリ情報取得手順と、
前記操作パネルの種別ごとに構成情報を記憶する構成情報記憶手段より、前記第一の種別情報に係る前記構成情報と前記第二の種別情報に係る前記構成情報とを取得し、取得された前記構成情報の差分を判定する差分判定手順と、
前記差分に含まれる構成要素を前記第一の操作パネルの表示領域に表示させる差分表示制御手順とを実行する情報処理方法。
An information processing method in an information processing apparatus,
For control of the second operation panel provided by the image forming apparatus, for a program corresponding to an image forming apparatus having a second operation panel of a type different from the first operation panel provided in the information processing apparatus. wrapper means that Kyosu Hisage the same interface as the interface is,
An apparatus information acquisition procedure for acquiring the first type information of the first operation panel from the information processing apparatus;
An application information acquisition procedure for acquiring second type information of the second operation panel corresponding to the program that causes the information processing apparatus to call the interface of the wrapper means ;
From the configuration information storage means for storing configuration information for each type of the operation panel, the configuration information related to the first type information and the configuration information related to the second type information are acquired, and the acquired A difference determination procedure for determining a difference in configuration information;
An information processing method for executing a difference display control procedure for displaying a component included in the difference in a display area of the first operation panel.
前記第一の操作パネルの表示領域の表示能力は、前記第二の操作パネルの表示領域の表示能力よりも高い請求項5記載の情報処理方法。   The information processing method according to claim 5, wherein a display capability of the display area of the first operation panel is higher than a display capability of the display area of the second operation panel. 前記ラッパー手段は、
前記差分表示制御手順によって表示された前記構成要素、又は前記差分に含まれない前記第一の操作パネルの構成要素に対する入力に応じて当該情報処理装置より通知される通知情報を、前記プログラムに通知するイベント処理手順を実行する請求項5又は6記載の情報処理方法。
The wrapper means is
Notification information notified from the information processing apparatus in response to an input to the component displayed by the difference display control procedure or to the component of the first operation panel not included in the difference is notified to the program. The information processing method according to claim 5 or 6, wherein an event processing procedure is executed.
前記ラッパー手段は、
前記第一の操作パネルの表示領域に前記構成要素として表示される前記第二の操作パネルの表示領域に、前記プログラムより表示要求される操作画面を表示させる操作画面表示手順を実行し、
前記イベント処理手順は、前記操作画面に対する入力に応じて当該情報処理装置より通知される通知情報を、前記プログラムに通知する請求項記載の情報処理方法。
The wrapper means is
An operation screen display procedure for displaying an operation screen requested to be displayed by the program in the display area of the second operation panel displayed as the component in the display area of the first operation panel;
The event processing procedures, the information processing method according to claim 7, wherein notifying the notification information notified from the information processing apparatus, before Kipu program in response to an input to the operation screen.
情報処理装置を、
当該情報処理装置が備える第一の操作パネルと異なる種別の第二の操作パネルを有する画像形成装置に対応したプログラムに対して、前記画像形成装置が提供する前記第二の操作パネルの制御用のインタフェースと同じインタフェースを提供するラッパー手段として機能させ、
前記ラッパー手段は、
前記操作パネルの種別ごとに構成情報を記憶する構成情報記憶手段と、
前記第一の操作パネルの第一の種別情報を当該情報処理装置より取得する装置情報取得手段と、
当該ラッパー手段が有するインタフェースの呼び出しを当該情報処理装置に実行させた前記プログラムが対応する前記第二の操作パネルの第二の種別情報を取得するアプリ情報取得手段と、
前記第一の種別情報に係る前記構成情報と前記第二の種別情報に係る前記構成情報とを前記構成情報記憶手段より取得し、取得された前記構成情報の差分を判定する差分判定手段と、
前記差分に含まれる構成要素を前記第一の操作パネルの表示領域に表示させる差分表示制御手段とを有する情報処理プログラム。
Information processing device
For control of the second operation panel provided by the image forming apparatus, for a program corresponding to an image forming apparatus having a second operation panel of a type different from the first operation panel provided in the information processing apparatus. the same interface as the interface to function as Hisage Kyosu that wrapper means,
The wrapper means is
Configuration information storage means for storing configuration information for each type of the operation panel;
Device information acquisition means for acquiring the first type information of the first operation panel from the information processing device;
Application information acquisition means for acquiring second type information of the second operation panel corresponding to the program that causes the information processing apparatus to call the interface of the wrapper means ;
Difference determining means for acquiring the configuration information relating to the first type information and the configuration information relating to the second type information from the configuration information storage means, and determining a difference between the acquired configuration information;
An information processing program comprising: difference display control means for displaying a component included in the difference in a display area of the first operation panel.
前記第一の操作パネルの表示領域の表示能力は、前記第二の操作パネルの表示領域の表示能力よりも高い請求項9記載の情報処理プログラム。   The information processing program according to claim 9, wherein the display capability of the display area of the first operation panel is higher than the display capability of the display area of the second operation panel. 前記ラッパー手段は、
前記差分表示制御手段によって表示された前記構成要素、又は前記差分に含まれない前記第一の操作パネルの構成要素に対する入力に応じて当該情報処理装置より通知される通知情報を、前記プログラムに通知するイベント処理手段を有する請求項9又は10記載の情報処理プログラム。
The wrapper means is
Notification information notified from the information processing apparatus in response to an input to the component displayed by the difference display control means or to the component of the first operation panel not included in the difference is notified to the program 11. The information processing program according to claim 9 or 10, further comprising event processing means for performing.
前記ラッパー手段は、
前記第一の操作パネルの表示領域に前記構成要素として表示される前記第二の操作パネルの表示領域に、前記プログラムより表示要求される操作画面を表示させる操作画面表示手段を有し、
前記イベント処理手段は、前記操作画面に対する入力に応じて当該情報処理装置より通知される通知情報を、前記プログラムに通知する請求項11記載の情報処理プログラム。
The wrapper means is
An operation screen display means for displaying an operation screen requested to be displayed by the program in the display area of the second operation panel displayed as the component in the display area of the first operation panel;
It said event processing means, according to claim 11, wherein the information processing program for notifying the notification information notified from the information processing apparatus in response to an input to the operation screen, before Kipu program.
JP2009186748A 2009-08-11 2009-08-11 Information processing apparatus, information processing method, and information processing program Expired - Fee Related JP5387221B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009186748A JP5387221B2 (en) 2009-08-11 2009-08-11 Information processing apparatus, information processing method, and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009186748A JP5387221B2 (en) 2009-08-11 2009-08-11 Information processing apparatus, information processing method, and information processing program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013209809A Division JP5637280B2 (en) 2013-10-07 2013-10-07 Information processing apparatus, information processing method, and information processing program

Publications (2)

Publication Number Publication Date
JP2011041010A JP2011041010A (en) 2011-02-24
JP5387221B2 true JP5387221B2 (en) 2014-01-15

Family

ID=43768324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009186748A Expired - Fee Related JP5387221B2 (en) 2009-08-11 2009-08-11 Information processing apparatus, information processing method, and information processing program

Country Status (1)

Country Link
JP (1) JP5387221B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6064662B2 (en) * 2013-02-19 2017-01-25 コニカミノルタ株式会社 Image forming apparatus, image forming apparatus control method, and control program
JP6186912B2 (en) * 2013-06-11 2017-08-30 株式会社リコー Information processing system, information processing method, and program
JP6308143B2 (en) * 2015-02-17 2018-04-11 京セラドキュメントソリューションズ株式会社 Information processing apparatus and process execution method
JP2017027366A (en) * 2015-07-22 2017-02-02 キヤノン株式会社 Information processor and event management method
JP6909654B2 (en) * 2017-07-07 2021-07-28 横河電機株式会社 Control system and common platform
JP7346937B2 (en) * 2018-11-29 2023-09-20 株式会社リコー Information processing device, information processing method, program, image forming system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4759436B2 (en) * 2005-05-20 2011-08-31 株式会社リコー Image handling apparatus, image processing system, image processing control method, and image processing control program

Also Published As

Publication number Publication date
JP2011041010A (en) 2011-02-24

Similar Documents

Publication Publication Date Title
JP5387221B2 (en) Information processing apparatus, information processing method, and information processing program
JP4597834B2 (en) Image forming apparatus, information processing method, information processing program, and recording medium
US9894230B2 (en) Image formation device which can be expanded and image forming method for expanding an image formation device
US8438567B2 (en) Information processing device and image processing apparatus
JP5458708B2 (en) Image processing apparatus, display control method, and display control program
JP5786535B2 (en) Apparatus, information processing method, information processing program, and recording medium
JP5814526B2 (en) Image forming apparatus, image forming apparatus control method, and program
JP5728896B2 (en) Printing system and program
US9606761B2 (en) Information processing apparatus for controlling an output process and method for the same
JP5487792B2 (en) Image forming apparatus, information processing system, information processing method, and information processing program
US9917968B2 (en) Image processing device and terminal device using application programming interface corresponding to specific function
JP5637280B2 (en) Information processing apparatus, information processing method, and information processing program
JP5157867B2 (en) Image forming apparatus, display control method, and display control program
JP2018055668A (en) Image processing apparatus and program
US20150178420A1 (en) Information processing apparatus, information processing system, method of processing information, and program
JP2012059106A (en) Customization device, printing system, customization method, and customization program
JP2002222081A (en) Device and method for program generation, program implementing the same method on computer, image forming device, and address solving method
JP2009223577A (en) User interface emulation device and user interface emulation program
JP3699412B2 (en) Extended control code processing method in terminal emulator for image forming apparatus, program for causing computer to execute the method, and image forming apparatus
JP3689380B2 (en) Drawing processing method in terminal emulator for image forming apparatus, program for causing computer to execute the method, and image forming apparatus
JP2000163345A (en) Device control system, information registering method, device utilizing method and storage medium recording computer program
JP5195200B2 (en) Information processing apparatus, application execution method, and program
JP2014120017A (en) Image processing system, image processing apparatus, information terminal device, and program
JP3686620B2 (en) Control code discrimination processing method in terminal emulator for image forming apparatus, program for causing computer to execute the method, and image forming apparatus
JP5447637B2 (en) Apparatus, display control method, and display control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130923

R151 Written notification of patent or utility model registration

Ref document number: 5387221

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees