JP2005267447A - Image forming apparatus and image forming method - Google Patents

Image forming apparatus and image forming method Download PDF

Info

Publication number
JP2005267447A
JP2005267447A JP2004081474A JP2004081474A JP2005267447A JP 2005267447 A JP2005267447 A JP 2005267447A JP 2004081474 A JP2004081474 A JP 2004081474A JP 2004081474 A JP2004081474 A JP 2004081474A JP 2005267447 A JP2005267447 A JP 2005267447A
Authority
JP
Japan
Prior art keywords
image forming
inter
application
event
function
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.)
Pending
Application number
JP2004081474A
Other languages
Japanese (ja)
Inventor
Tsutomu Oishi
勉 大石
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 JP2004081474A priority Critical patent/JP2005267447A/en
Publication of JP2005267447A publication Critical patent/JP2005267447A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image forming apparatus capable of using a plurality of image forming processing from various applications, which includes an interface adapted so that a change in the image forming processing does not affect the development of the various applications. <P>SOLUTION: The image forming apparatus comprises an application performing image forming processing and operating as a first process; a control service performing management of hardware resources used in the image forming process and operating as a second process; and a process-to-process communication means making the communication between the first process and the second process executable by a function call. The process-to-process communication means has two or more versions, and provides a corresponding function for each function changed from the old version to the first process. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、複数の画像形成処理を種々のアプリケーションから利用可能とする画像形成装置において、該複数の画像形成処理の変更を該種々のアプリケーションへの開発に影響を与えないようにしたインタフェースを有する画像形成装置を提供するものである。   The present invention has an interface in which a plurality of image forming processes can be used from various applications so that the change of the plurality of image forming processes does not affect the development of the various applications. An image forming apparatus is provided.

近年、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置が一般的に知られている。このような複合型の画像形成装置は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のアプリケーションを設け、アプリケーションの切り替えによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。   2. Description of the Related Art In recent years, an image forming apparatus in which functions of devices such as a printer, a copy, a facsimile, and a scanner are housed in a single casing is generally known. Such a composite-type image forming apparatus is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and three types of applications corresponding to a printer, a copy unit, and a facsimile device, respectively. The apparatus is operated as a printer, a copy, a scanner, or a facsimile apparatus.

また、画像形成装置では、アプリケーションやプラットフォーム等の様々なプログラムにより様々な情報処理が実行される。これらのプログラムは、これらの機器の出荷前からこれらの機器に格納されているのが普通だが、これらのプログラムを、これらの機器の出荷後にこれらの機器にメモリカードを使用して入力できるようにすることも考えられる。これにより例えば、これらのプログラムをこれらの機器に入力するためのメモリカードをメーカーからベンダーに配布し、ベンダーがこれらのプログラムを作成し、ユーザーがこれらのプログラムをこれらの機器にこのメモリカードを使用して入力するようなビジネスモデルを構築することができるようになった。   In the image forming apparatus, various information processing is executed by various programs such as applications and platforms. These programs are usually stored in these devices before the shipment of these devices, but these programs can be input to these devices using a memory card after the shipment of these devices. It is also possible to do. For example, a memory card for inputting these programs to these devices is distributed from the manufacturer to the vendor, the vendor creates these programs, and the user uses these memory cards for these devices. It is now possible to build a business model that can be input.

しかしながら、このようにメモリカードによって画像形成装置に提供されるプログラムは、画像形成装置のプログラム開発に応じてプログラムを修正しなければならないといった問題があった。或いは、同様の動作を実現するプログラムであっても、画像形成装置に組み込まれたプログラムのバージョンに応じた様々なタイプを用意しなければならなかった。   However, the program provided to the image forming apparatus by the memory card as described above has a problem that the program must be corrected according to the program development of the image forming apparatus. Alternatively, even if the program realizes the same operation, various types must be prepared according to the version of the program incorporated in the image forming apparatus.

そこで、本発明の課題は、画像形成装置に組み込まれている種々のプログラムの開発がメモリカード等によって提供されるプログラムに影響を与えないようにした画像形成装置を提供することである。   Accordingly, an object of the present invention is to provide an image forming apparatus in which development of various programs incorporated in the image forming apparatus does not affect programs provided by a memory card or the like.

上記課題を解決するため、本発明は、請求項1に記載されるように、画像形成処理を行い、第一プロセスとして動作するアプリケーションと、前記画像形成処理で利用されるハードウェア資源の管理を行い、第二プロセスとして動作するコントロールサービスと、前記第一プロセスと前記第二プロセス間の通信を関数コールによって実行可能とするプロセス間通信手段とを有し、前記プロセス間通信手段は、2以上のバージョンを有し、旧バージョンから変更になった個々の機能について対応する関数を前記第一プロセスに提供するように構成される。   In order to solve the above-described problems, the present invention, as described in claim 1, performs an image forming process and manages an application that operates as a first process and hardware resources used in the image forming process. And a control service that operates as a second process, and an inter-process communication unit that enables communication between the first process and the second process by a function call. And a function corresponding to each function changed from the previous version is provided to the first process.

このような画像形成装置では、既存のアプリケーションが、例えば、コントロールサービスの仕様の変更によって影響されないようにすることができる。   In such an image forming apparatus, it is possible to prevent an existing application from being influenced by, for example, a change in the specification of the control service.

上記課題を解決するための手段として、本発明は、上記画像形成装置での処理をコンピュータに行なわせるためのプログラムとすることもできる。   As means for solving the above problems, the present invention may be a program for causing a computer to perform processing in the image forming apparatus.

本願発明によれば、複数の画像形成処理を種々のアプリケーションから利用可能とする画像形成装置において、該複数の画像形成処理の変更を該種々のアプリケーションへの開発に影響を与えないようにすることができる。   According to the present invention, in an image forming apparatus that allows a plurality of image forming processes to be used from various applications, the change of the plurality of image forming processes is prevented from affecting development of the various applications. Can do.

以下、本発明の実施の形態を図面に基づいて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の実施例に該当する融合機101を表す。図1の融合機101は、種々のハードウェア111と、種々のソフトウェア112と、融合機起動部113により構成される。図1の融合機101は、コピーやプリンタやスキャナやファクシミリとして機能することができる。   FIG. 1 shows a compound machine 101 corresponding to an embodiment of the present invention. The compound machine 101 shown in FIG. 1 includes various hardware 111, various software 112, and a compound machine starting unit 113. The MFP 101 shown in FIG. 1 can function as a copy, a printer, a scanner, or a facsimile.

融合機101のハードウェア111としては、撮像部121と、印刷部122と、その他のハードウェア123が存在する。   As the hardware 111 of the multi-function peripheral 101, there are an imaging unit 121, a printing unit 122, and other hardware 123.

撮像部121は、原稿から画像(画像データ)を読み取るためのハードウェアであり、コピーやスキャナやファクシミリとして機能する際に使用される。撮像部121は、白黒画像用の物でもカラー画像用の物でもよい。撮像部121は、原稿に関する機構として、原稿セット部等を備える。   The imaging unit 121 is hardware for reading an image (image data) from a document, and is used when functioning as a copy, a scanner, or a facsimile. The imaging unit 121 may be a monochrome image or a color image. The imaging unit 121 includes a document setting unit and the like as a mechanism related to a document.

印刷部122は、画像(画像データ)を印刷用紙等の印刷媒体に印刷するためのハードウェアであり、コピーやプリンタやファクシミリとして機能する際に使用される。印刷部122は、白黒画像用の物でもカラー画像用の物でもよい。印刷部122は、ここでは電子写真方式を採用しており、感光体、帯電機、露光機、現像機、転写機、定着機等を備える。印刷部122は、印刷用紙等に関する機構として、給紙部、排紙部、印刷用紙等搬送機構等を備える。   The printing unit 122 is hardware for printing an image (image data) on a printing medium such as printing paper, and is used when functioning as a copy, a printer, or a facsimile. The printing unit 122 may be a monochrome image or a color image. Here, the printing unit 122 employs an electrophotographic system, and includes a photoreceptor, a charging machine, an exposure machine, a developing machine, a transfer machine, a fixing machine, and the like. The printing unit 122 includes a paper feeding unit, a paper discharge unit, a printing paper conveyance mechanism, and the like as mechanisms relating to printing paper and the like.

その他のハードウェア123については、図2において説明する。   The other hardware 123 will be described with reference to FIG.

融合機101のソフトウェア112としては、種々のアプリケーション131と、種々のプラットフォーム132が存在する。これらのプログラムは、UNIX(登録商標)等のOS(オペレーティングシステム)によりプロセス単位で並列的に実行される。   As the software 112 of the multi-function peripheral 101, there are various applications 131 and various platforms 132. These programs are executed in parallel on a process basis by an OS (Operating System) such as UNIX (registered trademark).

アプリケーション131は、コピーやプリンタやスキャナやファクシミリ等の機能に固有な情報処理を実行するためのソフトウェアである。アプリケーション131としては、コピー用のアプリケーションであるコピーアプリ141と、プリンタ用のアプリケーションであるプリンタアプリ142と、スキャナ用のアプリケーションであるスキャナアプリ143と、ファクシミリ用のアプリケーションであるファクシミリアプリ144と、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ145が存在する。ネットワークファイルアプリ145は、HTML文書等の閲覧用のWebブラウザや、HTML文書等の配信用のWebサーバソフトにより構成される。   The application 131 is software for executing information processing unique to functions such as copying, a printer, a scanner, and a facsimile. The application 131 includes a copy application 141 that is a copy application, a printer application 142 that is a printer application, a scanner application 143 that is a scanner application, a facsimile application 144 that is a facsimile application, and a network. There is a network file application 145 that is an application for a file. The network file application 145 includes a Web browser for browsing HTML documents and the like, and Web server software for distributing HTML documents and the like.

アプリケーション131は、専用のSDK(ソフトウェア開発キット)を使用して開発することができる。SDKを使用して開発したアプリケーション131をSDKアプリと呼ぶ。専用のSDKとしては、C言語でアプリケーション131を開発するための「CSDK」や、Java(登録商標)言語でアプリケーション131を開発するための「JSDK」が提供される。CSDKを使用して開発したアプリケーション131を「CSDKアプリ」と呼び、JSDKを使用して開発したアプリケーション131を「JSDKアプリ」と呼ぶ。図1の融合機101にも、CSDKアプリ146と、JSDKアプリ147が存在する。図1の融合機101にはさらに、Java(登録商標)言語で記述されたJSDKアプリ147とC言語で記述された他のソフトウェア112との仲介を行うソフトウェア112として、JSDKプラットフォーム148が存在する。以後、総称してSDKアプリ149と言う。   The application 131 can be developed using a dedicated SDK (software development kit). An application 131 developed using the SDK is called an SDK application. As the dedicated SDK, “CSDK” for developing the application 131 in C language and “JSDK” for developing the application 131 in Java (registered trademark) language are provided. An application 131 developed using CSDK is called a “CSDK application”, and an application 131 developed using JSDK is called a “JSDK application”. The MFP 101 in FIG. 1 also has a CSDK application 146 and a JSDK application 147. 1 further includes a JSDK platform 148 as software 112 that mediates between the JSDK application 147 written in the Java (registered trademark) language and the other software 112 written in the C language. Hereinafter, the SDK application 149 is collectively referred to.

プラットフォーム132は、アプリケーション131からの処理要求に関する情報処理を実行するためのソフトウェアである。アプリケーション131からの処理要求の受信には、予め定義されている関数により処理要求を受信するアプリケーションプログラムインタフェース(API)133を利用して、要求内容の実施には、エンジンインタフェース134を利用する。プラットフォーム132としては、種々のコントロールサービス151と、システムリソースマネージャ152と、種々のハンドラ153が存在する。   The platform 132 is software for executing information processing related to a processing request from the application 131. In order to receive a processing request from the application 131, an application program interface (API) 133 that receives the processing request by a predefined function is used, and an engine interface 134 is used to implement the request content. As the platform 132, various control services 151, a system resource manager 152, and various handlers 153 exist.

コントロールサービス151は、アプリケーション131からの処理要求を解釈して、解釈結果に応じてハードウェア111の獲得要求を発生させる。コントロールサービス151としては、ネットワークコントロールサービス(NCS)161と、ファクシミリコントロールサービス(FCS)162と、デリバリコントロールサービス(DCS)163と、エンジンコントロールサービス(ECS)164と、メモリコントロールサービス(MCS)165と、オペレーションパネルコントロールサービス(OCS)166と、サーティフィケーションコントロールサービス(CCS)167と、ユーザディレクトリコントロールサービス(UCS)168と、システムコントロールサービス(SCS)169が存在する。   The control service 151 interprets the processing request from the application 131 and generates a hardware 111 acquisition request according to the interpretation result. The control service 151 includes a network control service (NCS) 161, a facsimile control service (FCS) 162, a delivery control service (DCS) 163, an engine control service (ECS) 164, a memory control service (MCS) 165, , An operation panel control service (OCS) 166, a certification control service (CCS) 167, a user directory control service (UCS) 168, and a system control service (SCS) 169.

NCS161のプロセスは、ネットワーク等を介してデータ通信を行うための仲介を行う。FCS162のプロセスは、ファクシミリとして画像データ通信・画像データ読取・画像データ印刷等を行うためのAPIを提供する。DCS163のプロセスは、融合機101に蓄積された文書データの配信に関する制御を行う。ECS164のプロセスは、撮像部121や印刷部122等のエンジン部に関する制御を行う。MCS165のプロセスは、画像データ記憶・画像データ処理等のメモリやハードディスクドライブに関する制御を行う。OCS166のプロセスは、オペレーションパネルに関する制御を行う。CCS167のプロセスは、認証処理や課金処理に関する制御を行う。UCS168のプロセスは、ユーザ情報の管理に関する制御を行う。SCS169のプロセスは、システムの管理に関する制御を行う。   The process of the NCS 161 performs mediation for performing data communication via a network or the like. The FCS 162 process provides an API for performing image data communication, image data reading, image data printing, and the like as a facsimile. The process of DCS 163 performs control related to the distribution of document data stored in the multifunction peripheral 101. The process of the ECS 164 performs control related to engine units such as the imaging unit 121 and the printing unit 122. The process of the MCS 165 performs control related to a memory and a hard disk drive such as image data storage and image data processing. The process of the OCS 166 performs control related to the operation panel. The process of the CCS 167 performs control related to authentication processing and billing processing. The process of the UCS 168 performs control related to management of user information. The process of the SCS 169 performs control related to system management.

