[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP4367902B2 - Recording system, image supply device, printing apparatus, and control method therefor - Google Patents

Recording system, image supply device, printing apparatus, and control method therefor Download PDF

Info

Publication number
JP4367902B2
JP4367902B2 JP2003190475A JP2003190475A JP4367902B2 JP 4367902 B2 JP4367902 B2 JP 4367902B2 JP 2003190475 A JP2003190475 A JP 2003190475A JP 2003190475 A JP2003190475 A JP 2003190475A JP 4367902 B2 JP4367902 B2 JP 4367902B2
Authority
JP
Japan
Prior art keywords
function
image
supply device
image data
printer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003190475A
Other languages
Japanese (ja)
Other versions
JP2004088760A5 (en
JP2004088760A (en
Inventor
顕季 山田
健太郎 矢野
史博 後藤
孝郎 愛知
和弥 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003190475A priority Critical patent/JP4367902B2/en
Publication of JP2004088760A publication Critical patent/JP2004088760A/en
Publication of JP2004088760A5 publication Critical patent/JP2004088760A5/ja
Application granted granted Critical
Publication of JP4367902B2 publication Critical patent/JP4367902B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Television Signal Processing For Recording (AREA)
  • Studio Devices (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、デジタルカメラなどの画像供給デバイスと記録装置とを有する記録システム及びその制御方法、そして、印刷装置及び画像供給デバイス及びその制御方法に関するものである。
【0002】
【従来の技術】
近年、簡単な操作で画像を撮影してデジタル画像データに変換できるデジタルカメラ(撮像装置)が広く使用されるようになってきている。このようなカメラで撮影した画像を印刷して写真として使用する場合には、通常、一旦、その撮影された画像のデジタル画像データを、デジタルカメラからPC(コンピュータ)に取り込み、そのPCで画像処理を行った後、そのPCからカラープリンタに出力して印刷するのが一般的である。
【0003】
これに対して最近は、例えば特許文献1のように、PCを介することなく、直接、デジタルカメラからカラープリンタにデジタル画像データを伝送して印刷することができるカラープリントシステムや、デジタルカメラに搭載され、撮像した画像を記憶しているメモリカードを、直接、カラープリンタに装着し、そのメモリカードに記憶されている、撮影された画像を印刷できる、所謂フォトダイレクト(PD)プリンタ等も開発されている。
【0004】
【特許文献1】
特開2003−143520
【0005】
【発明が解決しようとする課題】
特に、デジタルカメラから直接プリンタに画像データを伝送して印刷する場合は、デジタルカメラは各メーカごとにその仕様や操作方法などが異なっているため、各種メーカのデジタルカメラに対応できるフォトダイレクトプリンタ装置の出現が望まれていた。また、このようなフォトダイレクトプリンタ装置は、上記説明したデジタルカメラ以外にも、例えば、携帯電話やPDAそれ以外の各種デバイスからの画像データを受信して印刷することが考えられ、またプリンタ自体の機能も種々であるため、互いのCapabilityが予測できず、互いの機能情報の交換が必須になる。
【0006】
本発明は上記従来例に鑑みてなされたもので、本発明の特徴は、インターフェースに依存しない画像データの転送及び記録指示を行うことにより、各社の画像供給デバイスからの画像データを記録できる記録システム及び印刷装置及び画像供給デバイスとその制御方法を提供することにある。
【0007】
また本発明の特徴は、画像供給デバイスと記録装置との間の標準的な通信規約を規定して、機種やメーカに拠らない記録処理を実行できる記録システム及び印刷記録装置及び画像供給デバイスとその制御方法を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するために本発明の記録システムは以下のような構成を備える。即ち、
画像供給デバイスと記録装置とが通信インターフェースを介して直接通信し、前記画像供給デバイスから前記記録装置に画像データを送信して記録する記録システムであって、
前記記録装置と前記画像供給デバイスとの間信する通信手段と、
少なくともユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により取得し、前記画像供給デバイスのサポートレベルと前記記録装置のサポートレベルとを比較して前記操作制御機能の分担を決める分担手段と、
記画像供給デバイスと前記記録装置との間で画像データ及びコマンドの授受を行って、前記画像供給デバイスから送信された画像データを用いて前記記録装置で記録を行う記録制御手段とを有し
前記操作制御機能を用いて記録すべき画像データを選択し、前記記録制御手段は、前記操作制御機能を用いて選択された画像データに基づいて記録を行うことを特徴とする。
【0009】
上記目的を達成するために本発明の記録システムは以下のような工程を備える。即ち、
画像供給デバイスと記録装置とが通信インターフェースを介して直接通信し、前記画像供給デバイスから前記記録装置に画像データを送信して記録する記録システムであって、
前記記録装置と前記画像供給デバイスとの間で通信する通信手段と、
少なくとも前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルを含む機能情報を前記通信手段により取得し、前記画像供給デバイスのサポートレベルと前記記録装置のサポートレベルとを比較して前記記憶制御機能の分担を決める分担手段と、
前記画像供給デバイスと前記記録装置との間で画像データ及びコマンドの授受を行って、前記画像供給デバイスから送信された画像データを用いて前記記録装置で記録を行う記録制御手段とを有し、
前記記録制御手段は、前記記憶制御機能により管理される前記記録媒体の画像データを用いて記録を行うことを特徴とする。
【0010】
上記目的を達成するために本発明の印刷装置は以下のような構成を備える。即ち、
通信インターフェースを介して画像供給デバイスと直接接続し、前記画像供給デバイスから画像データを受信して印刷する印刷装置であって、
前記画像供給デバイスと通信する通信手段と、
少なくとも印刷対象の画像を選択するためのユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により前記画像供給デバイスから受信し、受信した前記画像供給デバイスのサポートレベルに応じて前記操作制御機能の分担を決める分担手段と、
記画像供給デバイスから前記操作制御機能を用いて選択された印刷対象の画像データを受信し、受信した画像データに基づいて印刷を行う印刷制御手段と、
を有することを特徴とする。
【0011】
上記目的を達成するために本発明の画像供給デバイスは以下のような構成を備える。即ち、
通信インターフェースを介して印刷装置と直接通信し、前記印刷装置に画像データを送信して印刷させる画像供給デバイスであって、
前記印刷装置と通信する通信手段と、
少なくとも印刷対象の画像を選択するためのユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により前記印刷装置から受信し、受信した前記印刷装置のサポートレベルに応じて前記操作制御機能の分担を決める分担手段と、
前記操作制御機能を用いて選択された印刷対象の画像データを前記印刷装置に送信して前記印刷装置により印刷を行わせる印刷制御手段と、
を有することを特徴とする。
【0012】
【発明の実施の形態】
以下、添付図面を参照して本発明の好適な実施の形態を詳細に説明する。
【0013】
図1は、本発明の実施の形態に係るフォトダイレクトプリンタ装置(以下、PDプリンタ装置)1000の概観斜視図である。このPDプリンタ装置1000は、ホストコンピュータ(PC)からデータを受信して印刷する通常のPCプリンタとしての機能と、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラからの画像データを受信して印刷する機能を備えている。
【0014】
図1において、本実施の形態に係るPDプリンタ装置1000の外殻をなす本体は、ケースM1001、上ケース1002、アクセスカバー1003及び排出トレイ1004の外装部材を有している。また、下ケース1001は、PDプリンタ装置1000の略下半部を、上ケース1002は本体の略上半部をそれぞれ形成しており、両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部が形成されている。さらに、排出トレイ1004は、その一端部が下ケース1001に回転自在に保持され、その回転によって下ケース1001の前面部に形成される開口部を開閉させ得るようになっている。このため、印刷動作を実行させる際には、排出トレイ1004を前面側へと回転させて開口部を開成させることにより、ここから記録シートが排出可能となると共に、排出された記録シートを順次積載し得るようになっている。また、排紙トレイ1004には、2枚の補助トレイ1004a,1004bが収納されており、必要に応じて各トレイを手前に引き出すことにより、用紙の支持面積を3段階に拡大、縮小させ得るようになっている。
【0015】
アクセスカバー1003は、その一端部が上ケース1002に回転自在に保持され、上面に形成される開口部を開閉し得るようになっており、このアクセスカバー1003を開くことによって本体内部に収納されているプリントヘッドカートリッジ(不図示)あるいはインクタンク(不図示)等の交換が可能となる。なお、ここでは特に図示しないが、アクセスカバー1003を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させるようになっており、そのレバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバーの開閉状態を検出し得るようになっている。
【0016】
また、上ケース1002の上面には、電源キー1005が設けられている。また、上ケース1002の右側には、液晶表示部1006や各種キースイッチ等を備える操作パネル1010が設けられている。この操作パネル1010の構造は、図2を参照して詳しく後述する。1007は自動給送部で、記録シートを装置本体内へと自動的に給送する。1008は紙間選択レバーで、プリントヘッドと記録シートとの間隔を調整するためのレバーである。1009はカードスロットで、ここにメモリカードを装着可能なアダプタが挿入され、このアダプタを介してメモリカードに記憶されている画像データを直接取り込んで印刷することができる。このメモリカード(PC)としては、例えばコンパクトフラッシュ(登録商標)メモリTM、スマートメディアTM、メモリスティック等がある。1011はビューワ(液晶表示部)で、このPDプリンタ装置1000の本体に着脱可能であり、PCカードに記憶されている画像の中からプリントしたい画像を検索する場合などに、1コマ毎の画像やインデックス画像などを表示するのに使用される。1012は後述するデジタルカメラを接続するためのUSB端子である。また、このPDプリンタ装置1000の後面には、パーソナルコンピュータ(PC)を接続するためのUSBコネクタが設けられている。
【0017】
図2は、本実施の形態に係るPDプリンタ装置1000の操作パネル1010の概観図である。
【0018】
図において、液晶表示部1006には、その左右に印刷されている項目に関するデータを各種設定するためのメニュー項目が表示される。ここに表示される項目としては、例えば、印刷したい範囲の先頭写真番号、指定コマ番号(開始コマ指定/印刷コマ指定)、印刷を終了したい範囲の最後の写真番号(終了)、印刷部数(部数)、印刷に使用する用紙(記録シート)の種類(用紙種類)、1枚の用紙に印刷する写真の枚数設定(レイアウト)、印刷の品位の指定(品位)、撮影した日付を印刷するかどうかの指定(日付印刷)、写真を補正して印刷するかどうかの指定(画像補正)、印刷に必要な用紙枚数の表示(用紙枚数)等がある。これら各項目は、カーソルキー2001を用いて選択、或いは指定される。2002はモードキーで、このキーを押下する毎に、印刷の種類(インデックス印刷、全コマ印刷、1コマ印刷等)を切り替えることができ、これに応じてLED2003の対応するLEDが点灯される。2004はメンテナンスキーで、プリントヘッドのクリーニング等、プリンタのメンテナンスを行わせるためのキーである。2005は印刷開始キーで、印刷の開始を指示する時、或いはメンテナンスの設定を確立する際に押下される。2006は印刷中止キーで、印刷を中止させる時や、メンテナンスの中止を指示する際に押下される。
【0019】
次に図3を参照して、本実施の形態に係るPDプリンタ装置1000の制御に係る主要部の構成を説明する。尚、この図3において、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【0020】
図3において、3000は制御部(制御基板)を示している。3001はASIC(専用カスタムLSI)を示し、その構成は図4のブロック図を参照して詳しく後述する。3002はDSP(デジタル信号処理プロセッサ)で、内部にCPUを有し、後述する各種制御処理及び、輝度信号(RGB)から濃度信号(CMYK)への変換、スケーリング、ガンマ変換、誤差拡散等の画像処理等を担当している。3003はメモリで、DSP3002のCPUの制御プログラムを記憶するプログラムメモリ3003a、及び実行時のプログラムを記憶するRAMエリア、画像データなどを記憶するワークメモリとして機能するメモリエリアを有している。3004はプリンタエンジンで、ここでは、複数色のカラーインクを用いてカラー画像を印刷するインクジェットプリンタのプリンタエンジンが搭載されている。3005はデジタルカメラ(DSC)3012を接続するためのポートとしてのUSBコネクタである。3006はビューワ1011を接続するためのコネクタである。3008はUSBハブ(USB HUB)で、このPDプリンタ装置1000がPC3010からの画像データに基づいて印刷を行う際には、PC3010からのデータをそのままスルーし、USB3021を介してプリンタエンジン3004に出力する。これにより、接続されているPC3010は、プリンタエンジン3004と直接、データや信号のやり取りを行って印刷を実行することができる(一般的なPCプリンタとして機能する)。3009は電源コネクタで、電源3019により、商用ACから変換された直流電圧を入力している。PC3010は一般的なパーソナルコンピュータ、3011は前述したメモリカード(PCカード)、3012はデジタルカメラ(DSC:Digital Still Camera)である。
【0021】
尚、この制御部3000とプリンタエンジン3004との間の信号のやり取りは、前述したUSB3021又はIEEE1284バス3022を介して行われる。
【0022】
図4は、ASIC3001の構成を示すブロック図で、この図4においても、前述の図面と共通する部分は同じ記号を付与して、それらの説明を省略する。
【0023】
4001はPCカードインターフェース部で、装着されたPCカード3011に記憶されている画像データを読取ったり、或いはPCカード3011へのデータの書き込み等を行う。4002はIEEE1284インターフェース部で、プリンタエンジン3004との間のデータのやり取りを行う。このIEEE1284インターフェース部4002は、デジタルカメラ3012或いはPCカード3011に記憶されている画像データを印刷する場合に使用されるバスである。4003はUSBインターフェース部で、PC3010との間でのデータのやり取りを行う。4004はUSBホストインターフェース部で、デジタルカメラ3012との間でのデータのやり取りを行う。4005は操作パネル・インターフェース部で、操作パネル1010からの各種操作信号を入力したり、表示部1006への表示データの出力などを行う。4006はビューワ・インターフェース部で、ビューワ1011への画像データの表示を制御している。4007は各種スイッチやLED4009等との間のインターフェースを制御するインターフェース部である。4008はCPUインターフェース部で、DSP3002との間でのデータのやり取りの制御を行っている。4010はこれら各部を接続する内部バス(ASICバス)である。
【0024】
図5は、本発明の実施の形態に係るDSC3012の代表的な構成例を示すブロック図である。但し、本実施の形態のPDプリンタ装置1000に接続可能なデジタルカメラの中には、後述する表示部2700を有していない機器も存在する可能性がある。
【0025】
同図において、3100はDSC全体の制御を司るCPUであり、3101はCPU3100の処理手順(プログラム)を記憶しているROMである。3102はCPU3100のワークエリアとして使用されるRAMであり、3103は各種操作を行うスイッチ群で、各種スイッチやカーソルキー等が含まれている。2700は液晶表示部であり、撮像した画像を確認したり、各種設定を行う際のメニューを表示するために使用される。3105は光学ユニットであり、主としてレンズ及びその駆動系で構成される。3106はCCD素子であり、3107はCPU3100の制御下において光学ユニット3105を駆動制御するドライバである。3108は記憶媒体3109(コンパクトフラッシュ(登録商標)メモリカード、スマートメディア等)を接続するためのコネクタであり、3110はPC或いは実施形態におけるPDプリンタ1000と接続するためのUSBインターフェース(USBのスレーブ側)である。
【0026】
本実施の形態では、上述したPDプリンタ装置1000とDSC3012とを接続して印刷を行う場合の例を中心に説明するが、このPDプリンタ装置1000のような画像出力装置に各メーカのデジタルカメラ、更には携帯電話やメモリデバイス等のデバイス(DSPD:Digital Still Photography Devices)を接続し、そこから取得した画像データに基づいてプリントできるPDプリンタ装置を提供することを目的とし、本実施の形態に係るPDプリンタ装置1000とこれらDSPDとを接続してプリントを行なう場合の通信規約について記述する。尚、本実施の形態においては、PDプリンタ装置とDSPDとの間の通信制御を汎用ファイル、汎用フォーマットを用いて行い、インターフェースに依存しない新規なCDPS(Canon Direct Print Service)を提案する。
【0027】
DSPDと画像出力装置との間で、様々な通信プロトコルアーキテクチャ、例えば、USB上のPTP(Still Image Class)やMass Storage Class、もしくはBlue Tooth上のOBEX、更にはUPnP等に対しての取り決めを行うために、ここではプリントサービス機能の概念を用いている。このプリントサービス機能とはアプリケーション層における実行機能の集合体であり、各種インターフェースに依存していない。
【0028】
又、実際の画像データ及びデバイス間の通信制御は汎用ファイル、汎用フォーマットを用いて行う(例えば、XML書式を用いて記述する)ためインターフェースに依存してない。
【0029】
このようなDSPDと画像出力装置とを接続したシステムにおいては、そのオペレーションは、どちらか一方のオペレーション部(例えば、デジタルカメラの液晶画面や、プリンタ上の操作部)を用いて行われるが、システム全体を考えた場合に、両方の装置が同様の機能を備えているような場合に、どちらの装置のオペレーション部を用いて実行させるかを決定する必要が生じる。そこで、本実施の形態に係るシステムでは、後述するDiscovery処理(移行処理)の後に、オペレーション部やその他の機能を、各装置間でどのように分担させるかを決定する仕組みを取り入れて汎用性を高めたものとしている。
【0030】
[通信概要説明]
図6は、DSPDの代表的な装置であるデジタルカメラ(DSC)3012と画像出力装置の代表例である、本実施の形態に係るPDプリンタ装置1000との間の通信の概要を説明する図である。尚、ここでは、これらDSC3012とPDプリンタ装置1000とがUSBで接続されており、その間の通信はPTPを用いている。このUSB接続において、PDプリンタ装置1000がホスト側、DSC3012がスレーブ側とする。
【0031】
以下、この手順を順に説明する。尚、ここでは、DSC3012は前述の図5の構成を有し、印刷画像及び印刷条件の設定、印刷開始指示をDSC3012から行う例で説明する。
(1)まず最初に、USBケーブルによりDSC3012とPDプリンタ装置1000とを物理的に接続する。
(2)次に、PDプリンタ装置1000のUSBホストコントローラ(USBタスク)がDSC3012を認識し、イメージクラス・PTPでの接続を行う。これが図6の600で示す「通信の確立」状態である。
(3)次にPDプリンタ装置1000から、本実施の形態で規定する通信規約(CDPS)に移行するための処理(601)に移る。この時、DSC3012とPDプリンタ装置1000との間での情報のやりとりに基づいて、両者間でCDPSサービスを実行可能であるか否か、サービスが実行可能である場合には、「標準」又は「拡張」のうちのいずれの手順で実行するかの確認及び決定が行われる(610)。また、この処理601では、印刷画像の決定及び印刷条件の設定、印刷開始の指示等をDSC3012或いはPDプリンタ装置1000のいずれが担当するか等の決定も行われる。
(4)この処理601の結果、「標準」手順602でのサービスを実行する場合には、PDプリンタ装置1000からDSC3012に対して、「プリンタ側で提供出来るサービス」を通達する(603)。具体的には、PDプリンタ装置1000で対応可能な用紙サイズや紙種、印刷品位、レイアウト可能な組み合わせ等である。
(5)DSC3012では、603で送られてきたサービス内容に従い、ユーザが操作するUIメニューを作成して表示部2700に表示する。これによりユーザは、印刷画像の設定,印刷条件及び写真選択(これらをまとめて「ジョブ」という)をUIメニューを介して行う(611)。
(6)こうして「ジョブ」の設定が終了し、印刷開始指示がDSC3012においてユーザより行われると、DSC3012からPDプリンタ装置1000に「ジョブ」の通達が行われる(604)。
(7)次にPDプリンタ装置1000は、604で送られてきた「ジョブ」の内容に従ってPDプリンタ装置1000の設定を行った後、必要な画像ファイルをDSC3012から取得して(605)写真の印刷を行う(613)。
(8)ここで、「ジョブ」の実行中に、PDプリンタ装置1000で何らかのエラーが発生した場合には、DSC3012に対して、その発生したエラーの内容を通知してユーザに対応を求める(606)(本実施の形態では、「印刷続行/中止」の選択とする)。こうしてユーザがDSC3012のUIを使用してその対応(印刷続行又は中止)を決定すると(612)、その内容がPDプリンタ装置1000に送られて対応するエラー処理614が実行される。
(9)このようにして、画像ファイルの転送と印刷処理(→エラーの送受信)を繰り返し、「ジョブ」が完了すると、再びDSC3012での「ジョブ」設定状態(611)となる。
(10)また、上述の610で、CDPSの「拡張手順」のサービスを行うと決定された場合には、607で示す、各ベンダに固有の手順及び「拡張」処理を実行する。尚、この「拡張手順」での処理は各ベンダにより規定されるので、ここでは説明しない。
【0032】
[階層構造]
図7は、DSPDの代表であるDSC3012と、画像出力装置の代表であるPDプリンタ装置1000とを接続した場合の全体機能を階層構造で示す図である。
【0033】
図において、700及び703はアプリケーション部を示し、701及び702は物理層で、ここではUSBとブルーツース(Bluetooth)の例で示している。DSC3012及びPDプリンタ装置1000のそれぞれは700と703で示す(アプリケーション)をそれぞれ組込むことにより、本CDPSシステムを構築することができる。但し、701,702で示すように、プロトコル層のPTPやBIP,MSC(Mass Storage Class)上のファイルシステム等のアーキテクチャーの実装が前提である。又、各アプリケーション部分700,703に、このプリントサービス機能の実態が存在しており、CDPSからそれぞれのプロトコルに変換する部分でプリントサービス機能が実行される。
【0034】
このようにして、物理的なインターフェースに依存しない形でのダイレクトプリントサービスを実現できる。
【0035】
[システム全体の機能]
図8は、上述のDSPDと画像出力機器とが接続された時、これらを一体のシステムと見なした時の機能構成を示す図である。
【0036】
前述の階層構造によりインターフェースに依存しないことを規定した事に続いて、DSPDs及び画像出力装置の「機能」に対しての非依存を実現するために、よりハイレベルでの要素(オブジェクト)の定義を行う。本実施の形態においては、DSPDと画像形成装置との間での各種機能の切り分けや分担を行わず、このダイレクトプリントシステム全体として必要な機能構成要素の定義及びその役割について説明する。
【0037】
ここではシステム全体の機能を大きく4つの機能(800〜803)に分けている。
【0038】
<CDPS初期化処理(CDPS Initialize)>
CDPS初期化処理800は、他のCDPSの機能に先立って最初に起動される。ここでは、CDPSモードへの移行(標準・拡張)等を判定し、その判定結果を「Service Discovery」804として、各機能に通達する。これは前述の図6の601に相当している。
【0039】
<操作制御(Operation Controller)>
ユーザ812との対話を行うUI部分の管理(操作制御:Operation Controller)801は、CDPS初期化処理800からの「Service Discovery」804を受信して起動される。この操作制御801は、プリント制御(Print Controller)803からプリントデバイス810(プリンタエンジン3004)で印刷可能なサービス「Service」807を取得し、また記憶制御(Storage Controller)802から、PCカード3011等の記憶デバイス811が保持している画像情報リスト「Data List」805を取得する。そして、これら「Service」807及び「Data List」805の記述に基づいてUIメニューを作成する。こうして作成されたUIメニューを介して入力されるユーザの指示に基づいて、出力設定指示書「Job」808を作成してプリント制御803に通達する。
【0040】
<記憶制御(Storage Controller)>
記憶制御802は、写真画像が保持された記憶媒体、例えば前述のPCカード3011の管理を行う。この記憶制御802は、CDPS初期化処理800からの「Service Discovery」804を受信して起動する。また、操作制御801からの要請に従って、記憶デバイス811に保持されている画像情報リスト「Data List」805を作成し、それを操作制御801に通達する。また、プリント制御803からの要請に従って、記憶デバイス811に保存されている画像ファイル「Job Data」806をプリント制御803に送出する。
【0041】
<プリント制御>
プリント制御(Print Controller)803は、写真画像の印刷を行うプリントデバイス810の管理を行う。このプリント制御803は、CDPS初期化処理800からの「Service Discovery」804を受信して起動し、操作制御801にプリントデバイス810で印刷可能なサービス「Service」807を通達する。また、操作制御801から出力設定指示書「Job」808を取得すると、その「Job」808の記述に基づいて、「Data List」805に記載された記述方法で、記憶制御802に対して記憶デバイス811に保存されている画像ファイル「Job Data」806を要求して取得する。これに基づいて、プリントデバイス810が処理可能なプリントデータを作成してプリントデバイス810に出力することにより印刷が行われる。
【0042】
図9は、図8の各機能による処理の流れを説明するフローチャートである。
【0043】
まずステップS1で、CDPS初期化処理800がCDPSモードへ移行できるか否かを判定し、その判定に基づいて、各機能へ「Service Discovery」804を通達し、各機能を起動する。次にステップS2に進み、プリント制御803は、プリントデバイス810が提供できるプリントサービス「Service」807を操作制御801に通達する。次にステップS3に進み、操作制御801は、記憶制御802から記憶デバイス811に保持されている画像情報リスト「Data List」805を取得する。次にステップS4に進み、操作制御801は「Service」807及び「Data List」805に基づいて印刷設定用のUIを構成して表示する。このUIに従って入力されるユーザ812の指示に基づいて、印刷すべき画像と、その印刷モードの選択等を規定する印刷設定指示書「Job」808を作成し、その作成した「Job」808を操作制御801から印刷制御803に通達する。次にステップS5に進み、印刷制御803は、その「Job」808の記述に従ってプリントデバイス810に対して印刷設定を行う。次に、記憶制御802に対して、「Data List」805に記載された記述方法で、記憶デバイス811に保持されている、印刷に必要な画像ファイル「Job Data」806を要求して、それを取得する。そしてプリントデバイス810が処理可能な印刷データを作成する。次にステップS6に進み、その印刷データをプリントデバイス810に出力して印刷する。そしてステップS7では、印刷処理の終了が指示されたかを調べ、終了指示が入力されない時はステップS4に戻り、前述の処理を実行する。そして印刷処理の終了が指示されると、この処理を終了する。
【0044】
以上説明したように、上述した各機能がDSPD或いは画像出力装置のいずれに存在するかに関わらず、上述した階層構造、4つの機能800〜803及び上記4つの機能間でやりとりされる5つの情報群804〜808を、このCDPSの基本構成とする。
【0045】
[DSCとPDプリンタ装置によるCDPS構成]
図10は、DSC3012とPDプリンタ装置1000とが接続された状態でのCDPS構成の一例を示す図である。ここでは、DSC3012とPDプリンタ装置1000の両者が、上述した4つの機能800〜804を保持している場合を示している。この場合、記憶デバイス811とプリントデバイス810は、論理的にはこのCDPSシステムの外部に位置しており、いずれの側に接続されているかは確定していない。
【0046】
本実施の形態のCDPSでは、DSC3012とPDプリンタ装置1000が物理的かつ論理的に接続された後、DSC3012及びPDプリンタ装置1000両方のCDPS初期化(CDPS Initialize)800が対話を行って、他の3機能801〜803及び記憶デバイス811、プリントデバイス810の処理機能のそれぞれを、DSC3012或いはPDプリンタ装置1000のいずれが担当して管理するかを決定することを特徴としている。
【0047】
図11は、本実施の形態におけるCDPSでの機能分担(機能割当て)処理を説明するフローチャートである。
【0048】
まずステップS11で、DSC3012における機能800〜803のそれぞれのサポートレベルを、DSC3012からPDプリンタ装置1000に通達する。次にステップS12に進み、PDプリンタ装置1000は、DSC3012から受信した各機能のサポートレベルと、PDプリンタ装置1000自身のサポートレベルとを比較し、よりユーザビリティの高い機能がDSC3012とPDプリンタ装置1000のいずれに実装されているかを判定し、各機能をいずれで分担するかを決定する。そしてステップS13に進み、その決定した各機能の担当情報と管理情報をDSC3012に通達する。そしてステップS14に進み、DSC3012とPDプリンタ装置1000のそれぞれにおいて、各機器が担当するように決定された各機能を起動し、ステップS15で手順CDPSを開始する。
【0049】
尚、ここで「拡張手順」を実行する場合には、ステップS12の時点で、DSC3012とPDプリンタ装置1000が拡張手順のサポートをしている事が判明し、その後のやりとりは各ベンダ固有となるのでここでは説明しない。
【0050】
また、各機能が必ずしも、DSC3012とPDプリンタ装置1000の両方でサポートされている必要が無いが、少なくともDSC3012或いはPDプリンタ装置1000のいずれかでサポートされている必要がある。特に、CDPS初期化800に関しては、仮にDSC3012がCDPS初期化800をサポートしていなくても、インターフェースの接続状況によってはPDプリンタ装置1000のCDPS初期化800によって、このシステムはCDPSモードに移行することが可能である。
【0051】
[CDPS構成例−1]
図12は、USB上でイメージクラス(Image Class)のPTP(Picture Transfer Protocol)で、DSC3012とPDプリンタ装置1000とを接続した場合のCDPSの構成例1を説明する図で、前述の図8及び図10と共通する部分は同じ記号で示し、それらの説明を省略する。尚、ここでは、液晶表示部2700が設けられているDSC3012と、液晶ビューワ1011が取付けられていないPDプリンタ装置1000とを接続した場合で説明する。即ち、この例では、DSC3012には、CDPS初期化800、操作制御801及び記憶制御802が存在しており、PDプリンタ装置1000は、図10のような機能構成を備えているものとする。
【0052】
ここではまず、PDプリンタ装置1000のCDPS初期化800が、DSC3012のCDPS初期化800との間で、各機能の分担及び管理について情報交換をしようとする。これに対してDSC3012は、操作制御801及び記憶制御802の機能をサポートしている旨(液晶表示部2700有り等)を伝える。これによりPDプリンタ装置1000のCDPS初期化800は、PDプリンタ装置1000の操作制御801及び記憶制御802のサポートレベル(液晶ビューワ1011無し、等)と比較し、以下の様にシステム構成を決定する。そして、PDプリンタ装置1000のCDPS初期化800に対して、「CDPS移行可」と返答し、かつDSC3012に下記のような機能分担の決定内容を通達する。
(1)操作制御801、記憶制御802は、DSC3012が担当及び管理する。
(2)PDプリンタ装置1000は、プリント制御803を担当、管理する。
(3)記憶デバイス811はDSC3012にあり、DSC3012の記憶制御802が、この記憶デバイス811を管理する。
(4)プリントデバイス810(プリンタエンジン3004)はPDプリンタ装置1000にあり、PDプリンタ装置1000のプリント制御803が印刷処理を管理する
尚、上述した処理は、無線LAN(Wireless LAN)のTCP/IP等の他のインターフェースを介して接続された場合でも同様に行われる。
【0053】
[CDPS構成例−2]
図13は、USB上でイメージクラス(Image Class)のPTP(Picture Transfer Protocol)で、DSC3012とPDプリンタ装置1000とを接続した場合のCDPSの構成例2を説明する図で、前述の図8及び図10と共通する部分は同じ記号で示し、それらの説明を省略する。尚、ここでは、液晶表示部2700が設けられていないDSC3012と、液晶ビューワ1011が取付けられているPDプリンタ装置1000とを接続した場合、或いはDSC3012がCDPS初期化800を備えていない例で説明する。なお、PDプリンタ装置1000は、図10のような機能構成を備えているものとする。
【0054】
PDプリンタ装置1000のCDPS初期化800が、DSC3012のCDPS初期化と各機能の分担及び管理について情報交換をしようとした場合について考えると、DSC3012はCDPS初期化を有していないのでそれに応答できない。そこで、PDプリンタ装置1000のPTP Wrapper層が、以下の様にシステム構成を決定して、PDプリンタ装置1000のCDPS初期化800に対して「CDPS移行可」と応答する。
(1)操作制御801、記憶制御802及びプリント制御803は、いずれもPDプリンタ装置1000が担当及び管理する。
(2)記憶デバイス811はDSC3012に有り、標準のPTPでPDプリンタ装置1000の記憶制御802が、この記憶デバイス811への画像アクセスを管理する。
(3)プリントデバイス810はPDプリンタ装置1000にあり、PDプリンタ装置1000のプリント制御803がこれを管理する。
【0055】
尚、このような場合は、DSC3012がCDPS初期化800を有していない場合に限らず、DSC3012が例え表示器2700を有していても、その解像度や操作性が、PDプリンタ装置1000のビューワ1011やそのビューワ1011を使用したUIに比べて劣ると、PDプリンタ装置1000のCDPS初期化800が判断した場合も同様に図13に示すような構成となる。
【0056】
[CDPS構成例−3]
図14は、MSC(Mass Storage Class)での接続時のCDPSの構成例3を説明する図で、前述の図8及び図10と共通する部分は同じ記号で示し、それらの説明を省略する。尚、この例は例えば、液晶表示器2700が無いDSC3012をMSCで液晶ビューワ1011を装着したPDプリンタ装置1000と接続した例で説明する。
【0057】
この場合には、PDプリンタ装置1000のCDPS初期化800がDSC3012のCDPS初期化800と、各装置における各機能の分担及び管理について情報交換をしようとする。しかし、標準バルクオンリーのMSCでは、DSC3012と双方向の情報のやり取りが極めて困難である。そのため、PDプリンタ装置1000のMass Storage Class Wrapper層820が、以下の様にシステム構成を決定して、PDプリンタ装置1000のCDPS初期化800に対して「CDPS移行可」と応答する。
(1)操作制御801、記憶制御802及びプリント制御803は、いずれもPDプリンタ装置1000が担当して管理する。
(2)記憶デバイス811はDSC3012にあり、標準のMSCでPDプリンタ装置1000の記憶制御802が管理する。
(3)プリントデバイス810はPDプリンタ装置1000にあり、PDプリンタ装置1000のプリント制御803がプリントデバイス810を管理する。
【0058】
[CDPS出力手順]
本実施の形態に係るCDPSにおける出力手順は、以下の2通りを有している。
【0059】
<標準手順>
本実施の形態に係るCDPSでは、下記の機能及び情報に従う手順が定義されている。
・CDPS初期化(CDPS Initialize)機能
・操作制御(Operation Controller)機能
・記憶制御(Storage Controller)機能
・プリント制御(Print Controller)機能
・サービスディスカバー(Service Discover)情報
・サービス(Service)情報
・ジョブ(Job)情報
・ジョブデータ(Job Data)情報
<拡張手順>
各ベンダ固有の仕様に基づく各種フォーマットの出力にも対応可能な手順が下記のそれぞれに対して定義されている。
・XHTML
・SVG
・固有フォーマット
[CDPS機能説明]
本実施の形態のCDPSでは、DSC3012とPDプリンタ装置1000の双方のPTPの上位層で任意にアプリケーションを扱えるよう、即ち、DSC3012とPDプリンタ装置1000間の機能(例えば印刷するにはオブジェクトの受け渡し等、様々なPTPプロトコルのやり取りが必要)をモデリングするために、図15A,15Bに示すようなプリントサービス機能を設けた。上述の図7のアプリケーション層700,703では、基本的には図15A,15Bに示すプリントサービス機能を用いることによりダイレクトプリントを行うことができる。尚、このプリントサービス機能には必須機能(図15A)とオプション機能(図15B)とがあり、CDPSをサポートする装置は、この内の必須機能を全て用意する必要がある。
【0060】
図15A,15Bは、本実施の形態に係るCDPSにおけるサービス機能の一覧を示す図である。以下、順次これらの機能について説明する。
(a) CDPS_ServiceDiscovery(サービスディスカバリ)
CDPSへの移行を行う機能である。この戻り値はスクリプトで、CDPSの手順「標準」或いは「拡張」が指示されており、いずれの手順が選択されたかを受信する。尚、「拡張」手順時は、CDPS_ServiceDiscovery機能のみが使用される。
(b) CDPS_Service(印刷制御803→操作制御801)
PDプリンタ装置の機能を記載したスクリプトをパラメータとして通知する。PDプリンタ装置の機能を記載したスクリプトを引数とし、その戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(c) CDPS_PageStart(印刷制御803→操作制御801)
プリント開始を通知(1ページ毎)する。パラメータは、プリント機能を記載したスクリプトで、その戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(d) CDPS_PageEnd(印刷制御803→操作制御801)
プリント終了を通知(1ページ毎で排紙時)する機能である。パラメータは、プリント機能を記載したスクリプトで、その戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(e) CDPS_JobEnd(印刷制御803→操作制御801)
プリントジョブの終了を通知する。パラメータは、プリント機能を記載したスクリプトで、その戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(f) CDPS_Error(印刷制御803→操作制御801)
エラー(Warning/Fatal)を通知する機能である。パラメータは、プリント機能を記載したスクリプトで、その戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(g) CDPS_JobData(印刷制御803→記憶制御802)
記憶デバイス811からJPEG等のイメージを取得する機能である。取得する画像データのハンドル名を記載したスクリプトを引数とし、戻り値は取得した画像データのバイト数と画像データそのものである。
(h) CDPS_DataList(操作制御801→記憶制御802)
記憶デバイス811からJPEG等の画像情報のリストを取得する機能である。PDプリンタ装置1000の機能を記載したスクリプトを引数とし、その戻り値は画像データのリストを記載したスクリプトである。
(i) CDPS_Job(操作制御801→印刷制御803)
プリント命令を通知する機能である。プリント命令を記載したスクリプトを引数とし、戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(j) CDPS_JobAbort(操作制御801→印刷制御803)
プリント中止命令を通知する機能である。プリンタの機能を記載したスクリプトを引数とし、戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
(k) CDPS_JobContinue(操作制御801→印刷制御803)
プリント再開命令を通知する機能である。プリンタの機能を記載したスクリプトを引数とし、戻り値は通信の結果、即ち、通信の成否(“TRUE” or “FALSE”)を示す。
【0061】
以上がCDPSにおける必須機能である。
【0062】
本CDPSは、更に、図15Bに示すように、オプション機能として、CDPS_PartialJobData機能を備えている。
【0063】
このCDPS_PartialJobData(印刷制御803→記憶制御802)は、記憶デバイス811からJPEG等の画像データを取得する機能である。取得した画像データのハンドル名を記載したスクリプトを引数とし、その戻り値は、取得した画像データのバイト数と画像データそのものである。
【0064】
[スクリプトのフォーマットの説明]
以下、上述のサービスディスカバリ(CDPS _ServiceDiscovery)に使用するスクリプトの内容、及び、それ以外の機能で使用するスクリプトのフォーマットについて説明する。
【0065】
<各種機能コマンドの書式>
(1)サービスディスカバリ(CDPS_ServiceDiscovery)のスクリプトの書式
サービスディスカバリ(CDPS_ServiceDiscovery)に使用するスクリプトの内容(UniCodeで記述する)で、CDPSモードに移行する際に使用する。これにより互いのキーワードを認識し合う。
【0066】
CanonDirectPrintService(UILevel=X) (デバイス情報で、UIレベル情報(X)は0から4)
CanonDirectPrintService(HostUI) (ホスト(PDプリンタ装置)のUIを使用する場合)
或いは
CanonDirectPrintService(DeviceUI) (デバイス(DSC)側のUIを使用する場合)
(2)CDPS_PageStart,CDPS_PageEnd,CDPS_JobEnd,CDPS_DataList、CDPS_JobAbort,CDPS_JobContinueにおけるスクリプトの書式
<?XML version="1.0" encoding="UTF-16"?>
<!ELEMENT command ( "CDPS_PageStart" | "CDPS_PageEnd" | "CDPS_JobEnd" | "CDPS_JobAbort" | "CDPS_JobContinue" )>
(3)CDPS_Serviceのスクリプトの書式

Figure 0004367902
(4)CDPS_Jobのスクリプトの書式
Figure 0004367902
(5)CDPS_Errorのスクリプトの書式
<?XML version="1.0" encoding="UTF-16"?>
<command ( "CDPS_Error")>
<!ELEMENT status ( "fatal" | "warning" )>
<!ELEMENT reason ( "printer_occupied" | "printer_busy" | "ink_low" | "lever_error" | "load_error" | … )>
なお、ここで「status」は、このエラーが、ジョブに復帰できるエラーか否かを記載する。例えば、"fatal"は復帰不能、"warning"は復帰可能を示す。また「reason」は、そのエラー原因を記載する。
(6)CDPS_JobData,CDPS_PartialJobDataのスクリプトの書式
<?XML version="1.0" encoding="UTF-16"?>
<!ELEMENT command ( "CDPS_JobData" | "CDPS_PartialJobData" )>
<image (#PCDATA )>
<offset (#PCDATA )>
<size (#PCDATA )>
尚、ここで「image」はファイルのハンドル名を記載し、「offset」は先頭からのオフセットのバイト数を記載し、「size」は取得する画像データのバイト数を記載する。但し、CDPS_JobDataの場合、オプション機能の部分取得を用いない場合は、これら「offset」及び「size」は無効である。
【0067】
<Capabilityのフォーマット>
CDPS_Service機能およびCDPS_Job機能で用いられる<capability>の書式を以下に示す。
【0068】
Figure 0004367902
但し、「quality」は印刷品位を表し、「速い(draft)」、「普通(normal)」、「綺麗(finw)」を指定する。「paper_size」は用紙サイズ(L,2L,カード、4x6,A4、レターサイズ等)を表し、「paper_type」は用紙種類を表し、「普通紙(plain)」、「写真専用紙(photo)」を指定する。
【0069】
Figure 0004367902
但し、「image_type」は、サポートしている画像フォーマットを表す。「date」は日付印刷のオン/オフを表わしている。「file_name」は、ファイル名の印刷のオン/オフを表し、「image_ooptimize」は、画像補正のオン/オフを表わしている。「size_per_page」は、読み込み可能な画像データのサイズを表し、「layout」は各種用紙種類に対して可能なレイアウトを表す。
【0070】
Figure 0004367902
尚、この「option」で囲まれた部分は、各ベンダーに固有のPrinter Capabilityを表し、ここにはベンダー名と共に記載する。
【0071】
<Jobフォーマット>
CDPS_Job機能で用いられる<job>の書式を以下に示す。
【0072】
Figure 0004367902
但し、上記「capability」で囲まれた部分は、以下に続く画像の印刷設定を表している。また、「printlist」で囲まれた部分は、このジョブ内で印刷する画像及び付加情報(日付、ファイル名)などを表わしている。
【0073】
<Jobフォーマットの具体例>
次に、このJobフォーマットの具体例を説明する。
(A)L版の写真用紙にHandle1の画像を日付を入れてフチなしで印刷する。
【0074】
Figure 0004367902
(B)L版の写真用紙に2×2のレイアウトでハンドル1〜6の6つの画像を印刷する。
【0075】
Figure 0004367902
[CDPSの「標準」手順の流れの説明]
図16は、本実施の形態に係るCDPSの基本的な処理の流れを説明する図で、ここでは上述した機能800乃至803の間で送受信されているCDPS機能を上から下方向に時系列的に表記してある。図中、破線上「A」「B」「C」「D」で記述されている場所は、代表的と思われる機能分担の切り分け個所を示している。また前述の図8と共通する部分は同じ記号で示し、それらの説明を省略する。
【0076】
前述のCDPS初期化800により、CDPSモードへの移行がPDプリンタ装置1000からDSC3012に通達されると(804)、これに応答してDSC3012から、DSC3012がサポートしているレベル(「標準」、「拡張」、及びサポートしている機能)がPDプリンタ装置1000に知らされる(821)。これに基づいてPDプリンタ装置1000は、上述した機能800〜803のそれぞれをDSC3012或いはPDプリンタ装置1000のいずれで実施するかを決定し、その結果をDSC3012に伝える(822)。
【0077】
823は、操作制御801から記憶制御802に対する、記憶デバイス811に記憶されている画像データのデータリストの要求を示しており、824はそれに応答して、記憶制御802が記憶デバイス811から読み出したデータを示している。これにより805で、記憶制御802から操作制御801に対してリストデータが送られ、ユーザ812の操作により、825で、印刷モードや印刷したい画像が選択されてプリントジョブが作成され、操作制御801に知らされる。これにより操作制御801からプリント制御803に対して、作成されたUIメニューを使用して入力されるユーザ812の指示に基づいて、出力設定指示書「CDPS_Job」808を作成してプリント制御803に通達する。そして826では、プリント制御803から記憶制御802に対して、その画像データが要求される。これにより記憶デバイス811から画像データ827が読み出され、印刷に必要な画像ファイル「Job Data」806が記憶制御802からプリント制御803に送られる。これによりプリント制御803において画像処理等が実行されて印刷データが作成され、プリントデバイス810に対して、その印刷データ828が送られて印刷が実行される。
【0078】
ここで、もし印刷中にエラーが発生した場合には、エラー情報829がプリント制御803から操作制御801に送られる。このエラーに対してユーザ812が「印刷中止」或いは「印刷続行」を指示すると(831)、それに対応して、例えば「印刷中止」指令830が操作制御801からプリント制御803に送られる(このコマンドは図15Aに示される)。そしてプリント制御803から操作制御801に対してプリントジョブの終了が通知される(832)。
【0079】
図17は、DSC3012が操作制御801と記憶制御802とを受け持ち、PDプリンタ装置1000がプリント制御803を受け持つ場合を説明する図である。この場合の機能の切り分け位置は、前述した図16の「C」で示す位置となる。なお、この例はPTPの場合で示しているが、TCP/IP等の他の接続でも、DSC3012の操作制御801、記憶制御802を用いた場合には同様となる。
【0080】
この場合には、PDプリンタ装置1000は822において、機能800〜803の内、操作制御801と記憶制御802をDSC3012で実施し、プリント制御803をPDプリンタ装置1000で実行するように伝える。これにより、DSC3012とPDプリンタ装置1000との間での機能分担が図17のように決定される。
【0081】
図18は、DSC3012の記憶デバイス811をMass Storageとして扱い、PDプリンタ装置1000が操作制御801、記憶制御802及びプリント制御803を受け持つ場合を説明する図である。この場合の機能の切り分け位置は、前述した図16の「A」で示す位置となる。なお、この例はPTPの場合で示しているが、TCP/IP等の他の接続でも、DSC3012の操作制御801、記憶制御802を用いた場合には同様となる。
【0082】
この場合には、PDプリンタ装置1000は822において、機能800〜803のの全ての機能をPDプリンタ装置1000で実行するように伝える。これにより、DSC3012とPDプリンタ装置1000との間での機能分担が図18のように決定される。
【0083】
尚、PTP等の他の接続でも、DSC3012の有しているリソースを全く用いない場合には同様となる。また、DSC3012がCDPS初期化機能800(CDPS Initialize)を有していない(CDPSに対応していない機種)場合も同様となる。
【0084】
以下、上述したCDPSにおけるサービス機能のコマンドをPTPにより実施した場合の例を説明する。
【0085】
[プリントサービス機能のPTPによる実現例]
<CDPSサービスディスカバリ(CDPS_ServiceDiscovery)機能>
図19はCDPSサービスディスカバリー機能の手順を説明する図である。
【0086】
PDプリンタ装置1000とDSC3012とが物理的に接続されてPTPによる通信が可能になると、まず1400で、PDプリンタ装置1000からDSC3012に対してGetDeviceInfoが送信され、DSC3012に対して、その保持しているオブジェクトに関する情報が要求される。これに対してDSC3012は、DeviceInfo Datasetにより、DSC3012に保持しているオブジェクトに関する情報をPDプリンタ装置1000に送信する。次に1402で、OpenSessionにより、DSC3012をリソースとして割り当て、必要に応じてデータオブジェクトにハンドルをアサインしたり、特別な初期化を行うための手順の開始要求が発行される。これに対してDSC3012から肯定応答(OK)が返送されるとPTPでの通信が開始される。次に1403で、DSC3012に対してスクリプト形式の全てのハンドルを要求する(Storage ID: FFFFFF, Object Type: Script)と、これに対して1404で、DSC3012に保持されている全てのハンドルリストが返送される。次に1405,1406において、PDプリンタ装置1000からi番目のオブジェクトハンドルの情報を取得する。ここで、このオブジェクトに、DSC3012の識別を示すキーワード(例えば「山」)が含まれていると、次に1407において、PDプリンタ装置1000からオブジェクト情報の送信を指示して(SendObjectInfo)、それに対して肯定応答(OK)を受信すると、SendObjectにより、オブジェクト情報をPDプリンタ装置1000からDSC3012に対して送信する。ここで、このオブジェクトには、前述のキーワードに対する応答キーワード(合言葉)として例えば「川」が含まれている。
【0087】
このようにして、PDプリンタ装置1000とDSC3012の双方が互いに接続相手を認識できることになり、これ以降はCDPSによる手順に移行することができる。このようにファイルの受渡しができるトランスポートレイヤーであればキーワードの受渡しを確実に行うことができる。即ち、本実施の形態のCDPSにユニークなコマンド等を追加することなく、キーワードを交換することができる。尚、ここでキーワードとしては、上述の例に限定されるものでなく、同じキーワードであっても良い。またこのキーワードによるネゴシエーションを行う時間を短縮するために、スクリプト形式のハンドルの最初(i=1)にこのキーワードを入れておくことにより、互いの機器を確認するのに要する時間を短縮できる。
【0088】
図20は、CDPS_ServiceDiscoveryの手順の続きを説明する図である。
【0089】
ここではまず1501で、PDプリンタ装置1000がサポートしている手続「標準手順」、「拡張手順」をDSC3012に通知するためにSendObjectInfoにより、DSC3012に対して送信したいオブジェクト情報があることを伝える。これに対して肯定応答(OK)がDSC3012から送られてくると、1502でSendObjectによりオブジェクトを送信する旨をDSC3012に伝え、次の1503のObjectDataで、このPDプリンタ装置1000がサポートしている手続に関する情報(「標準」/「拡張」)を送信する。次に1504で、DSC3012からPDプリンタ装置1000に対して、GetObject動作を起動したい(プッシュモードに移行)旨を伝える。これにより1505で、PDプリンタ装置1000からオブジェクト情報に関する情報を受信する旨が伝えられると(GetObjectInfo)、1506で、ObjectInfo Datasetにより、DSC3012からPDプリンタ装置1000に対してオブジェクトの情報が通知され、1507で、そのオブジェクト情報を指定してオブジェクト情報そのものが要求されると、Object Datasetにより、DSC3012が使用する手続(「標準」、「拡張」等)をPDプリンタ装置1000に知らせる(1508)。
【0090】
これにより、DSC3012からPDプリンタ装置1000に対して、画像の印刷モードを指定することができる。
【0091】
<CDPS_Service (標準)>
図21は、本実施の形態に係るCDPSにおけるプリンタ機能の通知手順を説明する図である。
【0092】
この手順では、1600において、PDプリンタ装置1000からDSC3012に対して送信したいオブジェクト情報があることを伝え、SendObjectとObjectDataにより、DSC3012に対してプリンタ1000の機能を通知する。
【0093】
<CDPS_JobData (標準)>
図22は、本実施の形態に係るCDPSにおける、PDプリンタ装置1000がDSC3012に保持されている画像データ(JPEG画像)を取得する場合(CDPS_JobData)の通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0094】
まず1800で、DSC3012(或いはストレージ)が保持しているオブジェクトに関する情報を要求すると、1801で、そのオブジェクトに関する情報(Object Dataset)がDSC3012からPDプリンタ装置1000に送られる。次に、1802で、そのオブジェクトを指定して取得要求(GetObject)を発行すると、1803で、その要求された画像ファイル(Object Dataset)がDSC3012からPDプリンタ装置1000に対して送信される。この様にしてPDプリンタ装置1000は、DSC3012から所望の画像ファイルを取得することができる。なお、この場合の戻り値は、「Data_Size」と「Image_Data」である。
【0095】
<CDPS_PageStart (標準)>
図23は、本実施の形態に係るCDPSにおけるプリント開始通知処理の手順を説明する図である。
【0096】
この手順では、1700において、PDプリンタ装置1000からDSC3012に対して送信したいオブジェクト情報(印刷開始通知)があることを伝え、1701で、SendObjectとObjectDataにより、DSC3012に対してプリント開始を通知する。
【0097】
<CDPS PageEnd (標準)>
図24は、本実施の形態に係るCDPSにおける、PDプリンタ装置1000からDSC3012に対して、1ページのプリント処理を通知する通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0098】
この手順では、1910において、PDプリンタ装置1000からDSC3012に対して送信したいオブジェクト情報(印刷終了通知)があることを伝え、1911で、SendObjectとObjectDataにより、DSC3012に対して1ページのプリント終了を通知する。
【0099】
<CDPS_JobEnd (標準)>
図25は、本実施の形態に係るCDPSにおける、PDプリンタ装置1000からDSC3012に対して、プリントジョブが終了したことを通知する通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0100】
1910で、PDプリンタ装置1000からDSC3012に対して1ページ印刷処理が終了したことが通知され、1911で、PDプリンタ装置1000からDSC3012に対して印刷ジョブが終了したことが通知される。
【0101】
<CDPS Error (標準)>
図26は、本実施の形態に係るCDPSにおける、PDプリンタ装置1000からDSC3012に対してエラー状態などを通知する通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0102】
まず1900で、PDプリンタ装置1000からDSC3012に対して送信したいオブジェクト情報(エラー情報)がある旨をSendObjectInfoにより通知する。DSC3012からの肯定応答(OK)に対して、PDプリンタ装置1000におけるエラー等のステータス情報をSendObjectおよびObjectDataにより送信する(1902)。
【0103】
<CDPS Job (標準)>
図27は、本実施の形態に係るCDPSにおける、DSC3012(操作制御)からPDプリンタ装置1000に対して、プリントジョブの開始を通知する通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0104】
まず2200において、DSC3012からPDプリンタ装置1000に対してRequestObjectTransferを送り、DSC3012が指示書を発行したい旨を通知する。これにより2201で、PDプリンタ装置1000からGetObjectInfoが発行されると、DSC3012は送信したいオブジェクト情報に関する情報を送信し、これに対してPDプリンタ装置1000からオブジェクト情報が要求されると(GetObject:2203)、2204で、Object Dataset(プリント指示書)を送信して、DSC3012からPDプリンタ装置1000に対して印刷命令を発行する。
【0105】
<CDPS_JobAbort (標準)>
図28は、本実施の形態に係るCDPSにおけるDSC3012(操作制御)からPDプリンタ装置1000(印刷制御)に対してプリント中止命令(CDPS_JobAbort)を発行する通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0106】
<CDPS_JobContinue (標準)>
図29は、本実施の形態に係るCDPSにおける、DSC3012(操作制御)からPDプリンタ装置1000(印刷制御)に対してプリント再開命令(CDPS_JobContinue)を発行する通信手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【0107】
図28及び図29において、図27と同様の手順実行後、図28の2301で、DSC3012からPDプリンタ装置1000に対して印刷中止指示書が発行され、図29の2401では、DSC3012からPDプリンタ装置1000に対して印刷継続指示書が通知される。
【0108】
<CDPS_PartialJobData (標準)>
図30は、本実施の形態に係るCDPSにおける、PDプリンタ装置1000(印刷制御)がDSC3012(ストレージ)に保持されている画像データ(JPEG画像)を取得する場合の部分画像の取得通信手順(オプション)をPTPアーキテクチャを用いて実現した例を説明する図である。
【0109】
まず1920で、DSC3012が保持しているオブジェクトに関する情報を要求すると、1921で、そのオブジェクトに関する情報(Object Dataset)がDSC3012からPDプリンタ装置1000に送られる。次に、1922で、そのオブジェクトを指定して取得要求(GetObject)を発行する。尚、この部分画像取得機能は、前述したように、所望の画像データの先頭からバイト数(offset)と、取得したい画像データのバイト数(size)が指示されているので、1923では、その要求された画像ファイル(Object Dataset)の部分画像データがDSC3012からPDプリンタ装置1000に対して送信される。この様にしてPDプリンタ装置1000は、DSC3012から所望の部分画像データを取得することができる。なお、この場合の戻り値は、「Data_Size」と「Image_Data」である。
【0110】
図31は、本実施の形態に係るCDPSにおける、PDプリンタ装置1000(印刷制御)がDSC3012(ストレージ)に保持されている画像データ(JPEG画像)を取得する部分画像取得機能を受信した場合のDSC或いはストレージにおける処理を説明するフローチャートである。
【0111】
まずステップS21で、<image (#PCDATA )>に含まれる画像ファイルのハンドル名を取得し、次にステップS22に進み、「offset」により、先頭からのオフセットのバイト数を取得し、次にステップS23では、「size」により、取得する画像データのバイト数を取得する。こうしてステップS24に進み、記憶デバイス811の、指定された画像ファイルのオフセット位置から、指定されたバイト数の画像データを読込む。そしてステップS25に進み、その読み出した部分画像データを、要求元であるPDプリンタ装置1000或いは印刷制御803に送出する。
【0112】
以上説明した様に、PTPアーキテクチャ上でPDプリンタ装置1000がDSC3012の保持する画像の部分画像取得を行う場合には、PDプリンタ装置が「画像ファイルのハンドル」、「先頭からのオフセットバイト数」及び「取得する部分画像データのバイト数」がパラメータとして記述されたPTPオペレーション「GetPartialObject」を発行する。DSC3012は前記PTPオペレーションのパラメータに基づいて要求された部分画像データ部分を特定して前記PTPオペレーションの応答としてPDプリンタ装置1000へと送出する事で部分画像データの転送が実現される。
【0113】
以上の説明では、物理層のUSBの上にPTPアーキテクチャを用いた場合で説明したが、以下、それ以外のアーキテクチャを用いた例を説明する。
【0114】
[MSCアーキテクチャ]
ここでは、MSC(Mass Storage Class)を用いた例を説明する。ここでは図7に示すMass Storage ClassのUSBインターフェースが使用される。この場合は、DSC3012のUIを使用せずに、PDプリンタ装置1000のUIを使用する。従って、前述の操作制御801、記憶制御802及び印刷制御803は全てPDプリンタ装置1000に配置されていることになる。そして基本的にはPDプリンタ装置1000のファイルシステムを利用して、画像ファイルのOpen、Read、Close及びディレクトリ操作等(ファイル操作)により、前述したGetJobData及びGetPartialJobData、GetDataList(Fileシステムによる)を実行する。
【0115】
<CDPS_ServiceDiscovery(標準/拡張)>
この場合、PDプリンタ装置1000からDSC3012に対してCDPS_ServiceDiscoveryが送られるが、DSC3012は、前述したCDPS初期化800の機能を有していなくても、それに対して応答がない場合には、PDプリンタ装置1000は自動的に「標準」で受信が確立したことにしてMSC(バルクオンリー)に移行し、操作制御801、記憶制御802及び印刷制御803をPDプリンタ装置1000側とし、CDPS_GetPartialDataを「サポート済み」とする。
【0116】
<CDPS_JobData(標準)>
PDプリンタ装置1000は、プリント命令により指定された画像データを取得する。ここではPDプリンタ装置1000からDSC3012に対して「Receive Command」が発行され、これに応答して画像データ「Image Data」をDSC3012からPDプリンタ装置1000に送信する。実際には、PDプリンタ装置1000に構築されたファイルシステムを介して記憶デバイス811の画像データをSCSIコマンドを用いて取得する。尚、この時の戻り値は、「Data Size」と「Image Data」である。
【0117】
<CDPS_PartialJobData(オプション)>
この手順は上述の「CDPS_JobData」の場合と基本的に同じで、部分的に画像データを取得する点のみが異なる。尚、この場合の戻り値も「Data Size」と「Image Data」である。
【0118】
以上説明した様に、MSCアーキテクチャ上でPDプリンタ装置1000がDSC3012の保持する画像の部分画像取得を行う場合には、PDプリンタ装置が「画像ファイルのハンドル」、「先頭からのオフセットバイト数」、「取得する部分画像データのバイト数」及び「PDプリンタ機器1000のファイルシステム」に基づいて、DSC3012の保持するストレージ中の「読み取り位置(アドレス)」及び「読み取りバイト数」がパラメータとして記述されたSCSIコマンド「Receive」を発行する。DSC3012は前記SCSIコマンドのパラメータに基づいて要求されたデータを前記SCSIコマンドへの応答としてPDプリンタ装置1000へと送出する事で部分画像データの転送が実現される。この場合、PTPアーキテクチャの場合と異なり、DSC3012が受け取るSCSIコマンドのパラメータには「画像ファイルのハンドル」「先頭からのオフセットバイト数」という情報は含まれていないので、DSC3012から見ると、送られてきたSCSIコマンドがCDPS_JobDataに基づいて発行された物なのか、CDPS_PartialJobDataに基づいて発行された物なのかの区別はつかない。
【0119】
[Bluetoothアーキテクチャ]
ここでは、ブルーツース(Bluetooth)を用いた例を説明する。ここでは図7の一番右側のインターフェースが使用される。この実施の形態では、物理層の上位の通信層として2つのデバイス間のセッションを確立して、オブジェクトの送受信等を行うことができる、Bluetooth Still Image Profileを用いて上位のアプリケーションレイヤーの取り決めを記述している。
【0120】
このBluetooth Still Image Profileの場合には、前述の接続に加えて、DSC(Host)→PDプリンタ装置(Slave)の向きの接続をもう一つ形成し、DSCから通常の「PutImage」コマンドを発行することにより情報の発信を行う。尚、ここでは便宜上、
接続1:PDプリンタ装置(ホスト) → DSC(スレーブ)
接続2:PDプリンタ装置(スレーブ) → DSC (ホスト)
とする。
【0121】
以下、このブルーツースにおいて、各サービス機能のプロトコルを説明する。尚、図32乃至図43のサービス機能は、前述の図19乃至図30に示すサービス機能に対応しているので、ここでは簡単に説明する。
【0122】
<CDPS_ServiceDicovery (標準/拡張)>
図32は、ブルーツースにおいて、CDPSへの移行手順のプロトコルを示す。ここでも図19と同様に、キーワード("山"、"川")により接続相手を認識している。またDSC3012は、このキーワードにDSC3012が備えているUIのサポートレベルを通知する。これによりPDプリンタ装置1000は、DSC或いはPDプリンタ装置1000のいずれのUIを使用するかをキーワードに付加してDSC3012に通知する。
【0123】
<CDPS_ServiceDiscovery (標準/拡張)>
図33は、ブルーツースにおいて、CDPSへの移行手順のプロトコルの続きを示す図で、DSC3012とPDプリンタ装置1000との間でのCDPSモードでの通信が確立される。
【0124】
<CDPS_Service (標準)>
図34は、ブルーツースにおいて、PDプリンタ装置の機能の通知手順のプロトコルを示す図で、PDプリンタ装置1000からDSC3012に対して、PDプリンタ装置1000の機能が通知される。
【0125】
<CDPS_JobData (標準)>
図35は、ブルーツースにおいて、PDプリンタ装置1000がプリント命令によりDSC3012から画像データを取得するプロトコルを示す図で、この場合の戻り値は、「Data Size」と「Image Data」である。
【0126】
<CDPS_PageStart (標準)>
図36は、ブルーツースにおいて、PDプリンタ装置1000からDSC3012にプリント開始を通知するプロトコルを示す図である。
【0127】
<CDPS_PageEnd (標準)>
図37は、ブルーツースにおいて、PDプリンタ装置1000からDSC3012に1ページのプリント終了を通知するプロトコルを示す図である。
【0128】
<CDPS_JobEnd (標準)>
図38は、ブルーツースにおいて、PDプリンタ装置1000からDSC3012にプリントジョブの終了を通知するプロトコルを示す図である。
【0129】
<CDPS_Error (標準)>
図39は、ブルーツースにおいて、PDプリンタ装置1000からDSC3012にプリンタのエラーを通知するプロトコルを示す図である。
【0130】
<CDPS_Job (標準)>
図40は、ブルーツースにおいて、DSC3012からPDプリンタ装置1000にプリント命令を発行するプロトコルを示す図である。
【0131】
<CDPS_JobAbort (標準)>
図41は、ブルーツースにおいて、DSC3012からPDプリンタ装置1000にプリント中止命令を発行するプロトコルを示す図である。
【0132】
<CDPS_JobContinue (標準)>
図42は、ブルーツースにおいて、DSC3012からPDプリンタ装置1000にプリント再開命令を発行するプロトコルを示す図である。
【0133】
<CDPS_PartialJobData (オプション)>
図43は、ブルーツースにおいて、PDプリンタ装置1000がプリント命令によりDSC3012から部分画像データを取得するプロトコルを示す図で、この場合の戻り値は、「Data Size」と「Image Data」である。
【0134】
以上説明した様に、ブルーツースアーキテクチャ上でPDプリンタ装置1000がDSC3012の保持する画像の部分画像取得を行う場合には、PDプリンタ装置が「画像ファイルのハンドル」、「先頭からのオフセットバイト数」及び「取得する部分画像データのバイト数」がパラメータとして記述されたブルーツースコマンド「GetParialImage」を発行する。DSC3012は前記ブルーツースコマンドのパラメータに基づいて要求された部分画像データ部分を特定して前記ブルーツースコマンドの応答としてPDプリンタ装置1000へと送出する事で部分画像データの転送が実現される。この転送方法はPTPアーキテクチャ上での実現方法とほぼ同じである。
【0135】
上記のように、PDプリンタ装置1000は、画像提供装置たるDSC3012との通信で用いている通信プロトコルやインターフェースに応じて、部分画像データの要求コマンドをDSC3012に送信している。
【0136】
この際に、画像供給装置から送られる情報は、利用しているインターフェースの種類に関わらず共通にすることが可能になる。つまり、画像供給装置の操作部を操作されて、出力すべき画像及びその出力形態が指示され、その指示された情報(jobデータ)を、出力装置たるPDプリンタ1000が解釈して、インターフェースの種類に応じた部分画像要求コマンドを送信するようにしているからである。
【0137】
このような構成によって、電源能力に乏しいことが予想されるDSC3012等の画像供給装置の変換処理負荷を軽減させることが出来る。一方、PDプリンタ1000等の出力装置においては、自己の出力能力や出力状況に応じて部分画像要求をする為には、出力装置側でjobデータを変換して部分画像要求を発生させる方が、システムの制御がしやすい。
【0138】
なお、ブルーツースアーキテクチャ上ではPTPアーキテクチャ及びMSCアーキテクチャと異なり、DSC3012からPDプリンタ機器1000への方向のデータ転送要求(PutImage)をDSC3012側から発行する事が可能なので、次の様な実現方法を用いる事も出来る。この例を以下に示す。尚、左から右への矢印は、PDプリンタからDSCへのデータの流れを示し、右から左への矢印は、DSCからPDプリンタへのデータの流れを示している。
【0139】
Figure 0004367902
【0140】
まず、PDプリンタ機器1000はCDPS_PartialJobDataを、他のCDPSコマンド(例:CDPS_PageStart)の様にスクリプトのまま「PutImage」を発行してDSC3012に送付する。CDPS_PartialJobDataのスクリプトを受け取ったDSC3012はスクリプト中に記載された「画像ファイルのハンドル」、「先頭からのオフセットバイト数」及び「取得する部分画像データのバイト数」に基づいて要求されたデータを特定し、ブルーツースコマンド「PutImage」を発行してPDプリンタ装置1000へと送出する事で部分画像データの転送が実現される。
【0141】
ここまで説明したPTP、MSC、ブルーツースの3種類のアーキテクチャそれぞれにおいて、CDPS_JobData及びCDPS_PartialJobDataの処理はそれぞれに応じた好適な実現方法が存在するが、アプリケーション層から見れば、発行するCDPSコマンド、応答として帰ってくる情報、取得するデータは全て同じなのでアプリケーション層は共通で利用する事が可能となる。また、他のアーキテクチャにCDPSを移植する場合にはそのアーキテクチャの特性に合わせた好適な実現方法がありうる。
【0142】
実際に複数のアーキテクチャをサポートしているPDプリンタ機器1000がどのアーキテクチャを利用してCDPS処理を行うかは、接続されるDSC3012のサポートしているアーキテクチャによって決まる。また逆に、実際に複数のアーキテクチャをサポートしているDSC3012がどのアーキテクチャを利用してCDPS処理を行うかは、接続されるPDプリンタ機器1000のサポートしているアーキテクチャによって決まる。仮にPDプリンタ機器1000及びDSC3012の両方が複数のアーキテクチャをサポートしていた場合には、いずれかの機器のUIを用いてユーザに使用するアーキテクチャを決定する、又はいずれかの機器の実装において使用するアーキテクチャの優先順位を定めておく、などとすれば良い。
【0143】
図44A〜図44Cは、図11のフローチャートにおいて、上述した各種制御機能(操作制御801、記憶制御802及びプリント制御803)をどのように分担するかを決定するための基準となるDSC3012及びPDプリンタ装置1000それぞれのサポートレベルを説明するための図で、図44Aは操作制御801のサポートレベルを示し、図44Bは記憶制御802のサポートレベル、そして図44Cは、プリント制御803のサポートレベルをそれぞれ示している。ここでDSC3012は、レベル「0」〜「4」のサポートレベルの設定が可能であり、PDプリンタ装置1000は、レベル「1」〜「3」のサポートレベルの設定が可能である。もしここで、DSC3012とPDプリンタ装置1000とが同じサポートレベルの場合は、いずれの機能を優先するかは、判断する側の裁量に任せるものとする。
【0144】
例えば図44Aの操作制御801のサポートレベルにおいては、レベル「4」はDSC3012の機能を使用するように主張するレベル、レベル「3」はビューワと操作ボタンを備えていることを示している。レベル「2」は操作ボタンのみ、レベル「1」は最小限の機能しか有していないことを示し、レベル「0」は、その機能をサポートしていないことを示している。
【0145】
また図44Bの記憶制御802のサポートレベルにおいては、レベル「4」はDSC3012の機能を使用するように主張するレベル、レベル「3」はハンドル機能を備えていることを示している。レベル「2」は画像ファイルシステムを有し、レベル「1」は記憶デバイス811にアクセスできる機能しか有していないことを示し、レベル「0」は、その機能をサポートしていないことを示している。
【0146】
更に図44Cの印刷制御803のサポートレベルにおいては、レベル「4」はDSC3012の機能を使用するように主張するレベル、レベル「3」はレンダリング機能を備えていることを示している。レベル「2」は階調処理のみ、レベル「1」はJPEGの復号機能しか有していないことを示し、レベル「0」は、その機能をサポートしていないことを示している。
【0147】
この様にして示されるPDプリンタ装置1000及びDSC3012のそれぞれの機能を比較し、各機能毎に、いずれの機能を使用すると最も効率が良いかを判断して、前述の図12乃至図14,及び図17,図18に示すような機能分担が実施される。
【0148】
なお本発明は、複数の機器(例えばホストコンピュータ、インターフェース機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0149】
また、本発明の目的は、前述した実施形態の機能(カメラ側で行われる処理、プリンタ側で行われる各種印刷処理)を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0150】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0151】
以上説明したように本実施の形態によれば、PDプリンタ装置をUSBホストに、DSCをスレーブに設定し、印刷動作に入る前に、PDプリンタ装置とDSCとの間でフォトダイレクト印刷に必要な機能を分担させ、最適な、或いはDSC側の所望の印刷モードを決定して印刷を行わせることができる。また、機能分担の際、例えばDSC3012がCDPS自体をサポートしていなかった場合、図11中のステップS11で、DSC3012における機能800〜803のそれぞれのサポートレベルをPDプリンタ装置1000に通達する事自体が不可能である。その場合であっても、DSC3012の各機能800〜803のそれぞれのサポートレベルを0と見做し、それら機能800〜803を全てPDプリンタ装置1000側でサポートする様にすれば、CDPS非対応のDSC3012との間でも、実質的にCDPSのリソースを共通利用してダイレクトプリントを行う事が可能となる。この「サポートレベルを0と見做す」という処理は図7中のいずれの階層で実現しても構わない。
【0152】
リソースを共通利用する事により、対応機器及び非対応機器両者とのダイレクトプリント実現において、開発期間短縮・コスト削減・リソース削減・信頼性の向上等の効果が期待できる。
【0153】
また、本実施の形態では、PDプリンタ装置をUSBホストに、DSCをスレーブに設定したが、特にこの組み合わせに拘る必要は無く、本発明の主旨である機能分担が好適に行われるのであればいずれの機器がホスト・スレーブを担当しても構わない。
【0154】
また、本発明においてCDPSでの機能分担処理時にユーザビリティの高い方を判定する行為を行う機器はPDプリンタ装置1000に限るわけではなく、DSC3012が行っても良い。
【0155】
更には、CDPSでの機能分担処理は、機能800〜803のそれぞれのユーザビリティの比較という手法に限るわけではなく、機能800〜803内の複数の機能をまとめた機能群毎に行っても良い。
【0156】
例えば図16中の切り分け位置A〜Dの内、どの切り分け位置にPDプリンタ機器1000が対応可能かどうかをDSC3012へ伝達し、DSC3012が最終的にどの切り分け位置で接続するかを決定し、PDプリンタ機器1000へ伝達しても良い。
【0157】
また、所定の切り分け位置決定方法(例:PDプリンタ機器1000の希望位置が優先される、等)を予めPDプリンタ機器1000及びDSC3012で共有しておき、両機器がそれぞれの機器が対応可能な切り分け位置を相手機器へ伝達し、共有する切り分け位置決定方法に従って決定された切り分け位置を共有する手法を用いても良い。この場合、図16のA〜Dのような機能の並び順を、各装置で共有しておく必要がある。
【0158】
また、本実施の形態では機能800〜803の4種類で説明したが、この4種類の区切りに限る訳ではなく、機能800〜803の各機能を構成する複数の部分機能毎に部分機能分担処理を行っても良い。例えばプリント制御を構成する部分機能として、画像フォーマットサポート機能、レイアウト印刷機能、日付・ファイル名印刷機能、画像補正機能、サイズ固定印刷機能、画像切りだし印刷機能、印刷ジョブフォーマットサポート機能等がある。
【0159】
以下に各部分機能の機能分担の実施の形態を説明する。
【0160】
[画像フォーマットサポート機能]
まず、PDプリンタ機器1000がサポートしている画像フォーマット(例:JPEG、TIFF等)をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000がサポートしている画像フォーマットについてはPDプリンタ機器1000側が担当し、それ以外の画像フォーマットについてはDSC3012側が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0161】
PDプリンタ機器1000が担当する画像フォーマットの写真画像を出力する場合には、DSC3012は印刷すべき写真画像をPDプリンタ機器1000へ伝達し、PDプリンタ機器1000は伝達された写真画像を出力する。
【0162】
DSC3012が担当する画像フォーマットの写真画像を出力する場合には、DSC3012が担当している画像フォーマットの写真画像をPDプリンタ機器1000がサポートしている画像フォーマットへ変換してフォーマット変換済み写真画像を作成し、そのフォーマット変換済み写真画像をPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達されたフォーマット変換済み写真画像を出力する。
【0163】
[レイアウト印刷機能]
まず、PDプリンタ機器1000がサポートしているレイアウト印刷機能(例:1ページあたり2写真画像、4写真画像、等)をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000がレイアウト印刷機能をサポートしている場合についてはPDプリンタ機器1000が担当し、それ以外の場合にはDSC3012が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0164】
PDプリンタ機器1000がレイアウト印刷機能を担当して出力する場合には、DSC3012は印刷すべき写真画像とレイアウト印刷情報をPDプリンタ機器1000へ伝達し、PDプリンタ機器1000は伝達された写真画像とレイアウト印刷情報に基づいて写真画像のレイアウト印刷を出力する。
【0165】
DSC3012がレイアウト印刷機能を担当して出力する場合には、DSC3012が写真画像とレイアウト印刷情報に基づいて複数の写真画像を含んだ1枚のレイアウト済み写真画像を作成し、そのレイアウト済み写真画像をPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達されたレイアウト済み写真画像を出力する。
【0166】
[日付・ファイル名印刷機能]
まず、PDプリンタ機器1000がサポートしている日付・ファイル名印刷機能をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000が日付・ファイル名印刷機能をサポートしている場合についてはPDプリンタ機器1000が担当し、それ以外の場合にはDSC3012が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0167】
PDプリンタ機器1000が日付・ファイル名印刷機能を担当して出力する場合には、DSC3012は印刷すべき写真画像と写真画像に付随する日付・ファイル名情報をPDプリンタ機器1000へ伝達し、PDプリンタ機器1000は伝達された写真画像と日付・ファイル名情報を出力する。
【0168】
DSC3012が日付・ファイル名印刷機能を担当して出力する場合には、DSC3012が写真画像に付随する日付・ファイル名情報を印刷情報として生成し、それを写真画像と合成して合成済み写真画像を作成し、その合成済み写真画像をPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達された合成済み写真画像を出力する。
【0169】
[画像補正機能]
まず、PDプリンタ機器1000がサポートしている画像補正機能をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000がサポートしている画像補正機能についてはPDプリンタ機器1000側が担当し、それ以外の画像補正機能についてはDSC3012側が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0170】
PDプリンタ機器1000が画像補正機能を担当して出力する場合には、DSC3012は印刷すべき写真画像と写真画像に付随する画像補正情報をPDプリンタ機器1000へ伝達し、PDプリンタ機器1000は伝達された写真画像と画像補正情報に基づいて写真画像に画像補正を施して出力する。
【0171】
DSC3012が画像補正機能を担当して出力する場合には、DSC3012が担当している画像補正機能を写真画像へ施し、画像補正済み写真画像を作成し、その画像補正済み写真画像をPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達された画像補正済み写真画像を出力する。
【0172】
[サイズ固定印刷機能]
まず、PDプリンタ機器1000がサポートしているサイズ固定印刷機能(例:用紙サイズに因らずに写真をL判サイズで印刷、2L判サイズで印刷、等)をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000がサイズ固定印刷機能をサポートしている場合についてはPDプリンタ機器1000が担当し、それ以外の場合にはDSC3012が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0173】
PDプリンタ機器1000がサイズ固定印刷機能を担当して出力する場合には、DSC3012は印刷すべき写真画像とサイズ固定印刷情報をPDプリンタ機器1000へ伝達し、PDプリンタ機器1000は伝達された写真画像とサイズ固定印刷情報に基づいて写真画像を固定サイズへ変換し、固定サイズ変換済み写真画像を出力する。
【0174】
DSC3012がサイズ固定印刷機能を担当して出力する場合には、DSC3012が写真画像とサイズ固定印刷情報に基づいて写真画像を固定サイズへ変換し、固定サイズ変換済み写真画像を作成し、その固定サイズ変換済み写真画像をPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達された固定サイズ変換済み写真画像を出力する。
【0175】
[画像切り出し印刷機能]
まず、PDプリンタ機器1000がサポートしている画像切りだし印刷機能(例:写真中の1矩形部分を切り出して印刷、円形部分を切り出して印刷、等)をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000が画像切りだし印刷機能をサポートしている場合についてはPDプリンタ機器1000が担当し、それ以外の場合にはDSC3012が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0176】
PDプリンタ機器1000が画像切りだし印刷機能を担当して出力する場合には、DSC3012は印刷すべき写真画像と画像切りだし印刷情報をPDプリンタ機器1000へ伝達し、PDプリンタ機器1000は伝達された写真画像と画像切りだし印刷情報に基づいて写真画像を切りだし、画像切りだし印刷を出力する。
【0177】
DSC3012が画像切りだし印刷機能を担当して出力する場合には、DSC3012が写真画像と画像切りだし印刷情報に基づいて写真画像を切りだし、画像切りだし済み写真画像を作成し、その画像切りだし済み写真画像をPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達された画像切りだし済み写真画像を出力する。
【0178】
[印刷ジョブフォーマットサポート機能]
まずPDプリンタ機器1000がサポートしている印刷ジョブフォーマット(例:DPOF、CDPSジョブ、等)をDSC3012へ伝達する。次に、DSC3012はPDプリンタ機器1000がサポートしている印刷ジョブフォーマットについてはPDプリンタ機器1000側が担当し、それ以外の印刷ジョブフォーマットについてはDSC3012側が担当する旨を決定し、PDプリンタ機器1000に伝達する。
【0179】
PDプリンタ機器1000が担当する印刷ジョブフォーマットの印刷ジョブを出力する場合には、DSC3012が印刷ジョブをPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達された印刷ジョブを出力する。
【0180】
DSC3012が担当する印刷ジョブフォーマットの印刷ジョブを出力する場合には、DSC3012が担当している印刷ジョブフォーマットの印刷ジョブをPDプリンタ機器1000がサポートしている印刷ジョブフォーマットへ変換して変換済み印刷ジョブを作成し、その変換済み印刷ジョブをPDプリンタ機器1000へ伝達する。PDプリンタ機器1000は伝達された変換済み印刷ジョブを出力する。
【0181】
上記いずれの部分機能についても、PDプリンタ機器1000がサポートしている部分機能についてはPDプリンタ機器1000側のサポートレベルとDSC3012側のサポートレベルを比較してより高い機能を持つ機器側が担当する様にしても良い。また、場合によっては一方の機器が部分機能の全てを担当しても良い。このような場合としては、例えば一方の機器に分担される機能の数が1つや2つ等、他の機器に分担される機能に比して極端に少ない場合が考えられる。このような場合には、多少処理能力が低下しても、却って1つの機器で全ての機能を分担したほうがシステムとしての効率が向上すると考えられる。
【0182】
また実際に使う機能や、ジョブに指定される機能を参照して、機能の分担決定に利用しても良い。なぜなら、利用しない機能については処理レベルが低い機器側に分担させても問題はない。このような場合には、結果的に全ての機能が一方の機器に分担されることが発生する。
【0183】
上記説明ではPDプリンタ機器1000の機能をDSC3012へ伝達してDSC3012で分担の決定を行ったが、逆にDSC3012の機能をPDプリンタ機器1000へ伝達してPDプリンタ機器1000で分担の決定を行っても良い。
【0184】
またこのCapability情報や各種指示をスクリプトにより行うことにより、他の通信プロトコルへの移植が容易になり、標準化し易くなる。
【0185】
また、デバイス間の通信手順は汎用ファイル、汎用フォーマットを用いて行い、その上位レイヤに、本実施の形態に係るアプリケーションの通信手順レイヤを規定することにより、各種インターフェース仕様に依存しない通信手順を規定することができる。
【0186】
また、本実施の形態の印刷システムでは、不特定多数の装置同士が接続されるため、それらインターフェースも様々多様である。よって、各種インターフェースで標準にサポートされている仕様で情報をやり取りする必要が生じる。従って、これら装置間での送受信において必須となる機能情報は「ファイル転送」もしくは「オブジェクト転送」で実現させることにより、各種インターフェース仕様に容易に適合できるようにしている。
【0187】
尚、画像供給デバイスとしてはデジタルカメラ以外にも、PDAや携帯電話、テレビジョン、ビデオ機器、画像記憶デバイス等が考えられる。
【0188】
同様に、印刷システムとしてはプリンタ以外にも、ブラウン管等の表示素子への表示を行うテレビジョン、大容量記憶メディアへの書き込みを行うビデオ機器、情報記録デバイス等が考えられる。
【0189】
また、汎用インターフェースには、上述のUSBやIEEE1394等に加えてインターネット等のネットワークへの接続も含まれる。
【0190】
この様にする事で、例えば1台のPDプリンタ装置が複数種類の汎用I/Fを具備し、それぞれの汎用I/Fを用いて複数の異なるDSCとの間でダイレクトプリントを行う場合に、アプリケーションとしては同一CDPSのリソースを利用する事が可能となる。
【0191】
また逆に1台のDSCが複数種類の汎用I/Fを具備し、それぞれの汎用I/Fを用いて複数の異なるPDプリンタとの間でダイレクトプリントを行う場合も同様の事が言える。但し、処理の高速性を要求される画像データの転送(部分転送)については各I/F向けに専用のプロトコルを用いた最適化が行われても良い。
【0192】
【発明の効果】
以上説明したように本発明によれば、インターフェースに依存しない画像データの転送及び記録指示を行うことにより、各社の画像供給デバイスからの画像データを受信して記録できる。
【0193】
また、DSC−PDプリンタ間において、最適なダイレクトプリントサービスを提供出来る。
【0194】
さらに、CDPS非対応機器との接続においても共通のリソースを用いて効率的にダイレクトプリントサービスを提供出来る。
【0195】
また本発明によれば、画像供給デバイスと記録装置との間の標準的な通信規約を規定して、これらデバイスや装置の機種やメーカに拠らない記録処理を実行できるという効果がある。
【図面の簡単な説明】
【図1】 本発明の実施の形態に係るPDプリンタ装置の概観斜視図である。
【図2】 本実施の形態に係るPDプリンタ装置の操作パネルの概観図である。
【図3】 本実施の形態に係るPDプリンタ装置の制御に係る主要部の構成を示すブロック図である。
【図4】 本実施の形態に係るPDプリンタ装置のASICの構成を示すブロック図である。
【図5】 本実施の形態に係るデジタルカメラの構成を示すブロック図である。
【図6】 本実施の形態に係るCDPS通信手順の概要を説明する図である。
【図7】 本実施の形態に係るCDPSを実装したPDプリンタ装置とデジタルカメラのインターフェース及びソフトウェア構成を説明する概念図である。
【図8】 本実施の形態に係るCDPSにおけるサービス機能の概念図である。
【図9】 本実施の形態に係るCDPSにおける印刷までの処理の概要を説明するフローチャートである。
【図10】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置におけるサービス機能の概念図である。
【図11】 本実施の形態に係るPDプリンタ装置とDSCとを接続してからCDPSが開始されるまでの処理の概要を説明するフローチャートである。
【図12】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置との機能分担例を示す図である。
【図13】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置との機能分担例を示す図である。
【図14】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置との機能分担例を示す図で、ここではDSCをマスストレージとして扱っている。
【図15】 本実施の形態に係るCDPSにおける機能コマンドを説明する図である。
【図16】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置との間でのサービス機能と、処理の流れを説明するフロー図である。
【図17】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置との間でのサービス機能の分担(割当て)例と、処理の流れを説明するフロー図である。
【図18】 本実施の形態に係るCDPSにおけるDSCとPDプリンタ装置との間でのサービス機能の分担(割当て)例と、処理の流れを説明するフロー図である。
【図19】 CDPSのサービスディスカバリ(CDPS_ServiceDiscovery)をPTPアーキテクチャを用いて実現した例を説明する図である。
【図20】 CDPSにおいて、カメラが使用する手続を通知する(CDPS_ServiceDiscovery)手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図21】 CDPSにおけるプリンタ機能の通知(CDPS_Service)をPTPアーキテクチャを用いて実現した例を説明する図である。
【図22】 CDPSにおいて、PDプリンタ装置が画像ファイルを取得する機能(CDPS_JobData)の手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図23】 CDPSにおいて、PDプリンタ装置からカメラに対してプリント開始を指示する機能(CDPS_PageStart)をPTPアーキテクチャを用いて実現した例を説明する図である。
【図24】 CDPSにおいて、PDプリンタ装置からカメラに対して1ページのプリント終了を送信する機能(CDPS_PageEnd)の手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図25】 CDPSにおいて、PDプリンタ装置からカメラに対して印刷ジョブの終了命令(CDPS_JobEnd)を発行する手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図26】 CDPSにおいて、PDプリンタ装置からカメラに対してエラーステータスを送信する機能(CDPS_Error)の手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図27】 CDPSにおいて、操作制御から印刷制御に対して印刷命令の発行(CDPS_Job)する手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図28】 CDPSにおいて、操作制御から印刷制御に対して印刷中止を発行(CDPS_JobAbort)する手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図29】 CDPSにおいて、操作制御から印刷制御に対して印刷再開を発行(CDPS_JobContinue)する手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図30】 CDPSにおいて、印刷制御からストレージに対して部分画像の取得を発行(CDPS_PrintJobData)する手順をPTPアーキテクチャを用いて実現した例を説明する図である。
【図31】 CDPSにおける部分画像の取得処理を説明するフローチャートである。
【図32】 ブルーツースでのCDPSへの移行コマンドの通信プロトコルを説明する図である。
【図33】 ブルーツースでのCDPSへの移行コマンドの通信プロトコルを説明する図である。
【図34】 ブルーツースでのプリンタ機能の通知処理の通信プロトコルを説明する図である。
【図35】 ブルーツースでのストレージから画像データを取得する処理の通信プロトコルを説明する図である。
【図36】 ブルーツースでのプリント開始通知の通信プロトコルを説明する図である。
【図37】 ブルーツースでのプリント終了通知の通信プロトコルを説明する図である。
【図38】 ブルーツースでのプリントジョブの終了通知の通信プロトコルを説明する図である。
【図39】 ブルーツースでのプリンタのエラー通知の通信プロトコルを説明する図である。
【図40】 ブルーツースでのプリント命令の発行処理の通信プロトコルを説明する図である。
【図41】 ブルーツースでのプリント中止命令の発行処理の通信プロトコルを説明する図である。
【図42】 ブルーツースでのプリントジョブの再開命令発行処理の通信プロトコルを説明する図である。
【図43】 ブルーツースにおける、部分画像の取得処理の通信プロトコルを説明する図である。
【図44】 各種制御機能(操作制御、記憶制御及びプリント制御)をどのように分担するかを決定するための基準となるDSC及びPDプリンタ装置それぞれのサポートレベルを説明するための図である。[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to a recording system and an image supply device such as a digital camera and a recording apparatus.BisoAnd a printing apparatus, an image supply device, and a control method thereof.
[0002]
[Prior art]
In recent years, digital cameras (imaging devices) that can take an image with a simple operation and convert it into digital image data have been widely used. When printing an image taken with such a camera and using it as a photograph, usually, the digital image data of the taken image is once taken into a PC (computer) from the digital camera, and image processing is performed with the PC. In general, the data is output from the PC to a color printer and printed.
[0003]
On the other hand, recently, as disclosed in Patent Document 1, for example, a color print system capable of directly transmitting digital image data from a digital camera to a color printer for printing without using a PC, and a digital camera are mounted. So-called photo direct (PD) printers, etc., have been developed that can directly mount a memory card storing captured images to a color printer and print the captured images stored in the memory card. ing.
[0004]
[Patent Document 1]
JP 2003-143520 A
[0005]
[Problems to be solved by the invention]
In particular, when image data is directly transmitted from a digital camera to a printer for printing, the specifications and operation methods of the digital camera differ from manufacturer to manufacturer. The appearance of was desired. In addition to the above-described digital camera, for example, such a photo direct printer apparatus may receive and print image data from various devices other than a mobile phone, a PDA, or the like. Since there are various functions, mutual Capability cannot be predicted, and exchange of each other's function information becomes essential.
[0006]
  The present invention has been made in view of the above-described conventional example, and a feature of the present invention is that a recording system capable of recording image data from image supply devices of various companies by performing image data transfer and recording instructions independent of the interface. as well asprintingApparatus and image supply deviceAnd its control methodIs to provide.
[0007]
  In addition, a feature of the present invention is that a recording system that defines a standard communication protocol between an image supply device and a recording apparatus and can execute a recording process that does not depend on the model or manufacturer, andprintingRecording apparatus and image supply deviceAnd its control methodIs to provide.
[0008]
[Means for Solving the Problems]
  In order to achieve the above object, the recording system of the present invention comprises the following arrangement. That is,
  A recording system in which an image supply device and a recording apparatus communicate directly via a communication interface and transmit and record image data from the image supply device to the recording apparatus,
  Between the recording apparatus and the image supply devicesoThroughBelieveCommunication means
  Function information including at least a support level of an operation control function for controlling a user interface is acquired by the communication unit, and the operation control is performed by comparing a support level of the image supply device with a support level of the recording apparatus.A sharing means for determining the sharing of functions;
  in frontRecording control means for transferring image data and commands between the recording image supply device and the recording apparatus, and recording with the recording apparatus using the image data transmitted from the image supply device;Have,
  Image data to be recorded is selected using the operation control function, and the recording control means performs recording based on the image data selected using the operation control functionIt is characterized by that.
[0009]
  In order to achieve the above object, the recording system of the present invention comprises the following steps. That is,
  A recording system in which an image supply device and a recording apparatus communicate directly via a communication interface and transmit and record image data from the image supply device to the recording apparatus,
  Communication means for communicating between the recording apparatus and the image supply device;
  Capability information including at least a support level of a storage control function for managing image data recorded on a recording medium of the image supply device is acquired by the communication unit, and the support level of the image supply device and the recording device A sharing means for comparing the support level to determine the sharing of the storage control function;
  Recording control means for performing transmission and reception of image data and commands between the image supply device and the recording apparatus, and performing recording with the recording apparatus using image data transmitted from the image supply device;
  The recording control means performs recording using image data of the recording medium managed by the storage control function.
[0010]
  In order to achieve the above object, the printing apparatus of the present invention has the following configuration. That is,
  A printing apparatus that directly connects to an image supply device via a communication interface, receives image data from the image supply device, and prints the image data.
  The image supply deviceAnd communicationCommunication means to
  Function information including at least a support level of an operation control function for controlling a user interface for selecting an image to be printed is received from the image supply device by the communication unit, and according to the received support level of the image supply device Operation controlA sharing means for determining the sharing of functions;
  in frontFrom image supply deviceThe print target selected using the operation control functionPrint control means for receiving image data and performing printing based on the received image data;
It is characterized by having.
[0011]
  In order to achieve the above object, the image supply device of the present invention comprises the following arrangement. That is,
  An image supply device that directly communicates with a printing apparatus via a communication interface and transmits the image data to the printing apparatus for printing.
  The printing apparatusAnd communicationCommunication means to
  Function information including at least a support level of an operation control function for controlling a user interface for selecting an image to be printed is received from the printing apparatus by the communication unit, and the operation is performed according to the received support level of the printing apparatus. controlA sharing means for determining the sharing of functions;
  The image data to be printed selected using the operation control functionThe printing apparatusSent toPrinting control means for causing the printing apparatus to perform printing,
It is characterized by having.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Preferred embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
[0013]
FIG. 1 is a schematic perspective view of a photo direct printer apparatus (hereinafter referred to as a PD printer apparatus) 1000 according to an embodiment of the present invention. The PD printer 1000 has a function as a normal PC printer that receives and prints data from a host computer (PC), and directly reads and prints image data stored in a storage medium such as a memory card, Alternatively, it has a function of receiving and printing image data from a digital camera.
[0014]
In FIG. 1, the main body that forms the outer shell of the PD printer 1000 according to the present embodiment includes a case M1001, an upper case 1002, an access cover 1003, and an exterior member of a discharge tray 1004. The lower case 1001 forms a substantially lower half of the PD printer 1000, and the upper case 1002 forms a substantially upper half of the main body. A combination of both cases accommodates the mechanisms described below. A hollow body structure having a space is formed, and openings are formed in the upper surface portion and the front surface portion, respectively. Further, one end of the discharge tray 1004 is rotatably held by the lower case 1001, and an opening formed on the front surface of the lower case 1001 can be opened and closed by the rotation. For this reason, when executing the printing operation, by rotating the discharge tray 1004 to the front side to open the opening, it becomes possible to discharge the recording sheets from here and to sequentially stack the discharged recording sheets. It has come to be able to do. The paper discharge tray 1004 stores two auxiliary trays 1004a and 1004b. By pulling out the respective trays to the front as needed, the sheet support area can be expanded and reduced in three stages. It has become.
[0015]
One end of the access cover 1003 is rotatably held by the upper case 1002 so that an opening formed on the upper surface can be opened and closed. By opening the access cover 1003, the access cover 1003 is accommodated inside the main body. It is possible to replace a print head cartridge (not shown) or an ink tank (not shown). Although not particularly shown here, when the access cover 1003 is opened and closed, the protrusion formed on the back surface rotates the cover opening and closing lever, and the rotation position of the lever is detected by a micro switch or the like. Thus, the open / closed state of the access cover can be detected.
[0016]
A power key 1005 is provided on the upper surface of the upper case 1002. An operation panel 1010 including a liquid crystal display unit 1006 and various key switches is provided on the right side of the upper case 1002. The structure of the operation panel 1010 will be described in detail later with reference to FIG. An automatic feeding unit 1007 automatically feeds the recording sheet into the apparatus main body. Reference numeral 1008 denotes a paper interval selection lever, which is a lever for adjusting the interval between the print head and the recording sheet. Reference numeral 1009 denotes a card slot, into which an adapter capable of mounting a memory card is inserted, through which image data stored in the memory card can be directly captured and printed. Examples of the memory card (PC) include a Compact Flash (registered trademark) memory TM, a smart media TM, and a memory stick. A viewer (liquid crystal display unit) 1011 is detachable from the main body of the PD printer 1000. When searching for an image to be printed from images stored in a PC card, an image for each frame is displayed. Used to display index images. Reference numeral 1012 denotes a USB terminal for connecting a digital camera to be described later. Further, a USB connector for connecting a personal computer (PC) is provided on the rear surface of the PD printer 1000.
[0017]
FIG. 2 is an overview of the operation panel 1010 of the PD printer 1000 according to the present embodiment.
[0018]
In the figure, the liquid crystal display unit 1006 displays menu items for setting various data relating to items printed on the left and right. Items displayed here include, for example, the first photo number of the range to be printed, the designated frame number (start frame designation / print frame designation), the last photo number (end) of the range to be printed, and the number of copies (number of copies). ), The type of paper (recording sheet) used for printing (paper type), setting the number of photos to be printed on one sheet (layout), specifying the print quality (quality), and whether to print the date of shooting Designation (date printing), designation of whether to correct a photo (image correction), display of the number of sheets necessary for printing (number of sheets), and the like. These items are selected or designated using the cursor keys 2001. 2002 is a mode key, and each time this key is pressed, the type of printing (index printing, full-frame printing, single-frame printing, etc.) can be switched, and the corresponding LED of the LED 2003 is lit accordingly. A maintenance key 2004 is a key for performing maintenance of the printer such as cleaning of the print head. Reference numeral 2005 denotes a print start key which is pressed when instructing the start of printing or when establishing maintenance settings. Reference numeral 2006 denotes a print cancel key which is pressed when printing is stopped or when maintenance is instructed.
[0019]
Next, with reference to FIG. 3, the configuration of the main part related to the control of the PD printer 1000 according to the present embodiment will be described. In FIG. 3, the same reference numerals are given to portions common to the above-described drawings, and the description thereof is omitted.
[0020]
In FIG. 3, reference numeral 3000 denotes a control unit (control board). Reference numeral 3001 denotes an ASIC (dedicated custom LSI), the configuration of which will be described later in detail with reference to the block diagram of FIG. Reference numeral 3002 denotes a DSP (digital signal processor) having an internal CPU, and various control processes to be described later and images such as conversion from a luminance signal (RGB) to a density signal (CMYK), scaling, gamma conversion, and error diffusion. I am in charge of processing. A memory 3003 has a program memory 3003a that stores a control program for the CPU of the DSP 3002, a RAM area that stores a program at the time of execution, and a memory area that functions as a work memory that stores image data and the like. Reference numeral 3004 denotes a printer engine. Here, a printer engine of an ink jet printer that prints a color image using a plurality of color inks is installed. Reference numeral 3005 denotes a USB connector as a port for connecting a digital camera (DSC) 3012. Reference numeral 3006 denotes a connector for connecting the viewer 1011. Reference numeral 3008 denotes a USB hub (USB HUB). When the PD printer 1000 performs printing based on image data from the PC 3010, the data from the PC 3010 is directly passed through and output to the printer engine 3004 via the USB 3021. . As a result, the connected PC 3010 can directly perform printing by exchanging data and signals with the printer engine 3004 (functions as a general PC printer). Reference numeral 3009 denotes a power connector which inputs a DC voltage converted from commercial AC by a power source 3019. A PC 3010 is a general personal computer, 3011 is the memory card (PC card) described above, and 3012 is a digital camera (DSC: Digital Still Camera).
[0021]
Note that the exchange of signals between the control unit 3000 and the printer engine 3004 is performed via the USB 3021 or the IEEE 1284 bus 3022 described above.
[0022]
FIG. 4 is a block diagram showing the configuration of the ASIC 3001. In FIG. 4 as well, portions common to the above-mentioned drawings are given the same symbols, and description thereof is omitted.
[0023]
Reference numeral 4001 denotes a PC card interface unit that reads image data stored in the attached PC card 3011 or writes data to the PC card 3011. Reference numeral 4002 denotes an IEEE 1284 interface unit that exchanges data with the printer engine 3004. The IEEE 1284 interface unit 4002 is a bus used when printing image data stored in the digital camera 3012 or the PC card 3011. A USB interface unit 4003 exchanges data with the PC 3010. A USB host interface unit 4004 exchanges data with the digital camera 3012. Reference numeral 4005 denotes an operation panel / interface unit which inputs various operation signals from the operation panel 1010 and outputs display data to the display unit 1006. A viewer interface unit 4006 controls display of image data on the viewer 1011. Reference numeral 4007 denotes an interface unit that controls an interface between various switches, the LED 4009, and the like. A CPU interface unit 4008 controls data exchange with the DSP 3002. Reference numeral 4010 denotes an internal bus (ASIC bus) that connects these units.
[0024]
FIG. 5 is a block diagram showing a typical configuration example of the DSC 3012 according to the embodiment of the present invention. However, there is a possibility that a digital camera that can be connected to the PD printer 1000 according to the present embodiment may include a device that does not have a display unit 2700 described later.
[0025]
In the figure, reference numeral 3100 denotes a CPU that controls the entire DSC, and reference numeral 3101 denotes a ROM that stores a processing procedure (program) of the CPU 3100. Reference numeral 3102 denotes a RAM used as a work area of the CPU 3100, and reference numeral 3103 denotes a switch group for performing various operations, including various switches and cursor keys. Reference numeral 2700 denotes a liquid crystal display unit, which is used for confirming a captured image and displaying a menu for performing various settings. Reference numeral 3105 denotes an optical unit mainly composed of a lens and its drive system. Reference numeral 3106 denotes a CCD element, and reference numeral 3107 denotes a driver that drives and controls the optical unit 3105 under the control of the CPU 3100. Reference numeral 3108 denotes a connector for connecting a storage medium 3109 (compact flash (registered trademark) memory card, smart media, etc.). Reference numeral 3110 denotes a USB interface (USB slave side) for connecting to a PC or the PD printer 1000 in the embodiment. ).
[0026]
In this embodiment, an example in which printing is performed by connecting the above-described PD printer apparatus 1000 and DSC 3012 will be mainly described. However, each manufacturer's digital camera, A further object of the present invention is to provide a PD printer that can be connected to a device such as a mobile phone or a memory device (DSPD: Digital Still Photography Devices) and can print based on image data obtained from the device. A communication protocol when printing is performed by connecting the PD printer 1000 and these DSPDs is described. In the present embodiment, communication control between the PD printer and DSPD is performed using a general-purpose file and a general-purpose format, and a new CDPS (Canon Direct Print Service) independent of the interface is proposed.
[0027]
Arranges for various communication protocol architectures such as PTP (Still Image Class) and Mass Storage Class on USB, OBEX on Blue Tooth, and UPnP between DSPD and image output device. For this reason, the concept of the print service function is used here. The print service function is a collection of execution functions in the application layer and does not depend on various interfaces.
[0028]
In addition, since the actual image data and communication control between devices are performed using a general-purpose file and a general-purpose format (for example, described using an XML format), it does not depend on the interface.
[0029]
In such a system in which the DSPD and the image output apparatus are connected, the operation is performed using one of the operation units (for example, a liquid crystal screen of a digital camera or an operation unit on a printer). Considering the whole, when both devices have the same function, it is necessary to determine which device's operation unit is used for execution. Therefore, in the system according to the present embodiment, after the discovery process (migration process), which will be described later, a mechanism for determining how the operation unit and other functions are to be shared among the respective devices is incorporated to provide versatility. It is supposed to be higher.
[0030]
[Overview of communication]
FIG. 6 is a diagram for explaining an outline of communication between a digital camera (DSC) 3012 that is a typical DSPD apparatus and a PD printer apparatus 1000 according to the present embodiment, which is a typical example of an image output apparatus. is there. Here, the DSC 3012 and the PD printer 1000 are connected by USB, and communication between them uses PTP. In this USB connection, the PD printer 1000 is the host side and the DSC 3012 is the slave side.
[0031]
Hereinafter, this procedure will be described in order. Here, the DSC 3012 has the configuration of FIG. 5 described above, and an example in which a print image and print condition setting and a print start instruction are performed from the DSC 3012 will be described.
(1) First, the DSC 3012 and the PD printer 1000 are physically connected by a USB cable.
(2) Next, the USB host controller (USB task) of the PD printer 1000 recognizes the DSC 3012 and performs connection using the image class / PTP. This is the “communication establishment” state indicated by 600 in FIG.
(3) Next, the process proceeds to the process (601) for shifting from the PD printer 1000 to the communication protocol (CDPS) defined in the present embodiment. At this time, based on the exchange of information between the DSC 3012 and the PD printer 1000, whether or not the CDPS service can be executed between the two, and if the service is executable, “standard” or “ Confirmation and determination as to which procedure of “expansion” is executed (610). In this process 601, it is also determined which of the DSC 3012 or the PD printer apparatus 1000 is in charge of determining a print image, setting print conditions, instructing printing start, and the like.
(4) As a result of the processing 601, when executing the service in the “standard” procedure 602, the PD printer 1000 notifies the DSC 3012 of “services that can be provided on the printer side” (603). Specifically, the paper size, paper type, print quality, combinations that can be laid out, and the like that can be handled by the PD printer 1000.
(5) The DSC 3012 creates a UI menu operated by the user according to the service content sent in 603 and displays it on the display unit 2700. As a result, the user performs setting of a print image, print conditions, and photo selection (collectively referred to as “job”) via the UI menu (611).
(6) When the setting of “job” is completed and a print start instruction is issued from the user in the DSC 3012, the DSC 3012 notifies the PD printer 1000 of “job” (604).
(7) Next, the PD printer 1000 sets the PD printer 1000 according to the contents of the “job” sent in 604, and then acquires the necessary image file from the DSC 3012 (605) prints the photo. (613).
(8) Here, if an error occurs in the PD printer 1000 during execution of the “job”, the DSC 3012 is notified of the details of the error that has occurred and requests the user to respond (606). (In this embodiment, “continue / cancel printing” is selected). When the user determines the response (continuation or cancellation of printing) using the UI of the DSC 3012 in this way (612), the content is sent to the PD printer 1000 and the corresponding error processing 614 is executed.
(9) In this way, image file transfer and printing processing (→ error transmission / reception) are repeated, and when the “job” is completed, the “job” setting state (611) in the DSC 3012 is entered again.
(10) If it is determined in the above-described step 610 that the “expanded procedure” service of the CDPS is to be performed, a procedure unique to each vendor and an “expanded” process indicated by 607 are executed. The processing in this “extended procedure” is defined by each vendor and will not be described here.
[0032]
[Hierarchical structure]
FIG. 7 is a diagram showing an overall function in a hierarchical structure when a DSC 3012 that is a representative of DSPD and a PD printer apparatus 1000 that is a representative of an image output apparatus are connected.
[0033]
In the figure, reference numerals 700 and 703 denote application units, and reference numerals 701 and 702 denote physical layers. Here, USB and Bluetooth (Bluetooth) are shown as examples. Each of the DSC 3012 and the PD printer 1000 can construct this CDPS system by incorporating (applications) 700 and 703, respectively. However, as indicated by reference numerals 701 and 702, it is premised on implementation of an architecture such as a file system on PTP, BIP, and MSC (Mass Storage Class) in the protocol layer. In addition, the actual status of this print service function exists in each of the application parts 700 and 703, and the print service function is executed in the part that converts from CDPS to each protocol.
[0034]
In this way, it is possible to realize a direct print service that does not depend on a physical interface.
[0035]
[System-wide functions]
FIG. 8 is a diagram showing a functional configuration when the above-mentioned DSPD and image output device are connected, and these are regarded as an integrated system.
[0036]
Following the above-mentioned definition that the interface does not depend on the hierarchical structure, in order to realize the independence of DSPDs and “functions” of the image output apparatus, the definition of elements (objects) at a higher level I do. In the present embodiment, the definition and function of functional components necessary for the entire direct print system will be described without separating and sharing various functions between the DSPD and the image forming apparatus.
[0037]
Here, the functions of the entire system are roughly divided into four functions (800 to 803).
[0038]
<CDPS initialization processing (CDPS Initialize)>
The CDPS initialization process 800 is first activated prior to other CDPS functions. Here, the transition to the CDPS mode (standard / expansion) or the like is determined, and the determination result is “Service Discovery” 804 to notify each function. This corresponds to 601 in FIG.
[0039]
<Operation Controller>
A UI part management (Operation Controller) 801 that interacts with the user 812 receives the “Service Discovery” 804 from the CDPS initialization process 800 and is activated. This operation control 801 obtains a service “Service” 807 that can be printed by the print device 810 (printer engine 3004) from the print control 803, and stores the PC card 3011, etc. from the storage control 802. An image information list “Data List” 805 held by the storage device 811 is acquired. Then, a UI menu is created based on the descriptions of “Service” 807 and “Data List” 805. An output setting instruction “Job” 808 is created based on the user's instruction input via the UI menu thus created, and the print control 803 is notified.
[0040]
<Storage Controller>
A storage control 802 manages a storage medium holding a photographic image, for example, the PC card 3011 described above. This storage control 802 receives “Service Discovery” 804 from the CDPS initialization process 800 and starts up. Further, in accordance with a request from the operation control 801, an image information list “Data List” 805 held in the storage device 811 is created and notified to the operation control 801. Also, in accordance with a request from the print control 803, the image file “Job Data” 806 stored in the storage device 811 is sent to the print control 803.
[0041]
<Print control>
A print controller 803 manages a print device 810 that prints a photographic image. This print control 803 is activated upon receiving “Service Discovery” 804 from the CDPS initialization process 800, and notifies the operation control 801 of a service “Service” 807 that can be printed by the print device 810. Further, when the output setting instruction “Job” 808 is acquired from the operation control 801, the storage device 802 is stored in the storage control 802 by the description method described in the “Data List” 805 based on the description of the “Job” 808. The image file “Job Data” 806 stored in 811 is requested and acquired. Based on this, printing is performed by creating print data that can be processed by the print device 810 and outputting the print data to the print device 810.
[0042]
FIG. 9 is a flowchart for explaining the flow of processing by each function of FIG.
[0043]
First, in step S1, it is determined whether or not the CDPS initialization process 800 can shift to the CDPS mode. Based on the determination, “Service Discovery” 804 is notified to each function, and each function is activated. In step S 2, the print control 803 notifies the operation control 801 of a print service “Service” 807 that can be provided by the print device 810. In step S 3, the operation control 801 acquires an image information list “Data List” 805 stored in the storage device 811 from the storage control 802. In step S4, the operation control 801 configures and displays a print setting UI based on the “Service” 807 and the “Data List” 805. Based on the instruction of the user 812 input in accordance with this UI, a print setting instruction “Job” 808 that defines an image to be printed, selection of the print mode, and the like is created, and the created “Job” 808 is operated. The control 801 notifies the print control 803. In step S 5, the print control 803 performs print settings for the print device 810 according to the description of the “Job” 808. Next, the storage control 802 is requested for the image file “Job Data” 806 necessary for printing, which is stored in the storage device 811, using the description method described in the “Data List” 805. get. Then, print data that can be processed by the print device 810 is created. In step S6, the print data is output to the print device 810 and printed. In step S7, it is checked whether or not an instruction to end the printing process has been issued. If no instruction to end is input, the process returns to step S4 and the above-described process is executed. When the end of the printing process is instructed, this process is terminated.
[0044]
As described above, regardless of whether each function described above exists in the DSPD or the image output apparatus, the hierarchical structure described above, the four functions 800 to 803, and the five information exchanged between the four functions. The groups 804 to 808 are the basic configuration of this CDPS.
[0045]
[CDPS configuration by DSC and PD printer]
FIG. 10 is a diagram illustrating an example of a CDPS configuration in a state where the DSC 3012 and the PD printer apparatus 1000 are connected. Here, a case is shown in which both the DSC 3012 and the PD printer apparatus 1000 have the four functions 800 to 804 described above. In this case, the storage device 811 and the print device 810 are logically located outside the CDPS system, and it is not determined which side is connected.
[0046]
In the CDPS of the present embodiment, after the DSC 3012 and the PD printer apparatus 1000 are physically and logically connected, the CDPS initialization (CDPS Initialize) 800 of both the DSC 3012 and the PD printer apparatus 1000 performs a dialog, and the other Each of the three functions 801 to 803 and the processing functions of the storage device 811 and the print device 810 is determined by which one of the DSC 3012 and the PD printer 1000 is responsible for managing.
[0047]
FIG. 11 is a flowchart for explaining a function sharing (function assignment) process in CDPS according to the present embodiment.
[0048]
First, in step S <b> 11, the support levels of the functions 800 to 803 in the DSC 3012 are notified from the DSC 3012 to the PD printer 1000. In step S 12, the PD printer 1000 compares the support level of each function received from the DSC 3012 with the support level of the PD printer 1000 itself, and a function with higher usability is provided between the DSC 3012 and the PD printer 1000. Judgment is made on which one is implemented, and it is decided which function is shared. Then, the process proceeds to step S13, and the assigned information and management information of each function are notified to the DSC 3012. Then, the process proceeds to step S14, where each function determined to be assigned to each device is activated in each of the DSC 3012 and the PD printer 1000, and the procedure CDPS is started in step S15.
[0049]
When executing the “extended procedure” here, it is found that the DSC 3012 and the PD printer apparatus 1000 support the extended procedure at the time of step S12, and the subsequent exchanges are specific to each vendor. I will not explain it here.
[0050]
Each function does not necessarily need to be supported by both the DSC 3012 and the PD printer apparatus 1000, but needs to be supported by at least either the DSC 3012 or the PD printer apparatus 1000. In particular, regarding the CDPS initialization 800, even if the DSC 3012 does not support the CDPS initialization 800, the system may shift to the CDPS mode by the CDPS initialization 800 of the PD printer apparatus 1000 depending on the connection status of the interface. Is possible.
[0051]
[CDPS configuration example-1]
FIG. 12 is a diagram for explaining a configuration example 1 of the CDPS when the DSC 3012 and the PD printer apparatus 1000 are connected by PTP (Picture Transfer Protocol) of an image class on USB. Portions in common with FIG. 10 are denoted by the same symbols, and description thereof is omitted. Here, a case where the DSC 3012 provided with the liquid crystal display unit 2700 is connected to the PD printer apparatus 1000 not provided with the liquid crystal viewer 1011 will be described. In other words, in this example, the DSC 3012 includes a CDPS initialization 800, an operation control 801, and a storage control 802, and the PD printer 1000 has a functional configuration as shown in FIG.
[0052]
Here, first, the CDPS initialization 800 of the PD printer 1000 tries to exchange information regarding the sharing and management of each function with the CDPS initialization 800 of the DSC 3012. In response to this, the DSC 3012 informs that the functions of the operation control 801 and the storage control 802 are supported (such as the presence of a liquid crystal display unit 2700). As a result, the CDPS initialization 800 of the PD printer apparatus 1000 compares the support level of the operation control 801 and storage control 802 of the PD printer apparatus 1000 (without the liquid crystal viewer 1011 etc.) and determines the system configuration as follows. In response to the CDPS initialization 800 of the PD printer 1000, “CDPS migration is possible” is returned, and the DSC 3012 is notified of the details of the function sharing determination as follows.
(1) The DSC 3012 takes charge and manages the operation control 801 and the storage control 802.
(2) The PD printer 1000 takes charge and manages the print control 803.
(3) The storage device 811 is in the DSC 3012 and the storage control 802 of the DSC 3012 manages this storage device 811.
(4) The print device 810 (printer engine 3004) is in the PD printer apparatus 1000, and the print control 803 of the PD printer apparatus 1000 manages print processing.
The above-described processing is performed in the same manner even when connected via another interface such as TCP / IP of a wireless LAN (Wireless LAN).
[0053]
[CDPS configuration example-2]
FIG. 13 is a diagram for explaining a configuration example 2 of the CDPS when the DSC 3012 and the PD printer apparatus 1000 are connected by the PTP (Picture Transfer Protocol) of the image class on the USB. Portions in common with FIG. 10 are denoted by the same symbols, and description thereof is omitted. Here, a case where the DSC 3012 without the liquid crystal display unit 2700 is connected to the PD printer apparatus 1000 with the liquid crystal viewer 1011 attached, or an example in which the DSC 3012 does not include the CDPS initialization 800 will be described. . The PD printer 1000 is assumed to have a functional configuration as shown in FIG.
[0054]
Considering the case where the CDPS initialization 800 of the PD printer 1000 attempts to exchange information regarding the CDPS initialization of the DSC 3012 and the sharing and management of each function, the DSC 3012 does not have the CDPS initialization and cannot respond to it. Therefore, the PTP Wrapper layer of the PD printer apparatus 1000 determines the system configuration as described below, and responds “CDPS migration is possible” to the CDPS initialization 800 of the PD printer apparatus 1000.
(1) The PD printer 1000 is responsible for and manages all of the operation control 801, the storage control 802, and the print control 803.
(2) The storage device 811 is in the DSC 3012, and the storage control 802 of the PD printer 1000 manages the image access to the storage device 811 using standard PTP.
(3) The print device 810 is in the PD printer apparatus 1000, and the print control 803 of the PD printer apparatus 1000 manages this.
[0055]
In such a case, not only when the DSC 3012 does not have the CDPS initialization 800, but even when the DSC 3012 has the display 2700, the resolution and operability of the viewer of the PD printer 1000 can be reduced. If the CDPS initialization 800 of the PD printer apparatus 1000 determines that it is inferior to the UI using 1011 or its viewer 1011, the configuration shown in FIG.
[0056]
[CDPS configuration example-3]
FIG. 14 is a diagram for explaining a configuration example 3 of the CDPS at the time of connection with MSC (Mass Storage Class). The parts common to those in FIGS. 8 and 10 are denoted by the same symbols, and the description thereof is omitted. In this example, for example, a DSC 3012 without a liquid crystal display 2700 is connected to a PD printer apparatus 1000 equipped with a liquid crystal viewer 1011 by MSC.
[0057]
In this case, the CDPS initialization 800 of the PD printer 1000 tries to exchange information with the CDPS initialization 800 of the DSC 3012 regarding the sharing and management of each function in each device. However, in the standard bulk-only MSC, bidirectional exchange of information with the DSC 3012 is extremely difficult. Therefore, the Mass Storage Class Wrapper layer 820 of the PD printer apparatus 1000 determines the system configuration as described below, and responds “CDPS migration is possible” to the CDPS initialization 800 of the PD printer apparatus 1000.
(1) The operation control 801, the storage control 802, and the print control 803 are all managed by the PD printer 1000.
(2) The storage device 811 is in the DSC 3012 and is managed by the storage control 802 of the PD printer 1000 with a standard MSC.
(3) The print device 810 is in the PD printer apparatus 1000, and the print control 803 of the PD printer apparatus 1000 manages the print device 810.
[0058]
[CDPS output procedure]
The output procedure in the CDPS according to the present embodiment has the following two types.
[0059]
<Standard procedure>
In the CDPS according to the present embodiment, a procedure according to the following functions and information is defined.
・ CDPS Initialize function
・ Operation Controller function
・ Storage Controller function
・ Print Controller function
・ Service Discover information
・ Service information
・ Job information
・ Job Data information
<Expansion procedure>
Procedures that can support output in various formats based on specifications specific to each vendor are defined for each of the following.
・ XHTML
・ SVG
・ Unique format
[CDPS function description]
In the CDPS according to the present embodiment, an application can be arbitrarily handled in the upper layer of the PTP of both the DSC 3012 and the PD printer apparatus 1000, that is, functions between the DSC 3012 and the PD printer apparatus 1000 (for example, object transfer for printing, etc.) 15A and 15B, a print service function as shown in FIGS. 15A and 15B is provided. In the application layers 700 and 703 in FIG. 7 described above, it is possible to perform direct printing basically by using the print service function shown in FIGS. 15A and 15B. The print service function has an essential function (FIG. 15A) and an optional function (FIG. 15B), and an apparatus that supports CDPS needs to prepare all of the essential functions.
[0060]
15A and 15B are diagrams showing a list of service functions in CDPS according to the present embodiment. Hereinafter, these functions will be described sequentially.
(a) CDPS_ServiceDiscovery (service discovery)
This is a function for performing transition to CDPS. This return value is a script, and the CDPS procedure “standard” or “extended” is instructed, and which procedure is selected is received. Note that only the CDPS_ServiceDiscovery function is used during the “extension” procedure.
(b) CDPS_Service (print control 803 → operation control 801)
A script describing the function of the PD printer is notified as a parameter. The script describing the function of the PD printer is used as an argument, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(c) CDPS_PageStart (print control 803 → operation control 801)
Notify the start of printing (every page). The parameter is a script describing the print function, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(d) CDPS_PageEnd (print control 803 → operation control 801)
This is a function for notifying the end of printing (when discharging one page at a time). The parameter is a script describing the print function, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(e) CDPS_JobEnd (print control 803 → operation control 801)
Notify the end of the print job. The parameter is a script describing the print function, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(f) CDPS_Error (printing control 803 → operation control 801)
This is a function to notify an error (Warning / Fatal). The parameter is a script describing the print function, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(g) CDPS_JobData (print control 803 → storage control 802)
This is a function for acquiring an image such as JPEG from the storage device 811. The script that describes the handle name of the acquired image data is used as an argument, and the return value is the number of bytes of the acquired image data and the image data itself.
(h) CDPS_DataList (operation control 801 → storage control 802)
This is a function for acquiring a list of image information such as JPEG from the storage device 811. A script that describes the function of the PD printer 1000 is used as an argument, and the return value is a script that describes a list of image data.
(i) CDPS_Job (operation control 801 → print control 803)
This is a function for notifying a print command. The script describing the print command is used as an argument, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(j) CDPS_JobAbort (operation control 801 → print control 803)
This function notifies a print stop command. The script describing the function of the printer is used as an argument, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
(k) CDPS_JobContinue (operation control 801 → print control 803)
This function notifies a print restart command. The script describing the function of the printer is used as an argument, and the return value indicates the communication result, that is, the success or failure of communication (“TRUE” or “FALSE”).
[0061]
The above is the essential function in CDPS.
[0062]
This CDPS further includes a CDPS_PartialJobData function as an optional function, as shown in FIG. 15B.
[0063]
This CDPS_PartialJobData (print control 803 → storage control 802) is a function for acquiring image data such as JPEG from the storage device 811. The script that describes the handle name of the acquired image data is used as an argument, and the return value is the number of bytes of the acquired image data and the image data itself.
[0064]
[Description of script format]
The script content used for the above-described service discovery (CDPS_ServiceDiscovery) and the script format used for other functions will be described below.
[0065]
<Format of various function commands>
(1) Script format for service discovery (CDPS_ServiceDiscovery)
The script contents used for service discovery (CDPS_ServiceDiscovery) (described in Unicode) are used when shifting to the CDPS mode. This recognizes each other's keywords.
[0066]
CanonDirectPrintService (UILevel = X) (Device information, UI level information (X) is 0 to 4)
CanonDirectPrintService (HostUI) (when using the host (PD printer) UI)
Or
CanonDirectPrintService (DeviceUI) (when using the device (DSC) UI)
(2) Script format in CDPS_PageStart, CDPS_PageEnd, CDPS_JobEnd, CDPS_DataList, CDPS_JobAbort, CDPS_JobContinue
<? XML version = "1.0" encoding = "UTF-16"?>
<! ELEMENT command ("CDPS_PageStart" | "CDPS_PageEnd" | "CDPS_JobEnd" | "CDPS_JobAbort" | "CDPS_JobContinue")>
(3) CDPS_Service script format
Figure 0004367902
(4) CDPS_Job script format
Figure 0004367902
(5) CDPS_Error script format
<? XML version = "1.0" encoding = "UTF-16"?>
<Command ("CDPS_Error")>
<! ELEMENT status ("fatal" | "warning")>
<! ELEMENT reason ("printer_occupied" | "printer_busy" | "ink_low" | "lever_error" | "load_error" |…)>
Here, “status” describes whether or not this error can be returned to the job. For example, “fatal” indicates that recovery is not possible, and “warning” indicates that recovery is possible. “Reason” describes the cause of the error.
(6) Script format of CDPS_JobData and CDPS_PartialJobData
<? XML version = "1.0" encoding = "UTF-16"?>
<! ELEMENT command ("CDPS_JobData" | "CDPS_PartialJobData")>
<Image (#PCDATA)>
<Offset (#PCDATA)>
<Size (#PCDATA)>
Here, “image” describes the handle name of the file, “offset” describes the number of bytes offset from the head, and “size” describes the number of bytes of image data to be acquired. However, in the case of CDPS_JobData, these “offset” and “size” are invalid when partial acquisition of optional functions is not used.
[0067]
<Capability format>
The <capability> format used in the CDPS_Service function and CDPS_Job function is shown below.
[0068]
Figure 0004367902
However, “quality” indicates print quality, and “fast” (draft), “normal”, and “finw” are designated. “Paper_size” represents the paper size (L, 2L, card, 4x6, A4, letter size, etc.), “paper_type” represents the paper type, “plain” (plain), “photo paper (photo)” specify.
[0069]
Figure 0004367902
However, “image_type” represents a supported image format. “Date” represents ON / OFF of date printing. “File_name” represents ON / OFF of file name printing, and “image_ooptimize” represents ON / OFF of image correction. “Size_per_page” represents the size of the readable image data, and “layout” represents the layout that is possible for various paper types.
[0070]
Figure 0004367902
The portion surrounded by “option” represents the printer capability unique to each vendor, and is described here together with the vendor name.
[0071]
<Job format>
The <job> format used by the CDPS_Job function is shown below.
[0072]
Figure 0004367902
However, the portion surrounded by the “capability” represents the print setting of the following image. A portion surrounded by “printlist” represents an image to be printed in this job, additional information (date, file name), and the like.
[0073]
<Specific examples of Job format>
Next, a specific example of this Job format will be described.
(A) The image of Handle1 is printed on the L-size photo paper with the date imprinted without a border.
[0074]
Figure 0004367902
(B) Six images of handles 1 to 6 are printed on the L-size photo paper in a 2 × 2 layout.
[0075]
Figure 0004367902
[Explanation of CDPS “standard” procedure flow]
FIG. 16 is a diagram for explaining a basic processing flow of CDPS according to the present embodiment. Here, the CDPS functions transmitted and received between the above-described functions 800 to 803 are time-sequentially from top to bottom. It is written in. In the figure, the locations described by “A”, “B”, “C”, and “D” on the broken line indicate the division points of the function sharing that are considered to be representative. Also, parts common to those in FIG. 8 are indicated by the same symbols, and description thereof is omitted.
[0076]
When the transition to the CDPS mode is notified from the PD printer 1000 to the DSC 3012 by the above-described CDPS initialization 800 (804), in response to this, the DSC 3012 responds to a level supported by the DSC 3012 (“standard”, “ (Expanded ”and supported functions) are notified to the PD printer 1000 (821). Based on this, the PD printer 1000 determines whether each of the functions 800 to 803 described above is to be performed by the DSC 3012 or the PD printer 1000, and notifies the DSC 3012 of the result (822).
[0077]
Reference numeral 823 denotes a request for a data list of image data stored in the storage device 811 from the operation control 801 to the storage control 802. Reference numeral 824 denotes data read from the storage device 811 by the storage control 802 in response thereto. Is shown. As a result, the list data is sent from the storage control 802 to the operation control 801 in 805, and the print mode and the image to be printed are selected in 825 by the operation of the user 812, and a print job is created. Be informed. As a result, an output setting instruction “CDPS_Job” 808 is created and notified to the print control 803 based on the instruction of the user 812 input from the operation control 801 to the print control 803 using the created UI menu. To do. In 826, the image data is requested from the print control 803 to the storage control 802. As a result, the image data 827 is read from the storage device 811, and the image file “Job Data” 806 necessary for printing is sent from the storage control 802 to the print control 803. As a result, image processing or the like is executed in the print control 803 to generate print data, and the print data 828 is sent to the print device 810 to execute printing.
[0078]
If an error occurs during printing, error information 829 is sent from the print control 803 to the operation control 801. In response to this error, when the user 812 instructs “print cancel” or “print continue” (831), for example, a “print cancel” command 830 is sent from the operation control 801 to the print control 803 (this command). Is shown in FIG. 15A). Then, the print control 803 notifies the operation control 801 of the end of the print job (832).
[0079]
FIG. 17 is a diagram for explaining a case where the DSC 3012 takes charge of the operation control 801 and the storage control 802 and the PD printer apparatus 1000 takes charge of the print control 803. The function dividing position in this case is the position indicated by “C” in FIG. Although this example is shown in the case of PTP, the same applies to other connections such as TCP / IP when the operation control 801 and storage control 802 of the DSC 3012 are used.
[0080]
In this case, the PD printer 1000 informs the user that the operation control 801 and the storage control 802 of the functions 800 to 803 are executed by the DSC 3012 and the print control 803 is executed by the PD printer 1000 at 822. Thereby, the function sharing between the DSC 3012 and the PD printer 1000 is determined as shown in FIG.
[0081]
FIG. 18 is a diagram for explaining a case where the storage device 811 of the DSC 3012 is handled as Mass Storage, and the PD printer 1000 is responsible for operation control 801, storage control 802, and print control 803. The function dividing position in this case is the position indicated by “A” in FIG. Although this example is shown in the case of PTP, the same applies to other connections such as TCP / IP when the operation control 801 and storage control 802 of the DSC 3012 are used.
[0082]
In this case, the PD printer apparatus 1000 informs the PD printer apparatus 1000 to execute all the functions 800 to 803 at 822. Thereby, the function sharing between the DSC 3012 and the PD printer 1000 is determined as shown in FIG.
[0083]
The same applies to other connections such as PTP when the resources of the DSC 3012 are not used at all. The same applies when the DSC 3012 does not have the CDPS initialization function 800 (CDPS Initialize) (a model that does not support CDPS).
[0084]
Hereinafter, an example will be described in which the service function command in the CDPS described above is implemented by PTP.
[0085]
[Example of PTP print service function]
<CDPS service discovery (CDPS_ServiceDiscovery) function>
FIG. 19 is a diagram for explaining the procedure of the CDPS service discovery function.
[0086]
When the PD printer 1000 and the DSC 3012 are physically connected and communication by PTP becomes possible, first, at 1400, GetDeviceInfo is transmitted from the PD printer 1000 to the DSC 3012, and the DSC 3012 holds it. Information about the object is requested. In response to this, the DSC 3012 transmits information about the object held in the DSC 3012 to the PD printer 1000 by DeviceInfo Dataset. Next, in 1402, DSC 3012 is allocated as a resource by OpenSession, a handle for assigning a handle to a data object as necessary, or a request for starting a procedure for performing special initialization is issued. On the other hand, when an affirmative response (OK) is returned from the DSC 3012, PTP communication is started. Next, in 1403, the DSC 3012 requests all handles in script format (Storage ID: FFFFFF, Object Type: Script). In response to this, in 1404, all handle lists held in the DSC 3012 are returned. Is done. Next, at 1405 and 1406, information on the i-th object handle is acquired from the PD printer 1000. Here, if this object includes a keyword (for example, “mountain”) indicating the identification of the DSC 3012, next, in 1407, the PD printer device 1000 is instructed to transmit object information (SendObjectInfo), If an affirmative response (OK) is received, object information is transmitted from the PD printer 1000 to the DSC 3012 by SendObject. Here, this object includes, for example, “river” as a response keyword (password) for the keyword.
[0087]
In this way, both the PD printer 1000 and the DSC 3012 can recognize each other's connection partner, and thereafter, the procedure can be shifted to the CDPS procedure. In this way, a keyword can be reliably transferred in a transport layer that can transfer a file. That is, keywords can be exchanged without adding a unique command or the like to the CDPS of this embodiment. Here, the keyword is not limited to the above example, and the same keyword may be used. In addition, in order to shorten the time for performing the negotiation with this keyword, by putting this keyword at the beginning (i = 1) of the handle in the script format, the time required for checking each other's devices can be shortened.
[0088]
FIG. 20 is a diagram for explaining the continuation of the CDPS_ServiceDiscovery procedure.
[0089]
Here, first, in 1501, the SendObjectInfo is used to notify the DSC 3012 that there is object information to be transmitted in order to notify the DSC 3012 of the procedures “standard procedure” and “extended procedure” supported by the PD printer 1000. In response to this, when an affirmative response (OK) is sent from the DSC 3012, the DSC 3012 is informed that the object is to be sent by SendObject in 1502, and the procedure supported by the PD printer 1000 with the next 1503 ObjectData. Send information about "Standard" / "Extended". Next, in 1504, the DSC 3012 notifies the PD printer 1000 that the GetObject operation is to be started (shift to the push mode). As a result, when it is notified in 1505 that information related to object information is received from the PD printer apparatus 1000 (GetObjectInfo), object information is notified from the DSC 3012 to the PD printer apparatus 1000 by the ObjectInfo Dataset in 1506, and 1507. When the object information itself is requested by designating the object information, the procedure (“standard”, “extended”, etc.) used by the DSC 3012 is notified to the PD printer 1000 by the Object Dataset (1508).
[0090]
As a result, the image printing mode can be designated from the DSC 3012 to the PD printer 1000.
[0091]
<CDPS_Service (standard)>
FIG. 21 is a diagram for explaining the printer function notification procedure in the CDPS according to the present embodiment.
[0092]
In this procedure, in 1600, the PD printer 1000 informs the DSC 3012 that there is object information to be transmitted, and notifies the DSC 3012 of the function of the printer 1000 by SendObject and ObjectData.
[0093]
<CDPS_JobData (standard)>
FIG. 22 shows an example in which the communication procedure when the PD printer 1000 acquires image data (JPEG image) held in the DSC 3012 (CDPS_JobData) in the CDPS according to the present embodiment is realized using the PTP architecture. It is a figure explaining.
[0094]
First, in 1800, when information related to an object held by the DSC 3012 (or storage) is requested, in 1801, information related to the object (Object Dataset) is sent from the DSC 3012 to the PD printer 1000. Next, when an acquisition request (GetObject) is issued by specifying the object in 1802, the requested image file (Object Dataset) is transmitted from the DSC 3012 to the PD printer 1000 in 1803. In this way, the PD printer 1000 can acquire a desired image file from the DSC 3012. Note that the return values in this case are “Data_Size” and “Image_Data”.
[0095]
<CDPS_PageStart (standard)>
FIG. 23 is a diagram for explaining the procedure of print start notification processing in CDPS according to the present embodiment.
[0096]
In this procedure, in 1700, it is notified that there is object information (print start notification) to be transmitted from the PD printer 1000 to the DSC 3012. In 1701, the DSC 3012 is notified of print start by SendObject and ObjectData.
[0097]
<CDPS PageEnd (standard)>
FIG. 24 is a diagram for explaining an example in which the communication procedure for notifying the DSC 3012 of the printing process for one page in the CDPS according to the present embodiment is realized using the PTP architecture.
[0098]
In this procedure, in 1910, it is notified that there is object information (print end notification) to be transmitted from the PD printer 1000 to the DSC 3012. In 1911, the end of printing one page is notified to the DSC 3012 by SendObject and ObjectData. To do.
[0099]
<CDPS_JobEnd (standard)>
FIG. 25 is a diagram for explaining an example in which a communication procedure for notifying the DSC 3012 that the print job has been completed is implemented using the PTP architecture in the CDPS according to the present embodiment.
[0100]
In 1910, the PD printer apparatus 1000 notifies the DSC 3012 that the one-page printing process has been completed, and in 1911, the PD printer apparatus 1000 notifies the DSC 3012 that the print job has been completed.
[0101]
<CDPS Error (standard)>
FIG. 26 is a diagram for explaining an example in which a communication procedure for notifying the DSC 3012 of an error state or the like using the PTP architecture in the CDPS according to the present embodiment.
[0102]
First, in 1900, the object information (error information) desired to be transmitted from the PD printer 1000 to the DSC 3012 is notified by SendObjectInfo. In response to an affirmative response (OK) from the DSC 3012, status information such as an error in the PD printer 1000 is transmitted by SendObject and ObjectData (1902).
[0103]
<CDPS Job (standard)>
FIG. 27 is a diagram for explaining an example in which a communication procedure for notifying the start of a print job from the DSC 3012 (operation control) to the PD printer 1000 in the CDPS according to the present embodiment is realized using the PTP architecture. is there.
[0104]
First, in 2200, RequestObjectTransfer is sent from the DSC 3012 to the PD printer 1000 to notify the DSC 3012 that it wants to issue an instruction. As a result, when GetObjectInfo is issued from the PD printer 1000 in 2201, the DSC 3012 transmits information on object information to be transmitted, and when object information is requested from the PD printer 1000 (GetObject: 2203). In 2204, an Object Dataset (print instruction) is transmitted, and a print command is issued from the DSC 3012 to the PD printer 1000.
[0105]
<CDPS_JobAbort (standard)>
FIG. 28 shows an example in which a communication procedure for issuing a print abort command (CDPS_JobAbort) from the DSC 3012 (operation control) in the CDPS according to the present embodiment to the PD printer 1000 (print control) is realized using the PTP architecture. It is a figure explaining.
[0106]
<CDPS_JobContinue (standard)>
FIG. 29 shows an example in which a communication procedure for issuing a print restart command (CDPS_JobContinue) from the DSC 3012 (operation control) to the PD printer 1000 (print control) in the CDPS according to the present embodiment is realized using the PTP architecture. FIG.
[0107]
28 and 29, after executing the same procedure as in FIG. 27, in 2301 of FIG. 28, a print cancel instruction is issued from the DSC 3012 to the PD printer 1000, and in 2401 of FIG. 29, from the DSC 3012 to the PD printer. 1000 is notified of the print continuation instruction.
[0108]
<CDPS_PartialJobData (standard)>
FIG. 30 shows a partial image acquisition communication procedure (option) when the PD printer 1000 (printing control) acquires image data (JPEG image) held in the DSC 3012 (storage) in the CDPS according to the present embodiment. Is a diagram for explaining an example of realizing the above using a PTP architecture.
[0109]
First, in 1920, when information about an object held by the DSC 3012 is requested, information (Object Dataset) about the object is sent from the DSC 3012 to the PD printer 1000 in 1921. Next, at 1922, the object is specified and an acquisition request (GetObject) is issued. As described above, the partial image acquisition function is instructed by the number of bytes (offset) from the beginning of the desired image data and the number of bytes (size) of the image data to be acquired. The partial image data of the image file (Object Dataset) is transmitted from the DSC 3012 to the PD printer 1000. In this way, the PD printer 1000 can acquire desired partial image data from the DSC 3012. Note that the return values in this case are “Data_Size” and “Image_Data”.
[0110]
FIG. 31 shows a DSC when the PD printer apparatus 1000 (printing control) receives a partial image acquisition function for acquiring image data (JPEG image) held in the DSC 3012 (storage) in the CDPS according to the present embodiment. Or it is a flowchart explaining the process in a storage.
[0111]
First, in step S21, the handle name of the image file included in <image (#PCDATA)> is acquired, then the process proceeds to step S22, and the number of offset bytes from the head is acquired by “offset”. In S23, the number of bytes of image data to be acquired is acquired from “size”. Thus, the process proceeds to step S24, and the image data of the designated number of bytes is read from the offset position of the designated image file in the storage device 811. In step S25, the read partial image data is sent to the requesting PD printer 1000 or print control 803.
[0112]
As described above, when the PD printer 1000 acquires a partial image of the image held by the DSC 3012 on the PTP architecture, the PD printer has the “image file handle”, “offset byte count from the beginning”, and A PTP operation “GetPartialObject” in which “number of bytes of partial image data to be acquired” is described as a parameter is issued. The DSC 3012 identifies the requested partial image data portion based on the parameters of the PTP operation, and sends the partial image data to the PD printer 1000 as a response to the PTP operation, thereby realizing the transfer of the partial image data.
[0113]
In the above description, the case where the PTP architecture is used on the physical layer USB has been described, but an example using other architecture will be described below.
[0114]
[MSC architecture]
Here, an example using MSC (Mass Storage Class) will be described. Here, a Mass Storage Class USB interface shown in FIG. 7 is used. In this case, the UI of the PD printer 1000 is used without using the UI of the DSC 3012. Accordingly, the above-described operation control 801, storage control 802, and print control 803 are all arranged in the PD printer 1000. Basically, using the file system of the PD printer 1000, the above-described GetJobData, GetPartialJobData, and GetDataList (by the File system) are executed by image file Open, Read, Close, and directory operations (file operations). .
[0115]
<CDPS_ServiceDiscovery (standard / extended)>
In this case, CDPS_ServiceDiscovery is sent from the PD printer apparatus 1000 to the DSC 3012. If the DSC 3012 does not have a function for the above-described CDPS initialization 800 but does not respond to it, the PD printer apparatus 1000 automatically transitions to MSC (bulk only) on the assumption that reception has been established as “standard”, operation control 801, storage control 802, and print control 803 are set to the PD printer 1000 side, and CDPS_GetPartialData is “supported”. And
[0116]
<CDPS_JobData (standard)>
The PD printer 1000 acquires image data specified by a print command. Here, “Receive Command” is issued from the PD printer 1000 to the DSC 3012, and in response to this, image data “Image Data” is transmitted from the DSC 3012 to the PD printer 1000. Actually, the image data of the storage device 811 is acquired using a SCSI command via the file system constructed in the PD printer 1000. Note that the return values at this time are “Data Size” and “Image Data”.
[0117]
<CDPS_PartialJobData (optional)>
This procedure is basically the same as the case of “CDPS_JobData” described above, except that image data is partially acquired. In this case, the return values are also “Data Size” and “Image Data”.
[0118]
As described above, when the PD printer apparatus 1000 acquires a partial image of the image held by the DSC 3012 on the MSC architecture, the PD printer apparatus displays “handle of image file”, “number of offset bytes from the top”, Based on “number of bytes of partial image data to be acquired” and “file system of PD printer device 1000”, “read position (address)” and “number of read bytes” in the storage held by DSC 3012 are described as parameters. Issue SCSI command “Receive”. The DSC 3012 transmits partial image data by sending the requested data to the PD printer 1000 as a response to the SCSI command based on the parameters of the SCSI command. In this case, unlike the case of the PTP architecture, the SCSI command parameters received by the DSC 3012 do not include information such as “handle of image file” and “number of offset bytes from the beginning”. Whether the SCSI command is issued based on CDPS_JobData or the one issued based on CDPS_PartialJobData cannot be distinguished.
[0119]
[Bluetooth architecture]
Here, an example using Bluetooth will be described. Here, the rightmost interface in FIG. 7 is used. In this embodiment, as a communication layer above the physical layer, a session between two devices can be established and objects can be sent and received. The Bluetooth Still Image Profile is used to describe the agreement of the upper application layer. is doing.
[0120]
In the case of this Bluetooth Still Image Profile, in addition to the above-described connection, another connection in the direction of DSC (Host) → PD printer (Slave) is formed, and a normal “PutImage” command is issued from the DSC. Information is sent out. For convenience, here
Connection 1: PD printer (host) → DSC (slave)
Connection 2: PD printer (slave) → DSC (host)
And
[0121]
Hereinafter, the protocol of each service function in this Bluetooth will be described. The service functions shown in FIGS. 32 to 43 correspond to the service functions shown in FIGS. 19 to 30, and will be described here briefly.
[0122]
<CDPS_ServiceDicovery (standard / extended)>
FIG. 32 shows a protocol of a procedure for transition to CDPS in Bluetooth. Here, as in FIG. 19, the connection partner is recognized by the keywords ("mountain", "river"). In addition, the DSC 3012 notifies the support level of the UI included in the DSC 3012 to this keyword. As a result, the PD printer 1000 adds a keyword indicating which UI of the DSC or the PD printer 1000 is to be used, and notifies the DSC 3012 of it.
[0123]
<CDPS_ServiceDiscovery (standard / extended)>
FIG. 33 is a diagram showing the continuation of the protocol of the procedure for transitioning to CDPS in Bluetooth, and communication in the CDPS mode between the DSC 3012 and the PD printer apparatus 1000 is established.
[0124]
<CDPS_Service (standard)>
FIG. 34 is a diagram showing the protocol of the function notification procedure of the PD printer device in Bluetooth. The PD printer device 1000 notifies the DSC 3012 of the function of the PD printer device 1000.
[0125]
<CDPS_JobData (standard)>
FIG. 35 is a diagram showing a protocol in which the PD printer 1000 acquires image data from the DSC 3012 by a print command in Bluetooth, and the return values in this case are “Data Size” and “Image Data”.
[0126]
<CDPS_PageStart (standard)>
FIG. 36 is a diagram showing a protocol for notifying the DSC 3012 of the start of printing from the PD printer 1000 in Bluetooth.
[0127]
<CDPS_PageEnd (standard)>
FIG. 37 is a diagram showing a protocol for notifying the DSC 3012 of the end of printing of one page from Bluetooth in the Bluetooth.
[0128]
<CDPS_JobEnd (standard)>
FIG. 38 is a diagram showing a protocol for notifying the end of a print job from the PD printer 1000 to the DSC 3012 in Bluetooth.
[0129]
<CDPS_Error (standard)>
FIG. 39 is a diagram illustrating a protocol for notifying a printer error from the PD printer 1000 to the DSC 3012 in Bluetooth.
[0130]
<CDPS_Job (standard)>
FIG. 40 is a diagram illustrating a protocol for issuing a print command from the DSC 3012 to the PD printer 1000 in Bluetooth.
[0131]
<CDPS_JobAbort (standard)>
FIG. 41 is a diagram showing a protocol for issuing a print stop command from the DSC 3012 to the PD printer 1000 in Bluetooth.
[0132]
<CDPS_JobContinue (standard)>
FIG. 42 is a diagram showing a protocol for issuing a print restart command from the DSC 3012 to the PD printer 1000 in Bluetooth.
[0133]
<CDPS_PartialJobData (optional)>
FIG. 43 is a diagram illustrating a protocol in which the PD printer 1000 acquires partial image data from the DSC 3012 by a print command in Bluetooth, and the return values in this case are “Data Size” and “Image Data”.
[0134]
As described above, when the PD printer 1000 acquires a partial image of the image held by the DSC 3012 on the Bluetooth architecture, the PD printer has the “image file handle”, “offset byte count from the top”, and A Bluetooth command “GetParialImage” in which “the number of bytes of partial image data to be acquired” is described as a parameter is issued. The DSC 3012 identifies the requested partial image data portion based on the parameters of the Bluetooth command, and sends the partial image data to the PD printer 1000 as a response to the Bluetooth command, thereby realizing the transfer of the partial image data. This transfer method is almost the same as the implementation method on the PTP architecture.
[0135]
As described above, the PD printer 1000 transmits a request command for partial image data to the DSC 3012 according to the communication protocol and interface used for communication with the DSC 3012 that is the image providing apparatus.
[0136]
At this time, the information sent from the image supply device can be made common regardless of the type of interface used. In other words, the operation unit of the image supply apparatus is operated to instruct an image to be output and its output form, and the instructed information (job data) is interpreted by the PD printer 1000 as the output apparatus, and the type of interface This is because a partial image request command corresponding to the above is transmitted.
[0137]
With such a configuration, it is possible to reduce the conversion processing load of an image supply device such as the DSC 3012 that is expected to have poor power supply capability. On the other hand, in an output device such as the PD printer 1000, in order to make a partial image request in accordance with its output capability and output status, it is preferable to convert job data on the output device side and generate a partial image request. Easy to control the system.
[0138]
In the Bluetooth architecture, unlike the PTP architecture and the MSC architecture, a data transfer request (PutImage) in the direction from the DSC 3012 to the PD printer device 1000 can be issued from the DSC 3012 side, so the following implementation method should be used. You can also. An example of this is shown below. An arrow from left to right indicates a data flow from the PD printer to the DSC, and an arrow from right to left indicates a data flow from the DSC to the PD printer.
[0139]
Figure 0004367902
[0140]
First, the PD printer device 1000 issues “PutImage” as a script like other CDPS commands (eg, CDPS_PageStart) and sends it to the DSC 3012 as CDPS_PartialJobData. Upon receiving the script of CDPS_PartialJobData, the DSC 3012 identifies the requested data based on “handle of image file”, “number of offset bytes from the beginning” and “number of bytes of partial image data to be acquired” described in the script. The partial image data transfer is realized by issuing a Bluetooth command “PutImage” and sending it to the PD printer 1000.
[0141]
There are suitable implementation methods for CDPS_JobData and CDPS_PartialJobData in each of the three types of PTP, MSC, and Bluetooth architectures described so far. Since all information and data to be acquired are the same, the application layer can be used in common. Also, when CDPS is ported to another architecture, there can be a suitable implementation method that matches the characteristics of the architecture.
[0142]
Which architecture is used by the PD printer 1000 that actually supports a plurality of architectures to perform CDPS processing depends on the architecture supported by the connected DSC 3012. Conversely, which architecture the DSC 3012 that actually supports a plurality of architectures uses to perform CDPS processing is determined by the architecture supported by the connected PD printer device 1000. If both the PD printer device 1000 and the DSC 3012 support a plurality of architectures, the architecture used for the user is determined using the UI of any device, or used in the implementation of any device. For example, the priority of the architecture should be set.
[0143]
44A to 44C show a DSC 3012 and a PD printer as a reference for determining how to share the above-described various control functions (operation control 801, storage control 802, and print control 803) in the flowchart of FIG. FIG. 44A shows the support level of operation control 801, FIG. 44B shows the support level of storage control 802, and FIG. 44C shows the support level of print control 803. ing. Here, the DSC 3012 can set support levels of levels “0” to “4”, and the PD printer 1000 can set support levels of levels “1” to “3”. If the DSC 3012 and the PD printer 1000 are at the same support level, it is up to the discretion of the judgment side to decide which function has priority.
[0144]
For example, in the support level of the operation control 801 in FIG. 44A, level “4” indicates that the function of the DSC 3012 is used, and level “3” indicates that a viewer and operation buttons are provided. Level “2” indicates that only an operation button is present, level “1” indicates that only a minimum function is provided, and level “0” indicates that the function is not supported.
[0145]
44B, the level “4” indicates that the function of the DSC 3012 is used, and the level “3” indicates that the handle function is provided. Level “2” has an image file system, level “1” indicates that only a function capable of accessing the storage device 811 is provided, and level “0” indicates that the function is not supported. Yes.
[0146]
Further, in the support level of the print control 803 in FIG. 44C, level “4” indicates that the function of the DSC 3012 is used, and level “3” indicates that the rendering function is provided. Level “2” indicates only gradation processing, level “1” indicates that only a JPEG decoding function is provided, and level “0” indicates that the function is not supported.
[0147]
The functions of the PD printer 1000 and DSC 3012 shown in this way are compared, and for each function, it is determined which function is most efficient, and the above-described FIGS. Function sharing as shown in FIGS. 17 and 18 is performed.
[0148]
Note that the present invention can be applied to a system (for example, a copier, a facsimile machine, etc.) composed of a single device even if it is applied to a system composed of a plurality of devices (for example, a host computer, interface device, reader, printer, etc.). May be.
[0149]
In addition, an object of the present invention is to provide a storage medium (or recording medium) that records a program code of software that realizes the functions of the above-described embodiments (processing performed on the camera side, various printing processes performed on the printer side), This can also be achieved by supplying to a system or apparatus and reading and executing the program code stored in the storage medium by the computer (or CPU or MPU) of the system or apparatus. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention. Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. A case where part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
[0150]
Furthermore, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is determined based on the instruction of the program code. The case where the CPU of the expansion card or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing is also included.
[0151]
As described above, according to the present embodiment, the PD printer is set as the USB host, the DSC is set as the slave, and before starting the printing operation, it is necessary for the photo direct printing between the PD printer and the DSC. Functions can be shared, and printing can be performed by determining an optimum or desired print mode on the DSC side. Further, when the functions are shared, for example, when the DSC 3012 does not support the CDPS itself, in step S11 in FIG. 11, the support level of each of the functions 800 to 803 in the DSC 3012 is notified to the PD printer 1000 itself. Impossible. Even in that case, if the support level of each function 800 to 803 of the DSC 3012 is regarded as 0 and all these functions 800 to 803 are supported on the PD printer 1000 side, the CDPS non-compliant Even with the DSC 3012, it is possible to perform direct printing substantially using the CDPS resources in common. The process of “assuming the support level as 0” may be realized in any hierarchy in FIG.
[0152]
By using resources in common, it is possible to expect effects such as shortening the development period, reducing costs, reducing resources, and improving reliability in realizing direct printing with both compatible and non-compatible devices.
[0153]
In this embodiment, the PD printer is set as the USB host and the DSC is set as the slave. However, there is no need to be particularly concerned with this combination, and any function sharing that is the main point of the present invention can be performed. The device may be in charge of the host / slave.
[0154]
Further, in the present invention, the device that performs the act of determining the higher usability during the function sharing process in the CDPS is not limited to the PD printer 1000, and may be performed by the DSC 3012.
[0155]
Furthermore, the function sharing process in the CDPS is not limited to the method of comparing the usability of the functions 800 to 803 but may be performed for each function group in which a plurality of functions in the functions 800 to 803 are collected.
[0156]
For example, among the separation positions A to D in FIG. 16, it is transmitted to the DSC 3012 which separation position the PD printer device 1000 can handle, and the separation position where the DSC 3012 finally connects is determined. You may transmit to the apparatus 1000.
[0157]
In addition, a predetermined separation position determination method (eg, a desired position of the PD printer device 1000 is given priority) is shared in advance by the PD printer device 1000 and the DSC 3012, and both devices can be separated by each device. A method may be used in which the position is transmitted to the counterpart device and the cut position determined according to the shared cut position determination method is shared. In this case, it is necessary to share the arrangement order of functions as shown in FIGS.
[0158]
In this embodiment, the four types of functions 800 to 803 have been described. However, the present invention is not limited to these four types of divisions, and partial function sharing processing is performed for each of the plurality of partial functions constituting each function of the functions 800 to 803. May be performed. For example, the partial functions constituting the print control include an image format support function, a layout printing function, a date / file name printing function, an image correction function, a size fixing printing function, an image cutout printing function, a print job format support function, and the like.
[0159]
Hereinafter, an embodiment of the function sharing of each partial function will be described.
[0160]
[Image format support function]
First, an image format (eg, JPEG, TIFF, etc.) supported by the PD printer device 1000 is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 side is in charge of the image formats supported by the PD printer device 1000, and the DSC 3012 side is in charge of other image formats, and transmits them to the PD printer device 1000.
[0161]
When outputting a photographic image of an image format handled by the PD printer device 1000, the DSC 3012 transmits the photographic image to be printed to the PD printer device 1000, and the PD printer device 1000 outputs the transmitted photographic image.
[0162]
When outputting a photographic image in the image format handled by the DSC 3012, the photographic image in the image format handled by the DSC 3012 is converted into an image format supported by the PD printer device 1000 to create a format-converted photographic image. The format-converted photographic image is transmitted to the PD printer device 1000. The PD printer device 1000 outputs the transmitted format-converted photographic image.
[0163]
[Layout Print Function]
First, the layout printing function supported by the PD printer device 1000 (eg, 2 photo images, 4 photo images, etc. per page) is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 is in charge of the case where the PD printer device 1000 supports the layout printing function, and otherwise determines that the DSC 3012 is in charge and transmits it to the PD printer device 1000. To do.
[0164]
When the PD printer device 1000 takes charge of the layout printing function and outputs it, the DSC 3012 transmits the photographic image to be printed and the layout print information to the PD printer device 1000, and the PD printer device 1000 transmits the photographic image and layout to be transmitted. Based on the print information, a photographic image layout print is output.
[0165]
When the DSC 3012 takes charge of the layout printing function and outputs it, the DSC 3012 creates one laid-out photographic image including a plurality of photographic images based on the photographic image and the layout print information, and the laid-out photographic image is displayed. This is transmitted to the PD printer device 1000. The PD printer device 1000 outputs the transmitted photographic image.
[0166]
[Date / file name printing function]
First, the date / file name printing function supported by the PD printer 1000 is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 is in charge of the case where the PD printer device 1000 supports the date / file name printing function, and otherwise determines that the DSC 3012 is in charge. 1000.
[0167]
When the PD printer device 1000 takes charge of the date / file name printing function and outputs it, the DSC 3012 transmits to the PD printer device 1000 the photographic image to be printed and the date / file name information attached to the photographic image. The device 1000 outputs the transmitted photographic image and date / file name information.
[0168]
When the DSC 3012 is in charge of the date / file name printing function and outputs it, the DSC 3012 generates date / file name information attached to the photographic image as print information, and synthesizes it with the photographic image to generate a combined photographic image. The created photographic image is transmitted to the PD printer device 1000. The PD printer device 1000 outputs the transmitted combined photographic image.
[0169]
[Image correction function]
First, the image correction function supported by the PD printer device 1000 is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 side is in charge of the image correction functions supported by the PD printer device 1000, and the DSC 3012 side is in charge of other image correction functions, and transmits them to the PD printer device 1000. To do.
[0170]
When the PD printer device 1000 is in charge of the image correction function and outputs it, the DSC 3012 transmits the photographic image to be printed and the image correction information accompanying the photographic image to the PD printer device 1000, and the PD printer device 1000 is transmitted. Based on the photograph image and the image correction information, the photograph image is subjected to image correction and output.
[0171]
When the DSC 3012 takes charge of the image correction function and outputs it, the image correction function for which the DSC 3012 is in charge is applied to the photographic image, an image-corrected photographic image is created, and the image-corrected photographic image is output to the PD printer device 1000. To communicate. The PD printer device 1000 outputs the transmitted image corrected photographic image.
[0172]
[Fixed size printing function]
First, the fixed size printing function supported by the PD printer device 1000 (eg, printing a photo in L size regardless of the paper size, printing in 2L size, etc.) is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 is in charge of the case where the PD printer device 1000 supports the fixed size printing function, and otherwise determines that the DSC 3012 is in charge. introduce.
[0173]
When the PD printer device 1000 takes charge of the fixed size printing function and outputs it, the DSC 3012 transmits the photographic image to be printed and the fixed size printing information to the PD printer device 1000, and the PD printer device 1000 transmits the transmitted photographic image. The photographic image is converted to a fixed size based on the fixed size print information and the fixed size converted photographic image is output.
[0174]
When the DSC 3012 takes charge of the fixed size printing function and outputs it, the DSC 3012 converts the photo image to a fixed size based on the photo image and the fixed size print information, creates a fixed size converted photo image, and the fixed size. The converted photographic image is transmitted to the PD printer device 1000. The PD printer device 1000 outputs the transmitted fixed-size converted photographic image.
[0175]
[Image cutout printing function]
First, the image cutout printing function supported by the PD printer device 1000 (eg, cut out and print one rectangular portion in a photograph, cut out and print a circular portion, etc.) is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 is in charge of the case where the PD printer device 1000 supports the image cut-out printing function, and otherwise determines that the DSC 3012 is in charge. To communicate.
[0176]
When the PD printer device 1000 is in charge of the image cutout printing function and outputs it, the DSC 3012 transmits the photographic image to be printed and the image cutout print information to the PD printer device 1000, and the PD printer device 1000 is transferred. A photographic image is cut out based on the photographic image and the image cutout print information, and the image cutout print is output.
[0177]
When the DSC 3012 is in charge of the image cutout printing function and outputs it, the DSC 3012 cuts out the photographic image based on the photographic image and the image cutout print information, creates a cutout photographic image, and cuts out the image. The completed photographic image is transmitted to the PD printer device 1000. The PD printer device 1000 outputs the transmitted photographic image that has been cut out.
[0178]
[Print job format support function]
First, a print job format (for example, DPOF, CDPS job, etc.) supported by the PD printer 1000 is transmitted to the DSC 3012. Next, the DSC 3012 determines that the PD printer device 1000 side is in charge of the print job format supported by the PD printer device 1000, and the DSC 3012 side is in charge of other print job formats, and transmits to the PD printer device 1000. To do.
[0179]
When outputting a print job in a print job format handled by the PD printer device 1000, the DSC 3012 transmits the print job to the PD printer device 1000. The PD printer device 1000 outputs the transmitted print job.
[0180]
When outputting a print job in a print job format handled by the DSC 3012, the print job format handled by the DSC 3012 is converted into a print job format supported by the PD printer 1000 and converted print job. And the converted print job is transmitted to the PD printer device 1000. The PD printer device 1000 outputs the transmitted converted print job.
[0181]
For any of the partial functions described above, for the partial functions supported by the PD printer device 1000, the support level on the PD printer device 1000 side is compared with the support level on the DSC 3012 side so that the device side having a higher function is in charge. May be. In some cases, one device may be responsible for all of the partial functions. As such a case, for example, the number of functions shared by one device may be extremely small as compared to the functions shared by other devices, such as one or two. In such a case, it is considered that the efficiency of the system is improved if all functions are shared by one device even if the processing capability is somewhat reduced.
[0182]
Further, it is possible to refer to a function that is actually used or a function that is specified for a job and to use it for determining the sharing of functions. This is because there is no problem even if the functions that are not used are shared by the devices with lower processing levels. In such a case, as a result, all functions are shared by one device.
[0183]
In the above description, the function of the PD printer device 1000 is transmitted to the DSC 3012 and the assignment is determined by the DSC 3012. Conversely, the function of the DSC 3012 is transmitted to the PD printer device 1000 and the assignment is determined by the PD printer device 1000. Also good.
[0184]
In addition, by performing the Capability information and various instructions using a script, porting to another communication protocol is facilitated and standardization is facilitated.
[0185]
In addition, the communication procedure between devices is performed using a general-purpose file and a general-purpose format, and by defining the communication procedure layer of the application according to this embodiment in the upper layer, the communication procedure independent of various interface specifications is specified. can do.
[0186]
In the printing system according to the present embodiment, since an unspecified number of apparatuses are connected to each other, their interfaces are various. Therefore, it is necessary to exchange information according to specifications that are supported by various interfaces as standard. Therefore, function information essential for transmission / reception between these devices is realized by “file transfer” or “object transfer”, so that it can be easily adapted to various interface specifications.
[0187]
In addition to the digital camera, the image supply device may be a PDA, a mobile phone, a television, a video device, an image storage device, or the like.
[0188]
Similarly, as a printing system, in addition to a printer, a television that performs display on a display element such as a cathode ray tube, a video device that performs writing on a large-capacity storage medium, an information recording device, and the like can be considered.
[0189]
The general-purpose interface includes connection to a network such as the Internet in addition to the above-described USB and IEEE1394.
[0190]
In this way, for example, when one PD printer device has a plurality of types of general-purpose I / F and performs direct printing with a plurality of different DSCs using each general-purpose I / F, As an application, it is possible to use resources of the same CDPS.
[0191]
Conversely, the same can be said when one DSC has a plurality of types of general-purpose I / Fs and performs direct printing with a plurality of different PD printers using the respective general-purpose I / Fs. However, image data transfer (partial transfer) that requires high-speed processing may be optimized using a dedicated protocol for each I / F.
[0192]
【The invention's effect】
As described above, according to the present invention, it is possible to receive and record image data from image supply devices of various companies by performing image data transfer and recording instructions independent of the interface.
[0193]
In addition, an optimal direct print service can be provided between the DSC-PD printers.
[0194]
Furthermore, a direct print service can be efficiently provided using a common resource in connection with a device not supporting CDPS.
[0195]
In addition, according to the present invention, there is an effect that a standard communication protocol between the image supply device and the recording apparatus is defined, and a recording process that does not depend on the type or manufacturer of these devices or apparatuses can be executed.
[Brief description of the drawings]
FIG. 1 is a schematic perspective view of a PD printer apparatus according to an embodiment of the present invention.
FIG. 2 is an overview diagram of an operation panel of the PD printer according to the present embodiment.
FIG. 3 is a block diagram illustrating a configuration of a main part related to control of the PD printer according to the present embodiment.
FIG. 4 is a block diagram showing a configuration of an ASIC of the PD printer apparatus according to the present embodiment.
FIG. 5 is a block diagram showing a configuration of a digital camera according to the present embodiment.
FIG. 6 is a diagram illustrating an outline of a CDPS communication procedure according to the present embodiment.
FIG. 7 is a conceptual diagram for explaining an interface and software configuration of a PD camera and a digital camera mounted with CDPS according to the present embodiment.
FIG. 8 is a conceptual diagram of service functions in CDPS according to the present embodiment.
FIG. 9 is a flowchart illustrating an outline of processing up to printing in CDPS according to the present embodiment.
FIG. 10 is a conceptual diagram of a service function in a DSC and PD printer in CDPS according to the present embodiment.
FIG. 11 is a flowchart for explaining an overview of processing from when the PD printer according to the present embodiment and the DSC are connected until CDPS is started.
FIG. 12 is a diagram showing an example of function sharing between the DSC and the PD printer in the CDPS according to the present embodiment.
FIG. 13 is a diagram showing an example of function sharing between the DSC and the PD printer in the CDPS according to the present embodiment.
FIG. 14 is a diagram showing an example of function sharing between the DSC and the PD printer in the CDPS according to the present embodiment, and the DSC is handled as mass storage here.
FIG. 15 is a diagram for explaining function commands in CDPS according to the present embodiment;
FIG. 16 is a flowchart illustrating a service function and a processing flow between a DSC and a PD printer in the CDPS according to the present embodiment.
FIG. 17 is a flow diagram illustrating an example of service function sharing (allocation) between a DSC and a PD printer in the CDPS according to the present embodiment, and a processing flow;
FIG. 18 is a flowchart illustrating an example of service function sharing (allocation) between a DSC and a PD printer in the CDPS according to the present embodiment, and a processing flow;
FIG. 19 is a diagram illustrating an example in which CDPS service discovery (CDPS_ServiceDiscovery) is implemented using a PTP architecture;
FIG. 20 is a diagram illustrating an example in which a procedure for notifying a procedure used by a camera (CDPS_ServiceDiscovery) is realized using a PTP architecture in CDPS.
FIG. 21 is a diagram illustrating an example in which notification of a printer function in CDPS (CDPS_Service) is realized using a PTP architecture.
FIG. 22 is a diagram illustrating an example in which a procedure of a function (CDPS_JobData) in which a PD printer device acquires an image file is realized using a PTP architecture in CDPS.
FIG. 23 is a diagram for explaining an example in which a function (CDPS_PageStart) for instructing a camera to start printing from a PD printer apparatus is implemented using a PTP architecture in CDPS.
FIG. 24 is a diagram for explaining an example in which a procedure of a function (CDPS_PageEnd) for transmitting a print end of one page from the PD printer to the camera is realized using the PTP architecture in CDPS.
FIG. 25 is a diagram for explaining an example in which a procedure for issuing a print job end command (CDPS_JobEnd) from a PD printer to a camera is implemented using a PTP architecture in CDPS.
FIG. 26 is a diagram illustrating an example in which a procedure of a function (CDPS_Error) for transmitting an error status from a PD printer to a camera is realized using a PTP architecture in CDPS.
FIG. 27 is a diagram illustrating an example in which a procedure for issuing a print command (CDPS_Job) from operation control to print control is realized using a PTP architecture in CDPS.
FIG. 28 is a diagram for explaining an example in which a procedure for issuing a print abort (CDPS_JobAbort) from the operation control to the print control is realized using the PTP architecture in CDPS.
FIG. 29 is a diagram illustrating an example in which a procedure for issuing a print restart (CDPS_JobContinue) from operation control to print control is realized using the PTP architecture in CDPS.
FIG. 30 is a diagram for explaining an example in which a procedure for issuing partial image acquisition (CDPS_PrintJobData) from the print control to the storage is realized using the PTP architecture in CDPS.
FIG. 31 is a flowchart illustrating partial image acquisition processing in CDPS.
FIG. 32 is a diagram illustrating a communication protocol of a migration command to CDPS in Bluetooth.
FIG. 33 is a diagram for explaining a communication protocol of a migration command to CDPS in Bluetooth.
FIG. 34 is a diagram for explaining a communication protocol for printer function notification processing in Bluetooth.
FIG. 35 is a diagram illustrating a communication protocol for processing to acquire image data from a Bluetooth storage.
FIG. 36 is a diagram illustrating a communication protocol for Bluetooth print start notification.
FIG. 37 is a diagram illustrating a communication protocol for print end notification in Bluetooth.
FIG. 38 is a diagram illustrating a communication protocol for print job end notification in Bluetooth.
FIG. 39 is a diagram illustrating a communication protocol for printer error notification in Bluetooth.
FIG. 40 is a diagram illustrating a communication protocol for print command issuance processing in Bluetooth.
FIG. 41 is a diagram for explaining a communication protocol for issuing a print stop command in Bluetooth.
FIG. 42 is a diagram illustrating a communication protocol for a print job restart command issuance process in Bluetooth.
FIG. 43 is a diagram illustrating a communication protocol for partial image acquisition processing in Bluetooth.
FIG. 44 is a diagram for describing the support levels of the DSC and the PD printer that are the basis for determining how to share various control functions (operation control, storage control, and print control).

Claims (22)

画像供給デバイスと記録装置とが通信インターフェースを介して直接通信し、前記画像供給デバイスから前記記録装置に画像データを送信して記録する記録システムであって、
前記記録装置と前記画像供給デバイスとの間信する通信手段と、
少なくともユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により取得し、前記画像供給デバイスのサポートレベルと前記記録装置のサポートレベルとを比較して前記操作制御機能の分担を決める分担手段と、
記画像供給デバイスと前記記録装置との間で画像データ及びコマンドの授受を行って、前記画像供給デバイスから送信された画像データを用いて前記記録装置で記録を行う記録制御手段とを有し
前記操作制御機能を用いて記録すべき画像データを選択し、前記記録制御手段は、前記操作制御機能を用いて選択された画像データに基づいて記録を行うことを特徴とする記録システム。
A recording system in which an image supply device and a recording apparatus communicate directly via a communication interface and transmit and record image data from the image supply device to the recording apparatus,
Communication means you communication between the image supply device and the recording device,
Functional information including at least a support level of an operation control function for controlling a user interface is acquired by the communication means, and the support level of the image supply device and the support level of the recording apparatus are compared to share the operation control function. The sharing means to decide,
Performing exchange of image data and commands between the previous SL image supply device said recording apparatus, and a recording control means for recording in the recording apparatus using the image data transmitted from the image supply device ,
A recording system, wherein image data to be recorded is selected using the operation control function, and the recording control means performs recording based on the image data selected using the operation control function .
前記機能情報は、前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルも含み、前記分担手段は、前記機能情報に応じて、前記記憶制御機能の分担も決めることを特徴とする請求項1に記載の記録システム。The function information also includes a support level of a storage control function for managing image data recorded on a recording medium of the image supply device, and the sharing means determines the storage control function according to the function information. The recording system according to claim 1, wherein sharing is also determined. 画像供給デバイスと記録装置とが通信インターフェースを介して直接通信し、前記画像供給デバイスから前記記録装置に画像データを送信して記録する記録システムであって、A recording system in which an image supply device and a recording apparatus communicate directly via a communication interface and transmit and record image data from the image supply device to the recording apparatus,
前記記録装置と前記画像供給デバイスとの間で通信する通信手段と、Communication means for communicating between the recording apparatus and the image supply device;
少なくとも前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルを含む機能情報を前記通信手段により取得し、前記画像供給デバイスのサポートレベルと前記記録装置のサポートレベルとを比較して前記記憶制御機能の分担を決める分担手段と、Capability information including at least a support level of a storage control function for managing image data recorded on a recording medium of the image supply device is acquired by the communication unit, and the support level of the image supply device and the recording device A sharing means for comparing the support level to determine the sharing of the storage control function;
前記画像供給デバイスと前記記録装置との間で画像データ及びコマンドの授受を行って、前記画像供給デバイスから送信された画像データを用いて前記記録装置で記録を行う記録制御手段とを有し、Recording control means for performing transmission and reception of image data and commands between the image supply device and the recording apparatus, and performing recording with the recording apparatus using image data transmitted from the image supply device;
前記記録制御手段は、前記記憶制御機能により管理される前記記録媒体の画像データを用いて記録を行うことを特徴とする記録システム。The recording system according to claim 1, wherein the recording control means performs recording using image data of the recording medium managed by the storage control function.
前記機能情報は、ユーザインターフェースを制御する操作制御機能のサポートレベルも含み、前記分担手段は、前記機能情報に応じて、前記操作制御機能の分担も決めることを特徴とする請求項3に記載の記録システム。4. The function information according to claim 3, wherein the function information includes a support level of an operation control function for controlling a user interface, and the sharing means also determines sharing of the operation control function according to the function information. Recording system. 前記サポートレベルは自機の機能を使用することを主張するレベル及び機能をサポートしていないレベルを含むことを特徴とする請求項1乃至4のいずれか1項に記載の記録システム。5. The recording system according to claim 1, wherein the support level includes a level that claims to use the function of the own device and a level that does not support the function. 前記通信インターフェースにおいて、前記記録装置をホストに、前記画像供給デバイスをスレーブとして設定し、前記分担工程は前記記録装置で実行されることを特徴とする請求項1乃至5のいずれか1項に記載の記録システIn the communication interface, wherein the recording device to the host, setting the image supply device as a slave, the sharing process according to any one of claims 1 to 5, characterized in that it is executed by the recording device of the recording system. 前記通信インターフェースにおいて、前記記録装置をホストに、前記画像供給デバイスをスレーブとして設定し、前記分担工程は前記画像供給デバイスで実行されることを特徴とする請求項1乃至5のいずれか1項に記載の記録システIn the communication interface, the recording device to a host, the image supply device is set as a slave, the sharing process to any one of claims 1 to 5, characterized in that it is executed in the image supply device recording system described. 前記機能情報は、画像フォーマットサポート機能、レイアウト印刷機能、日付・ファイル名印刷機能、画像補正機能、サイズ固定印刷機能、画像切り出し印刷機能、印刷ジョブフォーマットサポート機能のうちの少なくとも1つの機能の情報を含み、前記分担手段は、前記機能情報に応じて前記機能の分担も決めることを特徴とする請求項乃至のいずれか1項に記載の記録システThe function information, an image format support function, a layout print function, a date file name print function, an image correction function, the size fixed print function, an image clipping print function, at least one information of the function of the print job format support function only including the sharing unit, recording system according to any one of claims 1 to 7, wherein the determining also share the functions according to the function information. 通信インターフェースを介して画像供給デバイスと直接接続し、前記画像供給デバイスから画像データを受信して印刷する印刷装置であって、
前記画像供給デバイスと通信する通信手段と、
少なくとも印刷対象の画像を選択するためのユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により前記画像供給デバイスから受信し、受信した前記画像供給デバイスのサポートレベルに応じて前記操作制御機能の分担を決める分担手段と、
記画像供給デバイスから前記操作制御機能を用いて選択された印刷対象の画像データを受信し、受信した画像データに基づいて印刷を行う印刷制御手段と、
を有することを特徴とする印刷装置。
A printing apparatus that directly connects to an image supply device via a communication interface, receives image data from the image supply device, and prints the image data.
Communication means for communicating with the image supply device;
Function information including at least a support level of an operation control function for controlling a user interface for selecting an image to be printed is received from the image supply device by the communication unit, and according to the received support level of the image supply device Sharing means for determining the sharing of the operation control function;
Receiving image data to be printed selected from pre-Symbol image supply device by using the operation control function, a print control means for printing based on the received image data,
A printing apparatus comprising:
前記機能情報は、前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルも含み、前記分担手段は、前記機能情報に応じて、前記記憶制御機能の分担も決めることを特徴とする請求項9に記載の印刷装置。The function information also includes a support level of a storage control function for managing image data recorded on a recording medium of the image supply device, and the sharing means determines the storage control function according to the function information. The printing apparatus according to claim 9, wherein sharing is also determined. 通信インターフェースを介して画像供給デバイスと直接接続し、前記画像供給デバイスから画像データを受信して印刷する印刷装置であって、A printing apparatus that directly connects to an image supply device via a communication interface, receives image data from the image supply device, and prints the image data.
前記画像供給デバイスと通信する通信手段と、Communication means for communicating with the image supply device;
少なくとも前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルを含む機能情報を前記通信手段により取得し、前記画像供給デバイスのサポートレベルに応じて前記記憶制御機能の分担を決める分担手段と、Capability information including at least a support level of a storage control function for managing image data recorded on a recording medium of the image supply device is acquired by the communication unit, and the storage is performed according to the support level of the image supply device. Sharing means for determining the sharing of control functions;
前記記憶制御機能により管理される前記記録媒体の画像データを前記画像供給デバイスから取得し、当該取得した画像データに基づいて印刷を行う印刷制御手段と、Print control means for acquiring image data of the recording medium managed by the storage control function from the image supply device, and performing printing based on the acquired image data;
を有することを特徴とする印刷装置。A printing apparatus comprising:
前記機能情報は、ユーザインターフェースを制御する操作制御機能のサポートレベルも含み、前記分担手段は、前記機能情報に応じて、前記操作制御機能の分担も決めることを特徴とする請求項11に記載の印刷装置。12. The function information according to claim 11, wherein the function information also includes a support level of an operation control function for controlling a user interface, and the sharing unit also determines sharing of the operation control function according to the function information. Printing device. 前記サポートレベルは自機の機能を使用することを主張するレベルおよび機能をサポートしていないレベルを含むことを特徴とする請求項9乃至12のいずれか1項に記載の記印刷装置。The printing apparatus according to any one of claims 9 to 12, wherein the support level includes a level that claims to use the function of the own device and a level that does not support the function. 前記分担手段は、前記画像供給デバイスとの通信の確立後に、前記機能情報を受信することを特徴とする請求項9乃至13のいずれか1項に記載の印刷装置。The sharing means, after establishment of communication with the image supply device, a printing device according to any one of claims 9 to 13, characterized in that to receive the pre-Symbol function information. 前記通信手段は、前記画像供給デバイスと複数の通信方法で通信可能であり、前記分担手段は、使用する通信方法に応じて前記画像供給デバイスと前記印刷装置との間での機能の分担を異ならせることを特徴とする請求項9乃至14のいずれか1項に記載の印刷装置。The communication unit can communicate with the image supply device by a plurality of communication methods, and the sharing unit differs in sharing of functions between the image supply device and the printing apparatus according to a communication method to be used. The printing apparatus according to claim 9 , wherein the printing apparatus is a printer. 前記機能情報は、画像フォーマットサポート機能、レイアウト印刷機能、日付・ファイル名印刷機能、画像補正機能、サイズ固定印刷機能、画像切り出し印刷機能、印刷ジョブフォーマットサポート機能のうちの少なくとも1つの機能の情報を含むことを特徴とする請求項乃至15のいずれか1項に記載の印刷装置。The function information, an image format support function, a layout print function, a date file name print function, an image correction function, the size fixed print function, an image clipping print function, at least one information of the function of the print job format support function printing apparatus according to any one of claims 9 to 15, characterized in that it comprises a. 通信インターフェースを介して印刷装置と直接通信し、前記印刷装置に画像データを送信して印刷させる画像供給デバイスであって、
前記印刷装置と通信する通信手段と、
少なくとも印刷対象の画像を選択するためのユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により前記印刷装置から受信し、受信した前記印刷装置のサポートレベルに応じて前記操作制御機能の分担を決める分担手段と、
前記操作制御機能を用いて選択された印刷対象の画像データを前記印刷装置に送信して前記印刷装置により印刷を行わせる印刷制御手段と、
を有することを特徴とする画像供給デバイス。
An image supply device that directly communicates with a printing apparatus via a communication interface and transmits the image data to the printing apparatus for printing.
Communication means for communicating with the printing apparatus;
Function information including at least a support level of an operation control function for controlling a user interface for selecting an image to be printed is received from the printing apparatus by the communication unit, and the operation is performed according to the received support level of the printing apparatus. Sharing means for determining the sharing of control functions;
And print control means for causing the printing by the printing device to send image data to be printed which is selected by using the operation control function to the printing apparatus,
An image supply device comprising:
通信インターフェースを介して印刷装置と直接通信し、前記印刷装置に画像データを送信して印刷させる画像供給デバイスであって、An image supply device that directly communicates with a printing apparatus via a communication interface and transmits the image data to the printing apparatus for printing.
前記印刷装置と通信する通信手段と、Communication means for communicating with the printing device;
少なくとも前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルを含む機能情報を前記通信手段により前記印刷装置から取得し、前記印刷装置の前記記憶制御機能のサポートレベルに応じて前記記憶制御機能の分担を決める分担手段と、Capability information including at least a support level of a storage control function for managing image data recorded on a recording medium of the image supply device is acquired from the printing apparatus by the communication unit, and the storage control function of the printing apparatus Sharing means for deciding sharing of the storage control function according to the support level;
前記記憶制御機能により管理される前記記録媒体の画像データを前記印刷装置に送信して当該印刷装置により印刷を行わせる印刷制御手段と、Print control means for transmitting image data of the recording medium managed by the storage control function to the printing apparatus and performing printing by the printing apparatus;
を有することを特徴とする画像供給デバイス。An image supply device comprising:
通信インターフェースを介して画像供給デバイスと直接接続し、前記画像供給デバイスから画像データを受信して印刷する印刷装置の制御方法であって、
前記画像供給デバイスと通信する通信工程と、
少なくとも印刷対象の画像を選択するためのユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信手段により前記画像供給デバイスから受信し、受信した前記画像供給デバイスのサポートレベルに応じて前記操作制御機能の分担を決める分担工程と、
記画像供給デバイスから前記操作制御機能を用いて選択された印刷対象の画像データを受信し、受信した画像データに基づいて印刷を行う印刷制御工程と、
を有することを特徴とする印刷装置の制御方法。
A method for controlling a printing apparatus that directly connects to an image supply device via a communication interface, receives image data from the image supply device, and prints the image data.
A communication step of communicating with the image supply device;
Function information including at least a support level of an operation control function for controlling a user interface for selecting an image to be printed is received from the image supply device by the communication unit, and according to the received support level of the image supply device A sharing process for determining the sharing of the operation control function;
Receiving image data to be printed selected from pre-Symbol image supply device by using the operation control function, a print control step of performing printing based on the received image data,
A control method for a printing apparatus, comprising:
通信インターフェースを介して画像供給デバイスと直接接続し、前記画像供給デバイスから画像データを受信して印刷する印刷装置の制御方法であって、A method for controlling a printing apparatus that directly connects to an image supply device via a communication interface, receives image data from the image supply device, and prints the image data.
前記画像供給デバイスと通信する通信工程と、A communication step of communicating with the image supply device;
少なくとも前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルを含む機能情報を前記通信手段により取得し、前記画像供給デバイスのサポートレベルに応じて前記記憶制御機能の分担を決める分担工程と、Capability information including at least a support level of a storage control function for managing image data recorded on a recording medium of the image supply device is acquired by the communication unit, and the storage is performed according to the support level of the image supply device. A sharing process that determines the sharing of control functions;
前記記憶制御機能により管理される前記記録媒体の画像データを前記画像供給デバイスから取得し、当該取得した画像データに基づいて印刷を行う印刷制御工程と、A print control step of acquiring image data of the recording medium managed by the storage control function from the image supply device, and performing printing based on the acquired image data;
を有することを特徴とする印刷装置の制御方法。A control method for a printing apparatus, comprising:
通信インターフェースを介して印刷装置と直接通信し、前記印刷装置に画像データを送信して印刷させる画像供給デバイスの制御方法であって、
前記印刷装置と通信する通信工程と、
少なくとも印刷対象の画像を選択するためのユーザインターフェースを制御する操作制御機能のサポートレベルを含む機能情報を前記通信工程で前印刷装置から受信し、受信した前記印刷装置のサポートレベルに応じて前記操作制御機能の分担を決める分担工程と、
前記操作制御機能を用いて選択された印刷対象の画像データを前記印刷装置に送信して前記印刷装置により印刷を行わせる印刷制御工程と、
を有することを特徴とする画像供給デバイスの制御方法。
A method for controlling an image supply device that directly communicates with a printing apparatus via a communication interface and transmits image data to the printing apparatus for printing.
A communication step of communicating with the printing device;
Function information including at least a support level of an operation control function for controlling a user interface for selecting an image to be printed is received from the previous printing apparatus in the communication step, and the operation is performed according to the received support level of the printing apparatus. A sharing process that determines the sharing of control functions;
A print control step to perform printing by said printing device to send image data to be printed which is selected by using the operation control function to the printing apparatus,
A method for controlling an image supply device, comprising:
通信インターフェースを介して印刷装置と直接通信し、前記印刷装置に画像データを送信して印刷させる画像供給デバイスの制御方法であって、A method for controlling an image supply device that directly communicates with a printing apparatus via a communication interface and transmits image data to the printing apparatus for printing.
前記印刷装置と通信する通信工程と、A communication step of communicating with the printing device;
少なくとも前記画像供給デバイスの記録媒体に記録されている画像データを管理するための記憶制御機能のサポートレベルを含む機能情報を前記通信工程で前記印刷装置から取得し、前記印刷装置の前記記憶制御機能のサポートレベルに応じて前記記憶制御機能の分担を決める分担工程と、At least function information including a support level of a storage control function for managing image data recorded on a recording medium of the image supply device is acquired from the printing apparatus in the communication step, and the storage control function of the printing apparatus is acquired. A sharing process for determining the sharing of the storage control function according to the support level of
前記記憶制御機能により管理される前記記録媒体の画像データを前記印刷装置に送信して当該印刷装置により印刷を行わせる印刷制御工程と、A print control step of transmitting image data of the recording medium managed by the storage control function to the printing apparatus and performing printing by the printing apparatus;
を有することを特徴とする画像供給デバイスの制御方法。An image supply device control method comprising:
JP2003190475A 2002-07-05 2003-07-02 Recording system, image supply device, printing apparatus, and control method therefor Expired - Fee Related JP4367902B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003190475A JP4367902B2 (en) 2002-07-05 2003-07-02 Recording system, image supply device, printing apparatus, and control method therefor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002197461 2002-07-05
JP2003190475A JP4367902B2 (en) 2002-07-05 2003-07-02 Recording system, image supply device, printing apparatus, and control method therefor

Publications (3)

Publication Number Publication Date
JP2004088760A JP2004088760A (en) 2004-03-18
JP2004088760A5 JP2004088760A5 (en) 2006-08-17
JP4367902B2 true JP4367902B2 (en) 2009-11-18

Family

ID=32072033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003190475A Expired - Fee Related JP4367902B2 (en) 2002-07-05 2003-07-02 Recording system, image supply device, printing apparatus, and control method therefor

Country Status (1)

Country Link
JP (1) JP4367902B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5576697B2 (en) * 2010-04-14 2014-08-20 オリンパス株式会社 Service using terminal, service providing terminal, service using terminal control method, service providing terminal control method, and service providing system

Also Published As

Publication number Publication date
JP2004088760A (en) 2004-03-18

Similar Documents

Publication Publication Date Title
JP4250408B2 (en) Image supply device, recording apparatus, recording system, and control method therefor
KR100729683B1 (en) Recording system and controlling method therefor
JP4208640B2 (en) Printing system, printing control method, printing apparatus, and control method therefor
JP4027161B2 (en) Printer apparatus and control method thereof
JP2004015234A (en) Printer, control method thereof, and print system
JP3728277B2 (en) DIGITAL CAMERA, ITS CONTROL METHOD, AND PRINT SYSTEM
US8605334B2 (en) Recording system, recording apparatus, and control method therefor
JP3619235B2 (en) RECORDING SYSTEM, ITS CONTROL METHOD, RECORDING APPARATUS AND IMAGE SUPPLY DEVICE
US8035832B2 (en) Recording system and controlling method therefor
JP4367902B2 (en) Recording system, image supply device, printing apparatus, and control method therefor
JP4266948B2 (en) Image supply device and control method thereof
JP2004066602A (en) Recording system, its controlling method, and direct printer
JP2004070610A (en) Printer device, digital camera and control program for digital camera
JP2006012118A (en) Image supply device, recording system, and recording control method
KR100627607B1 (en) Recording system, recording apparatus, and control method therefor
JP4612907B2 (en) Image supply apparatus and control method thereof
JP3840258B1 (en) Digital camera, image output apparatus, image processing system, and control method thereof
JP2006024200A (en) Image output apparatus and its control method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060629

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060629

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081003

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: 20090821

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: 20090824

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120904

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120904

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130904

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees