JP2009048485A - Information processor, information processing method, information processing program and storage medium recording the information processing program - Google Patents
Information processor, information processing method, information processing program and storage medium recording the information processing program Download PDFInfo
- Publication number
- JP2009048485A JP2009048485A JP2007215105A JP2007215105A JP2009048485A JP 2009048485 A JP2009048485 A JP 2009048485A JP 2007215105 A JP2007215105 A JP 2007215105A JP 2007215105 A JP2007215105 A JP 2007215105A JP 2009048485 A JP2009048485 A JP 2009048485A
- Authority
- JP
- Japan
- Prior art keywords
- function
- information processing
- information
- branch
- execution
- 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
Links
Images
Abstract
Description
本発明は、デスクトップアプリケーションに係り、特に複数の小機能(最小単位の機能)を所定の実行順序に従って実行することで、アプリケーションが有する1つの機能を実現する情報処理装置に関するものである。 The present invention relates to a desktop application, and particularly to an information processing apparatus that realizes one function of an application by executing a plurality of small functions (minimum unit functions) according to a predetermined execution order.
同じアプリケーションであっても、そのアプリケーションを使用するユーザによって使用目的や用途は様々である。 Even for the same application, the purpose of use and usage vary depending on the user who uses the application.
そのため、アプリケーションを開発し、ユーザに提供する企業にとっては、提供したアプリケーションがユーザの使用目的や用途に十分に対応できているか否か、すなわち、自社のアプリケーションがユーザから高い顧客満足度を得られるか否かと言う点が、アプリケーションを販売する上で重要となる。 Therefore, for companies that develop applications and provide them to users, whether or not the provided applications can sufficiently meet the purpose and application of the users, that is, their applications can obtain high customer satisfaction from users. Whether or not is important in selling applications.
そこで、アプリケーションの多くは、ユーザサイドにおいて、必要な機能が拡張できるように、予め、全てのユーザに共通して提供する基本的な機能(以下、「基本機能」と言う。)と、ユーザが必要なときに拡張可能な機能(以下、「拡張機能」と言う。)とに分けて開発され、ユーザに提供されている。 Therefore, in many applications, a basic function (hereinafter referred to as “basic function”) provided in common to all users in advance so that necessary functions can be expanded on the user side, It is developed separately for functions that can be expanded when necessary (hereinafter referred to as “extended functions”), and is provided to users.
その結果、ユーザは、必要に応じて、「基本機能」を搭載したアプリケーションが動作する情報処理装置に、アプリケーション本体のプログラムとは別の形で提供された「拡張機能」用のプログラムをインストールすることにより、使用目的や用途に応じた機能拡張を行うことができる。 As a result, the user installs the program for the “extended function” provided in a form different from the program of the application main body to the information processing apparatus in which the application having the “basic function” operates as necessary. As a result, the function can be expanded according to the purpose of use and application.
このような、機能拡張を実現するために開発された「拡張機能」用のプログラムを、「プラグイン」と言う。 Such a program for “extended function” developed to realize function expansion is called “plug-in”.
例えば、特許文献1には、システムが有する複数個の文書管理DB(Data Base)との間でデータ通信を行うためにDBそれぞれを接続する機能を、文書管理ソフトウェア(アプリケーション本体)のプログラムとは別のプログラム(DB接続機能プラグイン)として構成する統合文書管理システムが提案されている。
For example,
このように、統合文書管理システムを構成することで、ユーザが、UI(User Interface)を介して文書操作を行う際に、システムが有するDBの種類を意識することなく操作を行うことができる他、DB間のデータ通信に関する仕様変更やDBの設計変更、また新たなDBの追加などが発生した場合でも、開発サイドは、その変更点への対応をプラグイン単位で行えば良いため、カスタマイズが容易であるなどの効果が挙げられている。 In this way, by configuring an integrated document management system, when a user performs a document operation via a UI (User Interface), the user can operate without being aware of the type of DB that the system has. Even if there is a change in specifications related to data communication between DBs, DB design changes, or addition of new DBs, the development side needs to respond to the changes in plug-in units, so customization is possible. The effect is easy.
しかし、上記のようなプラグインを用いてアプリケーションの機能拡張を行い、プラグインにより提供される各機能を組み合わせて一連の処理を行う場合、例えば、各機能の実行をその都度ユーザが指示しなければならないなど、一連の処理を終えるまでの操作が煩雑になると言う問題点がある。 However, when the application functions are expanded using the plug-ins as described above and a series of processing is performed by combining the functions provided by the plug-ins, for example, the user must instruct execution of each function each time. There is a problem that the operation until the end of a series of processing becomes complicated.
現在では、より簡便に一連の処理を行うために、拡張された最小単位の機能である小機能を所定の実行順序に従って実行することで、1つの機能として一連の処理を実現するアプリケーションが提案されている。
しかしながら、従来の「複数の小機能を所定の実行順序に従って実行することで1つの機能を実現するアプリケーション」では、一連の処理の中で実行する小機能及びその実行順序を予め決めておく必要がある。そのため、既に実行した小機能の実行結果に応じて、これから実行する小機能を動的に決定することができない。すなわち、実行結果に応じた分岐処理を行うことができなかった。 However, in the conventional “application that realizes one function by executing a plurality of small functions according to a predetermined execution order”, it is necessary to determine in advance the small functions to be executed in a series of processes and the execution order thereof. is there. For this reason, it is not possible to dynamically determine a small function to be executed from now on according to the execution result of the already executed small function. That is, the branch process according to the execution result could not be performed.
例えば、ユーザが所定の画像処理を行った画像データの印刷を行うときに、画像データの色特性(カラー画像かモノクロ画像か)に応じてカラー印刷又はモノクロ印刷を切り替えて動作させたい場合には、カラー印刷を行う機能とモノクロ印刷を行う機能と、それぞれの印刷機能に対して実行する小機能及びその実行順序を予め決めておく必要があり、1つの印刷機能の中でカラー印刷又はモノクロ印刷を分岐処理することができない。 For example, when the user prints image data that has been subjected to predetermined image processing, and wants to switch between color printing and monochrome printing according to the color characteristics of the image data (color image or monochrome image) It is necessary to determine in advance a color printing function, a monochrome printing function, a small function to be executed for each printing function and an execution order thereof, and color printing or monochrome printing in one printing function. Cannot be branched.
そこで、本発明では、上記従来技術の問題点に鑑み、アプリケーションの1つの機能が実現する機能範囲を拡げ、ユーザの使用目的や用途に対して柔軟に対応可能なアプリケーション機能を実現することができる情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体を提供することを目的とする。 Therefore, in the present invention, in view of the above-described problems of the conventional technology, the function range realized by one function of an application can be expanded, and an application function that can flexibly cope with the user's purpose and application can be realized. An object is to provide an information processing apparatus, an information processing method, an information processing program, and a recording medium for recording the information processing program.
上記目的を達成するため、本発明の情報処理装置は、アプリケーションが有する1つの機能を構成する複数の小機能それぞれを実現する小機能ごとの情報処理手段を有し、前記情報処理手段を所定の実行順序に従って実行することで前記アプリケーションの機能を実現する情報処理装置であって、前記情報処理手段の実行結果に応じて分岐処理を行う分岐処理実行手段を有することを特徴とする。 In order to achieve the above object, an information processing apparatus of the present invention has information processing means for each small function that realizes each of a plurality of small functions constituting one function of an application. An information processing apparatus that realizes the function of the application by executing in accordance with an execution order, and includes a branch process execution unit that performs a branch process according to an execution result of the information processing unit.
これによって、本発明の情報処理装置は、小機能の実行結果に応じた分岐処理を行い、次に実行する小機能を動的に決定することにより、アプリケーションの1つの機能が実現する機能範囲を拡げ、ユーザの使用目的や用途に対して柔軟に対応可能なアプリケーション機能を実現することができる。 As a result, the information processing apparatus of the present invention performs a branch process according to the execution result of the small function, and dynamically determines the small function to be executed next, thereby reducing the function range realized by one function of the application. It is possible to realize an application function that can be expanded and flexibly cope with the purpose and application of the user.
また、上記目的を達成するため、本発明の情報処理装置は、前記情報処理手段の実行結果に応じて分岐処理するための条件を示す分岐条件情報と、分岐した後に実行される情報処理手段の実行順序を示す実行順序情報と、分岐した後に実行する情報処理手段で処理されるデータを示す処理対象情報とを定義した定義データを生成する定義データ生成手段を有し、前記分岐処理実行手段が、前記定義データ生成手段により生成された定義データに基づいて前記分岐処理を行うことを特徴とする。 In order to achieve the above object, an information processing apparatus according to the present invention includes branch condition information indicating a condition for performing branch processing according to an execution result of the information processing means, and information processing means executed after branching. A definition data generating unit configured to generate definition data defining execution order information indicating an execution order and processing target information indicating data to be processed by an information processing unit to be executed after branching; The branching process is performed based on the definition data generated by the definition data generation means.
また、上記目的を達成するため、本発明の情報処理装置は、前記定義データ生成手段において、前記定義データの前記分岐条件情報に、前記小機能を実現する前記情報処理手段を識別する識別情報と、前記情報処理手段の属性情報とを定義することを特徴とする。 In order to achieve the above object, in the information processing apparatus of the present invention, the definition data generation means includes identification information for identifying the information processing means for realizing the small function in the branch condition information of the definition data. The attribute information of the information processing means is defined.
上記目的を達成するため、本発明の情報処理方法は、アプリケーションが有する1つの機能を構成する複数の小機能それぞれを実現する小機能ごとの情報処理手順を有し、前記情報処理手順を所定の実行順序に従って実行することで前記アプリケーションの機能を実現する情報処理方法であって、前記情報処理手順を前記所定の実行順序に従って実行するときに、前記情報処理手順を実行して得た実行結果に応じて分岐処理を行う分岐処理実行手順を有することを特徴とする。 In order to achieve the above object, an information processing method of the present invention has an information processing procedure for each small function that realizes each of a plurality of small functions that constitute one function of an application. An information processing method for realizing the function of the application by executing according to an execution order, wherein when the information processing procedure is executed according to the predetermined execution order, an execution result obtained by executing the information processing procedure is obtained. It has a branch process execution procedure for performing a branch process accordingly.
これによって、本発明の情報処理方法は、小機能の実行結果に応じた分岐処理を行い、次に実行する小機能を動的に決定することにより、アプリケーションの1つの機能が実現する機能範囲を拡げ、ユーザの使用目的や用途に対して柔軟に対応可能なアプリケーション機能を実現することができる。 As a result, the information processing method of the present invention performs a branch process according to the execution result of the small function, and dynamically determines a small function to be executed next, thereby reducing the function range realized by one function of the application. It is possible to realize an application function that can be expanded and flexibly cope with the purpose and application of the user.
上記目的を達成するため、本発明の情報処理プログラムは、アプリケーションが有する1つの機能を構成する複数の小機能それぞれを実現する小機能ごとの情報処理手段を有し、前記情報処理手段を所定の実行順序に従って実行することで前記アプリケーションの機能を実現する情報処理プログラムであって、コンピュータを、前記情報処理手段の実行結果に応じて分岐処理を行うように実行させる。 In order to achieve the above object, an information processing program of the present invention has information processing means for each small function that realizes each of a plurality of small functions constituting one function of an application. An information processing program that implements the function of the application by executing according to an execution order, and causes a computer to execute a branch process according to an execution result of the information processing means.
これによって、本発明の情報処理プログラムは、コンピュータを、小機能の実行結果に応じて次に実行する小機能を決定する分岐処理を行うように実行させることができる。 Accordingly, the information processing program of the present invention can cause the computer to execute a branch process for determining a small function to be executed next in accordance with the execution result of the small function.
よって、本発明の情報処理プログラムは、アプリケーションの1つの機能が実現する機能範囲を拡げ、ユーザの使用目的や用途に対して柔軟に対応可能なアプリケーションを実現することができる。 Therefore, the information processing program of the present invention can expand the functional range realized by one function of the application, and can realize an application that can flexibly respond to the user's purpose and application.
本発明によれば、小機能の実行結果に応じた分岐処理を行い、次に実行する小機能を動的に決定することにより、アプリケーションの1つの機能が実現する機能範囲を拡げ、ユーザの使用目的や用途に対して柔軟に対応可能なアプリケーション機能を実現するできる情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体を提供することができる。 According to the present invention, the branching process according to the execution result of the small function is performed, and the small function to be executed next is dynamically determined, so that the function range realized by one function of the application is expanded and used by the user. It is possible to provide an information processing apparatus, an information processing method, an information processing program, and a recording medium for recording the information processing program that can realize an application function that can flexibly cope with the purpose and application.
以下、本発明の好適な実施の形態(以下、「実施形態」と言う。)について、図面を用いて詳細に説明する。 DESCRIPTION OF EMBODIMENTS Hereinafter, preferred embodiments of the present invention (hereinafter referred to as “embodiments”) will be described in detail with reference to the drawings.
[第1の実施形態]
<情報処理装置のハードウェア構成について>
まず、本実施形態に係る情報処理装置100のハードウェア構成について、図1を用いて説明する。
[First Embodiment]
<Hardware configuration of information processing device>
First, the hardware configuration of the
図1は、本発明の実施形態1に係る情報処理装置100のハードウェア構成の一例を示す図である。
FIG. 1 is a diagram illustrating an example of a hardware configuration of the
図1に示すように、本実施形態に係る情報処理装置100は、制御部11、主記憶部12、補助記憶部13、ネットワークI/F14、外部記憶装置I/F15、外部装置I/F16、出力装置I/F17、及び入力装置I/F18とから構成されている。
As shown in FIG. 1, the
制御部(CPU:Central Processing Unit)11は、以下に説明する主記憶部12、補助記憶部13、及びネットワークI/F14など、本実施形態に係る情報処理装置100が有する各装置の制御を行う。また、制御部11は、主記憶部12や補助記憶部13などに記憶されたプログラムを実行する装置で、入力装置や記憶装置からデータを受け取り、データを演算・加工した上で、出力装置や記憶装置に出力する(例えば、キーボードで入力した文字をディスプレイに表示するなど)。
A control unit (CPU: Central Processing Unit) 11 controls each device included in the
主記憶部(ROM:Read Only Memory、RAM:Random Access Memory)12は、制御部11が実行するプログラムや関連するデータを記憶(一時的に保持する場合も含む)する装置である。ROMには、制御部11が実行するプログラムや関連するデータが記憶されており、記憶されたプログラムや関連するデータは、制御部11により、必要に応じてRAM上へ展開(ロード)され、展開(ロード)されたプログラムや関連するデータは、制御部11により、演算・加工される。
A main storage unit (ROM: Read Only Memory, RAM: Random Access Memory) 12 is a device for storing (including temporarily holding) a program executed by the
補助記憶部(HD:Hard Disk)13は、基本ソフトウェアであるOS(Operating System)や本実施形態に係る情報処理プログラムを含むアプリケーションプログラムや機能拡張用のプラグインなどを関連するデータとともに記憶する装置である。また、補助記憶部13には、本実施形態に係る情報処理装置100が管理する各種情報(例えば、プラグインの実行条件や実行順序を定義した定義情報など。)が格納され、DBやファイルシステム(File System)などにより管理される。
The auxiliary storage unit (HD: Hard Disk) 13 stores an OS (Operating System) that is basic software, an application program including an information processing program according to the present embodiment, a plug-in for function expansion, and the like together with related data. It is. The
ネットワークI/F14は、有線及び/又は無線回線などのデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介して接続された通信機能を有する周辺機器(例えば、他の情報処理装置や画像形成装置など。)と本実施形態に係る情報処理装置100とのインタフェースである。
The network I /
外部記憶装置I/F15は、USB(Universal Serial Bus)などのデータ伝送路を介して接続された外部記憶装置(例えば、記憶メディアドライブなど。)と本実施形態に係る情報処理装置100とのインタフェースである。
The external storage device I /
外部装置I/F16は、USBなどのデータ伝送路を介して接続された外部装置(例えば、外付けHDやUSBメモリなど。)と本実施形態に係る情報処理装置100とのインタフェースである。
The external device I /
本実施形態に係る情報処理装置100は、これらのインタフェースを介して、外部と各種データのやり取り(送受信や読み込み/書き込み)を行う。
The
出力装置I/F17は、専用ケーブルなどのデータ伝送路を介して接続された出力装置(例えば、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)など。)と本実施形態に係る情報処理装置100とのインタフェースである。
The output device I /
入力装置I/F18は、USBなどのデータ伝送路を介して接続された入力装置(例えば、キーボードやマウスなど。)と本実施形態に係る情報処理装置100とのインタフェースである。
The input device I /
このように、本実施形態に係る情報処理装置100は、制御部11によって、補助記憶部13に格納された本実施形態に係る情報処理プログラムを主記憶部12のRAM上に展開(ロード)し、展開(ロード)したプログラムを実行することで、以降に説明する「ユーザの使用目的や用途に対して柔軟に対応可能なデスクトップアプリケーション」を実現している。
As described above, in the
<情報処理装置のソフトウェア構成について>
次に、本実施形態に係る情報処理装置100のソフトウェア構成について、図3を用いて説明する。
<Software configuration of information processing device>
Next, the software configuration of the
図2は、本発明の第1の実施形態に係る情報処理装置100のソフトウェア構成の一例を示す図である。
FIG. 2 is a diagram illustrating an example of a software configuration of the
図2に示すように、本実施形態に係る情報処理装置100に実装するデスクトップアプリケーション20に関するソフトウェアは、デスクトップアプリケーション20、機能プラグイン30、及びコアプログラム(コアモジュール群)31とから構成されている。
As shown in FIG. 2, software related to the
デスクトップアプリケーション20は、定義データ21、UIプラグイン(UIパーツ)22、及びアプリケーションプロセス23とから構成されている。
The
定義データ21は、デスクトップアプリケーション20によって行う処理を実現するために必要なプラグインの実行条件や実行順序などの動作に関する情報が所定の形式に従って定義されたデータであり、複数個のデータ(データ群)によって構成されている。
The
図3は、本発明の第1の実施形態に係る定義データ21のデータ構造の一例(条件分岐がない場合)を示す図である。
FIG. 3 is a diagram showing an example of the data structure of the
図3に示すデータは、XML(Extensible Markup Language)と言われるマークアップ言語によって記述した定義データ21に一例である。
The data shown in FIG. 3 is an example of
XMLは、タグと呼ばれる特定の文字列によって文書やデータの意味や構造を記述するマークアップ言語の1つで、ユーザが独自のタグを指定することができる。 XML is one of markup languages for describing the meaning and structure of documents and data by a specific character string called a tag, and a user can specify a unique tag.
このような言語特性から、本実施形態に係る定義データ21では、独自の「定義開始タグ」(例えば"<Tag>"など)と「定義終了タグ」(例えば"</Tag>"など)との間に、動作に関する情報(例えばProc_1など)を記述することで定義する(例えば"<Tag>Proc_1</Tag>"など)。よって、上記の「所定の形式」とは、開始タグと終了タグとの間に、動作に関する情報を配置する形式を意味する。
Due to such language characteristics, the
また、本実施形態に係る定義データ21では、「開始タグ」と「終了タグ」とから、定義するデータ構造を階層化する。例えば、定義Aの「開始タグ」に対応する定義Aの「終了タグ」との間に、定義Bの「開始タグ」と「終了タグ」を埋め込み、更に、定義Bの「開始タグ」に対応する定義Bの「終了タグ」との間に、定義Cの「開始タグ」と「終了タグ」及び定義Dの「開始タグ」と「終了タグ」とを埋め埋め込んだ場合、定義Aの構成要素が定義Bとなり、定義Bの構成要素が定義C及びDとなる。このように、一対のタグの間に、別のタグを入れ子のように埋め込んでいくことで、定義するデータを階層化することができる。
Further, in the
定義データ21に定義する動作に関する情報には、主に、デスクトップアプリケーション20によって行う処理を1つの機能として定義した場合の「機能に関する情報」と、デスクトップアプリケーション20によって行う処理を実現するために必要な機能プラグイン(小機能)30の「実行条件や実行順序に関する情報」と、機能プラグイン(小機能)30の「処理対象に関する情報」の3つの情報がある。
The information related to the operation defined in the
<<機能に関する情報>>
(a)定義名(機能名)
複数個の機能プラグイン(小機能)30によって行う処理を1つの機能として定義したときの定義名を示す情報(複数個の機能プラグイン(小機能)30を実行することで実現される機能名を示す情報)。
(b)定義種類
定義した機能の種類(例えば、システムサイドの機能やユーザサイドの機能など。)を示す情報。
(c)メニュー名
定義した機能が、デスクトップアプリケーション20のメニュー項目の1つとして表示するときに該当するメニュー名を示す情報。
(d)メニュー項目領域
定義した機能が、デスクトップアプリケーション20のメニュー項目の1つとして表示するときに、該当するメニューのうち、表示するメニュー項目の領域を示す情報。
<< Function information >>
(A) Definition name (function name)
Information indicating a definition name when processing performed by a plurality of function plug-ins (small functions) 30 is defined as one function (function name realized by executing a plurality of function plug-ins (small functions) 30 Information).
(B) Definition type Information indicating the type of a defined function (for example, a system-side function or a user-side function).
(C) Menu name Information indicating a menu name corresponding to a defined function displayed as one of the menu items of the
(D) Menu item area Information indicating the area of the menu item to be displayed among the corresponding menus when the defined function is displayed as one of the menu items of the
<<実行条件や実行順序に関する情報>>
(e)実行条件
情報処理手段41(機能プラグイン(小機能)30)で処理を行うときに、処理を制御するためのパラメータ。
(f)実行順序
複数個の機能プラグイン(小機能)30を並べた順番(記述された順番(図3の処理Aと処理B))。
<< Information about execution conditions and execution order >>
(E) Execution conditions Parameters for controlling processing when processing is performed by the information processing means 41 (function plug-in (small function) 30).
(F) Execution order The order in which a plurality of function plug-ins (small functions) 30 are arranged (the order in which they are described (process A and process B in FIG. 3)).
<<処理対象に関する定義>>
(g)処理対象
機能プラグイン(小機能)30の処理対象であるデータの名前や、そのデータを出力した機能プラグイン(小機能)30の名前を示す情報。
<< Definition of processing target >>
(G) Processing Target Information indicating the name of data to be processed by the function plug-in (small function) 30 and the name of the function plug-in (small function) 30 that output the data.
図3に示す定義データ21では、これらの情報を各情報に対応した「開始タグ」と「終了タグ」によって定義している。
In the
よって、定義データ21は、「機能に関する情報」を定義するデータ71と、「実行条件、実行順序、及び処理対象に関する情報」を定義するデータ72とから構成される。
Therefore, the
図2に戻り、UIプラグイン(UIパーツ)22は、デスクトップアプリケーション20のUIを構成するプログラム(UIを構成する最小単位の機能(小機能))であり、複数個のプログラム(モジュール群)によって構成されている。
Returning to FIG. 2, the UI plug-in (UI part) 22 is a program (minimum unit function (small function) that configures the UI) of the
アプリケーションプロセス23は、OSから主記憶部12のRAM上に使用可能なメモリ領域の割り当てを受けて、処理を実行するプログラムである。アプリケーションプロセス23によって実行される処理は、例えば、UIプラグイン(UIパーツ)22を用いてCRTやLCDなどの出力装置にUIを表示するための描画処理、定義データ21に定義された動作条件や動作順序などの動作に関する情報に従って機能プラグイン(小機能)30の動作を指示するプラグイン実行処理、UIから受け付けた動作に関する情報を基に定義データ21を生成する定義データ生成処理などである。
The
機能プラグイン30は、デスクトップアプリケーション20の機能を実現するために所定の情報処理を行うプログラムであり、複数個のプログラム(モジュール群)によって構成されている。ここで言う「所定の情報処理」とは、例えば、「ファイル選択」、「リサイズ(変倍)」、「カラー印刷」、「モノクロ印刷」、及び「メッセージ表示」などのような、デスクトップアプリケーション20の機能を構成する最小単位の機能(小機能)を実現する処理を意味する。
The function plug-in 30 is a program for performing predetermined information processing in order to realize the function of the
機能プラグイン30が実現する最小単位の機能(小機能)は、主に、情報処理装置100に入力された入力データに対して画像処理を行う処理(画像処理機能)と、入力データ及び/又は画像処理後のデータの出力を行う処理(出力機能)と、画像処理及び出力処理を行うときにその実行状態や実行結果などの情報をCRTやLCDなどの出力装置を介してユーザに通知する処理(情報通知機能)との3つの機能分類に含まれるいずれか1つの機能である。 The minimum unit functions (small functions) realized by the function plug-in 30 mainly include processing for performing image processing on input data input to the information processing apparatus 100 (image processing function), input data, and / or Processing to output data after image processing (output function), and processing to notify the user of information such as execution status and execution result via output devices such as CRT and LCD when performing image processing and output processing Any one function included in the three function classifications (information notification function).
このような機能プラグイン(小機能)30は、デスクトップアプリケーション20を情報処理装置100にインストールしたときや必要に応じて追加インストールしたときに、インストーラーによって補助記憶部13などの不揮発性の記憶装置の所定の記憶領域に格納される。ここで言う「所定の記憶領域」とは、インストーラーによって指定される格納先アドレス(例えばディレクトリパスやフォルダパス)が示す記憶領域を意味する。
Such a function plug-in (small function) 30 is stored in the nonvolatile storage device such as the
コアプログラム31は、アプリケーションプロセス23からの動作指示に従って機能プラグイン(小機能)30を実行するプログラムや、アプリケーションプログラムとプラグインモジュールとの間のデータインタフェース(以下、「データI/F」と言う。)プログラムと言った、アプリケーションプログラムとプラグインモジュールとの間で共通化されたプログラムであり、複数個のプログラム(モジュール群)によって構成されている。
The
上記の構成により、本実施形態に係るデスクトップアプリケーション20に関するソフトウェアは、以下のように動作する。この動作は、ユーザが、「デスクトップアプリケーション20のメニュー項目を選択した」ときの一例である。
(1) UIを介してユーザからの機能動作指示を受け取る。
(2) アプリケーションプロセス23は、UIから受け取った動作指示を、データI/Fを介してコアプログラム31に渡す。
(3) コアプログラム31は、アプリケーションプロセス23から受け取った動作指示に従って、指示された機能の動作に関する情報が定義された定義データ21を特定する(複数個ある定義データ21の中から、UI上のメニュー項目に対応付けられた定義データ21を、例えば、定義データ21のファイル名や定義データ21に定義された「機能に関する情報」などを基に特定する)。コアプログラム31は、特定した定義データ21を基に、定義された実行条件や実行順序などの動作に関する情報に従って機能プラグイン(小機能)30を実行する。
With the above configuration, the software related to the
(1) A function operation instruction is received from the user via the UI.
(2) The
(3) The
このように、本実施形態に係るデスクトップアプリケーション20に関するソフトウェアは、ユーザの機能動作指示に従って、OSから割り当てられた主記憶部12のRAM上のメモリ領域に、上記に説明したプログラムやデータを展開(ロード)し、展開(ロード)したプログラムを制御部11により実行することでアプリケーションが有する1つの機能を実現している。
As described above, the software related to the
<情報処理装置の主な機能を構成する手段について>
では、本実施形態に係る情報処理装置100が、図1のハードウェア構成及び図2のソフトウェア構成によって実現されるデスクトップアプリケーション20において、機能プラグイン(小機能)30の実行結果に応じた分岐処理を行うための主な機能を構成する各手段について、図4〜14を用いて説明する。
<Means for configuring main functions of information processing apparatus>
In the
図4は、本発明の第1の実施形態に係る情報処理装置100の主な機能を構成する手段の一例を示すブロック図である。
FIG. 4 is a block diagram showing an example of means constituting the main functions of the
本実施形態に係る情報処理装置100が有するデスクトップアプリケーション20において、機能プラグイン(小機能)30の実行結果に応じた分岐処理を行うための主な機能は、情報処理手段41、定義データ生成手段42、及び分岐処理実行手段43とから構成されている。以下に、各手段について説明する。
In the
情報処理手段41は、デスクトップアプリケーション20の機能を実現するために所定の情報処理を行うものであり、図2で説明した機能プラグイン(小機能)30を制御部11で実行することにより行われる。
The information processing means 41 performs predetermined information processing in order to realize the function of the
よって、情報処理手段41は、予め、補助記憶部13などの不揮発性の記憶装置に格納された機能プラグイン(小機能)30が、必要に応じて(ユーザの動作指定に応じて)主記憶部12のRAM上に展開(ロード)され制御部11によって実行されることで、デスクトップアプリケーション20の機能を構成する最小単位の機能(小機能)を実現する。
Therefore, in the information processing means 41, the function plug-in (small function) 30 stored in advance in a non-volatile storage device such as the
図4には、その一例として、画像処理機能である「ファイル選択」の処理を行う情報処理手段41a(ファイル選択プラグイン)と「リサイズ(変倍)」を行う情報処理手段41b(リサイズプラグイン)、また、出力機能である「カラー印刷」を行う情報処理手段41c(カラー印刷プラグイン)と「モノクロ印刷」を行う情報処理手段41d(モノクロ印刷プラグイ)、更に、情報通知機能である「メッセージ表示」を行う情報処理手段41d(メッセージ表示プラグイン)とが示されている。 In FIG. 4, as an example, information processing means 41a (file selection plug-in) that performs processing of “file selection” that is an image processing function and information processing means 41b (resizing plug-in) that performs “resizing (magnification)”. In addition, information processing means 41c (color printing plug-in) for performing “color printing” as an output function, information processing means 41d (monochrome printing plug-in) for performing “monochrome printing”, and “message” as an information notification function Information processing means 41d (message display plug-in) that performs “display” is shown.
次に、定義データ生成手段42は、デスクトップアプリケーション20によって行う処理を実現するために必要な機能プラグイン(小機能)30の実行条件や実行順序などの動作に関する情報を、図3に示すような所定の形式に従って定義して定義データ21を生成する。
Next, the definition data generation means 42 provides information on the operation such as the execution conditions and execution order of the function plug-in (small function) 30 necessary for realizing the processing performed by the
定義データ生成手段42では、独自のタグを用いた所定の形式に従って、動作に関する情報の意味を記述した定義データ21を生成することによって、複数個の機能プラグイン(小機能)30(例えば図4に示す情報処理手段41a〜41e)により行われる処理を、デスクトップアプリケーション20の1つの機能(複数個の小機能から構成される機能)として定義する。
The definition data generating means 42 generates a plurality of function plug-ins (small functions) 30 (for example, FIG. 4) by generating
そのため、本実施形態に係る情報処理装置100では、ユーザがデスクトップアプリケーション20によって行いたい処理の実行条件や実行順序などの動作に関する情報を、定義データ21に定義することで、デスクトップアプリケーション20の1つの機能として実行させることができる。
For this reason, in the
図3に示す定義データ21には、機能プラグイン(小機能)30が行う処理Aの次に、無条件で他の機能プラグイン(小機能)30が行う処理Bが実行され、デスクトップアプリケーション20の1つの機能を実現すると言う一連の処理を実現する実行順序が定義されたデータ例が示されている。
In the
例えば、ユーザが、処理A及び処理Bを行った後に、処理A又は処理Bの実行結果に応じて、後に行う処理を動的に切り替えて機能させたい場合がある。 For example, after performing the process A and the process B, the user may want to dynamically switch the function to be performed later according to the execution result of the process A or the process B.
このような場合、従来のデスクトップアプリケーション20では、処理Bの実行後に行う処理の実行順序を、本来動的に切り替えて機能させたい処理パターンの数だけ、処理A及び処理Bを行う実行順序を定義した定義データ21とは別の定義データ21に定義しておき、処理Bを実行した後に、処理Bの実行後に行う処理の実行順序を定義した複数の定義データ21から、ユーザ自身が処理A又は処理Bの実行結果に応じて適切な定義データ21を選択し、機能を実現しなければならなかった。
In such a case, in the
そこで、定義データ生成手段42では、デスクトップアプリケーション20で行いたい「機能に関する情報」や機能を実現するための機能プラグイン(小機能)30の「実行条件、実行順序、及び処理対象に関する情報」などを定義し、更に、機能プラグイン(小機能)30の実行結果に応じて分岐処理を行う「分岐処理に関する情報」を定義した定義データ21を生成する。このとき、定義データ生成手段42は、「機能に関する情報」や「実行条件、実行順序、及び処理対象に関する情報」を定義したときと同様の方法、すなわち独自のタグを用いた所定の形式に従って「分岐処理に関する情報」を定義する。
Therefore, in the definition data generation means 42, “information related to functions” desired to be performed by the
定義データ生成手段42は、以下に示す分岐処理の定義するときの方針に基づいて、「分岐処理に関する情報」を定義した定義データ21を生成している。
(方針1)1つ以上の機能プラグイン(小機能)30が所定の実行順序に従って行う処理のまとまりを1つの「処理状態」(以下、「状態」と言う。)とみなす。
(方針2)分岐処理は、(方針1)に示した状態の遷移によって定義する。
The definition data generation means 42 generates
(Policy 1) A group of processes performed by one or more function plug-ins (small functions) 30 in accordance with a predetermined execution order is regarded as one “processing state” (hereinafter referred to as “state”).
(Policy 2) The branching process is defined by the state transition shown in (Policy 1).
例えば、ユーザが、処理A及び処理Bを行った後に、処理A又は処理Bの実行結果に応じて、処理C及び処理Dを組み合わせた処理と、処理E及び処理Fを組み合わせた処理とを動的に切り替えて機能させたい場合、図5のフローに示すような処理の流れになる。 For example, after the user performs the process A and the process B, the process combining the process C and the process D and the process combining the process E and the process F are performed according to the execution result of the process A or the process B. When it is desired to switch between functions, the flow of processing is as shown in the flow of FIG.
図5は、本発明の第1の実施形態に係る分岐処理を定義するデータ構造の一例(その1)を示す図である。 FIG. 5 is a diagram illustrating an example (part 1) of a data structure defining branch processing according to the first embodiment of the present invention.
図5には、状態1において既に実行した処理A又は処理Bの実行結果に応じて所定の分岐処理を行い、実行結果が分岐条件1に該当した場合には、状態1から処理C及び処理Dを行う状態2へ遷移し、また実行結果が分岐条件2に該当した場合には、状態1から処理E及び処理Fを行う状態3へ遷移することで、分岐後の処理を動的に切り替える処理の流れが示されている。
In FIG. 5, a predetermined branch process is performed according to the execution result of the process A or the process B already executed in the
よって、定義データ生成手段21により生成された定義データ21は、「状態に関する情報」を定義するデータと「分岐処理に関する情報」を定義するデータ73とから構成される。
Therefore, the
図5には、図中のフローに示す処理の流れを基に、「分岐処理に関する情報」を定義したデータ73の一例が示されている。
FIG. 5 shows an example of
図5に示す「分岐処理に関する情報」を定義したデータ73からも分かるように、定義データ生成手段42は、「状態に関する情報」及び「分岐処理に関する情報」を、以下に挙げる独自のタグによって定義する。
As can be seen from the
<<状態を定義するタグ>>
<State name = "状態N">・・・</State>
機能プラグイン(小機能)30が行う処理のまとまりである「状態N」を定義する開始・終了タグ。
<< Tag that defines the state >>
<State name = "State N"> ... </ State>
Start / end tags that define “state N”, which is a group of processes performed by the function plug-in (small function) 30.
<<分岐処理を定義するタグ>>
<Choose name = "分岐名">・・・</Choose>
分岐処理を定義する開始・終了タグ。
<When test = "条件式(分岐条件1or2)">・・・</When>
条件式の分岐条件を満たした場合の状態遷移を定義する開始・終了タグ。
<otherwise>・・・</otherwise>
条件式の分岐条件を満たさなかった場合の状態遷移を定義する開始・終了タグ。
<Next State> 状態X </Next State>
分岐処理によって遷移する「状態X」を定義する開始・終了タグ。
<< Tag defining branch process >>
<Choose name = "branch name"> ... </ Choose>
Start / end tags that define branch processing.
<When test = "conditional expression (
Start and end tags that define the state transition when the conditional expression branch condition is satisfied.
<Otherwise> ... </ otherwise>
Start / end tags that define the state transition when the branch condition of the conditional expression is not satisfied.
<Next State> State X </ Next State>
Start and end tags that define "state X" that is transitioned by branch processing.
また、定義データ生成手段42は、上記に示した[<When>]タグの中で、図6及び図7に示すような所定の規則に従って分岐処理の条件式を定義する。 Further, the definition data generation means 42 defines a conditional expression for branch processing in accordance with a predetermined rule as shown in FIGS. 6 and 7 in the [<When>] tag shown above.
図6は、本発明の第1の実施形態に係る条件分岐における条件式52の一例を示す図である。また、図7は、本発明の第1の実施形態に係る条件分岐における条件式52の比較演算子51の一例を示す図である。
FIG. 6 is a diagram illustrating an example of the conditional expression 52 in the conditional branch according to the first embodiment of the present invention. FIG. 7 is a diagram illustrating an example of the
図6には、状態1の処理Bの実行結果の値「PropertyValue」が「X」以上か否かが分岐条件として定義された条件式52の一例が示されている。
FIG. 6 shows an example of the conditional expression 52 in which whether or not the value “PropertyValue” of the execution result of the process B in the
ここで、図6の中に示す「状態1の処理Bの実行結果の値」について説明する。本実施形態に係る機能プラグイン(小機能)30は、プラグイン処理の中で取り扱うオブジェクトの性質を表す属性情報を持っている。例えば、オブジェクトが画像データの場合には、色情報(Color)や幅(Width)及び高さ(Height)などを属性情報として持つ。機能プラグイン(小機能)30において、具体的に「どういった属性情報を持つか」については、プラグインによって異なり、機能提供する開発者側で機能プラグイン(小機能)30の中で取り扱うオブジェクトの性質に応じて設定する。
Here, the “value of the execution result of process B in
本実施形態では、上記の属性情報を持つ機能プラグイン(小機能)30によって機能を実現する構成としたことで、機能プラグイン(小機能)30の中で取り扱うオブジェクトの属性情報を処理途中の実行結果として条件分岐時に参照し、分岐処理を実現している。よって、定義データ生成手段42は、図6に示すように、生成する定義データ21の中で、「機能プラグイン(小機能)30の属性情報の値(実行結果の値)」、「比較演算子」、及び「比較条件値」とを所定の規則に従って分岐条件として設定している。
In this embodiment, since the function is realized by the function plug-in (small function) 30 having the attribute information, the attribute information of the object handled in the function plug-in (small function) 30 is being processed. The execution result is referenced at the time of conditional branching to realize branch processing. Therefore, as shown in FIG. 6, the definition data generation means 42 includes “value of attribute information (value of execution result) of function plug-in (small function) 30” and “comparison operation” in the
上記の点を踏まえて、以下に、定義データ生成手段42による分岐条件を含む定義データの生成について説明する。 Based on the above points, generation of definition data including branch conditions by the definition data generation means 42 will be described below.
定義データ生成手段42は、機能プラグイン(小機能)30の実行結果の値("状態1.処理B.PropertyValue")と、図7に示す比較演算子51(">=")と、比較条件値('X')とを連結した文字列("状態1.処理B.PropertyValue >= X")を生成する。
The definition data generation means 42 includes the value of the execution result of the function plug-in (small function) 30 (“
次に、定義データ生成手段42は、生成した文字列("状態1.処理B.PropertyValue >= X")を、条件式52を示す文字列("FuncRet://")に連結し、図6に示すような条件式52を生成する。
Next, the definition data generation means 42 concatenates the generated character string (“
生成された条件式52は、定義データ生成手段42によって、「<When>」タグの中に埋め込まれる。 The generated conditional expression 52 is embedded in the “<When>” tag by the definition data generating means 42.
このように、定義データ生成手段42は、上記の方法によって、「機能に関する情報」、「実行条件、実行順序、及び処理対象に関する情報」、「状態に関する情報」、及び「分岐処理に関する情報」を、所定の形式に従って定義し、図8に示すような定義データ21を生成する。
As described above, the definition
図8は、本発明の第1の実施形態に係る定義データ21のデータ構造の一例(条件分岐がある場合)を示す図である。
FIG. 8 is a diagram illustrating an example of the data structure of the
図8には、処理A及び処理Bを行う状態1から、所定の分岐条件を基に、処理A又は処理Bの実行結果に応じて、状態1から処理C及び処理Dを行う状態2又は処理E及び処理Fを行う状態3のどちらか一方の状態に遷移すると言う分岐処理の流れを定義した定義データ21の一例が示されている。
FIG. 8 shows the
定義データ生成手段42により生成された定義データ21は、定義の開始タグ[<CookFlowRecipe>]と終了タグ[</CookFlowPecipe>]との間に、「機能に関する情報」と「状態に関する情報」とが定義される。
The
更に、「状態に関する情報」には、機能を実現するために必要な状態(図8では状態1〜3)が定義される。 Further, in the “information about the state”, states (states 1 to 3 in FIG. 8) necessary for realizing the function are defined.
開始タグ[<State>]と終了タグ[</State>]との間に定義された状態には、分岐処理を含む状態(図8では状態1)と、分岐処理後に遷移する状態(図8では状態2又は状態3)がある。分岐処理を含む状態(図8では状態1)には、機能プラグイン(小機能)30の「実行条件及び実行順序に関する情報」や「分岐処理に関する情報」が定義され、一方、分岐処理後に遷移する状態(図8では状態2又は状態3)には、機能プラグイン(小機能)30の「実行条件、実行順序、及び処理対象に関する情報」が定義される。
The states defined between the start tag [<State>] and the end tag [</ State>] include a state including a branch process (
また、分岐処理後に遷移する状態(図8では状態2又は状態3)には、分岐処理後に所定の情報処理を行うデータを示す「データ名」と、このデータを生成した所定の情報処理を示す「処理名」とを含む「処理対象に関する情報」が定義される。
In addition, in the state (
では、本実施形態に係る情報処理装置100において、「ユーザが行いたい処理の実行条件、実行順序、及び分岐処理などの動作に関する情報をどのような方法で設定し、定義データ生成手段42によって定義データ21を生成するのか」について、以下に、図9〜12を用いて説明する。
Then, in the
以下の説明では、ユーザが、「リサイズ後(変倍後)の画像データがカラー画像の場合にカラー印刷、またモノクロ画像の場合にモノクロ印刷を行う」と言う変倍印刷処理を、デスクトップアプリケーション20の1つの機能(変倍印刷機能)として定義データ21に定義する場合を例にしている。
In the following description, the user performs the scaling printing process that the user performs “color printing when the image data after resizing (after scaling) is a color image, or monochrome printing when the image data is a monochrome image”. In this example, the function is defined in the
<<機能に関する情報の定義>>
まず、本実施形態に係る情報処理装置100において、ユーザが、「機能に関する情報」を定義する方法について説明する。
<< Definition of information about functions >>
First, in the
図9は、本発明の第1の実施形態に係る画像処理機能に関する定義データ生成時の表示画面の一例を示す図である。 FIG. 9 is a diagram showing an example of a display screen when generating definition data related to the image processing function according to the first embodiment of the present invention.
情報処理装置100は、ユーザによってデスクトップアプリケーション20が起動されると、アプリケーションプロセス23によって、図9に示すようなUIを備えたアプリケーションウィンドウ61をCRTやLCDなどの出力装置に表示する。
When the
アプリケーションウィンドウ61は、「機能に関する情報」を設定するUI領域として機能情報設定領域62を備えている。
The application window 61 includes a function
機能情報設定領域62は、「定義名(機能名)」を入力するテキストボックス62a、「定義種類」を設定するプルダウンメニュー62b、定義した機能をデスクトップアプリケーション20のメニュー項目の1つとして表示するときに該当する「メニュー名」を設定するプルダウンメニュー62c、定義した機能をデスクトップアプリケーション20のメニュー項目の1つとして表示するときに該当するメニューのうち、表示する「メニュー項目領域」を設定するテキストボックス62d、並びに、機能に関する情報や実行条件及び実行順序に関する情報について行った定義情報を確定する[確定]ボタン62eとから構成されている。
The function
ユーザは、上記に説明した機能情報設定領域62が備えるテキストボックス62a及び62dに、キーボードなどの入力装置から設定値(テキストデータ)を入力し、プルダウンメニュー62b及び62cから設定値を選択することで、定義データ生成手段42により定義データ21(機能に関する情報を定義するデータ71)を生成するときに必要な情報を設定する。
The user inputs a setting value (text data) from an input device such as a keyboard into the text boxes 62a and 62d provided in the function
図9では、ユーザが、上記の各UIを介して、「定義名(機能名)」を"変倍印刷"、「定義種類」を"ユーザコマンド"、「メニュー名」を"ファイル"、「メニュー項目領域」を"Output"と設定し、変倍印刷機能をデスクトップアプリケーション20の1つの機能として設定した例が示されている。
In FIG. 9, the user, through each of the above-mentioned UIs, “definition name (function name)” is “magnification printing”, “definition type” is “user command”, “menu name” is “file”, “ An example in which “menu item area” is set to “Output” and the scaling printing function is set as one function of the
これによって、定義データ生成手段42は、ユーザが、UIを介して設定した設定値を基に、図3に示した開始タグ[<RecipeProperty>]と終了タグ[</RecipeProperty>]との間に、「定義名(機能名)」、「定義種類」、「メニュー名」、及び「メニュー項目領域」のそれぞれを定義するタグとともに対応する値(例えば文字列や数値など)を、所定の形式に従って配置し、機能に関する情報を定義するデータ71を生成する。
As a result, the definition data generation means 42 is set between the start tag [<RecipeProperty>] and the end tag [</ RecipeProperty>] shown in FIG. 3 based on the setting value set by the user via the UI. , “Definition name (function name)”, “definition type”, “menu name”, and “menu item area” and corresponding values (for example, character strings and numerical values) according to a predetermined format Arrange and generate
<<実行条件、実行順序、処理対象、及び分岐処理に関する情報の定義>>
次に、本実施形態に係る情報処理装置100において、ユーザが、「実行条件、実行順序、及び処理対象に関する情報」や「分岐処理に関する情報」などを定義する方法について説明する。
<< Definition of information related to execution conditions, execution order, processing target, and branch processing >>
Next, in the
図9に示すアプリケーションウィンドウ61は、「実行条件、実行順序、及び処理対象に関する情報」を設定するUI領域として、「実行順序及び処理対象に関する情報」を設定する実行順序設定領域64と、「実行条件に関する情報」を設定する実行条件設定領域65とを備えている。 The application window 61 shown in FIG. 9 includes an execution order setting area 64 for setting “execution order and information about processing targets” as a UI area for setting “information about execution conditions, execution order, and processing targets”, and “execution execution”. And an execution condition setting area 65 for setting “information on conditions”.
また、アプリケーションウィンドウ61は、「実行条件、実行順序、及び処理対象に関する情報」を設定するときに、設定の対象となる機能プラグイン(小機能)30を選択するためのプラグイン選択領域63を備えている。図9に示すように、プラグイン選択領域63には、現在、情報処理装置100にインストールされた(補助記憶部13などの不揮発性の記憶装置に格納された)機能プラグイン(小機能)30の一覧が表示される。 The application window 61 also includes a plug-in selection area 63 for selecting a function plug-in (small function) 30 to be set when setting “execution conditions, execution order, and information on processing target”. I have. As shown in FIG. 9, in the plug-in selection area 63, a function plug-in (small function) 30 that is currently installed in the information processing apparatus 100 (stored in a non-volatile storage device such as the auxiliary storage unit 13). A list of will be displayed.
ユーザは、「実行順序に関する情報」について設定を行う場合、選択可能な機能プラグイン(小機能)30の一覧が表示されたプラグイン選択領域63から、デスクトップアプリケーション20によって行いたい処理を実現するために必要な機能プラグイン(小機能)30を、マウスなどのポインティングデバイスを介して選択(マウスの場合には「ドラッグ」)し、選択したままの状態で実行順序設定領域64へ移動し、選択解除(マウスの場合には「ドロップ」)することで、定義データ生成手段42により定義データ21(実行条件、実行順序、及び処理対象に関する情報を定義するデータ72)を生成するときに必要な実行順序を設定する。以降では、ユーザが用いるポインティングデバイスにマウスを使うことを想定して説明する。
When the user sets the “information regarding the execution order”, in order to realize the processing desired to be performed by the
(A)画像処理の定義
情報処理装置100にインストールされた機能プラグイン(小機能)30が有する画像処理機能について設定を行う場合、ユーザは、まず、プラグイン選択領域63に画像処理機能に関する機能プラグイン(小機能)30の一覧(画像処理機能のプラグイン選択領域63a)を表示させるため、領域内の[画像処理]タブをクリックする。
(A) Definition of Image Processing When setting the image processing function of the function plug-in (small function) 30 installed in the
次に、表示された画像処理機能に関する機能プラグイン(小機能)30の一覧から、必要な機能プラグイン(小機能)30をドラッグし、実行順序設定領域64にドロップする。 Next, a necessary function plug-in (small function) 30 is dragged from the displayed list of function plug-ins (small functions) 30 related to the image processing function, and dropped in the execution order setting area 64.
図9では、ユーザが、画像データのリサイズ(変倍)処理を実現するために、「ファイル選択」の次に行う「リサイズ(変倍)」の処理に対応したリサイズプラグイン41bを、画像処理機能のプラグイン選択領域63aからドラッグし、実行順序設定領域64において、「ファイル選択」の処理を行うファイル選択プラグイン41aの処理の次に行う処理に位置する領域(図中の[カレントファイル]の下)にドロップした例(図中の[リサイズ])が示されている。
In FIG. 9, the resize plug-in 41 b corresponding to the “resizing (scaling)” process performed after the “file selection” is performed by the user in order to realize the resizing (scaling) process of the image data. Dragging from the function plug-in
このように、実行順序において機能プラグイン(小機能)30の前後関係が1対1の場合には、後に行う機能プラグイン(小機能)30が処理するデータ、すなわち後に行う処理対象が明確であるため、「処理対象に関する情報」について設定を行う必要がない。 As described above, when the context of the function plug-in (small function) 30 is one-to-one in the execution order, the data processed by the function plug-in (small function) 30 performed later, that is, the processing target performed later is clear. Therefore, it is not necessary to set “information regarding the processing target”.
また、機能プラグイン(小機能)30の中には、実行条件(制御パラメータ)が設定できるものがあり、図9に示すように、アプリケーションウィンドウ61が、テキストボックスやプルダウンメニューなどから実行条件(制御パラメータ)を設定する実行条件設定領域65を備えている。 Some function plug-ins (small functions) 30 can set execution conditions (control parameters). As shown in FIG. 9, the application window 61 can be executed from a text box, pull-down menu, or the like. An execution condition setting area 65 for setting control parameters) is provided.
ユーザは、「実行順序に関する情報」について設定を行う場合、実行条件設定領域65のテキストボックスやプルダウンメニューから、実行条件(制御パラメータ)の値を設定する(テキストボックスの場合にはキーボードから値を入力し、プルダウンメニューの場合には該当するメニュー項目をマウスで選択する。)ことで、定義データ生成手段42により定義データ21(実行条件、実行順序、及び処理対象に関する情報を定義するデータ72)を生成するときに必要な実行条件を設定する。
When setting the “information regarding the execution order”, the user sets the value of the execution condition (control parameter) from the text box or pull-down menu in the execution condition setting area 65 (in the case of the text box, the value is set from the keyboard). In the case of a pull-down menu, the corresponding menu item is selected with the mouse.) By the definition data generation means 42, definition data 21 (
図9では、ユーザが、画像データを75%に変倍するために、リサイズ(変倍)の倍率を示す「変倍率(%)」に"75"を入力し、リサイズプラグイン41bの実行条件(制御パラメータ)の値を設定した例が示されている。 In FIG. 9, in order to change the image data to 75%, the user inputs “75” in “Resize (%)” indicating the resize (magnification) magnification, and the execution condition of the resize plug-in 41b An example in which the value of (control parameter) is set is shown.
(B)出力処理の定義
情報処理装置100にインストールされた機能プラグイン(小機能)30が有する出力機能について設定を行う場合、画像処理機能の場合と同様に、ユーザは、プラグイン選択領域63に出力機能に関する機能プラグイン(小機能)30の一覧(出力機能のプラグイン選択領域63b)を表示させるため、領域内の[出力]タブをクリックする。
(B) Definition of Output Processing When setting the output function of the function plug-in (small function) 30 installed in the
次に、表示された画像処理機能に関する機能プラグイン(小機能)30の一覧から、必要な機能プラグイン(小機能)30をドラッグし、実行順序設定領域64にドロップする。 Next, a necessary function plug-in (small function) 30 is dragged from the displayed list of function plug-ins (small functions) 30 related to the image processing function, and dropped in the execution order setting area 64.
図10は、本発明の第1の実施形態に係る出力機能に関する定義データ生成時の表示画面の一例を示す図である。 FIG. 10 is a diagram showing an example of a display screen when generating definition data related to the output function according to the first embodiment of the present invention.
図10では、ユーザが、リサイズ後(変倍後)の画像データを基にカラー印刷又はモノクロ印刷の切り替え処理を実現するために、リサイズプラグイン41bの実行結果に応じて、次に行う「カラー印刷」又は「モノクロ印刷」の処理に対応したカラー印刷プラグイン41c又はモノクロ印刷プラグイン41dを、出力機能のプラグイン選択領域63bからドラッグし、実行順序設定領域64において、リサイズプラグイン41bの処理の次に行う処理に位置する領域(図中の[リサイズ]の下)にドロップした例(図中の[モノクロ印刷]及び[カラー印刷])が示されている。 In FIG. 10, in order to realize a switching process between color printing and monochrome printing based on image data after resizing (after scaling), the user performs “color” which is performed next according to the execution result of the resizing plug-in 41 b. The color printing plug-in 41c or the monochrome printing plug-in 41d corresponding to the processing of “print” or “monochrome printing” is dragged from the plug-in selection area 63b of the output function, and the processing of the resizing plug-in 41b in the execution order setting area 64 The example ([Monochrome printing] and [Color printing] in the figure) dropped in the area (under [Resize] in the figure) located in the processing to be performed next is shown.
実行順序において機能プラグイン(小機能)30の前後関係が、分岐処理によって1対nになる場合には、分岐処理後に行うn個の機能プラグイン(小機能)30が処理するデータ、すなわち処理対象を明確するため、「処理対象に関する情報」について設定を行う必要がある。 When the context of the function plug-in (small function) 30 in the execution order becomes 1 to n by the branch process, the data processed by the n function plug-ins (small functions) 30 performed after the branch process, that is, the process In order to clarify the target, it is necessary to set “Information about processing target”.
そのため、図10に示すように、ユーザは、機能プラグイン(小機能)30の実行順序を設定するときに用いた実行順序設定領域64を介して、分岐処理後に行う機能プラグイン(小機能)30において処理するデータ、すなわち処理対象を設定する。 Therefore, as illustrated in FIG. 10, the user performs a function plug-in (small function) to be performed after the branch process via the execution order setting area 64 used when setting the execution order of the function plug-in (small function) 30. Data to be processed at 30, that is, a processing target is set.
ユーザは、「処理対象に関する情報」について設定を行う場合、実行順序設定領域64に配置された、分岐処理前に行う機能プラグイン(小機能)30のデータを示すドラッグポイント(図中の黒く塗りつぶされた丸)をドラッグし、分岐処理後に行う機能プラグイン(小機能)30を示すブロック領域(図中の[カラー印刷]又は[モノクロ印刷])にドロップすることで、定義データ生成手段42により定義データ21(実行条件、実行順序、及び処理対象に関する情報を定義するデータ72)を生成するときに必要な処理対象を設定する。
When the user sets the “information regarding the processing target”, the drag point indicating the data of the function plug-in (small function) 30 that is arranged in the execution order setting area 64 and is performed before the branch processing (filled black in the drawing). The definition data generating means 42 drags and drops it on the block area ([color printing] or [monochrome printing] in the figure) indicating the function plug-in (small function) 30 to be performed after branch processing. A processing target necessary for generating the definition data 21 (
図10では、ユーザが、リサイズプラグイン41bにより所定の画像処理が行われた画像データを、分岐処理後に行うカラー印刷プラグイン41c又はモノクロ印刷プラグイン41dで処理する処理対象として設定した例が示されている。 FIG. 10 illustrates an example in which the user sets image data that has been subjected to predetermined image processing by the resize plug-in 41b as a processing target to be processed by the color printing plug-in 41c or the monochrome printing plug-in 41d that is performed after the branching process. Has been.
また、このタイミングで、リサイズプラグイン41bの実行結果に応じて、次に行う処理を「カラー印刷」又は「モノクロ印刷」のどちらか一方とする分岐処理の分岐条件を設定する必要がある。 At this timing, it is necessary to set a branch condition for branch processing in which the next processing to be performed is either “color printing” or “monochrome printing” according to the execution result of the resizing plug-in 41b.
そのため、図10に示すように、ユーザは、機能プラグイン(小機能)30の実行条件を設定するときに用いた実行条件設定領域65を介して分岐条件を設定する。 Therefore, as shown in FIG. 10, the user sets the branch condition via the execution condition setting area 65 used when setting the execution condition of the function plug-in (small function) 30.
ユーザは、「分岐処理に関する情報」について設定を行う場合、実行条件設定領域65のテキストボックスから分岐条件の条件式52を設定する(テキストボックスの場合にはキーボードから値を入力する)ことで、定義データ生成手段42により定義データ21(分岐処理に関する情報を定義するデータ73)を生成するときに必要な分岐条件を設定する。
When setting the “information regarding branch processing”, the user sets the conditional expression 52 of the branch condition from the text box of the execution condition setting area 65 (in the case of the text box, the value is input from the keyboard). A branch condition necessary for generating the definition data 21 (
図10では、ユーザが、画像データの色情報を基に「カラー印刷」又は「モノクロ印刷」の切り替え処理を実現するために、リサイズプラグイン41bがリサイズ(変倍)した画像データの属性情報である色情報「Color」の値を実行結果の値として2より大きいか否かの分岐条件を表現した文字列("Color > 2")を入力し、リサイズプラグイン41bの実行後に行う分岐処理の分岐条件を設定した例が示されている。このように分岐条件が設定されると、定義データ生成手段42によって、「プラグイン名.属性情報(色情報:"Color")」と、「比較演算子('<')」と、「比較条件値('2')」とに基づいて、分岐条件の条件式52を生成し、定義データ21に定義する。
In FIG. 10, the user uses the attribute information of the image data resized (scaled) by the resizing plug-in 41b in order to realize the switching process of “color printing” or “monochrome printing” based on the color information of the image data. A character string (“Color> 2”) expressing a branch condition indicating whether or not the value of certain color information “Color” is greater than 2 is input as an execution result value, and branch processing performed after execution of the resizing plug-in 41b An example in which a branch condition is set is shown. When the branch condition is set in this way, the definition data generation means 42 makes “Plug-in name. Attribute information (color information:“ Color ”)”, “Comparison operator ('<')”, “Comparison Based on the condition value ('2') ", a conditional expression 52 for the branch condition is generated and defined in the
(C)情報通知処理の定義
情報処理装置100にインストールされた機能プラグイン(小機能)30が有する情報通知機能について設定を行う場合、画像処理機能の場合と同様に、ユーザは、プラグイン選択領域63に情報通知機能に関する機能プラグイン(小機能)30の一覧(情報通知機能のプラグイン選択領域63c)を表示させるため、領域内の[通知]タブをクリックする。
(C) Definition of Information Notification Process When setting the information notification function of the function plug-in (small function) 30 installed in the
次に、表示された画像処理機能に関する機能プラグイン(小機能)30の一覧から、必要な機能プラグイン(小機能)30をドラッグし、実行順序設定領域64にドロップする。 Next, a necessary function plug-in (small function) 30 is dragged from the displayed list of function plug-ins (small functions) 30 related to the image processing function, and dropped in the execution order setting area 64.
図11は、本発明の第1の実施形態に係る情報通知機能に関する定義データ生成時の表示画面の一例を示す図である。 FIG. 11 is a diagram showing an example of a display screen when generating definition data related to the information notification function according to the first embodiment of the present invention.
図11では、ユーザが、カラー印刷又はモノクロ印刷を行った後にその結果を通知する印刷結果通知処理を実現するために、「カラー印刷」又は「モノクロ印刷」の次に行う「メッセージ表示」の処理に対応したメッセージ表示プラグイン41eを、情報通知機能のプラグイン選択領域63bからドラッグし、実行順序設定領域64において、カラー印刷プラグイン41c及びモノクロ印刷プラグイン41dそれぞれの処理の次に行う処理に位置する領域(図中の[カラー印刷]又は[モノクロ印刷]の下)にドロップした例(図中の[メッセージボックス])が示されている。 In FIG. 11, a “message display” process performed after “color printing” or “monochrome printing” in order to realize a printing result notification process in which the user notifies the result after performing color printing or monochrome printing. The message display plug-in 41e corresponding to is dragged from the plug-in selection area 63b of the information notification function, and in the execution order setting area 64, the process to be performed next to each of the color printing plug-in 41c and the monochrome printing plug-in 41d. An example ([message box] in the figure) dropped in the position area (under [color printing] or [monochrome printing] in the figure) is shown.
また、図11に示すように、メッセージ表示プラグイン41eは、実行条件(制御パラメータ)が設定できる。 Further, as shown in FIG. 11, the message display plug-in 41e can set execution conditions (control parameters).
図11では、ユーザが、実行条件設定領域65のテキストボックスにおいて、分岐処理後にカラー印刷プラグイン41cが行われた場合に表示するメッセージを示す「メッセージ」として実行結果文字列("カラー印刷が終了しました。")を入力し、また、メッセージウィンドウのタイトルを示す「タイトル」として実行機能文字列("Color Print")を入力し、メッセージ表示プラグイン41eの実行条件(制御パラメータ)の値を設定した例が示されている。 In FIG. 11, in the text box of the execution condition setting area 65, the user executes an execution result character string (“color printing is completed” as a “message” displayed when the color printing plug-in 41 c is performed after branch processing. "), And the execution function string (" Color Print ") is entered as the" title "indicating the title of the message window, and the execution condition (control parameter) value of the message display plug-in 41e is entered. A set example is shown.
このように、本実施形態に係る情報処理装置100は、デスクトップアプリケーション20のアプリケーションウィンドウ61が備える実行順序設定領域64や実行条件設定領域65などのGUI(Graphical User Interface)を介して、定義データ生成手段42によって定義データ21を生成するために必要な各種情報(機能を実現する機能プラグイン(小機能)30の実行条件、実行順序、処理対象、分岐処理に関する情報)を設定ことができる。
As described above, the
図4に戻り、定義データ生成手段42は、図9〜11を用いて説明を行った方法によって設定された情報を基に、機能プラグイン(小機能)30の「実行条件、実行順序、及び処理対象に関する情報」や「分岐処理に関する情報」などを定義する独自のタグを用いて定義データ21を生成する。
Returning to FIG. 4, the definition
図12は、本発明の第1の実施形態に係る生成された定義データ21の一例を示す図であり、図9〜11に示した各種情報設定によって、定義データ生成手段42により生成された変倍印刷機能の定義データ21である。
FIG. 12 is a diagram showing an example of the
図12に示すような定義データ21は、定義データ生成手段42により生成された後に、主記憶部12のRAM上に一時保持される。主記憶部12のRAM上に一時保持された定義データ21は、図11に示すアプリケーションウィンドウ61の[確定]ボタン62eが、ユーザによって選択されたときに、補助記憶部13などの不揮発性の記憶装置の所定の記憶領域に、例えば「定義名(機能名)」をファイル名として格納される。
The
また、本実施形態に係る情報処理装置100では、図11に示すアプリケーションウィンドウ61の[確定]ボタン62eを選択する前に、[フローテスト実行]ボタン66を選択することによって、主記憶部12のRAM上に一時保持されている定義データ21が、デスクトップアプリケーション20で処理可能なデータとなっているか否かをチェックすることができる。例えは、定義データ21に定義された機能プラグイン(小機能)30の実行順序が、出力機能のプラグイン(小機能)30を実行した後に、画像処理機能のプラグイン(小機能)30を実行するような順序になっていた場合には、実行順序の定義に誤りがある(デスクトップアプリケーション20で処理できない)旨をユーザに通知する。
Further, in the
図4に戻り、定義データ生成手段42は、図2で説明したアプリケーションプロセス23を制御部11で実行することにより行われる手段である。
Returning to FIG. 4, the definition
これによって、本実施形態に係る情報処理装置100は、ユーザが行いたい処理を実現するために必要な機能プラグイン(小機能)30(情報処理手段41)の実行条件や実行順序などの動作に関する情報に加えて、分岐処理に関する情報を所定の形式に従ったデータとして定義することができる。
As a result, the
定義データ生成手段42によって定義データ21が生成されると、図13及び図14に示すようにデスクトップアプリケーション20のメニュー項目に表示される。
When the
図13及び図14は、本発明の第1の実施形態に係る新規メニュー項目追加時の表示画面の一例(その1及びその2)を示す図である。
FIGS. 13 and 14 are diagrams showing an example (
図13及び図14に示すように、定義データ21のファイル名や定義データ21に定義された「定義名(機能名)」などが、新たに追加された機能として、デスクトップアプリケーション20のツールバー81やメニュー91のメニュー項目領域92に表示される。
As shown in FIG. 13 and FIG. 14, the file name of the
このように、デスクトップアプリケーション20のツールバー81やメニュー項目領域92に表示された「定義名(機能名)」がユーザによってマウスなどのポインティングデバイスにより選択されると、UIプラグイン(UIパーツ)22からコアプログラム31(機能を実行する手段)へ、選択された機能の動作が要求される。
In this way, when the “definition name (function name)” displayed on the
機能動作要求を受け付けたコアプログラム31(機能を実行する手段)は、まず、ツールバー81やメニュー項目領域92に表示された「定義名(機能名)」がユーザによって選択されたときに、UIプラグイン(UIパーツ)22から受け取った機能名を基に、補助記憶部13などの不揮発性の記憶装置に格納された複数個の定義データ21の中から、選択された機能に対応する定義データ21(実行指示された機能名とファイル名が同じ定義データ21、又は定義されている「定義名(機能名)」が同じ定義データ21)を特定する。
The core program 31 (means for executing the function) that has received the function operation request first selects the UI plug when the “definition name (function name)” displayed in the
次に、コアプログラム31(機能を実行する手段)は、定義データ21を記述した言語を解釈可能なプログラム(例えば、XMLの場合はXMLパーサ(XML parser)。)により、特定した定義データ21の構文解析を行う。
Next, the core program 31 (means for executing the function) uses the program that can interpret the language in which the
その結果、コアプログラム31(機能を実行する手段)は、構文解析によって得られた情報のうち、「分岐処理に関する情報」に基づいて分岐処理実行手段43により分岐処理を実行する。 As a result, the core program 31 (means for executing the function) executes branch processing by the branch processing execution means 43 based on “information related to branch processing” among the information obtained by the syntax analysis.
分岐処理実行手段43は、まず、条件式52の文字列から、機能プラグイン(小機能)30の実行結果の値と、比較演算子51と、比較条件値とを抽出し、抽出した比較演算子51を基に分岐条件を判断する。例えば、抽出した比較演算子51が「>=」又は「gt;=」の場合には、「機能プラグイン(小機能)30の実行結果の値が比較条件値以上であるか否か」と言う分岐条件であることを判断する。
The branch processing execution means 43 first extracts the value of the execution result of the function plug-in (small function) 30, the
次に、分岐処理実行手段43は、機能プラグイン(小機能)30の実行結果の値が、条件式52の分岐条件を満たしているか否かを判定する。
Next, the branch
分岐処理実行手段43は、分岐条件の判定結果を基に、「状態に関する情報」から分岐処理後に実行される機能プラグイン(小機能)30を特定し、構文解析によって得られた「実行条件、実行順序、及び処理対象に関する情報」に従って特定した機能プラグイン(小機能)30に動作を指示する。 Based on the determination result of the branch condition, the branch process execution means 43 identifies the function plug-in (small function) 30 to be executed after the branch process from the “information about the state”, and the “execution condition, The operation is instructed to the function plug-in (small function) 30 specified according to the “execution order and information on processing target”.
その結果、分岐処理実行手段43から動作指示を受け付けた機能プラグイン(小機能)30(情報処理手段41)は、補助記憶部13などの不揮発性の記憶装置から主記憶部12のRAM上に展開(ロード)され、制御部11により実行される。
As a result, the function plug-in (small function) 30 (information processing means 41) that has received the operation instruction from the branch process execution means 43 is transferred from the non-volatile storage device such as the
分岐処理実行手段43は、図2で説明したコアプログラム31を制御部11で実行することにより行われる手段である。
The branch process execution means 43 is a means executed by executing the
これによって、本実施形態に係る情報処理装置100は、機能プラグイン(小機能)30の実行結果に応じた分岐処理を含むデスクトップアプリケーション20の機能を実行することができる。
Thereby, the
本実施形態に係る情報処理装置100は、上記に説明した各手段が以下の手順に従って動作することで、「機能プラグイン(小機能)30の実行結果に応じて分岐処理を行う」と言う処理を実現している。
The
(手順1)分岐処理に関する情報の設定
本実施形態に係る情報処理装置100は、デスクトップアプリケーション20のUIプラグイン(UIパーツ)22を介して、ユーザから、アプリケーションによって行いたい処理を実現するために必要な機能プラグイン(小機能)30(情報処理手段41)の実行条件や実行順序などの動作に関する情報に加え、必要に応じて「分岐処理に関する情報」が設定される。
(Procedure 1) Setting of information related to branch processing The
(手順2)定義データ21の生成
本実施形態に係る情報処理装置100は、定義データ生成手段42により、(手順1)で設定された「実行条件、実行順序、及び処理対象に関する情報」及び「分岐処理に関する情報」が、所定の形式に従って定義された定義データ21を生成する。
情報処理装置100は、「実行条件、実行順序、及び処理対象に関する情報」が定義されている定義データ21に、独自のタグを用いて、ユーザから設定された設定値を基に生成した条件式52などを配置し、「分岐処理に関する情報」を定義する。
情報処理装置100は、生成した後に主記憶部12のRAM上に一時保持された定義データ21を、補助記憶部13などの不揮発性の記憶装置の所定の記憶領域に格納する。
(Procedure 2) Generation of
The
The
(手順3)定義データ21の実行
本実施形態に係る情報処理装置100は、分岐処理実行手段43により、定義データ21に定義されている「分岐処理に関する情報」に基に、比較演算子51から判断した分岐条件の判定結果に従って、特定された機能プラグイン(小機能)30(情報処理手段41)に動作を指示する。
その結果、情報処理装置100は、動作指示された機能プラグイン(小機能)30(情報処理手段41)が、補助記憶部13などの不揮発性の記憶装置の所定の記憶領域から、主記憶部12のRAM上に展開(ロード)され、制御部11により実行される。
(Procedure 3) Execution of
As a result, in the
このように、本実施形態に係る情報処理装置100は、上記に説明した(手順1)〜(手順3)により、「機能プラグイン(小機能)30の実行結果に応じた分岐処理」を実現している。
As described above, the
<情報処理装置の基本処理手順について>
これまでに説明した本実施形態に係る情報処理装置100の具体的な処理手順について、図15〜18を用いて説明する。
<About basic processing procedure of information processing apparatus>
A specific processing procedure of the
本実施形態に係る情報処理装置100は、例えば、補助記憶部13に格納された「デスクトップアプリケーション20」の処理を行う情報処理プログラムを主記憶部12のRAM上に展開(ロード)し、制御部11で実行する。
The
図15は、本発明の第1の実施形態に係るデスクトップアプリケーション20における定義データ生成時の処理手順の一例を示すフローチャートである。
FIG. 15 is a flowchart illustrating an example of a processing procedure when generating definition data in the
本実施形態に係る情報処理装置100は、図9に示す[フロー設定]タブがマウスによって選択され、ユーザからの新規定義データの生成要求を受け付けるまで待つ(S101がNOの間)。
The
情報処理装置100は、ユーザからの新規定義データ生成要求を受け付けた場合(S101がYESの場合)、アプリケーションプロセス23によって、ユーザが行いたい処理をデスクトップアプリケーション20の1つの機能として定義するための機能に関する情報を設定する機能情報設定領域62、既に補助記憶部13などの不揮発性の記憶装置に格納された機能プラグイン(小機能)30の中からユーザが行いたい処理を実現するために必要な機能プラグイン(小機能)30を選択するプラグイン選択領域63、機能プラグイン(小機能)30を実行する順序を設定する実行順序設定領域64、及び実行する機能プラグイン(小機能)30の実行条件(制御パラメータ)を設定する実行条件設定領域65などの設定用のUI部を構成するために必要なUIプラグイン(UIパーツ)22を実行し、ユーザが、定義データ21を生成するためのUIを、CRTやLCDなどの出力装置の表示画面に描画する(S102)。
When the
情報処理装置100は、新規定義データ生成に必要な設定用のUIを描画した後、アプリケーションプロセス23によって、UIを介してユーザから受け付けた機能定義の設定指示に従い、ユーザが行いたい処理を実現するための定義データ21を生成する(S103)。
The
情報処理装置100は、ユーザから定義データ21の内容を確定する指示を受け付けるまで待つ(S104がNOの間)。例えば、ユーザが、図11に示す機能情報設定領域62の[確定]ボタン62eをクリックすることにより定義データ21の内容を確定する指示を受け付けるまで待つ。
The
情報処理装置100は、UIを介して定義データ21の内容を確定する指示を受け付けた場合(S104がYESの場合)、アプリケーションプロセス23によって、定義データ21を補助記憶部13などの不揮発性の記憶装置に格納する(S105)。
When the
情報処理装置100は、図11に示す[ブラウズテスト]タブがマウスによって選択された場合など、アプリケーションウィンドウ61の再描画を行うタイミングで、アプリケーションプロセス23によって、補助記憶部13などの不揮発性の記憶装置に格納された定義データ21を基にメニュー表示を更新する(S106)。
The
このように、本実施形態に係る情報処理装置100は、図15に示す処理手順S101〜S106によって定義データ21の生成を実現している。
As described above, the
図16は、本発明の第1の実施形態に係る定義データ生成処理の処理手順の一例を示すフローチャートである。 FIG. 16 is a flowchart illustrating an example of a processing procedure of definition data generation processing according to the first embodiment of the present invention.
図16に示す処理手順S201〜S204は、図15を用いて説明を行った処理手順S103で行う定義データ生成処理の処理手順である。 Processing procedures S201 to S204 illustrated in FIG. 16 are processing procedures of the definition data generation processing performed in the processing procedure S103 described with reference to FIG.
情報処理装置100は、まず、アプリケーションプロセス23によって、生成する定義データ21のうち、「機能に関する情報」を定義するデータ71を生成する。アプリケーションプロセス23は、UIを介して設定された「機能に関する情報」(例えば、定義した機能名を示す「定義名(機能名)」、定義した機能の種類を示す「定義種類」、メニュー項目92に表示するときの表示位置情報である「メニュー名」及び「メニュー項目領域」など。)の各設定値を基に、それぞれの情報に対応した独自のタグ(定義の「開始タグ」と「終了タグ」)とともに設定値を所定の形式に従って配置し、「機能に関する情報」を定義したデータ71を生成する(S201)。
First, the
次に、情報処理装置100は、UIを介して「分岐処理に関する情報」が設定されたか否かを判定する(S202)。
Next, the
情報処理装置100は、「分岐処理に関する情報」が設定された場合(S202がYESの場合)、アプリケーションプロセス23によって、生成する定義データ21のうち、「分岐処理に関する情報」を定義したデータ73を生成する。アプリケーションプロセス23は、UIを介して設定された「分岐処理に関する情報」(例えば、分岐条件を示す条件式52など。)の設定値を基に、それぞれの情報に対応した独自のタグ(定義の「開始タグ」と「終了タグ」)とともに設定値を所定の形式に従って配置し、「分岐処理に関する情報」を定義したデータ73を生成する(S203)。
When “information related to branch processing” is set (when S202 is YES), the
また、情報処理装置100は、「分岐処理に関する情報」が設定されていない場合(S202がNOの場合)、処理手順S204へ移る。
In addition, when “information regarding branch processing” is not set (when S202 is NO), the
情報処理装置100は、アプリケーションプロセス23によって、生成する定義データ21のうち、機能プラグイン(小機能)30の「実行条件、実行順序、及び処理対象に関する情報」を定義したデータ72を生成する。アプリケーションプロセス23は、ユーザが、必要な機能プラグイン(小機能)30を実行順序設定領域64にドロップして並べた順番(例えば、図11の実行順序設定領域64に示すフローの順番。)を基に、機能プラグイン(小機能)30(情報処理手段41)の処理対象名(機能プラグイン(小機能)30が処理するデータの名前と、そのデータを出力した1つ前に定義された機能プラグイン(小機能)30の名前)と処理対象を定義するタグ、及び必要に応じて実行条件設定領域65で設定した条件値(制御パラメータ値)と実行条件を定義するタグとを所定の形式に従って配置し、実行する機能プラグイン(小機能)30の数だけ、繰り返すことによって、「実行条件、実行順序、及び処理対象に関する情報」を定義したデータ72を生成する(S204)。
The
情報処理装置100は、アプリケーションプロセス23によって、「機能に関する情報」を定義したデータ71と、「実行条件、実行順序、及び処理対象に関する情報」を定義したデータ72と、「分岐処理に関する情報」を定義したデータ73とを基に、最終的な定義データ21を生成し、生成した定義データ21を主記憶部12のRAM上に一時保管する。
The
このように、主記憶部12のRAM上に一時保管されている定義データ21は、図15の処理手順S105で説明したように、アプリケーションプロセス23によって、補助記憶部13などの不揮発性の記憶装置に格納される。
As described above, the
図17は、本発明の第1の実施形態に係るデスクトップアプリケーション機能実行時の処理手順の一例を示すフローチャートである。 FIG. 17 is a flowchart illustrating an example of a processing procedure when the desktop application function is executed according to the first embodiment of the present invention.
本実施形態に係る情報処理装置100は、マウスによるメニュー選択など、ユーザからの機能動作要求を受け付けるまで待つ(S301がNOの間)。
The
情報処理装置100は、ユーザからの機能動作要求を受け付けた場合(S301がYESの場合)、アプリケーションプロセス23が、UIを介して受け付けたユーザからの機能動作要求を、データI/Fを介してコアプログラム31に渡し、要求を受け取ったコアプログラム31によって、メニュー項目92に表示された「定義名(機能名)」に対応する定義データ21(「定義名(機能名)」が定義された定義データ21)を、格納された補助記憶部13などの不揮発性の記憶装置から読み取り、定義データ21を記述した言語が解釈可能なプログラム(例えば、XML言語の場合XMLパーサ。)をコアプログラム31から起動し、読み取った定義データ21を構文解析する(S302)。
When the
情報処理装置100は、コアプログラム31によって、構文解析で特定した機能プラグイン(小機能)30に動作を指示する(S303)。
The
また、情報処理装置100は、コアプログラム31によって、実行順序に従ってユーザが行いたい処理を実現するために必要な全ての機能プラグイン(小機能)30に対して動作を指示したか否かを判定する(S304)。
Further, the
情報処理装置100は、必要な機能プラグイン(小機能)30に対して動作が指示された場合(S304がYESの場合)、動作指示を受け取った機能プラグイン(小機能)30によって、実行条件や処理対象であるデータを基に所定の情報処理が実行され、その実行結果を、CRTやLCDなどの出力装置の表示面に表示する(S305)。例えば、実行結果を知らせるメッセージを、アプリケーションウィンドウ61とは別のウィンドウに表示する。表示後は、処理手順S301に戻り、再びユーザからの機能動作要求を待つ。
When an operation is instructed to a necessary function plug-in (small function) 30 (when S304 is YES), the
また、情報処理装置100は、まだ動作指示されていない機能プラグイン(小機能)30が残っている場合(S305がNOの場合)、処理手順S303に戻り、定義データ21を読み取ったときに取得した、動作に関する情報(定義データ21を記述した言語が解釈可能なプログラムにより構文解析した結果)のうちの機能プラグイン(小機能)30の実行順序に従って、次に実行する機能プラグイン(小機能)30に対して、処理手順S303以降の処理を行う。
Further, the
このように、本実施形態に係る情報処理装置100は、図17に示す処理手順S301〜S305によって、ユーザが行いたい処理を実現するために必要な(アプリケーションの1つの機能を実現するために必要な)機能プラグイン(小機能)30の実行を実現している。
As described above, the
図18は、本発明の第1の実施形態に係る定義データ実行処理の処理手順の一例を示すフローチャートである。 FIG. 18 is a flowchart illustrating an example of a processing procedure of definition data execution processing according to the first embodiment of the present invention.
図18に示す処理手順S401〜S404は、図17を用いて説明を行った処理手順S303で行う機能プラグイン(小機能)実行処理の処理手順である。 Processing procedures S401 to S404 illustrated in FIG. 18 are processing procedures of the function plug-in (small function) execution processing performed in the processing procedure S303 described with reference to FIG.
情報処理装置100は、コアプログラム31によって、定義データ21に定義された、ユーザが行いたい処理を実現するために必要な機能プラグイン(小機能)30の動作に関する情報(定義データ21を記述した言語が解釈可能なプログラムにより構文解析した結果)のうち、「分岐処理に関する情報」を定義するデータ73があるか否かを判定する(S401)。
The
情報処理装置100は、「分岐処理に関する情報」を定義するデータ73がない場合(S401がNOの場合)、コアプログラム31によって、機能プラグイン(小機能)30の実行条件(制御パラメータ)の設定値及び機能プラグイン(小機能)30の処理対象名を参照し(S402)、実行条件の設定値及び処理対象名(処理対象であるデータ名)を基に、機能プラグイン(小機能)30に動作を指示する(S403)。
The
また、情報処理装置100は、「分岐処理に関する情報」を定義するデータ73があった場合(S401がYESの場合)、分岐処理の分岐条件である条件式52を参照し、条件式52基に、機能プラグイン(小機能)30の実行結果に応じて指定された状態、すなわち分岐処理後に行う機能プラグイン(小機能)30の処理のまとまり(分岐処理後の実行順序)に遷移する(S404)。状態遷移後、情報処理装置100は、処理手順S402へ移る。
In addition, when there is
このように、状態遷移後、遷移した状態で行われる機能プラグイン(小機能)30の実行条件(制御パラメータ)の設定値及び機能プラグイン(小機能)30の処理対象名を参照し、実行条件の設定値及び処理対象名(処理対象であるデータ名)を基に、遷移した状態で行われる機能プラグイン(小機能)30に動作を指示する。 As described above, after the state transition, the execution is performed by referring to the set value of the execution condition (control parameter) of the function plug-in (small function) 30 performed in the transitioned state and the processing target name of the function plug-in (small function) 30 Based on the set value of the condition and the name of the processing target (data name to be processed), an operation is instructed to the function plug-in (small function) 30 performed in the transitioned state.
図19は、本発明の第1の実施形態に係る機能実行時の表示画面の一例(変倍印刷機能の場合)を示す図である。 FIG. 19 is a diagram showing an example of a display screen (in the case of a variable magnification printing function) when executing a function according to the first embodiment of the present invention.
例えば、図9〜11の説明で例に挙げた変倍印刷機能では、図15〜18で説明した情報処理プログラムを、本実施形態に係る情報処理装置100の制御部11で実行することで、図19に示すような動作結果が得られる。
For example, in the scaling printing function exemplified in the description of FIGS. 9 to 11, the information processing program described in FIGS. 15 to 18 is executed by the
図19では、データ閲覧領域82に表示されたカラー画像である画像データが選択され、タスクバー81に表示された[変倍印刷]のメニュー項目92がマウスによってクリックされた後に、図12に示した定義データ21に従って、カラー画像変倍後にカラー印刷が実行され、メッセージ表示プラグイン41eによって、実行条件で設定された印刷終了を通知するメッセージ「カラー印刷が終了しました。」を、アプリケーションウィンドウ61と別のウィンドウであるメッセージウィンドウ83に表示した例が示されている。
In FIG. 19, image data that is a color image displayed in the
このように、本実施形態に係るデスクトップアプリケーション20は、動作環境(プラットフォーム)にあったプログラミング言語で上記図15〜18に示す各処理手順がコード化された情報処理プログラムを、制御部11で実行することにより実現される。よって、本実施形態に係る情報処理プログラム(デスクトップアプリケーション20を実現するプログラム)は、コンピュータが読み取り可能な記録媒体に格納することができる。
As described above, the
その結果、本実施形態に係る情報処理装置100は、外部記憶装置I/F15を介してこの記録媒体から情報処理プログラムを読み取り、インストール(補助記憶部13などの不揮発性の記憶装置の所定の記憶領域に格納)することで、本実施形態に係るデスクトップアプリケーション20を機能させることができる。
As a result, the
<分岐処理を利用したデスクトップアプリケーションの機能例>
本実施形態に係る情報処理装置100では、デスクトップアプリケーション20の1つの機能一例として説明を行ってきた「変倍印刷機能」の他、分岐処理を利用して様々な機能を実現することができる。
<Examples of desktop application functions using branch processing>
In the
図20は、本発明の第1の実施形態に係る分岐処理が定義された定義データ21を用いた画像表示切り替え機能の例を示す図である。
FIG. 20 is a diagram illustrating an example of an image display switching function using the
図20には、画像データの類似度に応じて分岐処理を行い、画像データの表示形式を、画像データの編集が可能な表示スタイルA又は編集不可能な表示スタイルBを切り替えて機能させる例が示されている。 FIG. 20 shows an example in which branch processing is performed according to the similarity of image data, and the display format of the image data is switched between display style A in which image data can be edited or display style B in which image data cannot be edited. It is shown.
このような場合、従来のデスクトップアプリケーション20では、定義データ21において機能プラグイン(小機能)30の一連の動作に関する情報しか定義することができなかったため、編集可能な表示スタイルAと編集不可能な表示スタイルBのそれぞれにおいて別の定義データ21を生成しておき(一連の動作単位で定義データ21を生成しておき)、画像データの類似度判定結果を基に、ユーザによって表示スタイルAと表示スタイルBとを切り替えて使用する(条件に応じて複数の定義データ21を適宜組み合わせて使用する)必要があり、定義データ21に定義できる機能プラグイン(小機能)30の動作に関する情報が制限されていた。その結果、デスクトップアプリケーション20において、定義データ21を用いて実行可能な機能も限られた機能範囲でしか実現できなかった。
In such a case, the
しかし、本実施形態に係るデスクトップアプリケーション20は、予め設定しておいた分岐条件を基に機能プラグイン(小機能)30の実行結果に応じて分岐処理を行い、次に実行する機能プラグイン(小機能)30を動的に決定することによって、一連の動作を連携させた複雑な機能プラグイン(小機能)30の動作に関する情報を定義データ21に定義することができる。
However, the
図21及び図22は、本発明の第1の実施形態に係る分岐処理を定義するデータ構造の一例(その2及びその3)を示す図である。
FIG. 21 and FIG. 22 are diagrams illustrating examples (
例えば、図21に示すような「分岐処理に関する情報」を定義したデータ73を利用することで、一定の条件(図中の分岐条件1)を満たした場合にのみ所定の情報処理(図中の処理C及び処理D)を行うことができる。この分岐処理によって、デスクトップアプリケーション20の機能の中で例外処理(エラー処理)を実現することができる。
For example, by using
また、図22に示すような「分岐処理に関する情報」を定義したデータ73を利用することで、分岐条件に一定の範囲を持たせ、各条件の範囲に対応する所定の情報処理を行うことができる。この分岐処理によって、デスクトップアプリケーション20の機能の中で多段分岐処理を実現することができる。
Further, by using
このように、本実施形態に係るデスクトップアプリケーション20では、アプリケーションの1つの機能が実現する機能範囲が拡がり、ユーザの使用目的や用途に対して柔軟に対応することができる。
As described above, in the
<まとめ>
以上のように、本発明の第1の実施形態によれば、本実施形態に係る情報処理装置100は、「機能プラグイン(小機能)30の実行結果に応じて分岐処理を行う」と言う機能を、以下の処理手順により実現している。
<Summary>
As described above, according to the first embodiment of the present invention, the
(手順1)分岐処理に関する情報の設定
本実施形態に係る情報処理装置100は、デスクトップアプリケーション20のUIプラグイン(UIパーツ)22を介して、ユーザから、アプリケーションによって行いたい処理を実現するために必要な機能プラグイン(小機能)30(情報処理手段41)の実行条件や実行順序などの動作に関する情報に加え、必要に応じて「分岐処理に関する情報」が設定される。
(Procedure 1) Setting of information related to branch processing The
(手順2)定義データ21の生成
本実施形態に係る情報処理装置100は、定義データ生成手段42により、(手順1)で設定された「実行条件、実行順序、及び処理対象に関する情報」及び「分岐処理に関する情報」が、所定の形式に従って定義された定義データ21を生成する。
情報処理装置100は、「実行条件、実行順序、及び処理対象に関する情報」が定義されている定義データ21に、独自のタグを用いて、ユーザから設定された設定値を基に生成した条件式52などを配置し、「分岐処理に関する情報」を定義する。
情報処理装置100は、生成した後に主記憶部12のRAM上に一時保持された定義データ21を、補助記憶部13などの不揮発性の記憶装置の所定の記憶領域に格納する。
(Procedure 2) Generation of
The
The
(手順3)定義データ21の実行
本実施形態に係る情報処理装置100は、分岐処理実行手段43により、定義データ21に定義されている「分岐処理に関する情報」に基に、比較演算子51から判断した分岐条件の判定結果に従って、特定された機能プラグイン(小機能)30(情報処理手段41)に動作を指示する。
その結果、情報処理装置100は、動作指示された機能プラグイン(小機能)30(情報処理手段41)が、補助記憶部13などの不揮発性の記憶装置の所定の記憶領域から、主記憶部12のRAM上に展開(ロード)され、制御部11により実行される。
(Procedure 3) Execution of
As a result, in the
このように、本実施形態に係る情報処理装置100は、上記(手順1)〜(手順3)によって、機能プラグイン(小機能)30の実行結果に応じて分岐処理を行い、次に実行する機能プラグイン(小機能)30を動的に決定することができる。
As described above, the
よって、本実施形態に係る情報処理装置100は、アプリケーションの1つの機能が実現する機能範囲を拡げ、ユーザの使用目的や用途に対して柔軟に対応可能なアプリケーション機能を提供することができる。
Therefore, the
第1の実施形態に基づき本発明の説明を行ってきたが、本発明の第1の実施形態に係る情報処理装置100の「定義データ21」は、本実施形態において説明した方法によって生成する他、例えば、定義データ21を記述する言語仕様に従って、情報処理装置100が有するエディタソフトを用いて編集しても良い。
Although the present invention has been described based on the first embodiment, the “
また、本発明の第1の実施形態に係る情報処理装置100の「条件式52」は、本実施形態において説明した数値による比較条件値によって構成される他、例えば、処理状態や処理結果などを比較条件として用いても良い。
In addition, the “conditional expression 52” of the
また、本発明の第1の実施形態に係る情報処理装置100の「定義データ21」は、本実施形態において説明した補助記憶部13に格納する他、外部記憶装置I/F15を介して、メモリカードなどの他の不揮発性の記憶装置に格納しても良い。
Further, the “
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。 Finally, the present invention is not limited to the requirements shown here, such as combinations of other elements with the shapes listed in the above embodiments. With respect to these points, the present invention can be changed within a range that does not detract from the gist of the present invention, and can be appropriately determined according to the application form.
11 制御部(CPU)
12 主記憶部(ROM,RAM)
13 補助記憶部(HD)
14 ネットワークI/F
15 外部記憶装置I/F
16 外部装置I/F
17 出力装置I/F
18 入力装置I/F
20 デスクトップアプリケーション
21 定義データ
22 ユーザインタフェース(UI)プラグイン(UIパーツ)
23 アプリケーションプロセス
30 機能プラグイン
31 コアプログラム(コアモジュール群)
41 情報処理手段(機能プラグイン)
41a 情報処理手段(ファイル選択プラグイン)
41b 情報処理手段(リサイズプラグイン)
41c 情報処理手段(カラー印刷プラグイン)
41d 情報処理手段(モノクロ印刷プラグイン)
41e 情報処理手段(メッセージ表示プラグイン)
42 定義データ生成手段
43 分岐処理実行手段
51 比較演算子
52 条件式
61 アプリケーションウィンドウ
62 機能情報設定領域
62a 定義名(機能名)入力用テキストボックス
62b 定義種類設定用プルダウンメニュー
62c メニュー名設定用プルダウンメニュー
62d メニュー項目追加領域入力用テキストボックス
62e 定義情報設定確定ボタン
63 プラグイン選択領域
63a 画像処理機能のプラグイン選択領域
63b 出力機能のプラグイン選択領域
63c 情報通知機能のプラグイン選択領域
64 実行順序設定領域
65 実行条件設定領域
71 機能に関する情報を定義するデータ
72 実行条件、実行順序、及び処理対象に関する情報を定義するデータ
73 分岐処理に関する情報を定義するデータ
81 ツールバー
82 データ閲覧領域
83 メッセージウィンドウ(メッセージボックス)
91 メニュー
92 メニュー項目領域
100 情報処理装置
11 Control unit (CPU)
12 Main memory (ROM, RAM)
13 Auxiliary memory (HD)
14 Network I / F
15 External storage device I / F
16 External device I / F
17 Output device I / F
18 Input device I / F
20
23
41 Information processing means (function plug-in)
41a Information processing means (file selection plug-in)
41b Information processing means (resize plug-in)
41c Information processing means (color printing plug-in)
41d Information processing means (monochrome printing plug-in)
41e Information processing means (message display plug-in)
42 definition data generation means 43 branch processing execution means 51 comparison operator 52 conditional expression 61
91 Menu 92
Claims (6)
前記情報処理手段の実行結果に応じて分岐処理を行う分岐処理実行手段を有することを特徴とする情報処理装置。 Information that has information processing means for each small function that realizes each of a plurality of small functions that constitute one function of the application, and that realizes the function of the application by executing the information processing means according to a predetermined execution order A processing device comprising:
An information processing apparatus comprising branch processing execution means for performing branch processing according to an execution result of the information processing means.
前記情報処理手段の実行結果に応じて分岐処理するための条件を示す分岐条件情報と、分岐した後に実行される情報処理手段の実行順序を示す実行順序情報と、分岐した後に実行する情報処理手段で処理されるデータを示す処理対象情報とを定義した定義データを生成する定義データ生成手段を有し、
前記分岐処理実行手段は、
前記定義データ生成手段により生成された定義データに基づいて前記分岐処理を行うことを特徴とする請求項1に記載の情報処理装置。 The information processing apparatus
Branch condition information indicating a condition for performing branch processing according to an execution result of the information processing means, execution order information indicating an execution order of the information processing means executed after branching, and information processing means executed after branching Having definition data generating means for generating definition data defining processing target information indicating data to be processed in
The branch process execution means includes:
The information processing apparatus according to claim 1, wherein the branching process is performed based on definition data generated by the definition data generation unit.
前記定義データの前記分岐条件情報に、前記小機能を実現する前記情報処理手段を識別する識別情報と、前記情報処理手段の属性情報とを定義することを特徴とする請求項1又は2に記載の情報処理装置。 The definition data generating means
The identification information for identifying the information processing means for realizing the small function and the attribute information of the information processing means are defined in the branch condition information of the definition data. Information processing device.
前記情報処理手順を前記所定の実行順序に従って実行するときに、
前記情報処理手順を実行して得た実行結果に応じて分岐処理を行う分岐処理実行手順を有することを特徴とする情報処理手順。 Information that has an information processing procedure for each small function that realizes each of a plurality of small functions that constitute one function of the application, and that realizes the function of the application by executing the information processing procedure according to a predetermined execution order A processing method,
When executing the information processing procedure according to the predetermined execution order,
An information processing procedure comprising a branch process execution procedure for performing a branch process according to an execution result obtained by executing the information processing procedure.
コンピュータを、
前記情報処理手段の実行結果に応じて分岐処理を行うように実行させる情報処理プログラム。 Information that has information processing means for each small function that realizes each of a plurality of small functions that constitute one function of the application, and that realizes the function of the application by executing the information processing means according to a predetermined execution order A processing program,
Computer
An information processing program to be executed so as to perform a branching process according to an execution result of the information processing means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007215105A JP2009048485A (en) | 2007-08-21 | 2007-08-21 | Information processor, information processing method, information processing program and storage medium recording the information processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007215105A JP2009048485A (en) | 2007-08-21 | 2007-08-21 | Information processor, information processing method, information processing program and storage medium recording the information processing program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009048485A true JP2009048485A (en) | 2009-03-05 |
Family
ID=40500628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007215105A Pending JP2009048485A (en) | 2007-08-21 | 2007-08-21 | Information processor, information processing method, information processing program and storage medium recording the information processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009048485A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010250561A (en) * | 2009-04-15 | 2010-11-04 | Canon Inc | Information processing apparatus, control method and program |
JP2012150808A (en) * | 2011-01-18 | 2012-08-09 | Metrologic Instruments Inc | System for digital image capture and processing to support plug-in of multiple third party codes using configuration file having conditional programming logic for controlling chaining of multiple third party plug-ins |
JP2012181823A (en) * | 2011-02-09 | 2012-09-20 | Ricoh Co Ltd | Information processor and program |
WO2014192064A1 (en) * | 2013-05-27 | 2014-12-04 | 富士通株式会社 | Information processing program, information processing method, and information processing device |
US9355288B2 (en) | 2003-11-13 | 2016-05-31 | Metrologic Instruments, Inc. | Image capture and processing system supporting a multi-tier modular software architecture |
CN107870745A (en) * | 2016-09-26 | 2018-04-03 | 富士施乐株式会社 | Image processing system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10111802A (en) * | 1996-07-03 | 1998-04-28 | Sun Microsyst Inc | Code generator in application field in distribution object system |
JP2005216001A (en) * | 2004-01-29 | 2005-08-11 | Hitachi Ltd | Information processor and information processing method |
-
2007
- 2007-08-21 JP JP2007215105A patent/JP2009048485A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10111802A (en) * | 1996-07-03 | 1998-04-28 | Sun Microsyst Inc | Code generator in application field in distribution object system |
JP2005216001A (en) * | 2004-01-29 | 2005-08-11 | Hitachi Ltd | Information processor and information processing method |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9355288B2 (en) | 2003-11-13 | 2016-05-31 | Metrologic Instruments, Inc. | Image capture and processing system supporting a multi-tier modular software architecture |
US9785811B2 (en) | 2003-11-13 | 2017-10-10 | Metrologic Instruments, Inc. | Image capture and processing system supporting a multi-tier modular software architecture |
JP2010250561A (en) * | 2009-04-15 | 2010-11-04 | Canon Inc | Information processing apparatus, control method and program |
JP2012150808A (en) * | 2011-01-18 | 2012-08-09 | Metrologic Instruments Inc | System for digital image capture and processing to support plug-in of multiple third party codes using configuration file having conditional programming logic for controlling chaining of multiple third party plug-ins |
JP2017021839A (en) * | 2011-01-18 | 2017-01-26 | メトロロジック・インストルメンツ・インコーポレーテッド | Digital image capture and processing system supporting multiple third party code plug-ins using configuration files having conditional programming logic controlling chaining of multiple third-party plug-ins |
JP2012181823A (en) * | 2011-02-09 | 2012-09-20 | Ricoh Co Ltd | Information processor and program |
WO2014192064A1 (en) * | 2013-05-27 | 2014-12-04 | 富士通株式会社 | Information processing program, information processing method, and information processing device |
CN107870745A (en) * | 2016-09-26 | 2018-04-03 | 富士施乐株式会社 | Image processing system |
JP2018055187A (en) * | 2016-09-26 | 2018-04-05 | 富士ゼロックス株式会社 | Image forming apparatus and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5084314B2 (en) | Information processing apparatus, information processing method, information processing program, and recording medium for recording information processing program | |
EP1999557B1 (en) | Printing controller,gui display method, printer driver, and recording medium | |
US20070240100A1 (en) | Computer software adaptation method and system | |
JP2009048485A (en) | Information processor, information processing method, information processing program and storage medium recording the information processing program | |
EP0745927B1 (en) | Method of and editing system for setting tool button | |
US20090259952A1 (en) | Information processing apparatus and method of controlling same | |
CN102595013B (en) | Image processing system, information processing system and information processing method | |
JPWO2013038556A1 (en) | Sequence program creation device | |
JP2020123234A (en) | Information processor, control method, and program thereof | |
JP4890944B2 (en) | Information processing apparatus, display control processing method, and program | |
US20070038954A1 (en) | Displaying apparatus of ui parts and displaying method of ui parts | |
JP2017102872A (en) | Development device, development system, and program | |
JP2011186720A (en) | Information processing apparatus, processing method, and computer-readable recording medium with processing program recorded thereon | |
JP5510502B2 (en) | Information processing apparatus, information processing method, information processing program, and recording medium for recording information processing program | |
JP2008052386A (en) | Program generation device, input device, program generation method, control method for input device, program, and storage medium | |
KR101728786B1 (en) | Component-based dynamic image display system and method using the svg file format | |
JP2008293290A (en) | Data processing system, method, and program, and recording medium for recording data processing program | |
JP4794927B2 (en) | Information processing apparatus, information processing method, and program | |
EP2581825A2 (en) | Setting information creating program, apparatus, and method | |
JP2008257468A (en) | Information processor, control method therefor and computer program | |
JP7421137B2 (en) | Information processing device, information processing method and program | |
JP2014197281A (en) | Printer driver and method for localizing printer driver | |
JP7381900B2 (en) | Information processing system, its control method and program | |
JP5721315B2 (en) | Computer program | |
JP6320196B2 (en) | Information processing apparatus, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100316 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120307 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120313 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120511 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120724 |