システムリソースマネージャ(SRM)152は、ハードウェア111の獲得要求を調停して、調停結果に応じて要求内容を実施するための制御を行う。詳細に言うと、SRM152のプロセスは、獲得要求に係るハードウェア111が利用可能か否か(他の獲得要求と競合しないか否か)を判定して、利用可能である場合にはその旨をコントロールサービス151の各プロセスに通知する。さらに、獲得要求に係るハードウェア111の利用スケジュールを作成して、作成結果に応じて要求内容を実施するための制御を行う。   The system resource manager (SRM) 152 arbitrates the acquisition request of the hardware 111 and performs control for implementing the request content according to the arbitration result. Specifically, the process of the SRM 152 determines whether or not the hardware 111 related to the acquisition request is usable (whether or not it conflicts with other acquisition requests), and if so, indicates that fact. Notify each process of the control service 151. Furthermore, a use schedule of the hardware 111 related to the acquisition request is created, and control is performed to implement the request contents according to the creation result.

ハンドラ153は、調停結果に応じてハードウェア111を管理する。ハンドラ153としては、ファクシミリコントロールユニットハンドラ(FCUH)171と、イメージメモリハンドラ(IMH)172が存在する。FCUH171は、ファクシミリコントロールユニットを管理する。IMH172は、各プロセスにメモリを割り振り、各プロセスに割り振ったメモリを管理する。   The handler 153 manages the hardware 111 according to the arbitration result. The handler 153 includes a facsimile control unit handler (FCUH) 171 and an image memory handler (IMH) 172. The FCUH 171 manages the facsimile control unit. The IMH 172 allocates memory to each process and manages the memory allocated to each process.

アプリケーション131とプラットフォーム132の仲介を行うソフトウェア112として、仮想アプリケーションサービス(VAS)135が存在する。VAS135は、アプリケーション131をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム132をサーバとするクライアントプロセスとして動作する。VAS135は、アプリケーション131から見てプラットフォーム132を隠蔽するラッピング機能を備え、プラットフォーム132のバージョンアップに伴うバージョン差を吸収する役割等を担う。   A virtual application service (VAS) 135 exists as software 112 that mediates between the application 131 and the platform 132. The VAS 135 operates as a server process using the application 131 as a client, and also operates as a client process using the platform 132 as a server. The VAS 135 has a wrapping function that hides the platform 132 when viewed from the application 131, and plays a role of absorbing version differences associated with version upgrades of the platform 132.

融合機起動部113は、融合機101の電源投入時に最初に実行される。これにより、UNIX(登録商標)等のOSが起動され、アプリケーション131やプラットフォーム132が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。   The MFP starter 113 is executed first when the MFP 101 is turned on. As a result, an OS such as UNIX (registered trademark) is activated, and the application 131 and the platform 132 are activated. These programs are stored in the hard disk drive or the memory card, and are reproduced from the hard disk drive or the memory card and activated in the memory.

図2は、図1の融合機101に係るハードウェア構成図である。融合機101のハードウェア111としては、コントローラ201と、オペレーションパネル202と、ファクシミリコントロールユニット(FCU)203と、撮像部121と、印刷部122が存在する。撮像部121と印刷部122を除く各構成要素が、図1の「その他のハードウェア123」に該当する。   FIG. 2 is a hardware configuration diagram according to the MFP 101 of FIG. The hardware 111 of the multi-function peripheral 101 includes a controller 201, an operation panel 202, a facsimile control unit (FCU) 203, an imaging unit 121, and a printing unit 122. Each component excluding the imaging unit 121 and the printing unit 122 corresponds to “other hardware 123” in FIG.

コントローラ201は、CPU211と、ASIC212と、NB(ノースブリッジ)221と、SB(サウスブリッジ)222と、MEM−P(システムメモリ)231と、MEM−C(ローカルメモリ)232と、HDD(ハードディスクドライブ)233と、メモリカードスロット234と、NIC(ネットワークインタフェースコントローラ)241と、USBデバイス242と、IEEE1394デバイス243と、セントロニクスデバイス244により構成される。   The controller 201 includes a CPU 211, an ASIC 212, an NB (North Bridge) 221, an SB (South Bridge) 222, a MEM-P (System Memory) 231, a MEM-C (Local Memory) 232, and an HDD (Hard Disk Drive). ) 233, a memory card slot 234, a NIC (Network Interface Controller) 241, a USB device 242, an IEEE 1394 device 243, and a Centronics device 244.

CPU211は、種々の情報処理を実行するためのICであり、アプリケーション131やプラットフォーム132をUNIX(登録商標)等のOSによりプロセス単位で並列的に実行する。ASIC212は、画像処理用のICである。NB221は、CPU211とASIC212を接続するためのブリッジである。SB222は、NB221と周辺機器等を接続するためのブリッジである。ASIC212とNB221は、AGP(Accelerated Graphics Port)を介して接続されている。   The CPU 211 is an IC for executing various information processing, and executes the application 131 and the platform 132 in parallel on a process basis by an OS such as UNIX (registered trademark). The ASIC 212 is an image processing IC. The NB 221 is a bridge for connecting the CPU 211 and the ASIC 212. The SB 222 is a bridge for connecting the NB 221 and peripheral devices. The ASIC 212 and the NB 221 are connected via an AGP (Accelerated Graphics Port).

MEM−P231は、NB221に接続されたメモリである。MEM−C232は、ASIC212に接続されたメモリである。HDD233は、ASIC212に接続されたストレージであり、画像データ蓄積・文書データ蓄積・プログラム蓄積・フォントデータ蓄積・フォームデータ蓄積等を行うために使用される。メモリカードスロット234は、SB222に接続されたスロットであり、メモリカード235をセット(挿入)するために使用される。   The MEM-P 231 is a memory connected to the NB 221. The MEM-C 232 is a memory connected to the ASIC 212. The HDD 233 is a storage connected to the ASIC 212, and is used for image data accumulation, document data accumulation, program accumulation, font data accumulation, form data accumulation, and the like. The memory card slot 234 is a slot connected to the SB 222 and is used for setting (inserting) the memory card 235.

NIC241は、ネットワーク等を介してMACアドレス等を使用したデータ通信を行うためのコントローラである。USBデバイス242は、USB規格に準拠したシリアルポートを提供するためのデバイスである。IEEE1394デバイス243は、IEEE1394規格に準拠したシリアルポートを提供するためのデバイスである。セントロニクスデバイス244は、セントロニクス仕様に準拠したパラレルポートを提供するためのデバイスである。NIC241と、USBデバイス242と、IEEE1394デバイス243と、セントロニクスデバイス244は、PCI(Peripheral Component Interconect)バスを介してNB221とSB222に接続されている。   The NIC 241 is a controller for performing data communication using a MAC address or the like via a network or the like. The USB device 242 is a device for providing a serial port compliant with the USB standard. The IEEE 1394 device 243 is a device for providing a serial port conforming to the IEEE 1394 standard. The Centronics device 244 is a device for providing a parallel port conforming to the Centronics specification. The NIC 241, the USB device 242, the IEEE 1394 device 243, and the Centronics device 244 are connected to the NB 221 and the SB 222 via a PCI (Peripheral Component Interconnect) bus.

メモリカード用スロット251は、SB222に接続されて使用されるスロットであり、メモリカード261をセット(挿入)するためのスロットである。   The memory card slot 251 is a slot used by being connected to the SB 222, and is a slot for setting (inserting) the memory card 261.

オペレーションパネル202は、オペレータが融合機101に入力を行うためのハードウェア(操作部)であると共に、オペレータが融合機101から出力を得るためのハードウェア(表示部)である。オペレーションパネル202は、ASIC212に接続されている。FCU203と、撮像部121と、印刷部122は、PCI(Peripheral Component Interconect)バスを介してASIC212に接続されている。   The operation panel 202 is hardware (operation unit) for an operator to input to the multifunction machine 101 and hardware (display unit) for the operator to obtain an output from the multifunction machine 101. The operation panel 202 is connected to the ASIC 212. The FCU 203, the imaging unit 121, and the printing unit 122 are connected to the ASIC 212 via a PCI (Peripheral Component Interconnect) bus.

このような機能構成及びハードウェア構成を有する融合機101において、SDKアプリ149がスキャンを行う場合の処理について、図3で概要を説明する。図3は、SKDアプリがスキャンする場合の処理概要を説明するための図である。   An outline of processing when the SDK application 149 performs scanning in the multi-function peripheral 101 having such a functional configuration and hardware configuration will be described with reference to FIG. FIG. 3 is a diagram for explaining an outline of processing when the SKD application scans.

図3において、VAS135を初期化し(ステップS1)、SDKアプリは、VASへのアプリケーションの登録を行う(ステップS2)。イメージライブラリを初期化する(ステップS3)。イメージライブラリへスキャン指示を行い(ステップS4)、スキャンが行われる(ステップS5)。   In FIG. 3, the VAS 135 is initialized (step S1), and the SDK application registers the application in the VAS (step S2). The image library is initialized (step S3). A scan instruction is issued to the image library (step S4), and scanning is performed (step S5).

このような処理は、例えば、図4に示すようなプログラムコードによって実現できる。   Such a process can be realized by, for example, a program code as shown in FIG.

図4は、SDKアプリのプログラムコードの例を示す図である。図4において、
例えば、VASV2が旧バージョン、VASV3が新バージョンである場合、「#define USE_VAS3」を示すコード30によって、新バージョンのVASV3が指定される。
FIG. 4 is a diagram illustrating an example of a program code of the SDK application. In FIG.
For example, when VASV2 is an old version and VASV3 is a new version, a new version of VASV3 is designated by a code 30 indicating "#define USE_VAS3".

「apliID = sdkVasInit(eventCallBackFunc);」を示すコード31によって、VASV3の初期化を行う。図3のステップS1に対応する。   VASV3 is initialized by a code 31 indicating “apliID = sdkVasInit (eventCallBackFunc);”. This corresponds to step S1 in FIG.

新バージョンのVASV3が指定されているので、コード33によって、VASV3の機能が実行される。コード33は、例えば、
VAS_HANDLE handle;
handle = sdkSysApliExtRegistGetHandle();
sdkSysApliExtRegistSetSdkApliId(handle, apliID);
sdkSysApliExtRegist(handle);
sdkSysApliExtRegistRelHandle(handle);
のように示される。新バージョンのVASV3にアプリ登録する場合、VAS135の新機能を関数で指定する。このように関数で与えられることによって、このSDKアプリ149を更に新しくなったVAS135に実装したとしても、VAS135及びSDKアプリ149自身に何ら支障なく動作を行うことができる。
Since the new version of VASV3 is specified, the function of VASV3 is executed by the code 33. The code 33 is, for example,
VAS_HANDLE handle;
handle = sdkSysApliExtRegistGetHandle ();
sdkSysApliExtRegistSetSdkApliId (handle, apliID);
sdkSysApliExtRegist (handle);
sdkSysApliExtRegistRelHandle (handle);
As shown. When registering an application in the new version of VASV3, a new function of VAS135 is designated by a function. By providing the functions in this way, even if the SDK application 149 is mounted on the newer VAS 135, the VAS 135 and the SDK application 149 can operate without any trouble.

コード33によって、アプリケーションインタフェース単位でハンドルを確保し、そのハンドルを用いてパラメータの設定と関数の呼び出しを行う。その後、そのハンドルを解放する処理を行う。   The code 33 secures a handle for each application interface, and uses the handle to set a parameter and call a function. Thereafter, a process for releasing the handle is performed.

一方、仮に、旧バージョンのVASV2が指定されている場合、「rmSysApliRegist(apliID);」を示すコード32によって、旧バージョンのVASV2の処理によってSDKアプリ149を識別するapliIDが登録される。従来、VAS135の新機能に対応させるためには、例えば、apliIDの他に更に引数を加えなければならないなどのプログラムコードに変更を加える必要があった。異なるバージョンで引数が異なる場合、VAS135が正常に動作しない、又は、SDKアプリ149が正常に動作しない等のトラブルを発生するといった問題が生じてしまう。   On the other hand, if an old version of VASV2 is specified, an apliID for identifying the SDK application 149 is registered by the code 32 indicating “rmSysApliRegist (apliID);” by the process of the old version of VASV2. Conventionally, in order to correspond to the new function of the VAS 135, for example, it has been necessary to change the program code such that an argument must be added in addition to the apliID. When the arguments are different in different versions, there arises a problem that the VAS 135 does not operate normally or the SDK application 149 does not operate normally.

VAS135が新機能を関数で与えることによって、また、SDKアプリ149が新バージョンを使用する場合、コード33のように記述することによって、SDKアプリ149とVAS135のバージョンの組み合わせによらず、常に、動作可能とすることができる。   When the VAS 135 gives a new function as a function, and when the SDK application 149 uses a new version, it is always operated regardless of the combination of the version of the SDK application 149 and the VAS 135 by describing like the code 33. Can be possible.

コード32及び33は、図3のステップS2に相当する。   The codes 32 and 33 correspond to step S2 in FIG.

「image_library_init();」を示すコード34によって、メール通信のための初期化などを行い、スレッドとしてライブラリ処理部を起動する。図3のステップS3に相当する。そして、「scanStart();」を示すコード35によって、メールを用いてスキャンコマンドをスレッドに対して発行し、スキャニング動作が実行される。図3のステップS4及びS5に相当する。   The code 34 indicating “image_library_init ();” is used for initialization for mail communication and the library processing unit is started as a thread. This corresponds to step S3 in FIG. Then, a scan command is issued to the thread by using a mail with a code 35 indicating “scanStart ();”, and a scanning operation is executed. This corresponds to steps S4 and S5 in FIG.

その後、scanStart()によって実行された動作に対するイベントをコード36によって受信し、そのイベントを通知したハンドルを解放する。コード36は、例えば、
while(1) {
/* defaultHandler() で受けとったイベントの処理 */
recieveMail(eventID, handle);
switch(eventID) {
case SDK_SYS_PARAM:
if (SDK_LANG_JP != sdkSysParamGetLanguage(handle))
exit(1);
sdkSysParamRelHandle(handle);
break;
}
}
のように記述される。
Thereafter, an event for the operation executed by scanStart () is received by the code 36, and the handle that has notified the event is released. The code 36 is, for example,
while (1) {
/ * Processing of events received by defaultHandler () * /
recieveMail (eventID, handle);
switch (eventID) {
case SDK_SYS_PARAM:
if (SDK_LANG_JP! = sdkSysParamGetLanguage (handle))
exit (1);
sdkSysParamRelHandle (handle);
break;
}
}
It is described as follows.

更に、コード37は、ECS164、MCS165、SCS169等からのイベントを最初に受け取るデフォルトハンドラを示す。コード37は、例えば、
defaultHandler(short eventID, int handle) {
sendMail(eventID, handle);
}
のように記述される。
Further, code 37 shows a default handler that first receives events from ECS 164, MCS 165, SCS 169, and the like. The code 37 is, for example,
defaultHandler (short eventID, int handle) {
sendMail (eventID, handle);
}
It is described as follows.

このデフォルトハンドラがVASV3の初期化で通知される関数である。SDK149は、通知したデフォルトハンドラに割り当てられたapliIDによってアプリ登録することになる。   This default handler is a function notified by the initialization of VASV3. The SDK 149 performs application registration with the apliID assigned to the notified default handler.

次に、図4に示すようなプログラムコードが実行された場合のシーケンスフローについて図5で説明する。図5は、シーケンスフローを示す図である。図5において、SDKアプリ149及びECS164、MCS165、SCS169などは、プロセスである。このようなプロセスに関数コールを可能とし、かつ、イベントを通知するのがアプリケーションインタフェースとしてのipc(Internal Process Communication)が提供される。   Next, a sequence flow when the program code as shown in FIG. 4 is executed will be described with reference to FIG. FIG. 5 is a diagram showing a sequence flow. In FIG. 5, the SDK application 149, the ECS 164, the MCS 165, the SCS 169, and the like are processes. An ipc (Internal Process Communication) is provided as an application interface that enables a function call to such a process and notifies an event.

図5において、シーケンスフローを説明する前に、VAS135の機能構成について説明する。VAS135は、イメージライブリ135aと、VASV2ライブラリ135bと、VASV3とを有する。   In FIG. 5, before describing the sequence flow, the functional configuration of the VAS 135 will be described. The VAS 135 includes an image library 135a, a VASV2 library 135b, and VASV3.

イメージライブリ135aは、利用難度の高いアプリへより高機能なAPIを供給するためのライブラリである。例えば、イメージライブリ135aは、SDKアプリ149からの1回の関数呼び出しに対して、SDKアプリ149に代わって、複数回一連の動作をVASV2ライブラリに対して行い、その複数回一連の動作に対するイベントを複数回SDKアプリ149に代わって処理をする。そして、その複数回一連の動作の終了で、SDKアプリ149へ一回のイベントを通知する。SDKアプリ149へ通知するイベントは、例えば、スキャン動作が正常に終了した、スキャン中にカバーが開けられた、コピー中に融合機の扉が開いた、紙詰まりが発生した、など動作に関する状態を通知する。   The image library 135a is a library for supplying a highly functional API to an application with a high degree of use difficulty. For example, in response to one function call from the SDK application 149, the image library 135a performs a series of operations on the VASV2 library on behalf of the SDK application 149, and an event for the plurality of series of operations. Is processed multiple times in place of the SDK application 149. Then, at the end of the series of operations, the SDK application 149 is notified of one event. The event to be notified to the SDK application 149 is a state relating to the operation, for example, the scanning operation is normally completed, the cover is opened during the scanning, the door of the MFP is opened during the copying, or the paper jam occurs. Notice.

VASV2ライブラリ135bは、旧バージョンのVAS135への関数コールを新バージョンのVAS135への関数コールへと変換するためのライブラリである。VASV3135cは、新バージョンのVAS135を実装している処理部である。   The VASV2 library 135b is a library for converting a function call to the old version of the VAS 135 into a function call to the new version of the VAS 135. The VASV 3135c is a processing unit in which a new version of the VAS 135 is installed.

クライアントとしてのSDKアプリ149は、サーバとしてのECS164、MCS165、SCS169などへは関数コールで行い、サーバとしてのECS164、MCS165、SCS169などからクライアントしてのSDKアプリ149へは、イベントで通知するように実装される。SDKアプリ149、ECS164、MCS165、SCS169は、プロセスであるので、関数コール及びイベント通知は、インタフェースipcを介して行われる。   The SDK application 149 as a client performs a function call to the ECS 164, MCS 165, and SCS 169 as a server, and notifies the SDK application 149 as a client from the ECS 164, MCS 165, and SCS 169 as a server by an event. Implemented. Since the SDK application 149, the ECS 164, the MCS 165, and the SCS 169 are processes, the function call and the event notification are performed via the interface ipc.

VASV3135cは、SDKアプリ149からの(1)イメージライブラリ135aへのイベントの取得要求、(2)旧バージョンのVAS135(VASV2ライブラリ135b)への関数コール、そして(3)新バージョンのVAS135(VASV3135c)への関数コールとに対応する。   The VASV 3135c receives (1) an event acquisition request from the SDK application 149 to the image library 135a, (2) a function call to the old version VAS 135 (VASV 2 library 135b), and (3) a new version VAS 135 (VASV 3135c). Corresponds to the function call.

図5において、SDKアプリ149のアプリ登録は、旧バージョンと同様であるので、見かけ上、インタフェースipcを介して、VASV2へ関数コールされ(a11)、実際には、VASV2ライブラリ135bが新バージョンのVASV3135cへの関数コールへと変換することによって行われる(a3)。   In FIG. 5, since the application registration of the SDK application 149 is the same as that of the old version, apparently a function call is made to the VASV2 via the interface ipc (a11), and the VASV2 library 135b is actually the new version of the VASV3135c. (A3).

SDKアプリ149が例えば、動作指示としてスキャン指示を行う場合、VASV2ライブラリ135bのスレッドに対してスキャンコマンド(メッセージ)を発行する(a1)。VASV2ライブラリ135bは、インタフェースipcを介して、VASV2ライブラリ135bへ関数コールする(a2)。VASV2ライブラリ135bは、インタフェースipcを介して、VASV3135cへ関数コールする(a3)。VASV3135cは、インタフェースipcを介して、ECS164、MCS165、SCS168などへ関数コールによって動作を実行させる(a4)。   For example, when the SDK application 149 issues a scan instruction as an operation instruction, it issues a scan command (message) to the thread of the VASV2 library 135b (a1). The VASV2 library 135b makes a function call to the VASV2 library 135b via the interface ipc (a2). The VASV2 library 135b makes a function call to the VASV3135c via the interface ipc (a3). The VASV 3135c causes the ECS 164, the MCS 165, the SCS 168, etc. to execute an operation by a function call via the interface ipc (a4).

ECS164、MCS165、SCS168などは、動作に関するイベントが発生すると、インタフェースipcを介して、イベントを通知する。イベントは、SDK149のコールバック関数(defaulHandler)を呼び出すことによって通知される(b1)。コールバック関数(defaulHandler)によって、イベントがsendMailとして通知されると、VASV3135cは、インタフェースipcを介して、VASV2ライブラリ135bへVASV3メールとしてイベントを通知する(b2)。   When an event related to operation occurs, the ECS 164, MCS 165, SCS 168, and the like notify the event via the interface ipc. The event is notified by calling the callback function (defaulHandler) of the SDK 149 (b1). When the event is notified as sendMail by the callback function (defaulHandler), the VASV 3135c notifies the VASV2 library 135b of the event as VASV3 mail via the interface ipc (b2).

VASV2ライブラリ135bは、SDKアプリ149からの1回の動作指示に対する一連の動作に対する複数のイベントをVASV2メールとして受信し、最終的な動作結果を示すイベントを、インタフェースipcを介して、VASV2メールとしてSDKアプリ149へ通知する(b4)。一方、SDKアプリ149は、オペレーションパネル202への動作に関する情報を呈示する制御に必要なイベントを、インタフェースipcを介して、それら一連の動作に対応する複数のイベントを別途VASV2メールとして受信する(b41)。例えば、イメージライブラリ135aからのイベントでは、「扉が開いた」、「紙詰まり発生した」などの最終的な動作の状態が通知され(b4)、VASV2ライブラリ135bからのイベントでは、「扉が開いた」場合であれば扉を特定する情報が、「紙詰まり発生した」場合であれば紙詰まりが起きた箇所を特定する情報が通知される。   The VASV2 library 135b receives a plurality of events for a series of operations in response to a single operation instruction from the SDK application 149 as a VASV2 mail, and an event indicating a final operation result as an VASV2 mail SDK via the interface ipc. The application 149 is notified (b4). On the other hand, the SDK application 149 separately receives a plurality of events corresponding to the series of operations as VASV2 mail via the interface ipc, which is necessary for the control for presenting information regarding the operation to the operation panel 202 (b41). ). For example, in the event from the image library 135a, the final operation state such as “the door has been opened” or “paper jam has occurred” is notified (b4). In the event from the VASV2 library 135b, “the door has been opened”. If it is “If”, the information specifying the door is notified, and if “Paper jam has occurred”, the information specifying the location where the paper jam has occurred is notified.

このように、通信経路a1,a2,a11,b3,そしてb41は、旧バージョンに対応した部分である。VASV2ライブラリ135bによって、旧バージョンでの仕様が吸収されるため、旧バージョンでの仕様に対応したSDKアプリ149は、ECS164、MCS165、SCS168などの変更に応じた修正をする必要がない。   Thus, the communication paths a1, a2, a11, b3, and b41 are portions corresponding to the old version. Since the specifications of the old version are absorbed by the VASV2 library 135b, the SDK application 149 corresponding to the specifications of the old version does not need to be modified according to changes in the ECS 164, the MCS 165, the SCS 168, and the like.

また、新バージョンに対応したSDKアプリ149は、旧バージョンでの仕様をそのまま利用することができる。特に、イメージライブリ135aを用いて動作指示をする際には、上記のような通信経路となる。   Also, the SDK application 149 corresponding to the new version can use the specifications of the old version as they are. In particular, when an operation instruction is issued using the image library 135a, the communication path is as described above.

更に、新バージョンに対応したSDKアプリ149が、新バージョン固有の機能を利用する場合、インタフェースipcを介して、VASV3135cへ直接関数コールする(a12)。すなわち、VAS135は、新機能を個々の関数によってSDKアプリ149に提供することによって、新機能が増えた場合において、SDKアプリ149に影響を与えることがない。   Further, when the SDK application 149 corresponding to the new version uses a function specific to the new version, the function is directly called to the VASV 3135c via the interface ipc (a12). That is, the VAS 135 does not affect the SDK application 149 when new functions increase by providing new functions to the SDK application 149 using individual functions.

そして、VASV3135cへ直接関数コールした場合(a12)、イベントは、VASV3メールとして、VASV2ライブラリ135bからSDKアプリ149へ通知される(b42)。   When a function call is made directly to the VASV 3135c (a12), the event is notified from the VASV2 library 135b to the SDK application 149 as a VASV3 mail (b42).

次に、イベントの処理について図6で説明する。図6は、イベントの処理を説明するための図である。図6中の処理は、図4に示されるコード37のdefaultHanderの起動によって、コード36のイベントを処理するフローを示す。   Next, event processing will be described with reference to FIG. FIG. 6 is a diagram for explaining event processing. The processing in FIG. 6 shows a flow of processing the event of the code 36 by starting the defaultHander of the code 37 shown in FIG.

図6において、ECS164、MCS165、SCS169などからSDKアプリ149のコールバック関数(defaultHandler)によって動作に関するデータ21が通知されると(ステップS101及びS102)、データ21を格納するメモリを割当て、その割当てに対応するハンドルNoをイベントテーブル29から取得する(ステップS103)。そして、VASV3イベントを生成し(ステップS104)、そのイベントはVASV3メールとしてsendMailで発行される(ステップS105)。メッセージデータ22は、イベントを特定するイベントIDとハンドルNoを含む。   In FIG. 6, when the data 21 regarding the operation is notified by the callback function (defaultHandler) of the SDK application 149 from the ECS 164, the MCS 165, the SCS 169, etc. (Steps S101 and S102), the memory for storing the data 21 is allocated. The corresponding handle No. is acquired from the event table 29 (step S103). A VASV3 event is generated (step S104), and the event is issued as a VASV3 mail by sendMail (step S105). The message data 22 includes an event ID that identifies the event and a handle No.

SDKアプリ149は、readMialを関数コールすることによって、発行されたイベントを読みに行く(ステップS106)。取得したハンドルNoを引数としてVASV3135cに対してデータの取得を要求する(ステップS107)。VASV3135cは、イベントテーブル29を参照して、ハンドルNoに対応するデータアドレスからデータ21を取り出してSDKアプリ149へ通知する(ステップS109)。その後、SDKアプリ149からの関数コールによって、データ21のハンドルが解放される。   The SDK application 149 reads the issued event by making a function call to readMial (step S106). Using the acquired handle number as an argument, the VASV 3135c is requested to acquire data (step S107). The VASV 3135c refers to the event table 29, extracts the data 21 from the data address corresponding to the handle No., and notifies the SDK application 149 (step S109). Thereafter, the handle of the data 21 is released by a function call from the SDK application 149.

上記より、プラットフォーム132の変更に伴うVAS135の2つ以上のバージョンを、プロセスとして動作するアプリケーション131(例えば、ベンダー等によって開発されたSDKアプリケーション149)からインタフェースipcを介して関数コールを可能とすることによって、また、機能追加を個々の関数で与えることによって、また、新バージョン(VASV3135c)の関数コールへの変換を行うことによって、旧バージョンに対応したアプリケーション131に対して、プラットフォーム132の変更による影響を与えることなく、また、新バージョンに対応したアプリケーション131にも対応することができる。   As described above, two or more versions of the VAS 135 accompanying the change of the platform 132 can be function-called from the application 131 operating as a process (for example, the SDK application 149 developed by a vendor or the like) via the interface ipc. In addition, by giving function additions by individual functions, and by converting to function calls of the new version (VASV3135c), the effect of the platform 132 change on the application 131 corresponding to the old version In addition, the application 131 corresponding to the new version can also be supported.

つまり、既存のSDKアプリケーション149において、コンパイルされた旧バージョンに対応したバイナリコードを変更することなく動作させることができる。   In other words, the existing SDK application 149 can be operated without changing the binary code corresponding to the compiled old version.

本発明によれば、アプリケーションのプログラム開発が、例えば、画像形成処理の変更に伴う、プロセス間通信の変更に影響されないようにすることができる。   According to the present invention, application program development can be prevented from being affected by, for example, a change in inter-process communication accompanying a change in image forming processing.

本発明の実施例に該当する融合機101を表す図である。It is a figure showing the compound machine 101 applicable to the Example of this invention. 図1の融合機101に係るハードウェア構成図である。FIG. 2 is a hardware configuration diagram according to the multifunction machine 101 of FIG. 1. SKDアプリがスキャンする場合の処理概要を説明するための図である。It is a figure for demonstrating the process outline | summary in case an SKD application scans. SDKアプリのプログラムコードの例を示す図である。It is a figure which shows the example of the program code of an SDK application. シーケンスフローを示す図である。It is a figure which shows a sequence flow. イベントの処理を説明するための図である。It is a figure for demonstrating the process of an event.

符号の説明Explanation of symbols

