(57)【要約】【課題】デバイスを制御するためにデバイス制御装置が記憶するプログラムのデータ容量を低減させることができるようにする。【解決手段】ホストコンピューター２は、通信可能に接続されたプリンター３の種別、又は、プリンター３が実現する機能に共通する処理を実行する共通処理部２１１と、プリンター３が実現する固有の機能にかかる処理が共通処理部２１１から呼び出された際に、プリンター３に格納され、プリンター３が実現する固有の機能を処理するためのツールデータを取得するツールデータ取得部２１２と、取得されたツールデータをもとに、プリンター３が実現する固有の機能にかかる処理を行うツールデータ処理部２１３とを備える。【選択図】図２
2012185702.tif 000002
【特許請求の範囲】
【請求項１】
デバイスとデバイス制御装置とが通信可能に接続されたシステムであって、
前記デバイスは、
自装置が実現する固有の機能を処理するためのツールデータを格納するツール格納手段と、
前記デバイス制御装置からの要求に応じて、前記ツール格納手段に格納された前記ツールデータを前記デバイス制御装置へ送信する送信手段と、を備え、
前記デバイス制御装置は、
制御を行う前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、
前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスから前記ツールデータを取得する取得手段と、
前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段と、
を備えることを特徴とするシステム。
【請求項２】
前記共通処理実行手段は、前記デバイスに関する操作指示をユーザーから受け付けるユーザーインターフェースを実現するための処理を前記共通する処理として実行し、前記ユーザーインターフェースにより受け付けられた前記操作指示に応じて、前記デバイスが実現する固有の機能にかかる処理を呼び出すこと、
を特徴とする請求項１記載のシステム。
【請求項３】
前記取得手段は、前記デバイスが実現する固有の機能にかかる処理が呼び出された際に、当該処理にかかるツールデータが前記デバイス制御装置に記憶されていない場合に、前記デバイスから前記ツールデータを取得すること、
を特徴とする請求項１または２記載のシステム。
【請求項４】
前記デバイスは、記録媒体へ画像を記録する記録装置であり、
前記ツールデータは、前記記録装置が記録する画像を生成する処理、前記記録装置の設定を変更する処理、前記記録装置が記録する画像を表示する処理の少なくとも一つを行うためのデータであること、
を特徴とする請求項１から３のいずれかに記載のシステム。
【請求項５】
デバイスと通信可能に接続されたデバイス制御装置であって、
前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、
前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスに格納された前記ツールデータを取得する取得手段と、
前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段と、
を備えることを特徴とするデバイス制御装置。
【請求項６】
デバイスと通信可能に接続されたデバイス制御装置が実行する制御方法であって、
前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うこと、
を特徴とする制御方法。
【請求項７】
デバイスと通信可能に接続されたデバイス制御装置が実行するプログラムであって、
前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うこと、
を特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスを備えたシステム、デバイスを制御するデバイス制御装置、制御方法、及び、プログラムに関する。
【背景技術】
【０００２】
従来、プリンター等のデバイスに上位ホスト装置等のデバイス制御装置が接続されたシステムでは、デバイス制御装置がドライバープログラム等のプログラムを実行することで、デバイスに制御コマンドを送信し、デバイスの制御を行っている。このドライバープログラムでは、デバイスの各種機能を実現するため、機能ごとのプラグインドライバー等のツールデータを備えている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２１３６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、デバイスの種別ごと、又は、そのデバイスが実現する機能ごとに対応したツールデータを備える必要があるため、ドライバープログラムのデータ容量が増大していた。
本発明は、上述した事情に鑑みてなされたものであり、デバイスを制御するためにデバイス制御装置が記憶するプログラムのデータ容量を低減させることができるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明は、デバイスとデバイス制御装置とが通信可能に接続されたシステムであって、前記デバイスは、自装置が実現する固有の機能を処理するためのツールデータを格納するツール格納手段と、前記デバイス制御装置からの要求に応じて、前記ツール格納手段に格納された前記ツールデータを前記デバイス制御装置へ送信する送信手段と、を備え、前記デバイス制御装置は、制御を行う前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスから前記ツールデータを取得する取得手段と、前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段とを備えることを特徴とする。
本発明によれば、デバイス制御装置に接続されたデバイスが、自装置が実現する固有の機能を処理するためのツールデータを格納し、デバイス制御装置からの要求に応じて、格納されたツールデータをデバイス制御装置へ送信し、デバイス制御装置は、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。
【０００６】
また、本発明は、上記システムにおいて、前記共通処理実行手段は、前記デバイスに関する操作指示をユーザーから受け付けるユーザーインターフェースを実現するための処理を前記共通する処理として実行し、前記ユーザーインターフェースにより受け付けられた前記操作指示に応じて、前記デバイスが実現する固有の機能にかかる処理を呼び出すことを特徴とする。
本発明によれば、操作指示をユーザーから受け付けるユーザーインターフェースより受け付けられた操作指示に応じて、デバイスが実現する固有の機能にかかる処理が呼び出され、その処理にかかるツールデータがデバイスから取得されるので、例えば操作指示をユーザーから受け付けるユーザーインターフェースをドライバープログラムとして用意して、共通したユーザーインターフェースを提供できる。また、この共通したユーザーインターフェースを介して呼び出される固有の機能に関しては、ツールデータをデバイスから取得するので、デバイス制御装置はユーザーインターフェースに関するプログラムを記憶していれば、各デバイスに固有の機能のツールデータを保持する必要がなく、効率が良い。
【０００７】
また、本発明は、上記システムにおいて、前記取得手段は、前記デバイスが実現する固有の機能にかかる処理が呼び出された際に、当該処理にかかるツールデータが前記デバイス制御装置に記憶されていない場合に、前記デバイスから前記ツールデータを取得することを特徴とする。
本発明によれば、ツールデータがデバイス制御装置に記憶されていない場合に、デバイスから前記ツールデータを取得するので、例えば最新のツールデータ等をドライバープログラムとして配布する場合などにおいて、デバイスから古いツールデータが取得されることを防止できる。
【０００８】
また、本発明は、上記システムにおいて、前記デバイスは、記録媒体へ画像を記録する記録装置であり、前記ツールデータは、前記記録装置が記録する画像を生成する処理、前記記録装置の設定を変更する処理、前記記録装置が記録する画像を表示する処理の少なくとも一つを行うためのデータであることを特徴とする。
本発明によれば、記録装置を制御するドライバープログラムのデータ容量を低減させることができる。特にデバイスが記録装置の場合は、取り扱う記録媒体の種別や、記録する画像の仕様が様々であることから、ドライバープログラムのデータ容量の低減に有利である。
【０００９】
また、上記課題を解決するため、本発明は、デバイスと通信可能に接続されたデバイス制御装置であって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する共通処理実行手段と、前記デバイスが実現する固有の機能にかかる処理が前記共通処理実行手段から呼び出された際に、前記デバイスに格納された前記ツールデータを取得する取得手段と、前記取得手段により取得された前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うツールデータ実行手段と、を備えることを特徴とするデバイス制御装置である。
本発明によれば、デバイスを制御するデバイス制御装置が、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。
【００１０】
また、上記課題を解決するため、本発明は、デバイスと通信可能に接続されたデバイス制御装置が実行する制御方法であって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うことを特徴とする。
本発明によれば、デバイスを制御するデバイス制御装置が、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。
【００１１】
また、上記課題を解決するため、本発明は、デバイスと通信可能に接続されたデバイス制御装置が実行するプログラムであって、前記デバイスの種別、又は、前記デバイスが実現する機能に共通する処理を実行する際に、前記デバイスが実現する固有の機能にかかる処理が呼び出された場合に、前記デバイスに格納された前記ツールデータを取得し、取得した前記ツールデータをもとに、前記デバイスが実現する固有の機能にかかる処理を行うことを特徴とする。
本発明によれば、デバイスを制御するデバイス制御装置が、デバイスが実現する固有の機能にかかる処理が呼び出された際に、デバイスに格納されたツールデータを取得してデバイスが実現する固有の機能にかかる処理を行う。これにより、デバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてデバイス制御装置が取得するので、予めデバイス制御装置が様々なデバイスに対応した多数のツールデータを保持していなくても、デバイス制御装置に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、デバイス制御装置がデバイスを制御するプログラムにツールデータを備える必要がなく、デバイス制御装置が保持すべきデータ容量を低減させることができる。
【発明の効果】
【００１２】
本発明によれば、デバイスを制御するデバイス制御装置がデバイスを制御するために記憶するデータ容量を低減させることができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態にかかるシステムの構成を示すブロック図である。
【図２】ホストコンピューターとプリンターの機能ブロック図である。
【図３】ホストコンピューターが表示するＧＵＩの一例を示す概念図である。
【図４】プリンタードライバーにより実行される処理のフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施形態について説明する。図１は、実施形態にかかるシステムの構成を示すブロック図であり、より具体的には、記録システム１の構成を示すブロック図である。
記録システム１は、紙、コーティング紙または合成樹脂シート等からなる記録媒体としてのカットシートや連続シートに、文字や画像を印刷（記録）するデバイスとしてのプリンター３と、プリンター３を制御して記録を実行させるデバイス制御装置としてのホストコンピューター２とを、通信線１０を介して相互に通信可能に接続して構成される。本実施形態では、システムの構成として、記録媒体へ画像を記録するプリンター３をホストコンピューター２で制御する記録システム１を例示するが、デバイスの種別等のシステムレイアウトは特に限定しない。例えば、デバイスの種類はプリンターに限定されるものではなく、スキャナー等であってもよい。また、本実施形態ではホストコンピューター２とプリンター３とを一対一で接続した構成を例示するが、一台のホストコンピューター２に接続されるプリンター３の数に制限はなく、多数のプリンター３をホストコンピューター２に接続してもよい。また、複数のホストコンピューター２に１台のプリンター３を接続したものでもよい。通信線１０は、ホストコンピューター２とプリンター３とを一対一で接続する通信ケーブルや無線通信回線の他、一台のホストコンピューター２に対し多数のプリンター３を接続可能な有線または無線のＬＡＮ、または、公衆回線網を介した広域ネットワークにより構成される。また、プリンター３の記録方式についても特に制限はなく、本実施形態では一例として、プリンター３を、発熱素子を備えたラインサーマルヘッドにより感熱ロール紙に印刷するサーマルプリンターで構成した場合について説明する。
【００１５】
図１に示すように、ホストコンピューター２は、主として、ＣＰＵ２１と、不揮発性メモリーであるＲＯＭ２２と、揮発性メモリーであるＲＡＭ２３と、キーボード等の入力デバイスに接続された入力部２４と、表示装置等の出力デバイスに接続された出力部２５と、大規模記憶装置としての記憶部２６と、通信Ｉ／Ｆ２７とを備えている。ホストコンピューター２は、ＣＰＵ２１が記憶部２６に記憶されたオペレーティングシステム２６Ａ、アプリケーションプログラム２６Ｂ、及びプリンタードライバー２６Ｃを実行しながら、通信Ｉ／Ｆ２７を介してプリンター３に各種コマンドや印刷データを出力することにより、プリンター３を制御する。ホストコンピューター２は、プリンター３に対し、印刷実行を指示するコマンドと印刷用のデータとを含む印刷ジョブを送信して、印刷を行わせる。
【００１６】
プリンター３は、主として、ＣＰＵ３１と、書き換え可能な不揮発性メモリーであるフラッシュＲＯＭ３２と、揮発性メモリーであるＲＡＭ３３と、ＬＥＤランプ３４と、通信Ｉ／Ｆ３５と、印刷ヘッド３８と、印刷ヘッド３８が備える発熱素子に適宜通電させて記録媒体としての感熱ロール紙に熱エネルギーを与え、有色のドットを形成させて記録を行う印刷制御部３６と、用紙搬送機構３７とを備えている。
【００１７】
プリンター３は、ＣＰＵ３１がフラッシュＲＯＭ３２に記憶されたファームウェアを実行しながら、通信Ｉ／Ｆ３５を介してホストコンピューター２と通信を行うことにより、各種コマンドや印刷データを受信する。そして、印刷制御部３６が各種コマンドや印刷データに基づき、用紙搬送機構３７を介して用紙を搬送しつつ印刷ヘッド３８を駆動して用紙への印刷を実行し、レシートやクーポンを発券する。また、プリンター３は、発券時や、エラーの発生時等にはＬＥＤランプ５を点灯または点滅させるたり、スピーカー（図示略）から音声を報知したりするなどして、ユーザーに各種情報を視覚的または聴覚的に通知する。また、プリンター３は、通信Ｉ／Ｆ３５を介したホストコンピューター２からの要求に応じて、フラッシュＲＯＭ３２に記憶（格納）されているデータをホストコンピューター２へ送信する。ホストコンピューター２から要求されるデータは、プリンター３が実現する各種機能の制御にかかるツールデータなどである。
【００１８】
図２は、ホストコンピューター２とプリンター３の機能ブロック図である。図２に示すホストコンピューター２の各部は、ＣＰＵ２１（図１参照）が記憶部２６に記憶された各種プログラムを実行することにより、ソフトウェアとハードウェアとの協働により実現される。また、プリンター３の各部は、ＣＰＵ３１によりフラッシュＲＯＭ３２に記憶された各種プログラムを実行することにより、ソフトウェアとハードウェアとの協働により実現される。
【００１９】
図２に示すように、プリンター３は、ホストコンピューター２から送信される各種コマンドや印刷データを受信する受信部４０１と、受信部４０１が受信した各種コマンドや印刷データを一時的に保持する受信バッファー４０２が設けられている。受信バッファー４０２によって受信されたデータは、コマンド解析部４０３によって解析され、制御コマンドの場合は制御コマンドバッファー４０４に、印刷データの場合には印刷バッファー４０５にＤＭＡ転送等により転送される。印刷バッファー４０５に一時保存された印刷データは、データ展開処理が行われてデータ変換され、最終的には印刷ヘッド３８の発熱素子列に対応したドットパターンデータが生成されて印刷バッファー４０５に記憶される。一方、制御コマンドバッファー４０４に一時保存された制御コマンドデータは、主制御部４０８によって読み出されて、記録媒体としての用紙カット動作など制御コマンドに応じた処理が実行される。
【００２０】
ホストコンピューター２から送信される制御コマンドには、プリンター３にデータを要求するコマンドが含まれる。ホストコンピューター２がプリンター３に要求するデータには、プリンター３の状態を示すステータスデータや、ツールデータ格納部４０６に格納されたツールデータ（詳細は後述する）などがある。主制御部４０８は、制御コマンドバッファー４０４より読み出した制御コマンドがデータの要求コマンドである場合、要求されたデータを収集して送信部４１４を介してホストコンピューター２へ送信する。例えば、ステータスデータが要求された場合は、印刷制御部３６や用紙搬送機構３７の処理の状態（例えば印刷中、用紙搬送中など）、制御コマンドデータを受付中である待ち状態、プリンター３のエラー状態などを一意に示すステータスコードを生成し、生成したステータスコードをステータスデータとしてホストコンピューター２へ送信する。また、ツールデータが要求された場合、主制御部４０８は、要求されたツールデータをツールデータ格納部４０６より読み出してホストコンピューター２へ送信する。
【００２１】
また、ホストコンピューター２から送信される制御コマンドには、プリンター３での処理を即時に行わせるリアルタイム制御コマンド（即時実行制御コマンド）がある。プリンター３では、通常のコマンドが制御コマンドバッファー４０４に記憶された順に実行されるのに対し、リアルタイム制御コマンドは、受信バッファー４０２においてコマンド解析部４０３により検出されると、他の処理に優先して直ちに実行される。
【００２２】
ツールデータ格納手段としてのツールデータ格納部４０６は、プリンター３が実現する固有の機能を処理するために、ホストコンピューター２のプリンタードライバー２６Ｃにプラグインとして追加するツールデータを、フラッシュＲＯＭ３２などに格納する。ツールデータ格納部４０６に格納されたツールデータは、送信手段としての主制御部４０８によって、ホストコンピューター２からの要求に応じて読み出され、ホストコンピューター２へ送信される。ツールデータ格納部４０６に格納されるツールデータは、ホストコンピューター２のプリンタードライバー実行部２１０が呼び出して、プリンター３が実現する固有の機能にかかる処理を行うプログラム等であり、例えばダイナミック・リンク・ライブラリー等であってよい。プリンター３が実現する固有の機能にかかる処理としては、プリンター３が記録媒体へ記録する画像を生成する画像生成処理、プリンター３の設定を変更する設定変更処理、プリンター３が記録媒体へ記録する画像を表示する表示処理など、プリンター３の種別等で仕様が異なる処理である。例えば、プリンター３がレシートに印刷を行う場合では、印刷を行うレシート幅、ドットピッチ、ロゴ印刷の有無、バーコード印刷の有無、連番印刷の有無、印字前のレシート表示など、一般的なプリンター３が行う汎用的な処理（詳細は後述する）とは異なった処理が挙げられる。
【００２３】
主制御部４０８は、プリンター３の動作を統括制御する。具体的には、主制御部４０８は、コマンド解析部４０３により検出されたリアルタイム制御コマンド等の制御コマンドに応じて、各部の処理を制御する。例えば、制御コマンドによりステータスデータが要求された場合は、プリンター３の状態を示すステータスデータをホストコンピューター２へ送信する。また、ツールデータが要求された場合は、要求されたツールデータをツールデータ格納部４０６から読み出してホストコンピューター２へ送信する。ツールデータの要求は、例えばダイナミック・リンク・ライブラリー等のファイル名を指定して行われる。したがって、主制御部４０８は、指定されたファイル名のツールデータをツールデータ格納部４０６から読み出し、送信部４１４を介してホストコンピューター２へ送信する。
【００２４】
一方、ホストコンピューター２は、記憶部２６に記憶されたオペレーティングシステム２６Ａを実行することにより、ホストコンピューター２の基本的機能を実現する。ホストコンピューター２は、記憶部２６に記憶されたアプリケーションプログラム２６Ｂを実行するアプリケーション実行部２０１と、プリンタードライバー２６Ｃを実行するプリンタードライバー実行部２１０と、プリンター３との間で印刷ジョブ及びコマンドを送受信する送受信部２１４とを備える。
【００２５】
アプリケーション実行部２０１は、アプリケーションプログラムを実行してデータを処理し、処理されたデータを随時出力する。また、アプリケーション実行部２０１は、アプリケーションプログラムの実行中に印刷の指示がなされた場合に、印刷実行の指示と、印刷すべきデータとを、印刷用データ（記録用データ）としてプリンタードライバー実行部２１０に出力する。
【００２６】
プリンタードライバー実行部２１０は、アプリケーション実行部２０１がアプリケーションプログラムの実行により出力する印刷の指示（印刷用データ）に基づき、この印刷用データを印刷するための印刷ジョブや各種制御コマンドを生成して、生成した印刷ジョブや各種制御コマンドをプリンター３に送信させる。この印刷ジョブには、印刷実行を指示する印刷指示コマンドと、印刷用データとが含まれ、印刷指示コマンドとともに他のコマンドを含ませることも可能である。具体的には、プリンタードライバー実行部２１０は、共通処理部２１１、ツールデータ取得部２１２、ツールデータ処理部２１３、及び、プリンター３との通信を行う送受信部２１４を備えている。送受信部２１４は、プリンター３との通信を行うためのポート（ここではＬＡＮポート）を介して、ＡＰＩ（Application Program Interface）の指示に応じてプリンター３に各種コマンドを送信したり、プリンター３から情報を受信したりする。
【００２７】
共通処理実行手段としての共通処理部２１１は、上述したプリンタードライバー実行部２１０の処理の中で、プリンター３の種別、又は、プリンター３が実現する機能に共通する処理を実行する。具体的には、共通処理部２１１は、プリンター３の機種や、プリンター３が解釈するＰＤＬ（Page Description Language）等の相違によって処理の違いが発生しない汎用的な処理を行う、いわゆるコアドライバーとして機能が実装されている。また、共通処理部２１１は、共通する処理の一つとして、プリンター３にかかる操作指示をユーザーから受け付けるユーザーインターフェースとしての機能を提供する。具体的には、共通処理部２１１は、ＧＵＩ（グラフィカル・ユーザー・インターフェース）としての機能を提供し、出力部２５に接続された表示装置に操作画面を表示させて、入力部２４に接続された入力デバイスより操作指示を受け付ける。
【００２８】
ここで、図３は、ホストコンピューター２が表示するＧＵＩの一例を示す概念図である。
この図３に示すように、共通処理部２１１は、例えば印刷設定画面Ｇ１をプリンター３にかかる操作指示を受け付ける操作画面として表示装置に表示させる。印刷設定画面Ｇ１には、ハーフトーンの有無を設定するハーフトーン選択ボタンＧ１１、両面印刷の有無を設定する両面印刷選択ボタンＧ１２、印刷レイアウトの表示を行う印刷レイアウト表示ボタンＧ１３等の操作ボタンが表示される。ユーザーは、入力部２４に接続された入力デバイスにより上述した操作ボタンを操作することで、プリンター３にかかる操作を行う。
上述したＧＵＩにより、プリンター３が実現する固有の機能にかかる処理が指示された場合、共通処理部２１１は、その固有の機能にかかる処理を実行するためのツールデータを呼び出す。例えば、ハーフトーンにかかる処理、両面印刷にかかる処理、印刷レイアウトの表示にかかる処理の中で、ハーフトーンにかかる処理と印刷レイアウトの表示にかかる処理とが固有の機能にかかる処理である場合は、ハーフトーン選択ボタンＧ１１、印刷レイアウト表示ボタンＧ１３の操作に応じて、ハーフトーンにかかる処理を行うツールデータや、印刷レイアウト表示にかかる処理を行うツールデータの呼び出しが行われることとなる。このように、共通処理部２１１がＧＵＩの機能を提供することで、プリンター３の固有の機能に関係なく、共通したユーザーインターフェースでの操作が実現できる。
【００２９】
取得手段としてのツールデータ取得部２１２は、プリンター３が実現する固有の機能にかかる処理が共通処理部２１１から呼び出された際に、プリンター３に格納されたツールデータを取得する。具体的には、ツールデータ取得部２１２は、共通処理部２１１から呼び出されたツールデータを、ダイナミック・リンク・ライブラリー等の呼び出しと同様に、プリンタードライバー２６Ｃに含まれるデータから取得する。ここで、プリンタードライバー２６Ｃに該当するデータが含まれていない場合、すなわち該当するダイナミック・リンク・ライブラリーにかかるファイルがプリンタードライバー２６Ｃに存在しない場合は、そのファイルをプリンター３へ要求する制御コマンドを生成してプリンター３へ送信することで、プリンター３よりツールデータを取得する。
【００３０】
ツールデータ実行手段としてのツールデータ処理部２１３は、ツールデータ取得部２１２により取得されたツールデータをもとに、共通処理部２１１より呼び出された、プリンター３が実現する固有の機能にかかる処理を行う。具体的には、ツールデータ処理部２１３は、取得されたダイナミック・リンク・ライブラリー等のツールデータを実行して、実行結果を戻り値として共通処理部２１１へ返す。
【００３１】
次に、プリンタードライバー実行部２１０により行われる処理を具体的に説明する。
図４は、プリンタードライバー実行部２１０により行われる処理を示すフローチャートである。より具体的には、共通処理部２１１によりツールデータが呼び出された際の処理のフローを示すフローチャートである。図４に示す処理は、図３に例示したハーフトーン選択ボタンＧ１１等の、プリンター３が実現する固有の機能にかかる処理が指示されたタイミングで開始される。
【００３２】
処理が開始されると、プリンタードライバー実行部２１０のツールデータ取得部２１２は、共通処理部２１１より呼び出されたツールデータをホストコンピューター２が記憶しているか否かを確認する（ステップＳ１）。ツールデータ取得部２１２は、呼び出されたツールデータがプリンタードライバー２６Ｃに含まれているか否かを判定する（ステップＳ２）。この判定は、ダイナミック・リンク・ライブラリー等のツールデータに関するファイルがプリンタードライバー２６Ｃに存在するか否かを検索して行う。そして、ツールデータがプリンタードライバー２６Ｃに含まれており、ホストコンピューター２に存在すると判定した場合（ステップＳ２；Ｙｅｓ）は、ツールデータ取得部２１２は、そのツールデータを読み出して取得する。次いで、ツールデータ処理部２１３は、取得したツールデータを実行してツールデータによる処理を実行する（ステップＳ６）。
【００３３】
一方、ツールデータがプリンタードライバー２６Ｃに含まれておらず、ホストコンピューター２に存在しない場合（ステップＳ２；Ｎｏ）、ツールデータ取得部２１２は、プリンター３との通信接続が送受信部２１４で確立され、プリンター３との接続が行われていることを確認する（ステップＳ３）。ここで、プリンター３がホストコンピューター２に接続されていないと判定した場合（ステップＳ４；Ｎｏ）、ツールデータ取得部２１２は、エラーを示す戻り値を共通処理部２１１などに返すなどして処理を終了する。
【００３４】
これに対し、プリンター３が接続されている場合（ステップＳ４；Ｙｅｓ）、ツールデータ取得部２１２は、ツールデータに関するダイナミック・リンク・ライブラリー等のファイルをプリンター３へ要求する制御コマンドを生成し、生成した制御コマンドを送受信部２１４を介してプリンター３へ送信することで、プリンター３にツールデータを要求する。この要求に応じてプリンター３がツールデータを送信すると、ツールデータ取得部２１２は、このツールデータを取得する（ステップＳ５）。次いで、ツールデータ処理部は、取得されたツールデータを実行してツールデータによる処理を実行する（ステップＳ６）。
【００３５】
このように、記録システム１では、プリンター３が実現する固有の機能にかかる処理を行うツールデータを、プリンター３から取得する構成であるため、プリンター３を制御するプリンタードライバー２６Ｃにツールデータを備える必要がなく、プリンタードライバー２６Ｃのデータ容量を低減させることができる。特にプリンター３などにおいては、取り扱う記録媒体の種別や、記録する画像の仕様（例えばドッドピッチなど）が様々であることから、プリンタードライバー２６Ｃのデータ容量の低減に有利である。また、記録システム１では、ツールデータがホストコンピューター２に記憶されていない場合に、ツールデータがプリンター３から取得される構成であるため、例えば最新のツールデータ等をプリンタードライバー２６Ｃとして配布する場合などにおいて、プリンター３から古いツールデータが取得されることを防止できる。
【００３６】
以上説明したように、本発明を適用した実施形態に係る記録システム１によれば、デバイスとホストコンピューター２とが通信可能に接続された記録システム１において、デバイスとしてのプリンター３が、自装置が実現する固有の機能を処理するためのツールデータをツールデータ格納部４０６に格納し、ホストコンピューター２からの要求に応じて、主制御部４０８により、ツールデータ格納部４０６に格納したツールデータをホストコンピューター２へ送信する構成を有し、ホストコンピューター２は、制御を行うデバイスの種別、又は、デバイスが実現する機能に共通する処理を実行する共通処理部２１１と、デバイスが実現する固有の機能にかかる処理が共通処理部２１１から呼び出された際に、ツールデータ取得部２１２の機能によってデバイスからツールデータを取得し、取得したツールデータをもとに、ツールデータ処理部２１３によって、プリンター３が実現する固有の機能にかかる処理を行うので、ホストコンピューター２に接続されたデバイスが実現する固有の機能にかかる処理を行うツールデータを必要に応じてホストコンピューター２が取得できる。このため、予めホストコンピューター２が、プリンター３を含む様々なデバイスに対応した多数のツールデータを保持していなくても、ホストコンピューター２に様々なデバイスを接続して、各デバイスに固有の機能を実行できる。従って、ホストコンピューター２がプリンター３を制御するプログラムにツールデータを備える必要がなく、ホストコンピューター２が保持すべきデータ容量を低減させることができる。
【００３７】
また、ホストコンピューター２の共通処理部２１１は、プリンター３に関する操作指示をユーザーから受け付けるユーザーインターフェースを実現するための処理を共通する処理として実行し、ユーザーインターフェースにより受け付けられた操作指示に応じて、プリンター３が実現する固有の機能にかかる処理を呼び出すので、操作指示をユーザーから受け付けるユーザーインターフェースをドライバープログラムとして用意して、共通したユーザーインターフェースを提供できる。また、この共通したユーザーインターフェースを介して呼び出される固有の機能に関しては、ツールデータをプリンター３から取得するので、ホストコンピューター２はユーザーインターフェースに関するプログラムを記憶していれば、各プリンター３に固有の機能のツールデータを保持する必要がなく、効率が良い。
【００３８】
ホストコンピューター２のツールデータ取得部２１２は、制御対象のデバイスであるプリンター３が実現する固有の機能にかかる処理が呼び出された際に、当該処理にかかるツールデータがホストコンピューター２に記憶されていない場合に、このツールデータをプリンター３から取得するので、例えば最新のツールデータ等をドライバープログラムとして配布する場合などにおいて、プリンター３から古いツールデータが取得されることを防止できる。
また、ホストコンピューター２に接続されるデバイスが、記録媒体へ画像を記録するプリンター３であり、ツールデータは、プリンター３が記録する画像を生成する処理、プリンター３の設定を変更する処理、プリンター３が記録する画像を表示する処理の少なくとも一つを行うためのデータであるから、プリンター３を制御するドライバープログラムのデータ容量を低減させることができる。特に、デバイスとしてプリンター３を用いる場合は、取り扱う記録媒体の種別や、記録する画像の仕様が様々であることから、ドライバープログラムのデータ容量の低減に有利である。
【００３９】
なお、上記実施形態は本発明を適用した一具体例を示すものであり、本発明はこれに限定されるものではない。例えば、上記実施形態ではホストコンピューター２に接続されるデバイスの一例としてプリンター３を挙げて説明したが、本発明はこれに限定されるものではなく、例えば、ディスプレイ（表示装置）、スキャナー（光学読取装置）、他のパーソナルコンピューター、ハードディスク装置や半導体メモリーを用いた外部記憶装置、テレビ放送等の放送受信機等が挙げられる。また、これらの各デバイスとホストコンピューター２との接続態様は任意であり、ＵＳＢケーブル等を用いて１対１で接続してもよいし、ＬＡＮを介して多対多で接続してもよい。
また、上記実施形態ではプリンター３がサーマルプリンターである場合を例に挙げて説明したが、本発明を適用可能な記録装置は、文字や画像を記録できる装置であれば特に制限されず、印刷ヘッドから記録媒体に複数色のインクを吐出することで文字や画像を形成するインクジェットプリンター、記録ワイヤーを突出する記録ヘッドにより記録媒体にドットを形成して印刷するドットインパクトプリンター、レーザープリンター等にも本発明を適用可能であり、他の装置に組み込まれるプリンターにも本発明を適用可能である。また、記録システム１を、ホストコンピューター２を１台又は複数台備える構成や、プリンター３を１台又は複数台備える構成とすることも、勿論可能である。
【００４０】
また、上記実施形態では、ホストコンピューター２のＣＰＵ２１が記憶部２６に記憶された各種プログラムを実行し、プリンター３のＣＰＵ３１がフラッシュＲＯＭ３２に記憶された各種プログラムを実行することにより、図２に示す各部の機能を実現する構成として説明したが、これらの各種プログラムは、他の記憶装置、記憶媒体や外部装置の記憶媒体に記憶させ、ホストコンピューター２のＣＰＵ２１或いはプリンター３のＣＰＵ３１により読み出して実行する構成としても良い。さらに、これらのプログラムを、ホストコンピューター２或いはプリンター３が通信ネットワークを介して接続された他の装置からダウンロードして実行しても良い。
【符号の説明】
【００４１】
１…記録システム（システム）、２…ホストコンピューター（デバイス制御装置）、３…プリンター（デバイス、記録装置）、１０…通信線、２１…ＣＰＵ、２６…記憶部、２６Ｃ…プリンタードライバー、３１…ＣＰＵ、３６…印刷制御部、２１０…プリンタードライバー実行部、２１１…共通処理部（共通処理実行手段）、２１２…ツールデータ取得部（取得手段）、２１３…ツールデータ処理部（ツールデータ実行手段）、２１４…送受信部、４０１…受信部、４０２…受信バッファー、４０３…コマンド解析部、４０６…ツールデータ格納部（ツール格納手段）、４０８…主制御部（送信手段）、４１４…送信部、Ｇ１…印刷設定画面。
【図１】
2012185702.tif 000003
【図２】
2012185702.tif 000004
【図３】
2012185702.tif 000005
【図４】
2012185702.tif 000006