(57)【要約】【課題】  複数のインタフェースを介したステータス情報の出力を容易に実現し得る印刷装置の内部構成を提供する。【解決手段】  プリンタ１０は、必要とするステータス情報の指定を登録するユーザインタフェースＵＩおよびＰＣインタフェースＰＩＦと、登録されているステータス情報が変化した際に、この変化したステータス情報を、その登録を行ったインタフェースに提供するステータス管理モジュールＤＳＭとを備える。【選択図】  図２
2005119121.tif 000002
【特許請求の範囲】
【請求項１】
印刷用のヘッドを駆動して、媒体に印刷を行う印刷装置であって、
当該印刷装置の外部に対する所定のデータのやり取りを制御する複数の入出力手段と、
前記印刷に関する複数の印刷処理を実現する印刷処理手段と、
前記複数の印刷処理の進行状態に応じて変化する複数のステータス情報を記憶し管理する状態管理手段と
を備え、
少なくとも１つの前記入出力手段は、前記複数のステータス情報のうち該入出力手段が必要とするステータス情報の指定を前記状態管理手段に登録する手段であり、
前記状態管理手段は、前記登録されているステータス情報が変化した際に、該変化したステータス情報を、前記複数の入出力手段のうち該登録を行った入出力手段に提供する手段である
印刷装置。
【請求項２】
請求項１記載の印刷装置であって、
少なくとも１つの前記入出力手段は、前記複数のステータス情報のうち該入出力手段が必要とするステータス情報の指定を前記状態管理手段に登録した後、前記状態管理手段からの該登録したステータス情報の提供が不要となった場合に、該登録を前記状態管理手段から削除する手段である
印刷装置。
【請求項３】
請求項１または２記載の印刷装置であって、
少なくとも１つの前記入出力手段は、前記複数の印刷処理のうちの１つが開始される際に、前記複数のステータス情報のうち該印刷処理に応じたステータス情報の指定を前記状態管理手段に登録し、該印刷処理が終了する際に該登録を前記状態管理手段から削除する手段である
印刷装置。
【請求項４】
請求項１ないし３のいずれか記載の印刷装置であって、
少なくとも１つの前記入出力手段は、前記ステータス情報の指定を登録することによって前記状態管理手段から取得したステータス情報を加工し、該加工されたステータス情報を前記状態管理手段に提供し記憶させる手段である
印刷装置。
【請求項５】
請求項１ないし４のいずれか記載の印刷装置であって、
前記複数の入出力手段には、
当該印刷装置の外部からの前記複数の印刷処理のうちの少なくとも１つに対する指示を受け付けるとともに該印刷処理の進行状態を当該装置の外部に報知する第１の入出力手段、
前記第１の入出力手段と前記印刷処理手段との間を仲介して前記印刷処理手段に前記指示を伝達する第２の入出力手段、
前記第１の入出力手段とは異なる形態で前記指示された印刷処理の進行状態を当該印刷装置の外部に報知する第３の入出力手段
を含み、
前記第２の入出力手段は、前記ステータス情報の指定を登録することによって前記指示された印刷処理に応じたステータス情報を前記状態管理手段から取得し、該取得したステータス情報を加工し、該加工されたステータス情報を前記状態管理手段に提供し記憶させるとともに、前記加工されたステータス情報を前記第１の入出力手段に提供する手段であり、
前記第３の入出力手段は、前記ステータス情報の指定を登録することによって前記加工されたステータス情報を前記状態管理手段から取得する手段である
印刷装置。
【請求項６】
請求項１ないし５のいずれか記載の印刷装置であって、
前記入出力手段には、
ユーザに対する情報のやり取りを制御するユーザインタフェース、
周辺機器に対する情報のやり取りを制御する機器インタフェース
の少なくとも１つを含む
印刷装置。
【請求項７】
請求項１ないし６のいずれか記載の印刷装置であって、
前記印刷処理手段は、
印刷しようとする印刷データを準備するモジュール、該印刷データを印刷用に処理するモジュール、該処理済みの印刷データを印字するために前記ヘッドを含むハードウェアを制御するモジュールを含む複数の処理モジュールと、
前記複数の印刷処理を実現する前記複数の処理モジュールの組み合わせを記憶する組み合わせ記憶手段と、
前記複数の印刷処理の１つが指定されたとき、前記記憶された処理モジュールの組み合わせに従って前記複数の処理モジュールを組み合わせ、該印刷処理を実現する印刷処理実行手段と
を備え、
少なくとも１つの前記処理モジュールは、前記処理中の前記印刷処理に応じた前記ステータス情報を前記状態管理手段に提供し記憶させるモジュールである
印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷処理の進行状態に関するステータス情報の取り扱い技術に関し、複数のインタフェースを介したステータス情報の出力を実現する印刷装置の内部構成に関する。
【背景技術】
【０００２】
コンピュータなどの出力端末として広く普及しているプリンタなどの印刷装置は、コンピュータ側からデータを受け取り、印刷用のヘッドを駆動して、用紙などの媒体上にドットを形成することで印刷を行なっている。プリンタの歴史を振り返ると、当初は、プリンタ内部にフォントを展開するキャラクタジェネレータを有し、コンピュータ側からテキストデータを受け取って印刷を行なっており、コンピュータにおけるグラフィック処理機能の向上・普及に伴って、画像データを受け取ってこれを印刷する処理が加わった。
【０００３】
画像データの印刷は、様々な考え方が採り得るが、コンピュータ上のアプリケーションプログラムが扱うデータの多様性を前提にすると、コンピュータにインストールされたプリンタドライバにより、プリンタのヘッドや紙送りの特性に合わせたデータを生成し、これをプリンタに転送して印刷を行なわせる構成が標準的に採用されてきた。この種のプリンタドライバは、プリンタにおける解像度、インクの色数を含む色の表現能力、印刷用ヘッドのノズル構成（ノズル数やノズルピッチ）、紙送りの精度などのデータを予め記憶しており、このデータに従って、ヘッドが形成すべきドットデータを生成する。例えば、印刷装置であるプリンタが、シアン（Ｃ）、マゼンタ（Ｍ）、イエロ（Ｙ）、ブラック（Ｋ）のインクの他に、濃度の低いライトシアン（ＬＣ）、ライトマゼンタ（ＬＭ）などのインクを備え、かつその印字ヘッドが、大中小の三種類のインク滴を吐出可能なインクジェットタイプのプリンタであれば、プリンタドライバは、アプリケーションプログラムから受け取った画像データを、ラスタライズし、色補正を行ない、６色大中小のインク滴により画像を表現するハーフトーニングの処理を行なう。こうした印刷処理装置を示す技術文献としては、例えば以下に示す特許文献１などが知られている。
【０００４】
【特許文献１】特開２００３−２９１３７６号公報
【０００５】
他方、近年、デジタルスチルカメラ（いわゆるデジタルカメラ）や電子手帳あるいは携帯電話などの周辺機器の普及に伴い、これらの機器のデータを、コンピュータを介することなく印刷したいという要請が高まっている。こうした周辺機器は、内部のＣＰＵの処理能力やメモリ容量などが制限されているので、上述したラスタライズ、色補正、ハーフトーニングなどの処理を自分自身で行なうことは、困難である。そこで、こうしたラスタライズ、色補正、ハーフトーニングなどの処理を行なうモジュールをプリンタに組み込み、周辺機器からは、ＪＰＥＧ形式などの画像データを受け取り、これをプリンタ内部で処理して印刷を行なう印刷装置が提案されている。こうした印刷装置では、従来通り、コンピュータに接続しての印刷することも当然考えられる。このため、これらの印刷装置では、コンピュータ側で画像処理を済ませた印刷用のデータを受け取って印刷する場合もあれば、画像データそのものを受け取って、内部で画像処理を行なって印刷する場合もあった。後者の印刷を、ダイレクトプリントと呼ぶことがある。
【０００６】
これらの複数の印刷処理を実現する印刷装置は、ユーザやコンピュータ、周辺機器などの印刷装置の外部に対する複数のインタフェースを備え、これら複数のインタフェースを介し印刷装置の外部に対して、印刷処理の動作指示に関する情報の入力や、印刷処理の進行状態に関するステータス情報の出力などの情報のやり取りを行う。ステータス情報の出力の形態としては、ユーザに対しては、液晶パネルを介した文字・図形を用いた形態や、スピーカを介した音声を用いた形態などが考えられ、コンピュータや周辺機器などに対しては、電気的信号を介した情報通信などが考えられる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の印刷装置を改良する形で、新たな機能であるダイレクトプリントなどの機能追加に伴い種々のインタフェースを追加してきたために、印刷装置の内部構成が次第に複雑化し、ステータス情報の出力を誤りなく実現することが、場合によっては困難であるという状況が生じた。特に、既存のインタフェースで出力していたステータス情報を、新たに追加したインタフェースからも出力させるために、これらの異なるインタフェース間でステータス情報を共有化しようとしても、誤りなくステータス情報を共有化することを保障できないという問題があった。また、既に設計した印刷装置に新たなインタフェースを追加しようとすると、他のインタフェースとの整合性をその都度取らねばならず、印刷装置の開発に多大の手間を要するという問題もあった。
【０００８】
本発明の目的は、こうした問題の少なくとも一つを解決し、複数のインタフェースを介したステータス情報の出力を容易に実現し得る印刷装置の内部構成を提供することにある。
【課題を解決するための手段】
【０００９】
上述した課題を解決するため、本発明の印刷装置は、印刷用のヘッドを駆動して、媒体に印刷を行う印刷装置であって、当該印刷装置の外部に対する所定のデータのやり取りを制御する複数の入出力手段と、前記印刷に関する複数の印刷処理を実現する印刷処理手段と、前記複数の印刷処理の進行状態に応じて変化する複数のステータス情報を記憶し管理する状態管理手段とを備え、少なくとも１つの前記入出力手段は、前記複数のステータス情報のうち該入出力手段が必要とするステータス情報の指定を前記状態管理手段に登録する手段であり、前記状態管理手段は、前記登録されているステータス情報が変化した際に、該変化したステータス情報を、前記複数の入出力手段のうち該登録を行った入出力手段に提供する手段であることを特徴とする。
【００１０】
かかる印刷装置によれば、必要なステータス情報の指定を状態管理手段に登録する機能をインタフェース側に用意することによって、インタフェースからステータス情報の出力を実現することができる。異なるインタフェース間でステータス情報を共有化する場合には、共有化するステータス情報の指定を情報管理手段に登録する機能を双方のインタフェース側に用意することによって、ステータス情報を共有化することができる。また、既に設計した印刷装置に新たなインタフェースを追加する場合には、状態管理手段との整合性を考慮すれば、新たに追加したインタフェースからのステータス情報の出力を実現することができるため、印刷装置の開発工数を低減することができる。したがって、複数のインタフェースを介したステータス情報の出力を容易に実現することができる。
【００１１】
上記の構成を有する本発明の印刷装置は、以下の態様を採ることもできる。本発明の印刷装置であって、少なくとも１つの前記入出力手段は、前記複数のステータス情報のうち該入出力手段が必要とするステータス情報の指定を前記状態管理手段に登録した後、前記状態管理手段からの該登録したステータス情報の提供が不要となった場合に、該登録を前記状態管理手段から削除する手段であるとしても良い。かかる印刷装置によれば、不必要なステータス情報の指定の登録を削除することによって、状態管理手段からインタフェースへのステータス情報の提供処理を整理することができる。その結果、不必要なステータス情報の提供処理を実行することによる印刷装置全体の処理速度の低下を防止することができる。
【００１２】
また、本発明の印刷装置であって、少なくとも１つの前記入出力手段は、前記複数の印刷処理のうちの１つが開始される際に、前記複数のステータス情報のうち該印刷処理に応じたステータス情報の指定を前記状態管理手段に登録し、該印刷処理が終了する際に該登録を前記状態管理手段から削除する手段であるとしても良い。かかる印刷装置によれば、実行中の印刷処理において利用されないインタフェースによるステータス情報の指定の登録を削除することによって、状態管理手段からインタフェースへのステータス情報の提供処理を整理することができる。その結果、不必要なステータス情報の提供処理を実行することによる印刷装置全体の処理速度の低下を防止することができる。
【００１３】
また、本発明の印刷装置であって、少なくとも１つの前記入出力手段は、前記ステータス情報の指定を登録することによって前記状態管理手段から取得したステータス情報を加工し、該加工されたステータス情報を前記状態管理手段に提供し記憶させる手段であるとしても良い。かかる印刷装置によれば、インタフェース側でステータス情報を加工して出力する場合に、この加工されたステータス情報を状態管理手段に記憶し管理することができる。その結果、双方のインタフェース間の整合性ではなく、各インタフェースと状態管理手段との間の整合性を取ることによって、インタフェース側で加工されたステータス情報を共有化することができる。
【００１４】
また、本発明の印刷装置であって、前記複数の入出力手段には、当該印刷装置の外部からの前記複数の印刷処理のうちの少なくとも１つに対する指示を受け付けるとともに該印刷処理の進行状態を当該装置の外部に報知する第１の入出力手段、前記第１の入出力手段と前記印刷処理手段との間を仲介して前記印刷処理手段に前記指示を伝達する第２の入出力手段、前記第１の入出力手段とは異なる形態で前記指示された印刷処理の進行状態を当該印刷装置の外部に報知する第３の入出力手段を含み、前記第２の入出力手段は、前記ステータス情報の指定を登録することによって前記指示された印刷処理に応じたステータス情報を前記状態管理手段から取得し、該取得したステータス情報を加工し、該加工されたステータス情報を前記状態管理手段に提供し記憶させるとともに、前記加工されたステータス情報を前記第１の入出力手段に提供する手段であり、前記第３の入出力手段は、前記ステータス情報の指定を登録することによって前記加工されたステータス情報を前記状態管理手段から取得する手段であるとしても良い。
【００１５】
かかる印刷装置によれば、所定の印刷処理に関して、第１のインタフェースと、印刷処理手段および状態管理手段との間を仲介する第２のインタフェースの作用によって、第１および第３のインタフェース間におけるステータス情報の共有化を図ることができる。その結果、第２のインタフェースが仲介する所定の印刷処理に関して印刷装置の外部とのやり取りを行うインタフェースを新たに追加する場合には、第３のインタフェースや状態管理手段との間の整合性ではなく、第２のインタフェースとの間の整合性をとることによって、複数のインタフェースを介したステータス情報の出力を容易に実現することができる。
【００１６】
また、本発明の印刷装置であって、前記入出力手段には、ユーザに対する情報のやり取りを制御するユーザインタフェース、周辺機器に対する情報のやり取りを制御する機器インタフェースの少なくとも１つを含むとしても良い。この場合には、例えば、ユーザインタフェースである液晶パネルやスピーカなどを介してユーザにステータス情報を報知する一方、機器インタフェースを介してコンピュータや周辺機器にステータス情報を出力することができる。
【００１７】
また、本発明の印刷装置であって、前記印刷処理手段は、印刷しようとする印刷データを準備するモジュール、該印刷データを印刷用に処理するモジュール、該処理済みの印刷データを印字するために前記ヘッドを含むハードウェアを制御するモジュールを含む複数の処理モジュールと、前記複数の印刷処理を実現する前記複数の処理モジュールの組み合わせを記憶する組み合わせ記憶手段と、前記複数の印刷処理の１つが指定されたとき、前記記憶された処理モジュールの組み合わせに従って前記複数の処理モジュールを組み合わせ、該印刷処理を実現する印刷処理実行手段とを備え、少なくとも１つの前記処理モジュールは、前記実行中の前記印刷処理に応じた前記ステータス情報を前記状態管理手段に提供し記憶させるモジュールであるとしても良い。
【００１８】
かかる印刷装置では、複数の処理モジュールを予め用意しており、更に、複数の印刷処理を実現するこれら各処理モジュールの組み合わせを記憶している。複数の印刷処理の１つが指定されると、記憶されたモジュールの組み合わせに従って複数のモジュールを組み合わせ、印刷処理を実行するとともに、この実行中の印刷処理に応じたステータス情報を状態管理手段に記憶する。このため、処理モジュールを新たに追加した場合であっても、この新たに追加した処理モジュールと状態管理手段との整合性を取ることによって、インタフェースからのステータス情報の出力を容易に実現することができる。
【発明を実施するための最良の形態】
【００１９】
以上説明した本発明の構成および作用を一層明らかにするために、以下本発明を適用したプリンタ１０について、次の順序で説明する。
目次
Ａ．プリンタ１０の構成
Ａ−（１）．ハードウェア構成
Ａ−（２）．ソフトウェア構成
Ｂ．プリンタ１０の動作
Ｂ−（１）．モジュール間のデータのやり取り
Ｂ−（２）．ステータス情報の出力処理
Ｃ．その他の実施形態
【００２０】
Ａ．プリンタ１０の構成：
Ａ−（１）．ハードウェア構成：
本発明の実施例のプリンタ１０のハードウェア構成について説明する。図１は、本発明の実施例のプリンタ１０のハードウェア構成を模式的に示す説明図である。プリンタ１０は、印刷用のヘッド１３７を駆動して紙などの媒体に印刷を行うプリンタ駆動部１３５を備えた印刷装置である。プリンタ１０は、プリンタ駆動部１３５の他に、紙などに描かれた画像をデジタルデータに変換し取り込むスキャナ駆動部１４５も備え、スキャナ駆動部１４５から取り込んだ画像データをプリンタ駆動部１３５によって印刷することができる。
【００２１】
プリンタ１０は、プリンタ駆動部１３５やスキャナ駆動部１４５の他、種々のインタフェースを備える。これらのインタフェースのうち、ユーザに対する情報のやり取りを制御するユーザインタフェースとしては、画像を介してユーザに対する情報のやり取りを行うタッチパネル１５２、光を介してユーザに情報を伝達するＬＥＤ１５４、音声を介してユーザに情報を伝達するスピーカ１５６、電気的な接点のオン・オフによってユーザからの情報の入力を受け付けるスイッチ１５８などを備える。一方、周辺機器に対する情報のやり取りを制御する機器インタフェースとしては、コンピュータやデジタルスチルカメラ、携帯電話などの周辺機器との接続を行うＵＳＢポート１６２やＬＡＮポート１６４，赤外線ポート１６６などを備え、スマートメディアやコンパクトフラッシュ（登録商標）など複数種類のメモリカードとの接続を行うカードスロット１６８も備える。
【００２２】
プリンタ１０は、プリンタ１０全体の制御を司るＣＰＵ１１０、その制御プログラムを記憶したＲＯＭ１１４，データの一時保存に用いられるＲＡＭ１１２、ＣＰＵ１１０と他の制御回路とのインタフェースを司るＩ／Ｏポート１１８などを備え、これらは、バス１２０で相互に接続されている。Ｉ／Ｏポート１１８には、プリンタ１０の内部情報を不揮発的に記憶するＥＥＰＲＯＭ１１６、プリンタ駆動部１３５の駆動制御回路であるプリンタＡＳＩＣ１３０、スキャナ駆動部１４５の駆動制御回路であるスキャナＡＳＩＣ１４０、ユーザインタフェースの駆動制御回路であるＵＩ−ＡＳＩＣ１５０、機器インタフェースの駆動制御回路であるＩＦ−ＡＳＩＣ１６０が接続されている。
【００２３】
プリンタ１０は、上述のハードウェア構成によって、印刷に関する複数の印刷処理を実行するとともに、ＥＥＰＲＯＭ１１６に内部情報として記憶された印刷処理の進行状態に応じて変化するステータス情報を、必要に応じて種々のインタフェースから出力する。プリンタ１０が実行する複数の印刷処理としては、コンピュータからの動作指示に基づいてコンピュータからの印刷データを印刷処理するＰＣ印刷処理、タッチパネル１５２などからの動作指示に基づいてスキャナ駆動部１４５から取り込んだ画像データを印刷処理するスキャナ印刷処理、タッチパネル１５２などからの動作指示に基づいてデジタルスチルカメラやメモリカードなどからの画像データを印刷処理するダイレクト印刷処理、タッチパネル１５２などからの動作指示に基づいてノズルチェックやバイディチェックなどのメンテナンス情報を印刷処理するメンテナンス印刷処理の他、タッチパネル１５２などからの動作指示に基づいてヘッド１３７を清掃するヘッドクリーニング処理などがある。
【００２４】
Ａ−（２）．ソフトウェア構成：
次に、プリンタ１０のソフトウェア構成について説明する。プリンタ１０のハードウェア構成および印刷処理概要について上述の通り説明したが、このプリンタ１０の全てのハードウェアの制御は、ＣＰＵ１１０がＲＯＭ１１４に記憶されたプログラムを実行することによって実現される。つまり、上述した種々の印刷処理は、ＣＰＵ１１０がＲＯＭ１１４に記憶されたプログラムを実行することによって実現される。そこで、このＣＰＵ１１０が実行するプログラム、即ちソフトウェアの構成について説明する。この実施例におけるプリンタ１０では、印刷処理を実行するソフトウェアを複数のモジュールに分割し、各モジュール間のデータのやり取りの仕組みを規定することによって、上述した種々の印刷処理を容易に実現し得る構成としている。
【００２５】
図２は、プリンタ１０のソフトウェア構成を模式的に示す説明図である。図２に示すソフトウェア構成は、特定の印刷処理に対応したソフトウェア構成を示すのではなく、プリンタ１０における印刷処理の大まかなソフトウェア構成を示す。実際に各印刷処理が行われる際には、後述するように必要なモジュールが再構成される。
【００２６】
プリンタ１０を制御するソフトウェア群の基底では、オペレーティングシステムＯＳとしてＩＴＲＯＮが動作している。全てのソフトウェアは、ＩＴＲＯＮ上で開発され、この環境の下で必要なライブラリなども用意されている。一方、ソフトウェア群の最上位には、ＵＩ−ＡＳＩＣ１５０に関する種々の制御処理をソフトウェアにより行うユーザインタフェースＵＩ、その下には、ユーザインタフェースＵＩとプリンタ１０全体とを協働させて種々の印刷処理を可能とするサービスＳＶが用意されている。
【００２７】
オペレーティングシステムＯＳの上には、ハードウェア制御モジュールＨＡＬが用意されている。このハードウェア制御モジュールＨＡＬは、前述したＥＥＰＲＯＭ１１６，プリンタＡＳＩＣ１３０，スキャナＡＳＩＣ１４０，ＵＩ−ＡＳＩＣ１５０，ＩＦ−ＡＳＩＣ１６０など、Ｉ／Ｏポート１１８を介してアクセスされる各種ハードウェアを制御するモジュールである。
【００２８】
ハードウェア制御モジュールＨＡＬの上には、ＥＥＰＲＯＭ１１６に関する種々の制御処理をソフトウェアにより行うステータス管理モジュールＤＳＭ、ＩＦ−ＡＳＩＣ１６０に関する種々の制御処理をソフトウェアにより行う機器インタフェース群ＩＦＤ、プリンタＡＳＩＣ１３０およびスキャナＡＳＩＣ１４０に関する種々の制御処理をソフトウェアにより行う処理モジュール群ＤＰＭが、それぞれ用意されている。ステータス管理モジュールＤＳＭと処理モジュール群ＤＰＭとの間、および、ステータス管理モジュールＤＳＭと機器インタフェース群ＩＦＤとの間では、それぞれ互いを呼び出すことが可能である。
【００２９】
機器インタフェース群ＩＦＤには、インタフェースモジュールＩＦＤ（１）〜（ｋ）から成る（ｋ）個のモジュールが用意されている。これらのインタフェースモジュールＩＦＤ（１）〜（ｋ）には、コンピュータとのインタフェースを司るＰＣインタフェースモジュールＰＩＦ、デジタルスチルカメラとのインタフェースを司るモジュール、メモリカードとのインタフェースを司るモジュールなどが含まれる。
【００３０】
処理モジュール群ＤＰＭには、処理モジュール（１）〜（ｎ）から成る（ｎ）個のモジュールが用意されている。これらの処理モジュール（１）〜（ｎ）には、印刷しようとする印刷データを準備するモジュール、その印刷データを印刷用に処理するモジュール、その処理済みの印刷データを印字するためにヘッド１３７を含むハードウェアを制御するプリンタドライバＰＥＤ、スキャナ駆動部１４５から画像を取り込むモジュールなどが含まれる。
【００３１】
処理モジュール群ＤＰＭの上には、データ処理経路コントローラＤＰＣが用意されている。このデータ処理経路コントローラＤＰＣは、複数の印刷処理を実現する処理モジュール群ＤＰＭに含まれる複数の処理モジュール（１）〜（ｎ）の組み合わせを記憶したテーブルを有しており、このテーブルに記憶された組み合わせに従って、複数の印刷処理の１つが指定された際に、処理モジュール群ＤＰＭに含まれる複数の処理モジュール（１）〜（ｎ）の幾つかを組み合わせ、指定された印刷処理を実現する。
【００３２】
データ処理経路コントローラＤＰＣとサービスＳＶとの間には、周辺機器との通信など、プリンタ１０に元から用意されていた機能とは異なる一群の機能を実現するファンクションＦＣが用意されている。このファンクションＦＣは、例えば、カードスロット１６８に装着されたメモリカード内の画像を印刷する場合などに呼び出される機能を実現する。
【００３３】
一方、ステータス管理モジュールＤＳＭおよび機器インタフェース群ＩＦＤとサービスＳＶとの間には、データ処理経路コントローラＤＰＣと処理モジュール群ＤＰＭとを呼び出し可能なハーネス群ＨＮが用意されている。このハーネス群ＨＮは、ハーネス（１）〜（ｍ）から成る（ｍ）個のモジュールが用意されている。これらのハーネス（１）〜（ｍ）には、プリンタ機能を実現するプリンタハーネスＰＤＨの他、スキャナ機能を実現するモジュールなどの機能別のハーネスが含まれる。
【００３４】
上述のソフトウェア構成によって、ユーザインタフェースＵＩを介して外部からの要求を受け取ったサービスＳＶは、ハーネス群ＨＮを介して、データ処理経路コントローラＤＰＣや処理モジュール群ＤＰＭ、あるいはその他のモジュールを呼び出す。ハーネス群ＨＮと呼ばれる機能別の単位を用意しているのは、プリンタ１０の内部には、単純にソフトウェアにより処理される種々の機能以外に、それらの機能に関わる機器インタフェース群ＩＦＤやステータス管理モジュールＤＳＭなどとのやり取りが存在するからである。
【００３５】
Ｂ．プリンタ１０の動作：
Ｂ−（１）．モジュール間のデータのやり取り：
上述のソフトウェア構成におけるモジュール間のデータのやり取りの仕組みについて、後述するステータス情報の出力処理に関するデータのやり取りを中心に説明する。各モジュールは、他のモジュールに対して種々の関数を提供し、他のモジュールは、これらの関数を呼び出すことによってデータのやり取りを行う。
【００３６】
ステータス管理モジュールＤＳＭの提供する関数としては、「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」，「ＤＳＭ＿Ｄｅ−Ｎｏｔｉｆｉｃａｔｉｏｎ」，「ＤＳＭ＿Ｗ−Ｄａｔａ」などの関数がある。
【００３７】
「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数は、ステータス管理モジュールＤＳＭが監視すべきステータス情報の指定と、このステータス情報が変化した際にステータス管理モジュールＤＳＭが呼び出すコールバック関数の指定を受け付けるための関数である。ステータス管理モジュールＤＳＭに対して、他のモジュールが「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数を呼び出す際には、引数として［Ｘ１，Ｆ１］が与えられる。この引数の内容は次の通りである。
Ｘ１：監視するステータス情報を指定する引数である。
Ｆ１：Ｘ１で指定したステータス情報が変化した際に呼び出すコールバック関数を指定する引数である。
【００３８】
「ＤＳＭ＿Ｄｅ−Ｎｏｔｉｆｉｃａｔｉｏｎ」関数は、「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数で指定された監視の中断を受け付けるための関数である。この関数の引数として［Ｘ２，Ｆ２］が与えられ、その内容は次の通りである。
Ｘ２：監視を中断するステータス情報を指定する引数である。
Ｆ２：削除するコールバック関数を指定する引数である。
【００３９】
「ＤＳＭ＿Ｗ−Ｄａｔａ」関数は、ステータス管理モジュールＤＳＭが記憶するステータス情報の変更を受け付ける関数である。この関数の引数として、変更すべきステータス情報を指定する［Ｘ３］が与えられる。
【００４０】
ハーネス群ＨＮにおけるプリンタハーネスＰＤＨの提供する関数としては、「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」，「ＰＤＨ＿Ｗ−Ｄａｔａ」などの関数がある。
【００４１】
「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数は、予めプリンタハーネスに準備されているアクションの開始要求と、そのアクションの進行状況についての報告方法の指定とを受け付ける関数である。プリンタハーネスＰＤＨに対して、他のモジュールが「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数を呼び出す際には、引数として［Ｙ１，ＰＳＰ，Ｆ２］が与えられる。この引数の内容は次の通りである。
Ｙ１：開始要求するアクションの種類を指定する引数である。
ＰＳＰ：アクションの進行状況を報告する総ステップ数を指定する引数である。
Ｆ２：アクションの進行状況を報告する際に呼び出すコールバック関数を指定する引数である。
【００４２】
「ＰＤＨ＿Ｗ−Ｄａｔａ」関数は、ステータス情報の提供を受け付ける関数である。この関数の引数として、提供を受け付けるステータス情報を指定する［Ｙ２］が与えられる。
【００４３】
サービスＳＶを介したユーザインタフェースＵＩの提供する関数としては、「ＵＩ＿Ｗ−Ｄａｔａ」などの関数がある。「ＵＩ＿Ｗ−Ｄａｔａ」関数は、ハーネス群ＨＮからステータス情報の提供を受け付ける関数である。ユーザインタフェースＵＩに対して、ハーネス群ＨＮがステータス情報を提供するために「ＵＩ＿Ｗ−Ｄａｔａ」関数を呼び出す際には、引数として［Ｕ１，ＳＰ］が与えられる。この引数の内容は次の通りである。
Ｕ１：「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数で指定されたアクションの種類を示す引数である。
ＳＰ：Ｕ１に示すアクションのステップ数を示す引数である。
【００４４】
機器インタフェース群ＩＦＤにおけるＰＣインタフェースＰＩＦの提供する関数としては、「ＰＩＦ＿Ｗ−Ｄａｔａ」などの関数がある。「ＰＩＦ＿Ｗ−Ｄａｔａ」関数は、ステータス情報の提供を受け付ける関数である。この関数の引数として、提供を受け付けるステータス情報を指定する［Ｉ１］が与えられる。
【００４５】
処理モジュール群ＤＰＭにおけるプリンタドライバＰＥＤの提供する関数としては、「ＰＥＤ＿Ｓｕｂｍｉｔ」などの関数がある。「ＰＥＤ＿Ｓｕｂｍｉｔ」関数は、プリンタドライバＰＥＤが提供すべきステータス情報の指定と、そのステータス情報の提供方法の指定とを受け付ける関数である。プリンタドライバＰＥＤに対して、他のモジュールが「ＰＥＤ＿Ｓｕｂｍｉｔ」関数を呼び出す際には、引数として［Ｚ１，Ｆ３］が与えられる。この引数の内容は次の通りである。
Ｚ１：プリンタドライバＰＥＤに関するステータス情報のうち提供すべきステータス情報を指定する引数である。
Ｆ３：Ｚ１で指定されたステータス情報を提供する際に呼び出すコールバック関数を指定する引数である。
【００４６】
Ｂ−（２）．ステータス情報の出力処理：
次に、ステータス情報の出力処理について説明する。ステータス情報の出力処理とは、ステータス管理モジュールＤＳＭがＥＥＰＲＯＭ１１６に記憶し管理するステータス情報を、ユーザインタフェースＵＩや機器インタフェース群ＩＦＤから出力する処理である。ここでは、ステータス情報の出力処理の一形態として、前述した複数の印刷処理の１つであるヘッドクリーニング処理におけるステータス情報の出力処理について説明する。図３から図５は、ヘッドクリーニング処理におけるステータス情報の出力処理を示す説明図である。本実施例のプリンタ１０では、このステータス情報の出力処理において３つのステータス情報ＳＤ１〜ＳＤ３を取り扱い、ユーザインタフェースＵＩを介してステータス情報ＳＤ１〜ＳＤ３に基づいた情報をユーザに報知し、ＰＣインタフェースＰＩＦを介してステータス情報ＳＤ３に基づいた情報を周辺機器に報知する。
【００４７】
ステータス情報ＳＤ１は、ヘッドクリーニング処理の実行中であるか否かを示すステータス情報であり、処理の実行中の値は「１」であり、その他の場合の値は「０」である。ステータス情報ＳＤ２は、ヘッドクリーニング処理に要する予定時間を示すステータス情報であり、処理の実行中の値は、その処理に要する時間であり、その他の場合には「ＮＵＬＬ」である。ステータス情報ＳＤ３は、ヘッドクリーニング処理が予定通りに終了したか否かを示すステータス情報であり、正常終了時の値は「１」であり、異常終了時の値は「０」である。
【００４８】
ＰＣインタフェースＰＩＦは、ヘッドクリーニング処理が開始される前に、ステータス管理モジュールＤＳＭに対して「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数を呼び出すことによって、ステータス情報ＳＤ３の指定登録を行う。この関数の引数として、引数Ｘ１には、ステータス情報ＳＤ３を指定し、引数Ｆ１には、コールバック関数として「ＰＩＦ＿Ｗ＿Ｄａｔａ」関数を指定する（図３中の（Ａ−１））。なお、ＰＣインタフェースＰＩＦによるステータス情報ＳＤ３の指定登録は、プリンタ１０の初期設定時に行うこととしても良いし、ユーザインタフェースＵＩがヘッドクリーニング処理の動作指示を受け付けた後に行うこととしても良い。
【００４９】
一方、ユーザインタフェースＵＩは、ヘッドクリーニング処理の動作指示を受け付けた後であって、この処理が開始される前に、プリンタハーネスＰＤＨに対して「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数を呼び出すことによって、ヘッドクリーニング処理に関するステータス情報の収集を行うアクションＡＮ１を要求する。このアクションＡＮ１は、他のモジュールに対してステータス情報ＳＤ１〜ＳＤ３を提供するためのアクションであり、ステップ１でステータス情報ＳＤ１を提供し、ステップ２でステータス情報ＳＤ２を提供し、ステップ３でステータス情報ＳＤ３を提供する。この場合における関数の引数として、引数Ｙ１には、アクションＡＮ１を指定し、引数ＰＳＰには、総ステップ数として３ステップを指定し、引数Ｆ２には、コールバック関数として「ＵＩ＿Ｗ−Ｄａｔａ」関数を指定する（図３中の（Ａ−２））。
【００５０】
ユーザインタフェースＵＩから「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数を呼び出されたプリンタハーネスＰＤＨは、アクションＡＮ１を開始する。アクションＡＮ１を開始すると、ステータス管理モジュールＤＳＭに対して２つの「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数をそれぞれ呼び出すことによって、ステータス情報ＳＤ１，ＳＤ２の指定登録をそれぞれ行う。これらの関数の引数として、引数Ｘ１には、ステータス情報ＳＤ１，ＳＤ２をそれぞれ指定し、引数Ｆ１には、コールバック関数として「ＰＤＨ＿Ｗ−Ｄａｔａ」関数をそれぞれ指定する（図３中の（Ａ−３））。
【００５１】
その後、プリンタハーネスＰＤＨは、プリンタドライバＰＥＤに対して２つの「ＰＥＤ＿Ｓｕｂｍｉｔ」関数を呼び出すことによって、ステータス情報ＳＤ１，ＳＤ２のステータス管理モジュールＤＳＭへの書き込みを指示する。これらの関数の引数として、引数Ｚ１には、ステータス情報ＳＤ１，ＳＤ２をそれぞれ指定し、引数Ｆ３には、コールバック関数として「ＤＳＭ＿Ｗ−Ｄａｔａ」関数をそれぞれ指定する（図３中の（Ａ−４））。
【００５２】
上述のモジュール間における関数のやり取りが行われた後、プリンタドライバＰＥＤがヘッドクリーニング処理の制御を開始すると、プリンタドライバＰＥＤは、「ＰＥＤ＿Ｓｕｂｍｉｔ」関数（図３中の（Ａ−４））のコールバック関数として「ＤＳＭ＿Ｗ−Ｄａｔａ」関数を、ステータス管理モジュールＤＳＭに対して呼び出すことによって、ステータス管理モジュールＤＳＭが記憶するステータス情報ＳＤ１の値を「１」に書き換える。この関数の引数Ｘ３には、ステータス情報ＳＤ１を指定する（図４中の（Ｂ−１））。
【００５３】
ステータス情報ＳＤ１の書き換えを受けたステータス管理モジュールＤＳＭは、「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数（図３中の（Ａ−３））のコールバック関数として「ＰＤＨ＿Ｗ−Ｄａｔａ」関数を、プリンタハーネスＰＤＨに対して呼び出すことによって、ステータス情報ＳＤ１をプリンタハーネスＰＤＨに提供する。この関数の引数Ｙ２には、ステータス情報ＳＤ１を指定する（図４中の（Ｂ−２））。
【００５４】
ステータス情報ＳＤ１の提供を受けたプリンタハーネスＰＤＨは、アクションＡＮ１のステップ１の処理に従って、「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数（図３中の（Ａ−２））のコールバック関数として「ＵＩ＿Ｗ−Ｄａｔａ」関数を、ユーザインタフェースＵＩに対して呼び出すことによって、ステータス情報ＳＤ１をユーザインタフェースＵＩに提供する。この関数の引数として、引数Ｕ１には、アクションＡＮ１を指定し、引数ＳＰには、ステップ１を指定する（図４中の（Ｂ−３））。
【００５５】
次に、プリンタドライバＰＥＤは、ヘッド１３７の汚れ具合などに基づいてヘッドクリーニング処理に要する予定時間を算出し、「ＰＥＤ＿Ｓｕｂｍｉｔ」関数（図３中の（Ａ−４））のコールバック関数として「ＤＳＭ＿Ｗ−Ｄａｔａ」関数を、ステータス管理モジュールＤＳＭに対して呼び出すことによって、ステータス管理モジュールＤＳＭが記憶するステータス情報ＳＤ２の値を書き換える。この関数の引数Ｘ３には、ステータス情報ＳＤ２を指定する（図４中の（Ｂ−４））。
【００５６】
ステータス情報ＳＤ２の書き換えを受けたステータス管理モジュールＤＳＭは、「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数（図３中の（Ａ−３））のコールバック関数として「ＰＤＨ＿Ｗ−Ｄａｔａ」関数を、プリンタハーネスＰＤＨに対して呼び出すことによって、ステータス情報ＳＤ２をプリンタハーネスＰＤＨに提供する。この関数の引数Ｙ２には、ステータス情報ＳＤ２を指定する（図４中の（Ｂ−５））。
【００５７】
ステータス情報ＳＤ２の提供を受けたプリンタハーネスＰＤＨは、アクションＡＮ１のステップ２の処理に従って、「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数（図３中の（Ａ−２））のコールバック関数として「ＵＩ＿Ｗ−Ｄａｔａ」関数を、ユーザインタフェースＵＩに対して呼び出すことによって、ステータス情報ＳＤ２をユーザインタフェースＵＩに提供する。この関数の引数として、引数Ｕ１には、アクションＡＮ１を指定し、引数ＳＰには、ステップ２を指定する（図４中の（Ｂ−６））。
【００５８】
次に、プリンタドライバＰＥＤがヘッドクリーニング処理の制御を終了すると、プリンタドライバＰＥＤは、「ＰＥＤ＿Ｓｕｂｍｉｔ」関数（図３中の（Ａ−４））のコールバック関数として「ＤＳＭ＿Ｗ−Ｄａｔａ」関数を、ステータス管理モジュールＤＳＭに対して呼び出すことによって、ステータス管理モジュールＤＳＭが記憶するステータス情報ＳＤ１の値を「０」に書き換える。この関数の引数Ｘ３には、ステータス情報ＳＤ１を指定する（図４中の（Ｂ−７））。
【００５９】
ステータス情報ＳＤ１の書き換えを受けたステータス管理モジュールＤＳＭは、「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数（図３中の（Ａ−３））のコールバック関数として「ＰＤＨ＿Ｗ−Ｄａｔａ」関数を、プリンタハーネスＰＤＨに対して呼び出すことによって、ステータス情報ＳＤ１をプリンタハーネスＰＤＨに提供する。この関数の引数Ｙ２には、ステータス情報ＳＤ１を指定する（図４中の（Ｂ−８））。
【００６０】
ステータス情報ＳＤ１の提供を受けたプリンタハーネスＰＤＨは、アクションＡＮ１のステップ３の前処理として、ステータス情報ＳＤ１，ＳＤ２を加工してステータス情報ＳＤ３を生成する（図４中の（Ｂ−９））。このステータス情報ＳＤ３の生成方法として、例えば、始めのステータス情報ＳＤ１（図４中の（Ｂ−２））と、後のステータス情報ＳＤ１（図４中の（Ｂ８））とを受けた間に経過した時間が、ステータス情報ＳＤ２が示す予定時間と大幅に異なる場合には、異常終了であると判断してステータス情報ＳＤ３の値を「０」とする。その差が許容範囲内である場合には、正常終了であると判断してステータス情報ＳＤ３の値を「１」とする。
【００６１】
ステータス情報ＳＤ３を生成した後（図４中の（Ｂ−９））、プリンタハーネスＰＤＨは、ステータス管理モジュールＤＳＭに対して「ＤＳＭ＿Ｗ−Ｄａｔａ」関数を呼び出すことによって、ステータス管理モジュールＤＳＭが記憶するステータス情報ＳＤ３の値を書き換える。この関数の引数Ｘ３には、ステータス情報ＳＤ３を指定する（図４中の（Ｂ−１０））。
【００６２】
ステータス情報ＳＤ３の値を書き換えた後（図４中の（Ｂ−１０））、プリンタハーネスＰＤＨは、アクションＡＮ１のステップ３の処理に従って、「ＰＤＨ＿Ａ−Ｒｅｑｕｅｓｔ」関数（図３中の（Ａ−２））のコールバック関数として「ＵＩ＿Ｗ−Ｄａｔａ」関数を、ユーザインタフェースＵＩに対して呼び出すことによって、ステータス情報ＳＤ３をユーザインタフェースＵＩに提供する。この関数の引数として、引数Ｕ１には、アクションＡＮ１を指定し、引数ＳＰには、ステップ３を指定する（図４中の（Ｂ−１１））。
【００６３】
プリンタハーネスＰＤＨは、ステータス情報ＳＤ３をユーザインタフェースＵＩに提供し、アクションＡＮ１の総ステップ数である３ステップを終えると（図４中の（Ｂ−１１））、ステータス管理モジュールＤＳＭに対して２つの「ＤＳＭ＿Ｄｅ−Ｎｏｔｉｆｉｃａｔｉｏｎ」関数をそれぞれ呼び出すことによって、ステータス情報ＳＤ１，ＳＤ２の指定（図３中の（Ａ−３））をそれぞれ削除する。これらの関数の引数として、引数Ｘ２には、ステータス情報ＳＤ１，ＳＤ２をそれぞれ指定し、引数Ｆ２には、コールバック関数として「ＰＤＨ＿Ｗ−Ｄａｔａ」関数をそれぞれ指定する（図５中の（Ｃ−１））。その後、プリンタハーネスＰＤＨは、アクションＡＮ１を終了する。
【００６４】
一方、ステータス情報ＳＤ３の書き換え（図４中の（Ｂ−１２））を受けたステータス管理モジュールＤＳＭは、「ＤＳＭ＿Ｎｏｔｉｆｉｃａｔｉｏｎ」関数（図３中の（Ａ−１））のコールバック関数として「ＰＩＦ＿Ｗ＿Ｄａｔａ」関数を、ＰＣインタフェースＰＩＦに対して呼び出すことによって、ステータス情報ＳＤ３をＰＣインタフェースＰＩＦに提供する。この関数の引数Ｉ１には、ステータス情報ＳＤ３を指定する（図４中の（Ｂ−１２））。
【００６５】
その後、ＰＣインタフェースＰＩＦは、ステータス管理モジュールＤＳＭに対して「ＤＳＭ＿Ｄｅ−Ｎｏｔｉｆｉｃａｔｉｏｎ」関数をそれぞれ呼び出すことによって、ステータス情報ＳＤ３の指定（図３中の（Ａ−１））を削除する。この関数の引数として、引数Ｘ２には、ステータス情報ＳＤ３を指定し、引数Ｆ２には、コールバック関数として「ＰＩＦ＿Ｗ＿Ｄａｔａ」関数を指定する（図５中の（Ｃ−２））。なお、ＰＣインタフェースＰＩＦは、ステータス情報ＳＤ３の指定削除を行わずに、常にステータス情報ＳＤ３の提供を受け付けることとしても良い。
【００６６】
以上説明したプリンタ１０によれば、必要なステータス情報の指定をステータス管理モジュールＤＳＭに登録する機能をユーザインタフェースＵＩやＰＣインタフェースＰＩＦ側に用意することによって、各インタフェースからステータス情報の出力を実現することができる。ユーザインタフェースＵＩとＰＣインタフェースＰＩＦとの間でステータス情報を共有化する場合には、共有化するステータス情報の指定をステータス管理モジュールＤＳＭに登録する機能を双方のインタフェース側に用意することによって、ステータス情報を共有化することができる。また、既に設計したプリンタ１０に新たなインタフェースを追加する場合には、ステータス管理モジュールＤＳＭとの整合性を考慮すれば、新たに追加したインタフェースからのステータス情報の出力を実現することができるため、プリンタ１０の開発工数を低減することができる。したがって、複数のインタフェースを介したステータス情報の出力を容易に実現することができる。
【００６７】
また、不必要なステータス情報の指定の登録を削除することによって、ステータス管理モジュールＤＳＭからインタフェース側へのステータス情報の提供処理を整理することができる。その結果、不必要なステータス情報の提供処理を実行することによるプリンタ１０全体の処理速度の低下を防止することができる。
【００６８】
また、プリンタハーネスＰＤＨでステータス情報を加工して出力する場合に、この加工されたステータス情報をステータス管理モジュールＤＳＭに記憶し管理することができる。その結果、プリンタハーネスＰＤＨとＰＣインタフェースＰＩＦとの間の整合性ではなく、各インタフェースとステータス管理モジュールＤＳＭとの間の整合性を取ることによって、プリンタハーネスＰＤＨで加工されたステータス情報を共有化することができる。
【００６９】
また、所定の印刷処理に関して、ユーザインタフェースＵＩと、データ処理経路コントローラＤＰＣ，処理モジュール群ＤＰＭ，ステータス管理モジュールＤＳＭとの間を仲介するプリンタハーネスＰＤＨの作用によって、ユーザインタフェースＵＩとＰＣインタフェースＰＩＦとの間におけるステータス情報の共有化を図ることができる。その結果、プリンタハーネスＰＤＨが仲介する所定の印刷処理に関してインタフェースを新たに追加する場合には、他のインタフェースやステータス管理モジュールＤＳＭとの間の整合性ではなく、プリンタハーネスＰＤＨとの間の整合性をとることによって、複数のインタフェースを介したステータス情報の出力を容易に実現することができる。
【００７０】
また、処理モジュール群ＤＰＭのプリンタドライバＰＥＤなどの処理モジュールが、ステータス管理モジュールＤＳＭにステータス情報を記憶可能なソフトウェア構成であるため、処理モジュール群ＤＰＭに処理モジュールを新たに追加した場合であっても、この新たに追加した処理モジュールとステータス管理モジュールＤＳＭとの整合性を取ることによって、各インタフェースからのステータス情報の出力を容易に実現することができる。
【００７１】
Ｃ．その他の実施形態：
以上、本発明の実施の形態について説明したが、本発明はこうした実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。例えば、ステータス情報の出力処理は、ヘッドクリーニング処理に関するものに限らず、他の印刷処理に関する種々のステータス情報を取り扱うことしても良い。処理モジュール群ＤＰＭの処理モジュールのうち、ステータス管理モジュールＤＳＭにステータス情報の書き換えを行うのは、プリンタドライバＰＥＤに限らず、他の処理モジュールが行うこととしても良い。機器インタフェース群ＩＦＤのうちステータス情報の提供を受けるのは、ＰＣインタフェースＰＩＦに限らず、他のインタフェースに提供することも可能である。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施例のプリンタ１０のハードウェア構成を模式的に示す説明図である。
【図２】プリンタ１０のソフトウェア構成を模式的に示す説明図である。
【図３】ヘッドクリーニング処理におけるステータス情報の出力処理を示す説明図である。
【図４】ヘッドクリーニング処理におけるステータス情報の出力処理を示す説明図である。
【図５】ヘッドクリーニング処理におけるステータス情報の出力処理を示す説明図である。
【符号の説明】
【００７３】
１０...プリンタ
１１０...ＣＰＵ
１１２...ＲＡＭ
１１４...ＲＯＭ
１１６...ＥＥＰＲＯＭ
１１８...Ｉ／Ｏポート
１２０...バス
１３０...プリンタＡＳＩＣ
１３５...プリンタ駆動部
１３７...ヘッド
１４０...スキャナＡＳＩＣ
１４５...スキャナ駆動部
１５０...ＵＩ−ＡＳＩＣ
１５２...タッチパネル
１５４...ＬＥＤ
１５６...スピーカ
１５８...スイッチ
１６０...ＩＦ−ＡＳＩＣ
１６２...ＵＳＢポート
１６４...ＬＡＮポート
１６６...赤外線ポート
１６８...カードスロット
ＤＰＣ...データ処理経路コントローラ
ＤＰＭ...処理モジュール群
ＤＳＭ...ステータス管理モジュール
ＦＣ...ファンクション
ＨＡＬ...ハードウェア制御モジュール
ＨＮ...ハーネス群
ＩＦＤ...機器インタフェース群
ＯＳ...オペレーティングシステム
ＰＤＨ...プリンタハーネス
ＰＥＤ...プリンタドライバ
ＰＩＦ...ＰＣインタフェース
ＳＶ...サービス
ＵＩ...ユーザインタフェース
【図１】
2005119121.tif 000003
【図２】
2005119121.tif 000004
【図３】
2005119121.tif 000005
【図４】
2005119121.tif 000006
【図５】
2005119121.tif 000007