[go: up one dir, main page]

JP2006148876A - 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体 - Google Patents

画像形成装置、情報処理方法、情報処理プログラム及び記録媒体 Download PDF

Info

Publication number
JP2006148876A
JP2006148876A JP2005293892A JP2005293892A JP2006148876A JP 2006148876 A JP2006148876 A JP 2006148876A JP 2005293892 A JP2005293892 A JP 2005293892A JP 2005293892 A JP2005293892 A JP 2005293892A JP 2006148876 A JP2006148876 A JP 2006148876A
Authority
JP
Japan
Prior art keywords
api
application
image forming
information processing
forming apparatus
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.)
Granted
Application number
JP2005293892A
Other languages
English (en)
Other versions
JP4597834B2 (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 JP2005293892A priority Critical patent/JP4597834B2/ja
Priority to US11/248,288 priority patent/US8392523B2/en
Publication of JP2006148876A publication Critical patent/JP2006148876A/ja
Application granted granted Critical
Publication of JP4597834B2 publication Critical patent/JP4597834B2/ja
Priority to US13/647,852 priority patent/US8621040B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00973Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32496Changing the task performed, e.g. reading and transmitting, receiving and reproducing, copying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 画像形成装置に実装されるアプリケーションが当該画像形成装置におけるAPIの実装状況を簡易に確認することのできる画像形成装置、情報処理方法、情報処理プログラム及び記録媒体の提供を目的とする。
【解決手段】 インタフェースが公開されている複数のプログラムを有し、前記インタフェースに基づいて作成されたアプリケーションを実行可能な画像形成装置であって、
前記アプリケーションからの要求に応じて、複数の前記プログラムによって構成されるグループごとに当該グループに係る実装状況を示す情報を提供する実装状況提供手段を有することにより上記課題を解決する。
【選択図】 図7

Description

本発明は、コピー/プリンタ/スキャナ/ファクシミリ/複合機/融合機等の画像形成装置、情報処理方法、情報処理プログラム、SDメモリカード等の記録媒体に関する。
近年、コピー機能とプリンタ機能とスキャナ機能とファクシミリ機能を備える複合機や融合機が市販されるようになった。複合機や融合機は、コピーやプリンタとして機能する場合には、画像を印刷用紙に印刷することになり、コピーやスキャナとして機能する場合には、画像を読取原稿から読み取ることになり、ファクシミリとして機能する場合には、画像を電話回線を介して他の機器と授受することになる。
特開2002−84383号公報
複合機や融合機では、アプリケーションやプラットフォームと言った様々なプログラムにより様々な情報処理が実行される。複合機や融合機には、カラーコピー用のアプリケーションや、モノクロコピー用のアプリケーションや、ファクシミリ用のアプリケーションと言った様々なアプリケーションが実装される。
さて、カラーコピー用のアプリケーションをカラーコピー機にもモノクロコピー機にも実装できると、カラーコピー用のアプリケーションによるモノクロコピー用の操作画面をカラーコピー機でもモノクロコピー機でも利用できて便利である。同様に、画像形成装置の種々の機能用のアプリケーションを種々の画像形成装置に実装できると、画像形成装置の種々の機能用のアプリケーションを種々の画像形成装置で利用できて便利である。この場合、アプリケーションは画像形成装置毎に異なる各画像形成装置のAPIを使い分ける必要がある。しかし、画像形成装置のAPIの種類は数百種類にも至るのが通例であり、アプリケーションがこれを使い分けるのは困難である。
本発明は、上記の点に鑑みてなされたものであって、画像形成装置に実装されるアプリケーションが当該画像形成装置におけるAPIの実装状況を簡易に確認することのできる画像形成装置、情報処理方法、情報処理プログラム及び記録媒体の提供を目的とする。
そこで上記課題を解決するため、本発明は、インタフェースが公開されている複数のプログラムを有し、前記インタフェースに基づいて作成されたアプリケーションを実行可能な画像形成装置であって、前記アプリケーションからの要求に応じて、複数の前記プログラムによって構成されるグループごとに当該グループに係る実装状況を示す情報を提供する実装状況提供手段を有することを特徴とする。
このような、画像形成装置では、アプリケーションが当該画像形成装置におけるAPIの実装状況を簡易に確認することができる。
また、上記課題を解決するため、本発明は、上記画像形成装置における情報処理方法、前記情報処理方法を前記画像形成装置に実行させるための情報処理プログラム、又は前記情報処理プログラムを記録した記録媒体としてもよい。
本発明によれば、画像形成装置に実装されるアプリケーションが当該画像形成装置におけるAPIの実装状況を簡易に確認することのできる画像形成装置、情報処理方法、情報処理プログラム及び記録媒体を提供することができる。
図1は、本発明の実施例に該当する融合機101を表す。図1の融合機101は、種々のハードウェア111と、種々のソフトウェア112と、融合機起動部113により構成される。
融合機101のハードウェア111としては、撮像部121と、印刷部122と、その他のハードウェア123が存在する。撮像部121は、読取原稿から画像(画像データ)を読み取るためのハードウェアである。印刷部122は、画像(画像データ)を印刷用紙に印刷するためのハードウェアである。
融合機101のソフトウェア112としては、種々のアプリケーション131と、種々のプラットフォーム132が存在する。これらのプログラムは、UNIX(登録商標)等のOS(オペレーティングシステム)によりプロセス単位で並列的に実行される。
アプリケーション131としては、コピー用のアプリケーションであるコピーアプリ141、プリンタ用のアプリケーションであるプリンタアプリ142、スキャナ用のアプリケーションであるスキャナアプリ143、ファクシミリ用のアプリケーションであるファクシミリアプリ144、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ145が存在する。そしてさらに、Webページの閲覧用のソフトウェアであるWebブラウザ181、Webページの配信用のソフトウェアであるWebサーバソフト182、CSDKアプリ146やJSDKアプリ147の制御用のソフトウェアであるSDKアプリケーションサービス(SAS)183が存在する。
アプリケーション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が存在する。
プラットフォーム132としては、種々のコントロールサービス151、システムリソースマネージャ152、種々のハンドラ153が存在する。コントロールサービス151としては、ネットワークコントロールサービス(NCS)161、ファクシミリコントロールサービス(FCS)162、デリバリコントロールサービス(DCS)163、エンジンコントロールサービス(ECS)164、メモリコントロールサービス(MCS)165、オペレーションパネルコントロールサービス(OCS)166、サーティフィケーションコントロールサービス(CCS)167、ユーザディレクトリコントロールサービス(UCS)168、システムコントロールサービス(SCS)169が存在する。ハンドラ153としては、ファクシミリコントロールユニットハンドラ(FCUH)171、イメージメモリハンドラ(IMH)172が存在する。
NCS161のプロセスは、ネットワーク通信の仲介を行う。FCS162のプロセスは、ファクシミリのAPIを提供する。DCS163のプロセスは、蓄積文書の配信処理に関する制御を行う。ECS164のプロセスは、撮像部121や印刷部122に関する制御を行う。MCS165のプロセスは、メモリやハードディスクドライブに関する制御を行う。OCS166のプロセスは、オペレーションパネルに関する制御を行う。CCS167のプロセスは、認証処理や課金処理に関する制御を行う。UCS168のプロセスは、ユーザ情報の管理に関する制御を行う。SCS169のプロセスは、システムの管理に関する制御を行う。
アプリケーション131とプラットフォーム132の仲介を行うソフトウェア112として、仮想アプリケーションサービス(VAS)135が存在する。VAS135は、アプリケーション131をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム132をサーバとするクライアントプロセスとして動作する。VAS135は、アプリケーション131から見てプラットフォーム132を隠蔽するラッピング機能を備え、プラットフォーム132のバージョンアップに伴うバージョン差を吸収する役割等を担う。
融合機起動部113は、融合機101の電源投入時に最初に実行される。これにより、UNIX(登録商標)等のOSが起動され、アプリケーション131やプラットフォーム132が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。
図2は、図1の融合機101に係るハードウェア構成図である。融合機101のハードウェア111としては、コントローラ201と、オペレーションパネル202と、ファクシミリコントロールユニット(FCU)203と、撮像部121と、印刷部122が存在する。
コントローラ201は、CPU211、ASIC212、NB221、SB222、MEM−P231、MEM−C232、HDD(ハードディスクドライブ)233、メモリカードスロット234、NIC(ネットワークインタフェースコントローラ)241、USBデバイス242、IEEE1394デバイス243、セントロニクスデバイス244により構成される。
CPU211は、種々の情報処理用のICである。ASIC212は、種々の画像処理用のICである。NB221は、コントローラ201のノースブリッジである。SB222は、コントローラ201のサウスブリッジである。MEM−P231は、融合機101のシステムメモリである。MEM−C232は、融合機101のローカルメモリである。HDD233は、融合機101のストレージである。メモリカードスロット234は、メモリカード235をセットするためのスロットである。NIC241は、MACアドレスによるネットワーク通信用のコントローラである。USBデバイス242は、USB規格の接続端子を提供するためのデバイスである。IEEE1394デバイス243は、IEEE1394規格の接続端子を提供するためのデバイスである。セントロニクスデバイス244は、セントロニクス仕様の接続端子を提供するためのデバイスである。
オペレーションパネル202は、オペレータが融合機101に入力を行うためのハードウェア(操作部)であると共に、オペレータが融合機101から出力を得るためのハードウェア(表示部)である。
図3は、図1の融合機101に係る外観図である。図3には、撮像部121の位置と、印刷部122の位置と、オペレーションパネル202の位置が図示されている。図3には更に、読取原稿のセット先となる原稿セット部301と、印刷用紙の給紙先となる給紙部302と、印刷用紙の排紙先となる排紙部303が図示されている。
オペレーションパネル202は、図4のように、タッチパネル311と、テンキー312と、スタートボタン313と、リセットボタン314と、機能キー315と、初期設定ボタン316により構成される。タッチパネル311は、タッチ操作で入力を行うためのハードウェア(タッチ操作部)であると共に、画面表示で出力を得るためのハードウェア(画面表示部)である。テンキー312は、キー(ボタン)操作で数字入力を行うためのハードウェアである。スタートボタン313は、ボタン操作でスタート操作を行うためのハードウェアである。リセットボタン314は、ボタン操作でリセット操作を行うためのハードウェアである。機能キー315は、キー(ボタン)操作でCSDKアプリ146やJSDKアプリ147による操作画面を表示させるためのハードウェアである。初期設定ボタン316は、ボタン操作で初期設定画面を表示させるためのハードウェアである。
原稿セット部301は、ADF(自動原稿搬送装置)321と、フラットベッド322と、フラットベッドカバー323により構成される。給紙部302は、4個の給紙トレイにより構成される。排紙部303は、1個の排紙トレイにより構成される。ADF321には、複数枚の読取原稿を重ねてセットすることができる。フラットベッド322には、読取原稿を下向きにセットする。
(JSDK)
図5は、図1のJSDKアプリ147とJSDKプラットフォーム148のクラス図である。JSDKアプリ147とJSDKプラットフォーム148は、全体で1プロセスとして、同一プロセス上で実行される。JSDKアプリ147とJSDKプラットフォーム148中の各ブロックは、それぞれこの1プロセス上のスレッドとして、スレッド単位で並列的に実行(マルチスレッド)される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標)コンパイラによりソースコードからバイトコードに一括翻訳されており、Java(登録商標)仮想マシンにより逐次実行される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標) 2 Micro EditionのPersonal Basis Profileをベースとする実装となっている。
JSDKアプリ147としては、ユーザアプリ501と、JSDK GUI Manager511と、Task Bar Manager512等が存在する。
ユーザアプリ501は、融合機101のユーザ(例えばベンダ)がJSDKを使用して開発したJSDKアプリである。JSDK GUI Manager511は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とする操作画面の表示等を行うJSDKアプリである。Task Bar Manager512は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とするタスクバーの表示等を行うJSDKアプリである。
ユーザアプリ501はここでは、スタンドアロンアプリケーションやアプレットと並ぶJava(登録商標)アプリケーションであるXletである。JSDK GUI Manager511とTask Bar Manager512はここでは、独自の拡張を施したXlet(XletEx)である。
JSDKプラットフォーム148には、JSDK Main521と、JSDK Environment522と、Locale Manager523と、Xlet Manager531と、Multi Xlet Manager532と、JSDK Manager533と、Send Manager541と、Event Manager542と、System Event Manager543と、Panel Manager544と、Install Manager545と、Server/Client Manager546等のクラスが存在する。
JSDK Main521は、JSDKシステムの起動設定を行うクラスである。JSDK Environment522は、JSDKシステムの起動環境設定を行うクラスである。Locale Manager523は、国際化対応(言語指定)を行うクラスである。
Xlet Manager531は、1対1でXletのライフサイクルを管理するクラスである。ここでは、5個のXletのライフサイクルが1対1で5個のXlet Manager531によって管理される。Multi Xlet Manager532は、全てのXlet Manager531のライフサイクルを管理するクラスである。ここでは、5個のXlet Manager531のライフサイクルが全て1個のMulti Xlet Manager532によって管理される。JSDK Manager533は、JSDKシステム全体のライフサイクルを管理するクラスである。例えば、Multi Xlet Manager532,Send Manager541,Event Manager542,System Event Manager543,Panel Manager544,Install Manager545,Server/Client Manager546のライフサイクルが、JSDK Manager533によって管理される。
System Event Manager543は、図1のプラットフォーム132からのシステムイベント(電力モード等)の管理を行うクラスである。Panel Manager544は、1個のXletがオペレーションパネル202の画面を占有する際の調停等を行うクラスである。Install Manager545は、SDcardやWebからのインストールやアンインストールの管理を行うクラスである。
図5のJSDKシステムでは、APIとして、JSDK API551とJSDK API552等が存在する。なお、XletとXletExの差異として、オブジェクトにアクセスするのにJSDK API551の利用とJSDKプラットフォーム148へのアクセスが可能である点が挙げられる。図1の融合機101にはさらに、図5のJSDKシステムに係る要素として、C言語とJava(登録商標)言語のインタフェースとなるJSDK Session553とNative JSDK Session554等が存在する。図1の融合機101にはさらに、図5のJSDKシステムに係る要素として、Java(登録商標)コンパイラによりソースコードからバイトコードに一括翻訳されたJava(登録商標)プログラムを逐次実行するためのJava(登録商標)仮想マシンであるCVM(コンパクト仮想マシン)555等が存在する。
(VAS)
図6は、図1の融合機101に実装されているAPI133について説明するための図である。アプリケーション131からプラットフォーム132への処理要求の授受には、予め定義されている関数により処理要求を受容するAPI(アプリケーションプログラムインタフェース)133が利用される。API133は、数百種類にも至る様々な種類のAPIにより構成されている。
画像形成装置のAPIは、複数種類のAPIにより構成されるAPI群(APIのグループ)として、画像形成装置の機能単位でグルーピングされている。画像形成装置のAPI群の種類としては、例えば、モノクロプリント機能に係るAPIにより構成される「基本機能用API群」と、カラープリント機能に係るAPIにより構成される「COLOR機能用API群」と、モノクロコピー機能に係るAPIにより構成される「SCAN機能用API群」と、ファクシミリ機能に係るAPIにより構成される「FAX機能用API群」と、オペレーションパネル等の操作表示機能に係るAPIにより構成される「OCS機能用API群」と、ローカルストレージ等の記憶機能に係るAPIにより構成される「MCS機能用API群」が存在する。図6には、API133を構成するAPIにより構成されるAPI群が図示されている。なお、API群の単位は、例えば、プロセス単位、ライブラリ(スタティックリンクライブラリ、シェアードライブラリ又はダイナミックリンクライブラリ等)単位、又はパッケージ単位(Java(登録商標)Classライブラリの場合)等によって定められ、また、それぞれの単位内において更に機能ごとに分割したものをAPI群としてもよい。
以下、融合機101におけるAPI133の実装状況のチェック処理について説明する。ここで、API133の実装状況のチェック処理とは、JSDKアプリ147が利用するAPIが、当該JSDKアプリ147が動作する融合機101において利用可能であるか否かを確認する処理をいう。
図7は、第一の実施の形態におけるAPIの実装状況のチェック処理を説明するためのコラボレーション図である。図8は、第一の実施の形態におけるAPIの実装状況のチェック処理を説明するためのフローチャートである。
まず、JSDKアプリ147からVAS135に、当該融合機101のAPI群の実装状況に係る情報の提供要求が送信(S1)される。続いて、VAS135は、当該融合機101内から当該融合機101の機種名を取得(S2)する。続いて、VAS135は、画像形成装置の機種名と画像形成装置のAPIの実装状況との対応表により、当該融合機101の機種名から当該融合機101のAPIの実装状況を特定(S3)する。続いて、VAS135は、当該融合機101のAPIの実装状況から当該融合機101のAPI群の実装状況を特定(S4)する。例えば、基本機能用API群を構成するAPIが全種類とも実装されている場合には「基本機能用API群は実装されている」となる。例えば、FAX機能用API群を構成するAPIが1種類でも実装されていない場合には「FAX機能用API群は実装されていない」となる。続いて、VAS135からJSDKアプリ147に、当該融合機101のAPI群の実装状況に係る情報が提供(S5)される。
そして、JSDKアプリ147は、当該融合機101のAPI群の実装状況に応じて、画像形成処理や画像形成準備処理を実行(S6)する。例えば、カラーコピー用のアプリケーションであるJSDKアプリ147は、当該融合機101に「基本機能用API群」と「COLOR機能用API群」と「SCAN機能用API群」とが実装されている場合には、カラーコピー用の操作画面とモノクロコピー用の操作画面とを当該融合機101の画面上に表示させる。例えば、当該融合機101に「基本機能用API群」と「SCAN機能用API群」とが実装されている場合には、モノクロコピー用の操作画面だけを当該融合機101の画面上に表示させる。
このように、VAS135は、当該融合機101へのAPIの実装状況に係る情報を、当該融合機101へのAPI群の実装状況に係る情報として、当該融合機101のアプリケーション131に提供するのである。API単位でなく、API群単位(画像形成装置の機能単位)で提供されるのである。これにより、当該融合機101のアプリケーション131は、数百種類にも至るAPIを個々に取り扱う煩わしさから開放されて、数百種類にも至るAPIを簡単に使い分けることができるのである。さらに、API群が画像形成装置の機能単位でグルーピングされているため、API群を簡単に取り扱うことができる点も特筆すべき点である。
ここで、JSDKアプリ147により当該融合機101の画面上に提供される操作画面の具体例について説明する。
図9の第1具体例において、JSDKアプリ147は、当該融合機101のAPI群の実装状況の違いに応じて、当該融合機101の画面上に表示させる操作画面の種類を変化させる。当該融合機101に「基本機能用API群」と「COLOR機能用API群」と「SCAN機能用API群」とが実装されている場合、図9Aのように、カラーコピー用の操作画面とモノクロコピー用の操作画面とが当該融合機101の画面上に表示(S6に当たる)される。当該融合機101に「基本機能用API群」と「SCAN機能用API群」とが実装されている場合には、図9Bのように、モノクロコピー用の操作画面だけが当該融合機101の画面上に表示(S6に当たる)される。
図10の第2具体例において、JSDKアプリ147は、当該融合機101のAPI群の実装状況の違いに応じて、当該融合機101の画面上に表示させる操作画面上の表示物の種類を変化させる。当該融合機101に「基本機能用API群」と「COLOR機能用API群」と「SCAN機能用API群」とが実装されている場合、図10Aのように、コピー用の操作画面上にはモノクロコピー用のボタン群とカラーコピー用のボタン群とが表示(S6に当たる)される。当該融合機101に「基本機能用API群」と「SCAN機能用API群」とが実装されている場合には、図10Bのように、コピー用の操作画面上にはモノクロコピー用のボタン群だけが表示(S6に当たる)される。1個のボタンと1個のAPIとが1対1で対応するようにしてもよいだろう。
なお、図9の第1具体例と図10の第2具体例とを併用するようにしてもよい。また、図9の第1具体例や図10の第2具体例を、API群単位でのAPIの実装状況の違いに応じて実施する代わりにAPI単位でのAPIの実装状況の違いに応じて実施するようにしてもよい。ただし、API群単位の方がAPI単位の方より簡単である。
次に、第二の実施の形態について説明する。第二の実施の形態では、API133は、上位互換性が保証されていることを前提とする。すなわち、古いバージョンのAPI133に基づいて作成されたJSDKアプリ147は、新しいバージョンのAPI133上でも動作することが保証されていることを前提とする。本実施の形態において、かかる保証はVAS135によってもたらされる。すなわち、VAS135は、API133のバージョンアップと共にバージョンアップされ、古いバージョンのAPI133と新たしいバージョンのAPI133との仕様の差異を吸収することにより、API133の上位互換性を確保する。したがって、VAS135自体もバージョンを有しており、そのバージョンは、API133における全てのAPI群を一つにまとめた単位に対するバージョンとしての意味がある。なお、全てのAPI群を一つにまとめた単位を以下「全API群」という。
図11は、第二の実施の形態におけるAPIの実装状況のチェック処理を説明するためのフローチャートである。
ステップS201において、JSDKアプリ147は、実装状況管理テーブルをメモリ上に構築し、その内容を初期化する。
図12は、実装状況管理テーブルの初期化後の状態を示す図である。図12に示されるように実装状況管理テーブル1471は、JSDKアプリ147が利用するAPI群及びAPI(以下、それぞれを「利用API群」、「利用API」という。)のそれぞれについて、JSDKアプリ147の動作確認済みバージョンと、有効性とを管理するテーブルである。動作確認済みバージョンは、当該JSDKアプリ147の動作確認が行われた環境における各API群及び各APIのバージョンである。後述するように、JSDKアプリ147は、自らが動作確認済みの各バージョンを認識しており、その認識に基づいて初期化処理において動作確認済みバージョンを実装状況管理テーブル1471に登録する。
有効性は、当該融合機101における各API群及びAPIの利用の可否を示す情報であり、API群については、VOID(利用不可)、READY(利用可)、又はPARTLY(一部利用可)のいずれかとなる。また、APIについては、VOID又はREADYのいずれかとなる。各API群及びAPIの利用の可否については、以降の処理で判別するため、最初は、VOIDに初期化される。
実装状況管理テーブル1471は、また、API群とAPIとの階層構造も表現している。すなわち、モノクロスキャンAPI群には、scanFunc001、scanFunc002及びscanFunc003が含まれ、カラースキャンAPI群には、モノクロスキャンAPI群に含まれるAPIと、scanFunc004が含まれることが表現されている。
なお、実装状況管理テーブル1471の「API」の列における「self」という記述は、API群自身のことを意味する。したがって、図12において、モノクロスキャンAPI群の動作確認済みバージョンは、「1.10」であり、カラースキャンAPI群の動作確認済みバージョンは、「1.20」である。
続いて、JSDKアプリ147は、全API群(ここではVAS135)の実装状況に係る情報としての実装バージョンをVAS135に問い合わせる(S202)。ここで、実装バージョンとは、当該融合機101に実際に実装されているバージョンをいう。
問い合わせは、図13に示されるような実装状況取得関数を用いて行われる。図13は、実装状況取得関数の例を示す図である。
実装状況取得関数は、API群ごと及びAPIごとに用意されている。いずれの関数もOUT型の引数に当該関数が対応するAPI群又はAPIのバージョン情報を返却する。ここで、全API群のバージョン情報の問い合わせには、「getAPIVersion()」が用いられる。
getAPIVersion()の呼び出しに応じ、VAS135は、現在の実装バージョンをその引数に格納して返却する。
続いて、JSDKアプリ147は、getAPIVersion()により返却された全API群の実装バージョンと、実装状況管理テーブル1471に登録されている全API群の動作確認済みバージョンとを比較する(S203)。実装バージョンと動作確認バージョンとが同じか又は実装バージョンの方が新しい場合(S203でNo)、JSDKアプリ147は、全API群は利用可能であると判断する(S204)。なお、全API群が利用可能である場合は、各利用API群及び各利用APIも利用可能であることが保証される。したがって、この場合、JSDKアプリ147は、図14に示されるように実装状況管理テーブル1471の全てのAPI群及びAPIの有効性の値を「READY」とし、処理を終了する。
図14は、全API群について実装バージョンが古くないと判断された場合の実装状況管理テーブルの更新状態を示す図である。図14に示される実装状況管理テーブル1471は、全てのAPI群及びAPIの有効性の値が「READY」とされている。このように、全API群に対して、実装バージョンが古くないと判断された場合は、各利用API群及び利用APIのそれぞれのバージョンをチェックする必要はなく、JSDKアプリ147は、効率的に各利用API群及びAPIの利用可否の判断を行うことができる。
一方、実装バージョンの方が動作確認バージョンよりも古い場合(S203でYes)、JSDKアプリ147は、各利用API群(図12によれば、のモノクロスキャンAPI群及びカラースキャンAPI群)のバージョンを実装状況取得関数によってVAS135に問い合わせる(S205)。
続いて、JSDKアプリ147は、VAS135より返却される各利用API群の実装バージョンと、実装状況管理テーブル1471に登録されている各利用API群の動作確認済みバージョンとを比較し(S206)、両者が同一又は実装バージョンの方が新しい利用API群については利用可能であると判断する(S207)。この場合、当該利用API群だけでなく、当該利用API群に属するAPIについても利用可能であることが保証される。したがって、JSDKアプリ147は、図15に示されるように、実装状況管理テーブル1471における当該利用API群とそれに属する全ての利用APIの有効性の値を「READY」とする。
図15は、一つの利用API群について実装バージョンが古くないと判断された場合の実装状況管理テーブルの更新状態を示す図である。図15では、モノクロスキャンAPI群の実装バージョンが古くないと判断され、それに伴って、モノクロスキャンAPI群とモノクロスキャンAPI群に属する利用API(scanFunc001、scanFunc002、scanFunc003)の有効性が「READY」とされた状態が示されている。このように、一つのAPI群に対して、実装バージョンが古くないと判断された場合は、当該API群に属する各利用APIのそれぞれのバージョンをチェックする必要はなく、JSDKアプリ1471は、効率的に各APIの利用可否の判断を行うことができる。
一方、実装バージョンの方が古い利用API群については、当該利用API群に属する各利用APIについて実装バージョンと動作確認済みバージョンとの比較が行われる。すなわち、JSDKアプリ147は、当該利用API群に属する各利用APIの実装バージョンを実装状況取得関数によってVAS135より取得し(S208)、取得された実装バージョンと、実装状況管理テーブル135に登録されている当該利用APIの動作確認済みバージョンとを比較する(S209)。
比較の結果、JSDKアプリ147は、両者が同一又は実装バージョンの方が新しい場合は(S209でNo)、当該利用APIは利用可能であると判断し、実装状況管理テーブル1471における当該利用APIの有効性を「READY」とする(S210)。一方、実装バージョンの方が古い場合は(S209でYes)、当該利用APIは利用不可であると判断し(S211)、その有効性は「VOID」のままとする。
動作確認バージョンの方が古いと判断された各利用API群について、それぞれの属する全ての利用APIに対する利用可否の判断が完了すると(S212でYes)、JSDKアプリ147は、実装状況管理テーブル1471を参照して当該各利用API群の利用の可否を次のように判断する(S213)。まず、利用API群に属する全ての利用APIが利用可能(READY)な場合は、当該利用API群は利用可能であると判断し、実装状況管理テーブル1471における当該利用APIの有効性を「READY」とする。また、利用API群に属する全ての利用APIが利用不可(VOID)の場合は、当該利用API群は利用不可であると判断し、実装状況管理テーブル1471における当該利用API群の有効性を「VOID」のままとする。また、利用API群に属する一部のみの利用APIが利用可能(READY)な場合は、当該利用API群は一部利用可であると判断し、実装状況管理テーブル1471における当該利用API群の有効性を「PARTLY」とする。ただし、当該利用API群が実現する特有の機能(例えば、カラースキャン機能)にとって必須の利用APIの有効性が「VOID」の場合は、当該利用API群の有効性を「VOID」のままとする。
図16は、各利用APIの利用可否の判断結果に基づいて利用API群の利用可否が判断された場合の実証状況管理テーブルの更新状態を示す図である。図16の実装状況管理テーブル1471には、カラースキャンAPI群について、それに属するモノクロスキャンAPI群の有効性が「READY」であり、scanFunc004が「VOID」であることから、その有効性が「VOID」と判断された結果が反映されている。すなわち、カラースキャン機能を実現するためには、scanFunc004の利用が必須であるため、カラースキャンAPI群の有効性は「PARTLY」ではなく、「VOID」とされる。
続いて、全ての利用API群に対する利用可否の判断が完了すると(S214でYes)、JSDKアプリ147は、実装状況管理テーブル1471を参照して全API群に対する利用の可否を次のように判断する(S215)。まず、全ての利用API群が利用可能(READY)な場合は、全API群は利用可能であると判断し、実装状況管理テーブル1471における全API群の有効性を「READY」とする。また、全API群に属する全ての利用API群が利用不可(VOID)の場合は、全API群は利用不可であると判断し、実装状況管理テーブル1471における全API群の有効性を「VOID」のままとする。また、全API群に属する全ての利用API群が利用不可ではないが、利用不可(VOID)又は一部利用可(PARTLY)の利用API群が含まれている場合は、全API群は一部利用可であると判断し、実装状況管理テーブル1471における全API群の有効性を「PARTLY」とする。
図17は、各利用API群の利用可否の判断結果に基づいて全API群の利用可否が判断された場合の実証状況管理テーブルの更新状態を示す図である。図17の実装状況管理テーブル1471には、モノクロスキャンAPI群の有効性が「READY」であり、カラースキャンAPI群の有効性が「VOID」であることから、全API群の有効性が「PARTLY」と判断された結果が反映されている。
以後、JSDKアプリ147は、実装状況管理テーブル1471を参照して図9又は図10において説明したような画面の表示制御や、その他の動作制御を行う。
次に、JSDKアプリ147に、自らの動作確認済みバージョンを認識させるための処理について説明する。当該処理は、JSDKアプリ147の開発又はテスト工程において行われる。
図18は、JSDKアプリに動作確認済みバージョンを認識させるための処理を説明するための図である。
まず、開発者によってJSDKアプリ147のソースコードが作成される(S251)。続いて、ソースコードのコンパイル及びリンクが行われJSDKアプリ147の実行オブジェクトが作成され(S252)、当該実行オブジェクトが所定の記録媒体(例えば、SDカード)に格納される(S253)。当該SDカードが動作確認用の融合機101に挿入されると(S254)、SAS183は、JSDKアプリ147を当該融合機101にインストールし、起動する。SAS183によって起動されたJSDKアプリ147は、実装状況取得関数を用いて、各利用API群及び利用APIのバージョンを取得し(S255)、その内容をSDカードにおける当該JSDKアプリ147のソースコードに書き込む(S256)。
図19は、JSDKアプリのソースコードに書き込まれたAPI群及びAPIのバージョンの例を示す図である。図19では、JSDKアプリ147のソースコードに埋め込まれているマクロの値としてAPI群及びAPIのバージョンが書き込まれた例が示されている。以後、SDカードに書き込まれたソースコードに基づいてJSDKアプリ147を再コンパイル及びリンクし、それによって作成された実行モジュールの動作が当該融合機101において確認されれば、当該JSDKアプリ147に動作確認バージョンを認識させたことになる。
なお、動作確認済みバージョンをソースコードに書き込むのではなく、所定のファイルに保存しておき、JSDKアプリ147がその動作時に当該所定のファイルを読み込むことで動作確認済みバージョンを認識するようにしてもよい。
ところで、第二の実施の形態では、JSDKアプリ147がAPI群又はAPIの利用可否の判断を行う例について説明した。しかし、API群又はAPIの利用可否の判断は必ずしもJSDKアプリ147が行う必要はなく、VAS135にその判断を行わせ、JSDKアプリ147はその判断結果を受け取るようにしてもよい。そこで、第三の実施の形態として、VAS135がAPI群及びAPIの利用可否の判断を行う例を説明する。なお、以下において明記しない点については第二の実施の形態と同じ条件である。
図20は、第三の実施の形態におけるAPIの実装状況のチェック処理を説明するためのフローチャートである。
ステップS301において、JSDKアプリ147は、実装状況管理テーブルをメモリ上に構築し、その内容を初期化する。この処理によって、実装状況管理テーブル147は、図12に示されるような状態となる。
続いて、JSDKアプリ147は、全API群(ここではVAS135)の利用の可否をVAS135に問い合わせる(S302)。
問い合わせは、図13に示されるような実装状況取得関数を用いて行われる。但し、第三の実施の形態では、その利用方法が異なる。すなわち、第三の実施の形態における実装状況取得関数の引数はIN型の引数であり、呼び出し側のJSDKアプリ147が動作確認済みバージョンを指定する。そして、戻り値としてREADY、PARTLY、VOIDを示す値として割り当てられた整数値(0、1、2)が返却される。したがって、全API群の利用可否の問い合わせには、「getAPIVersion(“1.50”)」が呼び出される。
getAPIVersion()の呼び出しに応じ、VAS135は、全API群の実装バージョンを取得し、その実装バージョンと、getAPIVersion()の引数に渡された動作確認バージョンとを比較する。比較の結果、実装バージョンと動作確認バージョンとが同じか又は実装バージョンの方が新しい場合、VAS135は、全API群は利用可能であると判断し、その判断結果(READY)を返却する。一方、実装バージョンの方が動作確認バージョンよりも古い場合、VAS135は、一部利用可(PARTLY)を返却する。
VAS135から返却された値が「READY」である場合(S303で「READY」)、JSDKアプリ147は、図14に示されるように実装状況管理テーブル1471の全てのAPI群及びAPIの有効性の値を「READY」とし、処理を終了する。
一方、VAS135から返却された値が「PARTLY」である場合(S303で「PARTLY」)、JSDKアプリ147は、実装状況取得関数の引数に各利用API群の動作確認済みバージョンを指定することによって各利用API群の利用の可否をVAS135に問い合わせる(S305)。
実装状況取得関数の呼び出しに応じ、VAS135は、各利用API群の実装バージョンを取得し、その実装バージョンと、実装状況取得関数の引数に渡された動作確認バージョンとを比較する。比較の結果、実装バージョンと動作確認バージョンとが同じか又は実装バージョンの方が新しい場合、VAS135は、当該利用API群は利用可能であると判断し、その判断結果(READY)を返却する。一方、実装バージョンの方が動作確認バージョンよりも古い場合、VAS135は、一部利用可(PARTLY)を返却する。
VAS135から返却された値が「READY」である場合(S306で「READY」)、JSDKアプリ147は、図15に示されるように、実装状況管理テーブル1471における当該利用API群とそれに属する全てのAPIの有効性の値を「READY」とする。
一方、VAS135から返却された値が「PARTLY」である場合(S306で「PARTLY」)、JSDKアプリ14は、実装状況取得関数の引数に当該利用API群に属する各利用APIの動作確認済みバージョンを指定することによって各利用APIの利用の可否をVAS135に問い合わせる(S308)。
実装状況取得関数の呼び出しに応じ、VAS135は、各利用APIの実装バージョンを取得し、その実装バージョンと、実装状況取得関数の引数に渡された動作確認バージョンとを比較する。比較の結果、実装バージョンと動作確認バージョンとが同じか又は実装バージョンの方が新しい場合、VAS135は、当該利用APIは利用可能であると判断し、その判断結果(READY)を返却する。一方、実装バージョンの方が動作確認バージョンよりも古い場合、VAS135は、利用不可(VOID)を返却する。
VAS135から返却された値が「READY」である場合(S309で「READY」)、JSDKアプリ147は、実装状況管理テーブル1471における当該利用APIの有効性を「READY」とする(S310)。一方、VAS135から返却された値が「VOID」である場合(S309でYes)、JSDKアプリ147は、実装状況管理テーブル1471における当該利用APIの有効性を「VOID」のままとする(S311)。
利用可否が「PARTLY」と判断された利用API群について、それぞれの属する全ての利用APIに対する利用可否の問い合わせが完了すると(S312でYes)、JSDKアプリ147は、実装状況管理テーブル1471を参照して当該利用API群の利用の可否を次のように判断する(S313)。まず、利用API群に属する全ての利用APIが利用可能(READY)な場合は、当該利用API群は利用可能であると判断し、実装状況管理テーブル1471における当該利用APIの有効性を「READY」とする。また、利用API群に属する全ての利用APIが利用不可(VOID)の場合は、当該利用API群は利用不可であると判断し、実装状況管理テーブル1471における当該利用API群の有効性を「VOID」のままとする。また、利用API群に属する一部のみの利用APIが利用可能(READY)な場合は、当該利用API群は一部利用可であると判断し、実装状況管理テーブル1471における当該利用API群の有効性を「PARTLY」とする。ただし、当該利用API群が実現する特有の機能(例えば、カラースキャン機能)にとって必須の利用APIの有効性が「VOID」の場合は、当該利用API群の有効性を「VOID」のままとする。
続いて、全ての利用API群に対する利用可否の問い合わせが完了すると(S314でYes)、JSDKアプリ147は、実装状況管理テーブル1471を参照して全API群に対する利用の可否を次のように判断する(S315)。まず、全ての利用API群が利用可能(READY)な場合は、全API群は利用可能であると判断し、実装状況管理テーブル1471における全API群の有効性を「READY」とする。また、全API群に属する全ての利用API群が利用不可(VOID)の場合は、全API群は利用不可であると判断し、実装状況管理テーブル1471における全API群の有効性を「VOID」のままとする。また、全API群に属する全ての利用API群が利用不可ではないが、利用不可(VOID)又は一部利用可(PARTLY)の利用API群が含まれている場合は、全API群は一部利用可であると判断し、実装状況管理テーブル1471における全API群の有効性を「PARTLY」とする。
このように、VAS135に利用可否の判断を行わせても、第二の実施の形態の場合と同様の結果を得ることができる。なお、上記においては、API群ごとAPIごとにJSDKアプリ147から問い合わせが行われる例について説明したが、例えば、JSDKアプリ147から一括して利用可否の問い合わせが行われ、VAS135が、JSDKアプリ147のバックグラウンドにおいて各API群及び各APIの利用可否を判断し、その判断結果に基づいて実装状況管理テーブル1471を作成するようにしてもよい。
また、VAS135が行うものとして説明した処理をJSDKアプリ147を起動するプロセス(例えば、SAS183)に行わせるようにしてもよい。
ところで、上記において説明した、APIの実装状況のチェック処理を実行するタイミングは、JSDKアプリ147の実行時のみならず、JSDKアプリ147のインストール時でもよい。図21は、APIの実装状況のチェック処理を伴ったJSDKアプリのインストール処理を説明するためのフローチャートである。
ユーザが、JSDKアプリ147(動作確認バージョンの認識済みのもの)の格納されたSDカードを融合機101に挿入し(S401)、融合機101の電源をONにすると(S402)、融合機101のSAS183は、アプリケーションのインストール機能を起動し、SDカード内のJSDKアプリ147のリストをオペレーションパネル202に表示させる(S403)。
ユーザが、オペレーションパネル202に表示されたリストの中からインストール対象とするJSDKアプリ147を選択し、インストールの開始を指示すると(S404)、SAS183はSDカードから選択されたJSDKアプリ147を読み出し、そのコピーをHDD233内に作成する(S405)。コピーが完了すると、SAS183は、当該JSDKアプリ147をAPIチェックモードで起動する(S406)。
APIチェックモードで起動されたJSDKアプリ147は、本来の機能を実現するための処理ではなく、図8、図11又は図20において説明したようなAPIの実装状況のチェック処理を実行し(S407)、そのチェック結果、すなわち、実装状況管理テーブル1471の内容を、SDカード又はHDD233内に保存する。
以後、当該JSDKアプリ147が起動された際は、当該JSDKアプリ147は、その度ごとに実装状況のチェック処理を行う必要はなく、保存されたチェック結果を参照して図9又は図10において説明したような画面の表示制御や、その他の動作制御を行えばよい。但し、JSDKアプリ147のインストール後に、VAS135やAPI133のバージョンアップが行われる可能性が考えられる。かかる可能性を考慮して、SAS183にそのようなバージョンアップを常に監視させてもよい。SAS183は、バージョンアップを検出すると、インストール済みのJSDKアプリ147をAPIチェックモードで起動し、そのチェック結果を改めて保存させるといった具合である。
なお、利用不可と判断されたAPI群又はAPIについては、ネットワークを介して所定のファイルサーバより自動的にダウンロードすることにより、当該API群等にかかる機能を利用可能としてもよい。
(変形例)
図1の融合機101は、本発明「画像形成装置」の実施例に該当するものであり、図1の融合機101によって実行される情報処理は、本発明「情報処理方法」の実施例に該当するものである。図1のVAS135やJSDKアプリ147は、本発明「情報処理プログラム」の実施例に該当するものであり、図1のVAS135やJSDKアプリ147が記録されたCD−ROMやDVD−ROMやSDメモリカードは、本発明「記録媒体」の実施例に該当するものである。
本発明の実施例に該当する融合機を表す図である。 図1の融合機に係るハードウェア構成図である。 図1の融合機に係る外観図である。 オペレーションパネルを表す図である。 図1のJSDKアプリとJSDKプラットフォームのクラス図である。 図1の融合機に実装されているAPIについて説明するための図である。 第一の実施の形態におけるAPIの実装状況のチェック処理を説明するためのコラボレーション図である。 第一の実施の形態におけるAPIの実装状況のチェック処理を説明するためのフローチャートである。 操作画面の第1具体例について説明するための画面図である。 操作画面の第2具体例について説明するための画面図である。 第二の実施の形態におけるAPIの実装状況のチェック処理を説明するためのフローチャートである。 実装状況管理テーブルの初期化後の状態を示す図である。 実装状況取得関数の例を示す図である。 全API群について実装バージョンが古くないと判断された場合の実装状況管理テーブルの更新状態を示す図である。 一つの利用API群について実装バージョンが古くないと判断された場合の実装状況管理テーブルの更新状態を示す図である。 各利用APIの利用可否の判断結果に基づいて利用API群の利用可否が判断された場合の実証状況管理テーブルの更新状態を示す図である。 各利用API群の利用可否の判断結果に基づいて全API群の利用可否が判断された場合の実証状況管理テーブルの更新状態を示す図である。 JSDKアプリに動作確認済みバージョンを認識させるための処理を説明するための図である。 JSDKアプリのソースコードに書き込まれたAPI群及びAPIのバージョンの例を示す図である。 第三の実施の形態におけるAPIの実装状況のチェック処理を説明するためのフローチャートである。 APIの実装状況のチェック処理を伴ったJSDKアプリのインストール処理を説明するためのフローチャートである。
符号の説明
101 融合機
111 ハードウェア
112 ソフトウェア
113 融合機起動部
121 撮像部
122 印刷部
123 その他のハードウェア
131 アプリケーション
132 プラットフォーム
133 アプリケーションプログラムインタフェース
134 エンジンインタフェース
135 仮想アプリケーションサービス
141 コピーアプリ
142 プリンタアプリ
143 スキャナアプリ
144 ファクシミリアプリ
145 ネットワークファイルアプリ
146 CSDKアプリ
147 JSDKアプリ
148 JSDKプラットフォーム
151 コントロールサービス
152 システムリソースマネージャ
153 ハンドラ
161 ネットワークコントロールサービス
162 ファクシミリコントロールサービス
163 デリバリコントロールサービス
164 エンジンコントロールサービス
165 メモリコントロールサービス
166 オペレーションパネルコントロールサービス
167 サーティフィケーションコントロールサービス
168 ユーザディレクトリコントロールサービス
169 システムコントロールサービス
171 ファクシミリコントロールユニットハンドラ
172 イメージメモリハンドラ
181 Webブラウザ
182 Webサーバソフト
183 SDKアプリケーションサービス
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 セントロニクスデバイス
301 原稿セット部
302 給紙部
303 排紙部
311 タッチパネル
312 テンキー
313 スタートボタン
314 リセットボタン
315 機能キー
316 初期設定ボタン
321 ADF
322 フラットベッド
323 フラットベッドカバー
501 ユーザアプリ
511 JSDK GUI Manager
512 Task Bar Manager
521 JSDK Main
522 JSDK Environment
523 Locale Manager
531 Xlet Manager
532 Multi Xlet Manager
533 JSDK Manager
541 Send Manager
542 Event Manager
543 System Event Manager
544 Panel Manager
545 Install Manager
546 Server/Client Manager
547 Authentication Manager
551 JSDK API
552 JSDK API
553 JSDK Session
554 Native JSDK Session
555 CVM

Claims (14)

  1. インタフェースが公開されている複数のプログラムを有し、前記インタフェースに基づいて作成されたアプリケーションを実行可能な画像形成装置であって、
    前記アプリケーションからの要求に応じて、複数の前記プログラムによって構成されるグループごとに当該グループに係る実装状況を示す情報を提供する実装状況提供手段を有することを特徴とする画像形成装置。
  2. 前記アプリケーションは、前記実装状況提供手段によって提供される前記実装状況を示す情報に基づいて、当該アプリケーションの動作制御を行うことを特徴とする請求項1記載の画像形成装置。
  3. 前記アプリケーションは、前記実装状況提供手段によって提供される前記プログラムの実装状況を示す情報に基づいて、当該アプリケーションが提供する機能を制限することを特徴とする請求項2記載の画像形成装置。
  4. 前記アプリケーションは、前記実装状況提供手段によって提供される前記プログラムの実装状況を示す情報に基づいて、当該画像形成装置の操作パネルに表示させる画面の内容を変化させることを特徴とする請求項2又は3記載の画像形成装置。
  5. 前記アプリケーションは、前記実装状況提供手段によって提供される前記プログラムの実装状況を示す情報に基づいて制限されない機能の操作は可能となるように前記画面を表示させることを特徴とする請求項4記載の画像形成装置。
  6. 前記実装状況提供手段によって提供される前記プログラムの実装状況を示す情報に応じて、当該グループに属する前記プログラムごとの実装状況を判断することを特徴とする請求項1乃至5いずれか一項記載の画像形成装置。
  7. インタフェースが公開されている複数のプログラムを有し、前記インタフェースに基づいて作成されたアプリケーションを実行可能な画像形成装置における情報処理方法であって、
    前記アプリケーションからの要求に応じて、複数の前記プログラムによって構成されるグループごとに当該グループに係る実装状況を示す情報を提供する実装状況提供手順を有することを特徴とする情報処理方法。
  8. 前記アプリケーションは、前記実装状況提供手順において提供される前記実装状況を示す情報に基づいて、当該アプリケーションの動作制御を行うことを特徴とする請求項7記載の情報処理方法。
  9. 前記アプリケーションは、前記実装状況提供手順において提供される前記プログラムの実装状況を示す情報に基づいて、当該アプリケーションが提供する機能を制限することを特徴とする請求項8記載の情報処理方法。
  10. 前記アプリケーションは、前記実装状況提供手順において提供される前記プログラムの実装状況を示す情報に基づいて、当該画像形成装置の操作パネルに表示させる画面の内容を変化させることを特徴とする請求項8又は9記載の情報処理方法。
  11. 前記アプリケーションは、前記実装状況提供手順において提供される前記プログラムの実装状況を示す情報に基づいて制限されない機能の操作は可能となるように前記画面を表示させることを特徴とする請求項10記載の情報処理方法。
  12. 前記実装状況提供手順において提供される前記プログラムの実装状況を示す情報に応じて、当該グループに属する前記プログラムごとの実装状況を判断することを特徴とする請求項7乃至11いずれか一項記載の情報処理方法。
  13. 請求項7乃至12いずれか一項記載の情報処理方法をコンピュータに実行させるための情報処理プログラム。
  14. 請求項13記載の情報処理プログラムを記録したコンピュータ読取可能な記録媒体。
JP2005293892A 2004-10-18 2005-10-06 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体 Active JP4597834B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005293892A JP4597834B2 (ja) 2004-10-18 2005-10-06 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体
US11/248,288 US8392523B2 (en) 2004-10-18 2005-10-13 Image forming apparatus for determining the availability of application program interfaces
US13/647,852 US8621040B2 (en) 2004-10-18 2012-10-09 Image forming apparatus for determining the availability of application program interfaces

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004303135 2004-10-18
JP2005293892A JP4597834B2 (ja) 2004-10-18 2005-10-06 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2006148876A true JP2006148876A (ja) 2006-06-08
JP4597834B2 JP4597834B2 (ja) 2010-12-15

Family

ID=36180402

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005293892A Active JP4597834B2 (ja) 2004-10-18 2005-10-06 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体

Country Status (2)

Country Link
US (2) US8392523B2 (ja)
JP (1) JP4597834B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009019895A1 (ja) * 2007-08-09 2009-02-12 Panasonic Corporation 端末装置、サーバ及びそのシステム
JP2011060239A (ja) * 2009-09-14 2011-03-24 Ricoh Co Ltd 画像形成装置、印刷ジョブ実行方法、プログラム、記憶媒体
US8353051B2 (en) 2005-12-16 2013-01-08 Ricoh Company, Ltd. Image forming apparatus, access control method, access control program and computer readable information recording medium
US8564814B2 (en) 2009-08-26 2013-10-22 Fuji Xerox Co., Ltd. Image-reading system, control device, control method, and computer readable medium
US8570539B2 (en) 2006-10-26 2013-10-29 Konica Minolta Business Technologies, Inc. Image processing device for determining whether or not an application is executable based on whether or not an API is available and a computer-readable medium storing a program
EP2708979A2 (en) 2012-09-18 2014-03-19 Ricoh Company, Ltd. Information processing apparatus, power control method, and computer-readable storage medium
JP2015138513A (ja) * 2014-01-24 2015-07-30 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成装置のアプリケーションインストールシステム
JP2017220023A (ja) * 2016-06-07 2017-12-14 コニカミノルタ株式会社 画像形成装置、プログラム提供装置、プログラム提供方法、およびコンピュータプログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4597834B2 (ja) 2004-10-18 2010-12-15 株式会社リコー 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体
US8264717B2 (en) 2005-07-11 2012-09-11 Ricoh Company, Ltd. Image forming apparatus, information processing apparatus, information processing method, information processing program and storage medium
JP4861765B2 (ja) * 2005-08-04 2012-01-25 株式会社リコー 機器、情報処理方法、情報処理プログラム、及び記録媒体
US9223938B2 (en) * 2007-12-31 2015-12-29 Google Technology Holdings LLC Location bound secure domains
JP5127490B2 (ja) * 2008-02-07 2013-01-23 キヤノン株式会社 画像形成装置、画像形成装置の遠隔更新検証方法及びプログラム
US20090249346A1 (en) * 2008-03-27 2009-10-01 Toru Harada Image forming apparatus, information processing apparatus and information processing method
EP2441001A4 (en) * 2009-06-08 2012-10-31 Sato Holdings Kk SYSTEM AND METHOD FOR CLOSING A RUN TIME PROGRAMMING CODE INTO A PRESSURE DEVICE
JP5786535B2 (ja) * 2011-08-08 2015-09-30 株式会社リコー 機器、情報処理方法、情報処理プログラム、及び記録媒体
KR20170086891A (ko) * 2016-01-19 2017-07-27 에스프린팅솔루션 주식회사 화상형성작업의 수행을 위한 어플리케이션을 실행하는 화상형성장치 및 화상형성장치에서 화상형성작업을 수행하는 방법
CN108469956B (zh) * 2017-02-23 2022-01-11 京瓷办公信息系统株式会社 图像形成装置、管理服务器和信息处理方法

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962493A (ja) * 1995-08-29 1997-03-07 Nec Corp ソフトウェアインストールシステム
JPH11282515A (ja) * 1998-03-31 1999-10-15 Fuji Electric Co Ltd プログラマブルコントローラおよび記録媒体
JP2000083120A (ja) * 1998-09-03 2000-03-21 Canon Inc 画像形成装置、機能設定方法および記憶媒体
JP2002084383A (ja) * 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
JP2002082806A (ja) * 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
US20020054326A1 (en) * 2000-07-05 2002-05-09 Ricoh Company, Limited Method of and apparatus for image formation, and computer product
JP2003263324A (ja) * 2002-03-11 2003-09-19 Canon Inc 情報処理装置及びその方法、プログラム
JP2003323405A (ja) * 2002-05-02 2003-11-14 Itmanage Inc アプリケーションサーバ監視システム
US20030218765A1 (en) * 2002-04-26 2003-11-27 Tsutomu Ohishi Apparatus for controlling launch of application and method
EP1370060A1 (en) * 2002-06-04 2003-12-10 Canon Kabushiki Kaisha Image sensing apparatus, printing system, and print control method
US20030231341A1 (en) * 2002-06-04 2003-12-18 Canon Kabushiki Kaisha, Tokyo, Japan Image sensing apparatus, printing system, and print control method
JP2004005612A (ja) * 2002-04-26 2004-01-08 Ricoh Co Ltd リソース情報を取得する装置及び方法
JP2004030601A (ja) * 2002-04-26 2004-01-29 Ricoh Co Ltd リソース情報によりアプリケーション起動判断を行う装置及び方法
JP2004127281A (ja) * 2002-09-14 2004-04-22 Ricoh Co Ltd 画像形成装置および情報表示方法
JP2004185593A (ja) * 2002-07-26 2004-07-02 Ricoh Co Ltd 画像形成装置およびアプリケーション実行方法
JP2005059305A (ja) * 2003-08-08 2005-03-10 Canon Inc 記録装置及び画像供給装置及び記録システムとその制御方法
JP2005071023A (ja) * 2003-08-22 2005-03-17 Canon Inc 画像供給装置及び記録装置と、これらを含む記録システムとその通信制御方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4124402B2 (ja) * 2000-03-31 2008-07-23 株式会社リコー 画像入力装置
EP1291756A3 (en) * 2001-09-05 2006-08-02 Eastman Kodak Company Image-forming system with a graphical user interface having an interconnection architecture
US20030133136A1 (en) * 2001-12-27 2003-07-17 Tsutomu Ohishi Method for generating and launching application for information processing apparatus and image forming apparatus
US20030140174A1 (en) * 2002-01-08 2003-07-24 Tsutomu Ohishi Method for generating application for information processing apparatus and image forming apparatus
JP4365148B2 (ja) * 2002-07-19 2009-11-18 株式会社リコー 画像形成装置及びラッピング処理方法並びにプログラム
JP4843187B2 (ja) * 2002-07-22 2011-12-21 株式会社リコー 画像形成装置
EP1385089A3 (en) * 2002-07-26 2007-01-24 Ricoh Company, Ltd. Image forming apparatus, information processing apparatus, program execution method and program producing method
US7636172B2 (en) * 2002-07-31 2009-12-22 Ricoh Company, Ltd. Image forming apparatus, information processing apparatus and version check method using an API from an application
US20040119751A1 (en) * 2002-08-07 2004-06-24 Minolta Co., Ltd. Data input device, image processing device, data input method and computer readable recording medium on which data input program is recorded
JP4070693B2 (ja) * 2002-09-13 2008-04-02 株式会社リコー 画像形成装置およびスキャンデータ処理方法
DE60330425D1 (de) * 2002-09-13 2010-01-21 Ricoh Kk Bilderzeugungsgerät und Verfahren zur Kontrolle der Benutzung
JP2004127282A (ja) * 2002-09-13 2004-04-22 Ricoh Co Ltd 画像形成装置および印刷処理方法
EP1503570A3 (en) * 2003-07-29 2005-07-27 Ricoh Company, Ltd. Image forming apparatus as client of a distributed file system, image processing method, image processing program and recording medium
US8499358B2 (en) * 2003-09-12 2013-07-30 Konica Minolta Business Technologies, Inc. Program executing processing and controlling
US8432562B2 (en) * 2004-02-17 2013-04-30 Ricoh Company, Ltd. Image processing apparatus, method, program, and computer readable recording medium for controlling operation switching and displaying at occurrence of error conditions
JP4597834B2 (ja) 2004-10-18 2010-12-15 株式会社リコー 画像形成装置、情報処理方法、情報処理プログラム及び記録媒体
JP4861765B2 (ja) 2005-08-04 2012-01-25 株式会社リコー 機器、情報処理方法、情報処理プログラム、及び記録媒体
US20070255814A1 (en) * 2006-04-27 2007-11-01 Securetek Group Inc. System for server consolidation and mobilization

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962493A (ja) * 1995-08-29 1997-03-07 Nec Corp ソフトウェアインストールシステム
JPH11282515A (ja) * 1998-03-31 1999-10-15 Fuji Electric Co Ltd プログラマブルコントローラおよび記録媒体
JP2000083120A (ja) * 1998-09-03 2000-03-21 Canon Inc 画像形成装置、機能設定方法および記憶媒体
JP2002084383A (ja) * 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
JP2002082806A (ja) * 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
US20020054326A1 (en) * 2000-07-05 2002-05-09 Ricoh Company, Limited Method of and apparatus for image formation, and computer product
JP2003263324A (ja) * 2002-03-11 2003-09-19 Canon Inc 情報処理装置及びその方法、プログラム
US20030218765A1 (en) * 2002-04-26 2003-11-27 Tsutomu Ohishi Apparatus for controlling launch of application and method
JP2004005612A (ja) * 2002-04-26 2004-01-08 Ricoh Co Ltd リソース情報を取得する装置及び方法
JP2004030601A (ja) * 2002-04-26 2004-01-29 Ricoh Co Ltd リソース情報によりアプリケーション起動判断を行う装置及び方法
JP2003323405A (ja) * 2002-05-02 2003-11-14 Itmanage Inc アプリケーションサーバ監視システム
EP1370060A1 (en) * 2002-06-04 2003-12-10 Canon Kabushiki Kaisha Image sensing apparatus, printing system, and print control method
US20030231341A1 (en) * 2002-06-04 2003-12-18 Canon Kabushiki Kaisha, Tokyo, Japan Image sensing apparatus, printing system, and print control method
EP1377018A2 (en) * 2002-06-04 2004-01-02 Canon Kabushiki Kaisha Printing system, control method therefor, and photo-direct printing apparatus
JP2004013349A (ja) * 2002-06-04 2004-01-15 Canon Inc 撮像装置、記録システム及びその記録制御方法
JP2004185593A (ja) * 2002-07-26 2004-07-02 Ricoh Co Ltd 画像形成装置およびアプリケーション実行方法
JP2004127281A (ja) * 2002-09-14 2004-04-22 Ricoh Co Ltd 画像形成装置および情報表示方法
JP2005059305A (ja) * 2003-08-08 2005-03-10 Canon Inc 記録装置及び画像供給装置及び記録システムとその制御方法
JP2005071023A (ja) * 2003-08-22 2005-03-17 Canon Inc 画像供給装置及び記録装置と、これらを含む記録システムとその通信制御方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8353051B2 (en) 2005-12-16 2013-01-08 Ricoh Company, Ltd. Image forming apparatus, access control method, access control program and computer readable information recording medium
US8819852B2 (en) 2005-12-16 2014-08-26 Ricoh Company, Ltd. Image forming apparatus, access control method, access control program and computer readable information recording medium
US8570539B2 (en) 2006-10-26 2013-10-29 Konica Minolta Business Technologies, Inc. Image processing device for determining whether or not an application is executable based on whether or not an API is available and a computer-readable medium storing a program
WO2009019895A1 (ja) * 2007-08-09 2009-02-12 Panasonic Corporation 端末装置、サーバ及びそのシステム
JPWO2009019895A1 (ja) * 2007-08-09 2010-10-28 パナソニック株式会社 端末装置、サーバ及びそのシステム
US8260714B2 (en) 2007-08-09 2012-09-04 Panasonic Corporation Terminal apparatus and system thereof
US8564814B2 (en) 2009-08-26 2013-10-22 Fuji Xerox Co., Ltd. Image-reading system, control device, control method, and computer readable medium
JP2011060239A (ja) * 2009-09-14 2011-03-24 Ricoh Co Ltd 画像形成装置、印刷ジョブ実行方法、プログラム、記憶媒体
EP2708979A2 (en) 2012-09-18 2014-03-19 Ricoh Company, Ltd. Information processing apparatus, power control method, and computer-readable storage medium
US9582067B2 (en) 2012-09-18 2017-02-28 Ricoh Company, Ltd. Information processing apparatus, method and computer-readable storage medium for power control under a plurality of power modes including an unsupported power mode
JP2015138513A (ja) * 2014-01-24 2015-07-30 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成装置のアプリケーションインストールシステム
JP2017220023A (ja) * 2016-06-07 2017-12-14 コニカミノルタ株式会社 画像形成装置、プログラム提供装置、プログラム提供方法、およびコンピュータプログラム