101 融合機
111 ハードウェア
112 ソフトウェア
113 融合機起動部
121 撮像部
122 印刷部
123 その他のハードウェア
131 アプリケーション
132 プラットフォーム
133 アプリケーションプログラムインタフェース
134 エンジンインタフェース
135 仮想アプリケーションサービス
135a イメージライブラリ
135b VASV2ライブラリ
135c VASV3
141 コピーアプリ
142 プリンタアプリ
143 スキャナアプリ
144 ファクシミリアプリ
145 ネットワークファイルアプリ
146 CSDKアプリ
147 JSDKアプリ
148 JSDKプラットフォーム
149 SDKアプリ
151 コントロールサービス
152 システムリソースマネージャ
153 ハンドラ
161 ネットワークコントロールサービス
162 ファクシミリコントロールサービス
163 デリバリコントロールサービス
164 エンジンコントロールサービス
165 メモリコントロールサービス
166 オペレーションパネルコントロールサービス
167 サーティフィケーションコントロールサービス
168 ユーザディレクトリコントロールサービス
169 システムコントロールサービス
171 ファクシミリコントロールユニットハンドラ
172 イメージメモリハンドラ
201 コントローラ
202 オペレーションパネル
203 ファクシミリコントロールユニット
211 CPU
212 ASIC
221 NB
222 SB
231 MEM−P
232 MEM−C
233 HDD
234 メモリカードスロット
235 メモリカード
241 NIC
242 USBデバイス
243 IEEE1394デバイス
244 セントロニクスデバイス
DESCRIPTION OF SYMBOLS 101 Compound machine 111 Hardware 112 Software 113 Compound machine starting part 121 Imaging part 122 Printing part 123 Other hardware 131 Application 132 Platform 133 Application program interface 134 Engine interface 135 Virtual application service 135a Image library 135b VASV2 library 135c VASV3
141 Copy application 142 Printer application 143 Scanner application 144 Facsimile application 145 Network file application 146 CSDK application 147 JSDK application 148 JSDK platform 149 SDK application 151 Control service 152 System resource manager 153 Handler 161 Network control service 162 Facsimile control service 164 Engine control service 165 Memory control service 166 Operation panel control service 167 Certification control service 168 User directory control service 169 System control service 171 Faximi Re-control unit handler 172 Image memory handler 201 Controller 202 Operation panel 203 Facsimile control unit 211 CPU
212 ASIC
221 NB
222 SB
231 MEM-P
232 MEM-C
233 HDD
234 Memory card slot 235 Memory card 241 NIC
242 USB device 243 IEEE 1394 device 244 Centronics device

Claims (20)

画像形成処理を行い、第一プロセスとして動作するアプリケーションと、
前記画像形成処理で利用されるハードウェア資源の管理を行い、第二プロセスとして動作するコントロールサービスと、
前記第一プロセスと前記第二プロセス間の通信を関数コールによって実行可能とするプロセス間通信手段とを有し、
前記プロセス間通信手段は、2以上のバージョンを有し、旧バージョンから変更になった個々の機能について対応する関数を前記第一プロセスに提供していることを特徴とする画像形成装置。
An application that performs image formation processing and operates as the first process;
Management of hardware resources used in the image forming process, a control service that operates as a second process,
Inter-process communication means for enabling communication between the first process and the second process by a function call;
The inter-process communication means has two or more versions, and provides functions corresponding to individual functions changed from the previous version to the first process.
前記プロセス間通信手段は、前記旧バージョンによって前記第一プロセスに提供された関数による関数コールを、新バージョンへの関数コールへと変換する変換手段を有することを特徴とする請求項1記載の画像形成装置。   2. The image according to claim 1, wherein the inter-process communication means includes conversion means for converting a function call by a function provided to the first process by the old version into a function call to a new version. Forming equipment. 前記プロセス間通信手段は、前記第二プロセスからの前記第一プロセスへは前記アプリケーションによって登録されたコールバック関数によってイベントを通知することを特徴とする請求項1又は2記載の画像形成装置。   The image forming apparatus according to claim 1, wherein the inter-process communication unit notifies an event from the second process to the first process by a callback function registered by the application. 前記プロセス間通信手段は、メール送信関数によって前記第二プロセスからの前記第一プロセスへとイベントを通知し、
前記アプリケーションは、メール受信関数によって前記イベントを取得することを特徴とする請求項1乃至3のいずれか一項記載の画像形成装置。
The inter-process communication means notifies the event from the second process to the first process by a mail transmission function,
The image forming apparatus according to claim 1, wherein the application acquires the event by a mail reception function.
前記プロセス間通信手段は、前記第一プロセスが前記旧バージョンの関数コールによって有効な前記旧バージョンの処理を指示した場合、該処理を実行した結果を前記イベントによって前記第一プロセスに通知することを特徴とする請求項1乃至4のいずれか一項記載の画像形成装置。   The inter-process communication means notifies the first process of the execution result of the processing by the event when the first process instructs the processing of the valid old version by the function call of the old version. The image forming apparatus according to claim 1, wherein the image forming apparatus is an image forming apparatus. 前記プロセス間通信手段は、前記第一プロセスが前記新バージョンの関数コールによって前記新バージョンの処理を指示した場合、該処理を実行した結果を前記イベントによって前記第一プロセスに通知することを特徴とする請求項1乃至5のいずれか一項記載の画像形成装置。   When the first process instructs the processing of the new version by the function call of the new version, the inter-process communication means notifies the first process of the result of executing the processing by the event. The image forming apparatus according to claim 1. 前記アプリケーションは、メモリカードによって外部から提供されることを特徴とする請求項1乃至6のいずれか一項記載の画像形成装置。   The image forming apparatus according to claim 1, wherein the application is provided from outside by a memory card. 請求項1乃至7のいずれか一項記載の画像形成装置にて使用されるメモリカードであって、
前記画像形成装置を制御するコンピュータに、
イベントを取得するためのコールバック関数を指定することによってアプリケーションの登録を行う手順と、
関数コールによって画像形成に関する動作を行う手順と、
前記関数コールに応じたイベントに係るデータを取得する手順と、
前記コールバック関数として動作する手順とを実行させるコンピュータ実行可能なプログラムを記憶したメモリカード。
A memory card used in the image forming apparatus according to claim 1,
A computer for controlling the image forming apparatus;
The procedure for registering an application by specifying a callback function to get the event,
Procedures for performing operations related to image formation by function calls;
A procedure for acquiring data relating to an event corresponding to the function call;
A memory card storing a computer-executable program for executing a procedure that operates as the callback function.
アプリケーションによって画像形成処理を行う画像形成方法において、
前記アプリケーションの第一プロセスと、該画像形成処理で利用されるハードウェア資源の管理を行うコントロールサービスの第二プロセス間での通信を関数コールによって実行可能とするプロセス間通信手順を有し、
前記プロセス間通信手順は、2以上のバージョンに応じた処理を行い、前記第一プロセスによる旧バージョンから変更になった個々の機能を関数コールによって実行することを特徴とする画像形成方法。
In an image forming method for performing image forming processing by an application,
An inter-process communication procedure that enables communication between a first process of the application and a second process of a control service that manages hardware resources used in the image forming process by a function call;
The inter-process communication procedure performs processing according to two or more versions, and executes each function changed from the previous version by the first process by a function call.
前記プロセス間通信手順は、前記第一プロセスから前記旧バージョンに対応する関数コールが行われた場合、新バージョンへの関数コールへと変換する変換手順を有することを特徴とする請求項9記載の画像形成方法。   10. The inter-process communication procedure includes a conversion procedure for converting into a function call to a new version when a function call corresponding to the old version is made from the first process. Image forming method. 前記プロセス間通信手順は、前記第二プロセスからの前記第一プロセスへは前記アプリケーションによって登録されたコールバック関数によってイベントを通知することを特徴とする請求項9又は10記載の画像形成方法。   11. The image forming method according to claim 9, wherein the inter-process communication procedure notifies an event from the second process to the first process by a callback function registered by the application. 前記プロセス間通信手順は、メール送信関数によって前記第二プロセスからの前記第一プロセスへとイベントを通知し、
前記アプリケーションは、メール受信関数によって前記イベントを取得することを特徴とする請求項9乃至11のいずれか一項記載の画像形成方法。
The inter-process communication procedure notifies an event from the second process to the first process by a mail transmission function,
12. The image forming method according to claim 9, wherein the application acquires the event by a mail reception function.
前記プロセス間通信手順は、前記第一プロセスが前記旧バージョンの関数コールによって有効な前記旧バージョンの処理を指示した場合、該処理を実行した結果を前記イベントによって前記第一プロセスに通知することを特徴とする請求項9乃至12のいずれか一項記載の画像形成方法。   In the inter-process communication procedure, when the first process instructs the processing of the old version that is valid by the function call of the old version, the first process is notified of the result of executing the processing by the event. The image forming method according to claim 9, wherein the image forming method is an image forming method. 前記プロセス間通信手順は、前記第一プロセスが前記新バージョンの関数コールによって前記新バージョンの処理を指示した場合、該処理を実行した結果を前記イベントによって前記第一プロセスに通知することを特徴とする請求項9乃至13のいずれか一項記載の画像形成方法。   In the inter-process communication procedure, when the first process instructs the processing of the new version by the function call of the new version, the result of executing the processing is notified to the first process by the event. The image forming method according to any one of claims 9 to 13. アプリケーションによって画像形成処理を行う画像形成方法での処理をコンピュータに行わせるプログラムにおいて、
前記アプリケーションの第一プロセスと、該画像形成処理で利用されるハードウェア資源の管理を行うコントロールサービスの第二プロセス間での通信を関数コールによって実行可能とするプロセス間通信手順を有し、
前記プロセス間通信手順は、2以上のバージョンに応じた処理を行い、前記第一プロセスによる旧バージョンから変更になった個々の機能を関数コールによって実行することを特徴とするコンピュータ実行可能なプログラム。
In a program for causing a computer to perform processing in an image forming method for performing image forming processing by an application,
An inter-process communication procedure that enables communication between a first process of the application and a second process of a control service that manages hardware resources used in the image forming process by a function call;
The computer-executable program, wherein the inter-process communication procedure performs processing according to two or more versions, and executes each function changed from the previous version by the first process by a function call.
前記プロセス間通信手順は、前記第一プロセスから前記旧バージョンに対応する関数コールが行われた場合、新バージョンへの関数コールへと変換する変換手順を有することを特徴とする請求項15記載のコンピュータ実行可能なプログラム。   16. The inter-process communication procedure includes a conversion procedure for converting into a function call to a new version when a function call corresponding to the old version is made from the first process. A computer executable program. 前記プロセス間通信手順は、前記第二プロセスからの前記第一プロセスへは前記アプリケーションによって登録されたコールバック関数によってイベントを通知することを特徴とする請求項15又は16記載のコンピュータ実行可能なプログラム。   The computer-executable program according to claim 15 or 16, wherein the inter-process communication procedure notifies an event from the second process to the first process by a callback function registered by the application. . 前記プロセス間通信手順は、メール送信関数によって前記第二プロセスからの前記第一プロセスへとイベントを通知し、
前記アプリケーションは、メール受信関数によって前記イベントを取得することを特徴とする請求項15乃至17のいずれか一項記載のコンピュータ実行可能なプログラム。
The inter-process communication procedure notifies an event from the second process to the first process by a mail transmission function,
The computer-executable program according to any one of claims 15 to 17, wherein the application acquires the event by a mail reception function.
前記プロセス間通信手順は、前記第一プロセスが前記旧バージョンの関数コールによって有効な前記旧バージョンの処理を指示した場合、該処理を実行した結果を前記イベントによって前記第一プロセスに通知することを特徴とする請求項15乃至18のいずれか一項記載の画像形成方法。   In the inter-process communication procedure, when the first process instructs the processing of the old version that is valid by the function call of the old version, the first process is notified of the result of executing the processing by the event. The image forming method according to claim 15, wherein the image forming method is an image forming method. 前記プロセス間通信手順は、前記第一プロセスが前記新バージョンの関数コールによって前記新バージョンの処理を指示した場合、該処理を実行した結果を前記イベントによって前記第一プロセスに通知することを特徴とする請求項15乃至19のいずれか一項記載の画像形成方法。   In the inter-process communication procedure, when the first process instructs the processing of the new version by the function call of the new version, the result of executing the processing is notified to the first process by the event. The image forming method according to any one of claims 15 to 19.
JP2004081474A 2004-03-19 2004-03-19 Image forming apparatus and image forming method Pending JP2005267447A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004081474A JP2005267447A (en) 2004-03-19 2004-03-19 Image forming apparatus and image forming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004081474A JP2005267447A (en) 2004-03-19 2004-03-19 Image forming apparatus and image forming method

Publications (1)

Publication Number Publication Date
JP2005267447A true JP2005267447A (en) 2005-09-29

Family

ID=35091911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004081474A Pending JP2005267447A (en) 2004-03-19 2004-03-19 Image forming apparatus and image forming method

Country Status (1)

Country Link
JP (1) JP2005267447A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306143A (en) * 2006-05-09 2007-11-22 Ricoh Co Ltd Image processing apparatus
JP2008176759A (en) * 2006-12-22 2008-07-31 Hitachi Ltd Operation consistency maintenance method, system and program
JP2009009220A (en) * 2007-06-26 2009-01-15 Konica Minolta Business Technologies Inc Event notification method, control program, and control device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306143A (en) * 2006-05-09 2007-11-22 Ricoh Co Ltd Image processing apparatus
JP2008176759A (en) * 2006-12-22 2008-07-31 Hitachi Ltd Operation consistency maintenance method, system and program
JP2009009220A (en) * 2007-06-26 2009-01-15 Konica Minolta Business Technologies Inc Event notification method, control program, and control device

Similar Documents

Publication Publication Date Title
US8767244B2 (en) Image forming apparatus, information processing apparatus, information processing method, information processing program and storage medium
JP4625343B2 (en) Image forming apparatus, terminal apparatus, information processing method, information processing program, and recording medium
US7636172B2 (en) Image forming apparatus, information processing apparatus and version check method using an API from an application
EP1398948B1 (en) Image forming apparatus, methods used therein and a computer readable storage medium
US8432562B2 (en) Image processing apparatus, method, program, and computer readable recording medium for controlling operation switching and displaying at occurrence of error conditions
JP4597834B2 (en) Image forming apparatus, information processing method, information processing program, and recording medium
JP4843386B2 (en) Apparatus, information processing method, information processing program, and recording medium
JP2011170465A (en) System, method, and program for software distribution
US20040057067A1 (en) Image forming apparatus, wrapping method and the program
US20130174141A1 (en) Install method, apparatus
JP5664692B2 (en) Electronic device, image forming apparatus, information processing method, information processing program, and recording medium
JP2007048270A (en) Image forming apparatus, information processing apparatus, information processing method, information processing program and recording medium
JP2005267447A (en) Image forming apparatus and image forming method
JP2009137165A (en) Image formation device, information processing method and program
JP2005269439A (en) Image forming apparatus, information processing method, information processing program, and recording medium
JP4246560B2 (en) Information processing apparatus, information processing method, program, and recording medium
JP5565439B2 (en) Apparatus, information processing method, information processing program, and recording medium
JP2004127253A (en) Information processing apparatus and version check method
JP2006157386A (en) Image formation apparatus, terminal equipment, information processing method, information processing program and recording medium
JP2010218469A (en) Information processor, information processing method, program and recording medium
JP2004129220A (en) Image forming apparatus and version check method
JP2009005209A (en) Image processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090309

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090407