Also Published As

Publication number Publication date
US20130036420A1 (en) 2013-02-07
JP4597834B2 (ja) 2010-12-15
US8621040B2 (en) 2013-12-31
US20060082801A1 (en) 2006-04-20
US8392523B2 (en) 2013-03-05

Similar Documents

Publication Publication Date Title
US8621040B2 (en) Image forming apparatus for determining the availability of application program interfaces
US8767244B2 (en) Image forming apparatus, information processing apparatus, information processing method, information processing program and storage medium
JP4625343B2 (ja) 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4769515B2 (ja) アプリケーション実行方法、情報処理装置、画像形成装置、アプリケーション実行プログラム、記録媒体、及び情報処理システム
JP4704245B2 (ja) 画像形成装置、情報処理方法、プログラム、及び記録媒体
JP2007049677A (ja) 画像形成装置、情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5025192B2 (ja) 機器、情報処理方法、情報処理プログラム、及び記録媒体
JP5664692B2 (ja) 電子機器、画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2004118237A (ja) 画像形成装置およびアプリケーションインストール方法
JP5686155B2 (ja) 機器、情報処理システム、情報処理方法、プログラム、及び記録媒体
JP2006222569A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2006079211A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4459033B2 (ja) 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2005269439A (ja) 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP5025193B2 (ja) 機器、情報処理方法、情報処理プログラム、及び記録媒体
JP2006271005A (ja) 画像形成装置およびアプリケーションインストール方法
JP2007122348A (ja) 画像形成装置、セキュリティ管理方法、セキュリティ管理プログラム及び記録媒体
JP5418543B2 (ja) 端末装置、情報処理方法、情報処理プログラム、記録媒体及び情報処理システム
JP4862094B2 (ja) 端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2013243767A (ja) 機器、情報処理方法、プログラム、記録媒体、及び情報処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100806

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100831

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100922

R150 Certificate of patent or registration of utility model

Ref document number: 4597834

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131001

Year of fee payment: 3