(57)【要約】【課題】クラス情報の解析に必要なクラス解析手段がアプリケーションごとに別々に定義された状況でのオブジェクトの復元を図る。【解決手段】デジタルカメラＣとプリンタＰの印刷アプリケーションＣＰＡ、ＰＰＡおよび通信アプリケーションＣＤＡ、ＰＤＡは、クラス解析手段をそれぞれ備えアプリケーション実行環境ＣＡＡ、ＰＡＡで実行される。印刷アプリケーションＣＰＡは、印刷要求を表すオブジェクトを、印刷アプリケーション自体のクラス解析手段の解析するクラス情報に対応したクラス名とクラスデータを含んだ直列化データに変換して出力する。プリンタ側通信アプリケーションＰＤＡでは、このオブジェクトを生成した印刷アプリケーションＣＰＡ自体のクラス解析手段を取得し、当該手段の解析するクラス情報と、受信・取得済みの直列化データに含まれるクラスデータとからオブジェクトを復元する。【選択図】図２
2008268990.tif 000002
【特許請求の範囲】
【請求項１】
クラス名に基づいてクラス情報の解析を行うクラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を備え、クラス名とクラスデータを含む直列化データを受信する情報処理装置であって、
クラス名とクラス情報を関連付けてクラス解析管理手段に登録を要求するクラス解析手段登録要求手段と、
前記登録要求を受けて、クラス名とクラス情報を関連付けて前記クラス解析管理手段に登録するクラス解析手段登録手段と、
前記受信した直列化データに含まれるクラス名を取得し、前記クラス解析管理手段を参照して該取得したクラス名に関連付けられたクラス情報を特定するクラス情報特定手段と、
前記特定されたクラス情報を基に前記受信した直列化データをオブジェクトに復元するオブジェクト復元手段とを備える
情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記クラス解析手段登録要求手段は、前記アプリケーションの起動時に前記クラス解析管理手段への登録要求を実行する
情報処理装置。
【請求項３】
請求項１または請求項２に記載の情報処理装置であって、
前記アプリケーション実行環境では第１のアプリケーションと第２のアプリケーションが実行可能であり、
前記第１のアプリケーションは、前記クラス解析手段登録要求手段を備え、
前記第２のアプリケーションは、前記クラス解析手段登録手段と前記クラス情報特定手段および前記オブジェクト復元手段を備える
情報処理装置。
【請求項４】
請求項１ないし請求項３いずれかに記載の情報処理装置であって、
前記クラス解析管理手段に登録されているクラス名および関連付けられているクラス情報の削除を要求するクラス解析手段削除要求手段を備え、
前記クラス解析手段削除要求手段は、前記アプリケーションの停止時に前記クラス解析管理手段からの前記クラス名と前記クラス情報との削除要求を実行する
情報処理装置。
【請求項５】
クラス名に基づいてクラス情報の解析を行うクラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を備え、クラスデータとクラス情報から成るオブジェクトをクラス名とクラスデータとを含む直列化データに変換し、前記直列化データを所定の通信路を介して送信する情報送信装置と、クラス解析手段を有するアプリケーションが複数実行可能なアプリケーション実行環境を備え、前記直列化データを前記通信路を介して受信する情報受信装置とを有する情報送受信システムであって、
前記情報送信装置は、
前記オブジェクトを生成したアプリケーションを識別するアプリケーション識別子とクラス名を直列化データに付与する識別子付与手段を備え、
前記情報受信装置は、
前記アプリケーション識別子とクラス名とクラス情報を関連付けて登録を要求するクラス解析手段登録要求手段と、
前記登録要求を受けて、前記アプリケーション識別子とクラス名とクラス情報を関連付けて前記クラス解析管理手段に登録するクラス解析手段登録手段と、
前記直列化データに含まれる前記アプリケーション識別子とクラス名を基にクラス情報を特定し、前記特定されたクラス情報に基づいて前記直列化データをオブジェクトに復元するオブジェクト復元手段とを備える
情報送受信システム。
【請求項６】
クラスデータとクラス情報から成るオブジェクトをクラス名とクラスデータを含んで直列に変換された直列化データを所定の通信路を介して受信し、該受信した前記直列化データを前記オブジェクトに復元する情報受信方法であって、
クラス名に基づいてクラス情報の解析を行うクラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を構築し、
クラス名とクラス情報を関連付けてクラス解析管理手段に登録を要求し、
前記登録要求を受けて、クラス名とクラス情報を関連付けて前記クラス解析管理手段に登録し、
前記受信した直列化データに含まれるクラス名を取得し、前記クラス解析管理手段を参照して該取得したクラス名に関連付けられたクラス情報を特定し、
前記特定されたクラス情報を基に前記受信した直列化データをオブジェクトに復元する
情報受信方法。
【請求項７】
クラス名に基づいてクラス情報の解析を行うクラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を備えるコンピュータを用いて、クラスデータとクラス情報から成るオブジェクトをクラス名とクラスデータを含んで直列に変換された直列化データの所定の通信路を介して受信し、該受信した前記直列化データを前記オブジェクトに復元するプログラムであって、
前記コンピュータに、
クラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を構築して前記アプリケーションを実行可能としており、
クラス名とクラス情報を関連付けてクラス解析管理手段に登録を要求するクラス解析手段登録要求手段と、
前記登録要求を受けて、クラス名とクラス情報を関連付けて前記クラス解析管理手段に登録するクラス解析手段登録手段と、
前記受信した直列化データに含まれるクラス名を取得し、前記クラス解析管理手段を参照して該取得したクラス名に関連付けられたクラス情報を特定するクラス情報特定手段と、
前記特定されたクラス情報を基に前記受信した直列化データをオブジェクトに復元するオブジェクト復元手段の機能を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラス名とクラス情報とクラスデータを対応付けて含むクラスで区別されるオブジェクトの通信路を介した移動・収得を行う情報送受信処理に関する。
【背景技術】
【０００２】
近年になり、オブジェクト指向プログラミングの気運が高まり、いわゆるクライアント／サーバにおけるそれぞれのアプリケーションでのオブジェクトの利用を図るため、そのオブジェクトを直列化データに変換して送受信されている（特許文献１等）。つまり、クラス名とクラス情報とクラスデータを対応付けて含むクラスで区別されるオブジェクトを直列化データに変換して、その直列化データを送信し、受信側での復元を行っている。
【０００３】
【特許文献１】特開２００１−１４７８１２号公報
【０００４】
ところで、従来のアプリケーションの実行環境、例えばＯＳＧＩ（Open Services Gateway Initiative）では、アプリケーションの設計段階で予めクラス解析手段を登録することは可能であった。その一方、このアプリケーション実行環境には任意に新しいアプリケーションを追加することが可能であるため、後から追加されたアプリケーションが扱うオブジェクトのクラス情報を参照することができないという事態が予想される。例えば、クライアント／サーバの関係となる電子機器の一例であるプリンタとデジタルカメラのプリンタの側においては、それぞれのデバイスがデータ通信を担う通信アプリケーションを備え、カメラ側では当該カメラ用の印刷アプリを、プリンタ側では当該プリンタ用の印刷アプリケーションを当初は備える。そして、カメラの画像データ等のプリンタでの印刷に際しては、プリンタにはカメラの印刷アプリケーションがインストールされる。ところが、プリンタ側の通信アプリケーションでは、その設計時に特定のデジタルカメラのカメラ印刷アプリケーションが扱うオブジェクトのクラス解析手段を登録しておいたとしても、後に新しいデジタルカメラやスキャナがプリンタに接続されると、新たなクラスを持つオブジェクトを扱う新たなカメラ印刷アプリケーションやスキャナ印刷アプリケーションのクラス解析手段が追加されることがある。こうした場合は、通信アプリケーションは、これら新たなクラス解析手段に対処するようプログラミングされていないため、新たなデジタルカメラやスキャナから送信されてくる直列化データをオブジェクトに復元することができないことが予想される。こうなると、データ受信側機器のアプリケーションではオブジェクトの参照等ができないので、何らかの対策が求められるに至った。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、オブジェクトの直列化・復元に際しての上記した問題点を解決するためになされ、クラス名に基づいてクラス情報の解析を有するアプリケーションが実行可能なアプリケーション実行環境を備える場合のオブジェクトの復元を図ることをその目的とする。
【課題を解決するための手段】
【０００６】
上記した目的の少なくとも一部を達成するために、本発明の情報送受信処理では、以下の構成を採用した。
【０００７】
[適用１：情報受信装置]
クラス名に基づいてクラス情報の解析を行うクラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を備え、クラス名とクラスデータを含む直列化データを受信する情報処理装置であって、
クラス名とクラス情報を関連付けてクラス解析管理手段に登録を要求するクラス解析手段登録要求手段と、
前記登録要求を受けて、クラス名とクラス情報を関連付けて前記クラス解析管理手段に登録するクラス解析手段登録手段と、
前記受信した直列化データに含まれるクラス名を取得し、前記クラス解析管理手段を参照して該取得したクラス名に関連付けられたクラス情報を特定するクラス情報特定手段と、
前記特定されたクラス情報を基に前記受信した直列化データをオブジェクトに復元するオブジェクト復元手段とを備える
ことを要旨とする。
【０００８】
[適用２：情報送受信システム]
クラス名に基づいてクラス情報の解析を行うクラス解析手段を有するアプリケーションが実行可能なアプリケーション実行環境を備え、クラスデータとクラス情報から成るオブジェクトをクラス名とクラスデータとを含む直列化データに変換し、前記直列化データを所定の通信路を介して送信する情報送信装置と、クラス解析手段を有するアプリケーションが複数実行可能なアプリケーション実行環境を備え、前記直列化データを前記通信路を介して受信する情報受信装置とを有する情報送受信システムであって、
前記情報送信装置は、
前記オブジェクトを生成したアプリケーションを識別するアプリケーション識別子とクラス名を直列化データに付与する識別子付与手段を備え、
前記情報受信装置は、
前記アプリケーション識別子とクラス名とクラス情報を対応付けて登録を要求するクラス解析手段登録要求手段と、
前記登録要求を受けて、前記アプリケーション識別子とクラス名とクラス情報を関連付けて前記クラス解析管理手段に登録するクラス解析手段登録手段と、
前記直列化データに含まれる前記アプリケーション識別子とクラス名を基にクラス情報を特定し、前記特定されたクラス情報に基づいて前記直列化データをオブジェクトに復元するオブジェクト復元手段とを備える
ことを要旨とする。
【０００９】
上記した本発明の情報受信装置および情報受信処理システムでは、オブジェクトの直列化データの送信元である情報送信装置のアプリケーションと、直列化データの復元を図る情報受信装置のアプリケーションが別々のアプリケーションであり、個々の装置においてアプリケーションごとにクラス解析手段が用意されている。ところで、情報送受信装置のアプリケーション実行環境では、アプリケーションごとにクラス解析手段を備え、各アプリケーションが実行可能であり、このクラス解析手段が解析を行うクラス名とクラス情報は、関連付けられてクラス解析管理手段に登録される。このため、オブジェクトを直列化データに変換する情報送信装置のアプリケーションのクラス解析手段も登録が可能であり、当該クラス解析手段は、クラス解析管理手段により、クラス名と共に管理される。この登録に際しては、情報受信装置の側において、クラス解析管理手段への登録要求がなされ、この登録要求を受けて、クラス名とクラス情報とが関連付けられてクラス解析管理手段に登録される。この場合、情報受信装置のアプリケーション自体にあってもクラス解析手段を有するので、情報受信装置のクラス解析管理手段は、情報受信装置のアプリケーション自体のクラス解析手段と情報送信装置のアプリケーションのクラス解析手段とを、それぞれのクラス解析手段に対応するクラス名と共に管理する。そして、直列化データを受信してその復元を図る情報受信装置は、オブジェクトの直列化データの送り元である情報送信装置におけるアプリケーションのクラス解析手段のクラス情報を、次のようにして取得・特定する。
【００１０】
まず、受信した直列化データに含まれるクラス名を取得し、情報受信装置の側では、クラス解析管理手段を参照して該取得したクラス名に関連付けられたクラス情報を特定する。受信した直列化データから取得したクラス名は、オブジェクトの直列化データへの変換を行った情報送信装置のアプリケーションのクラス解析手段に対応する。そして、この情報送信装置のアプリケーションのクラス解析手段のクラス情報は、既述したように情報受信装置の側のクラス解析管理手段において登録・管理されていることから、上記のようにして特定したクラス情報は、オブジェクトの直列化データへの変換を行った情報送信装置のアプリケーションのクラス情報となる。このため、直列化データを受信した情報受信装置のアプリケーションは、直列化を行ったアプリケーションのクラス情報と、直列化データに含まれるクラスデータとからオブジェクトを復元できるので、個々のアプリケーションごとにクラス解析手段を備えるアプリケーション実行環境においても、支障なくオブジェクトを復元できる。よって、直列化データを受信した情報受信装置のアプリケーションは、この復元したオブジェクトを参照等できる。
【００１１】
この場合、オブジェクトを直列化データに変換する情報送信装置におけるアプリケーションのクラス解析手段のクラス情報を、オブジェクトへの復元を図る情報受信装置の側のクラス解析管理手段の管理下に置くに当たっては、情報受信装置側のクラス解析管理手段へのクラス情報の登録を図る別のアプリケーションにより、情報送信装置側のアプリケーション自体が備える前記クラス解析手段のクラス情報を、情報受信システム側のクラス解析管理手段に直接登録してその管理下に置くようにすることもできる。
【００１２】
また、上記した情報送受信システムでは、情報送信装置において、オブジェクトを生成したアプリケーションを識別するアプリケーション識別子とクラス名を直列化データに付与し、この直列化データを受信する情報受信装置では、アプリケーション識別子とクラス名とクラス情報を関連付けてクラス解析管理手段で登録・管理し、直列化データに含まれるアプリケーション識別子とクラス名を基にクラス情報を特定し、前記特定されたクラス情報に基づいて前記直列化データをオブジェクトに復元するものとする。
【００１３】
こうすれば、次の利点がある。オブジェクトの直列化データを担う情報送信装置側のアプリケーション実行環境において、複数のアプリケーションが同じクラス名を持つクラス情報をも保持する場合がある。こうした場合であっても、アプリケーション識別子がアプリケーションに対応していることから、直列化データのオブジェクトへの変換を担う情報受信装置側において、当該システムのアプリケーションは、復元の対象となる直列化データへの直列化を行ったアプリケーションについてのクラス解析手段のクラス情報をオブジェクトへの変換に用いることができる。よって、複数のアプリケーションが同じクラス名を持つクラス情報をも保持する場合でも、直列化データを支障なくオブジェクトに復元できる。
【００１４】
上記したように直列化データからのオブジェクトの復元を行う情報受信装置にあっては、次のような態様とすることもできる。例えば、クラス解析手段登録要求手段を、前記アプリケーションの起動時に前記クラス解析管理手段への登録要求を実行するものとすれば、アプリケーションの起動ごとにクラス情報の登録がなされる。よって、アプリケーション起動後においてクラス情報の管理を行えばよく、アプリケーション停止後においてもクラス情報の管理を行う場合に比べると、管理に要する負荷が低減する。
【００１５】
また、アプリケーション実行環境では第１のアプリケーションと第２のアプリケーションが実行可能であって、第１のアプリケーションは、前記クラス解析手段登録要求手段を備え、第２のアプリケーションは、前記クラス解析手段登録手段と前記クラス情報特定手段および前記オブジェクト復元手段を備えるようにできる。こうすれば、機能の分担によりアプリケーションの汎用性が高まる。
【００１６】
本発明は、情報受信装置或いは情報送受信システムとしての他、情報受信方法としての態様で実現できる。また、受信した直列化データをコンピュータを用いてオブジェクトに復元するプログラムとしての態様でも実現できる。更には、こうしたプログラムを記録したコンピュータ読み取り可能な記録媒体とすることもできる。なお、こうしたプログラムを含むことで搬送路内に具現化されたデータ信号の態様とすることもできる。他の態様としては、こうしたプログラムを通信路を介して供給するプログラム供給装置としての態様とすることもできる。この態様では、プログラムをネットワーク上のサーバなどに置き、通信路を介して、必要なプログラムをコンピュータにダウンロードし、これを実行することで、上記のオブジェクトの直列化、その復元を実現することができる。
【発明を実施するための最良の形態】
【００１７】
本発明の実施の形態である実施例を、以下の項目に沿いつつ説明する。
Ａ：ハード構成；
Ｂ：機能構成；
Ｃ：オブジェクト直列／復元処理；
Ｄ：変形例
【００１８】
Ａ：ハード構成；
図１は本発明の実施例としての情報送受信処理システムをデジタルカメラとプリンタで構成した例を示す説明図、図２はデジタルカメラとプリンタにおけるアプリケーションの関係を概念的に示す説明図である。
【００１９】
図示するように、デジタルカメラＣとプリンタＰは、データの相互通信が可能な通信路としてのＵＳＢ（ Universal Serial Bus ）ケーブルKで接続されている。本実施例ではカメラ・プリンタ間の接続にＵＳＢケーブルKを用いたが、有線・無線を問わずデータの相互通信が可能な通信路、例えばＬＡＮ（Local Area Network ）等にてデジタルカメラＣとプリンタＰを接続することもできる。
【００２０】
デジタルカメラＣとプリンタＰのそれぞれは、論理演算を実行するＣＰＵ、データの一時的な読み書きを行うＲＡＭ、後述のプログラムやデータを記憶するＲＯＭを備えるほか、外部との接続に関与するインターフェース（Ｉ／Ｆ）を備え、これらをバスに接続させている。また、着脱自在な外部記憶装置としてのメモリカードＭＣや機器付属の入力機器ＣＩ、ＰＩと、Ｉ／Ｆを経てデータ通信可能とされている。
【００２１】
そして、このデジタルカメラＣとプリンタＰは、それぞれのＣＰＵやＲＡＭ等と図示しないＯＳ（Operating System ）やアプリケーションプログラム等により、図２に模式的に示すよう、アプリケーションとその実行環境を構築している。こうしたＯＳとアプリケーションプログラムとしては、デジタルカメラでは、例えばウィンドウズＣＥ（Windows Consumer Electronics ／商標）とＪａｖａプログラム（Ｊａｖａは商標）の例があり、プリンタ側では、例えばリナックス（Linux）とＪａｖａプログラムの例がある。そして、デジタルカメラＣは、これらＯＳを用いてアプリケーション実行環境ＣＡＡを備え、この実行環境で印刷アプリケーションＣＰＡと通信アプリケーションＣＤＡを実行する。このそれぞれのアプリケーションは、クラス名とクラス情報とクラスデータを対応付けて含むクラスで区別されるオブジェクトを扱うと共に、クラス名に基づいてクラス情報の解析を行うクラス解析手段を備える。アプリケーション実行環境ＣＡＡは、こうしたアプリケーションの実行環境として機能し、上述したようなクラス解析手段を備えたアプリケーションを任意に追加および削除を行うことが可能である。プリンタＰの側でも同様である。
【００２２】
デジタルカメラＣとプリンタＰの通信アプリケーションＣＤＡ、ＰＤＡは、それぞれのデバイス（カメラ・プリンタ）の状況（ステータス）を表すクラスを備え、デバイスステータスクラスで区分されるオブジェクトを、直列化した上で送受信する。また、両通信アプリケーションは、共通の通信プロトコルに従って、その他のデータ送受信に関与する。つまり、デジタルカメラＣとプリンタＰの通信アプリケーションＣＤＡ、ＰＤＡは、異なるデバイスにおけるアプリケーション実行環境ＣＡＡ、ＰＡＡでそれぞれ実行されるものであるが、共通の通信プロトコルに従うという性質上、クラス解析手段にあっても同じである。このため、デジタルカメラＣとプリンタＰがＵＳＢケーブルKにて接続されてプリンタＰ側からのカメラのデバイスステータス要求があると、デジタルカメラＣの通信アプリケーションＣＤＡがカメラのデバイスステータスクラスのオブジェクトを直列化データに変換した上でプリンタＰの側に送信する。これを受け、プリンタＰでは、その通信アプリケーションＰＤＡがこの直列化データを自身のクラス解析手段のクラス情報と、直列化データに含まれるクラスデータとから、デジタルカメラＣのデバイスステータスクラスのオブジェクトを復元する。なお、デジタルカメラＣからのプリンタのデバイスステータス要求がある場合には、プリンタＰの通信アプリケーションＰＤＡがプリンタのデバイスステータスクラスのオブジェクトを直列化データに変換した上でデジタルカメラＣの側に送信し、デジタルカメラＣの通信アプリケーションＣＤＡでオブジェクトが復元される。
【００２３】
その一方、デジタルカメラＣの印刷アプリケーションＣＰＡは、アプリケーション実行環境ＣＡＡにおいて実行されるものの、通信アプリケーションＣＤＡとはクラス解析手段が別々に定義されている。プリンタＰの側でも同様である。また、デジタルカメラＣは印刷機能を備えず、プリンタＰは当然に印刷機能を備えていることから、デジタルカメラＣの印刷アプリケーションＣＰＡとプリンタＰの印刷アプリケーションＰＰＡとにあってもクラス解析手段が別々に定義されている。そして、プリンタＰの印刷アプリケーションＰＰＡは、印刷要求を表すクラスを備え、プリントリクエストクラスで区分されるオブジェクトを取り扱って、プリンタＰ自体の印刷機能にて印刷を図る。デジタルカメラＣの印刷アプリケーションＣＰＡは、印刷要求を表すクラスを備えそのプリントリクエストクラスで区分されるオブジェクトを取り扱って印刷を図るものの、印刷はプリンタＰにて実行される。このため、デジタルカメラＣの印刷アプリケーションＣＰＡは、印刷を所望するプリントリクエストクラスのオブジェクトを直列化データで変換した上で、その直列化データを、通信アプリケーションＣＤＡでの通信プロトコルに則ってＵＳＢケーブルKを経てプリンタＰに送信する。プリンタＰでは、この直列化データを通信アプリケーションＰＤＡで受信する。
【００２４】
Ｂ：機能構成；
次に、デジタルカメラＣの側からプリンタＰに印刷要求をかけた場合におけるカメラ側印刷アプリケーションＣＰＡ、プリンタ側印刷アプリケーションＰＰＡの機能について説明する。図３はデジタルカメラＣの印刷アプリケーションＣＰＡ、通信アプリケーションＣＤＡとプリンタＰの印刷アプリケーションＰＰＡ、通信アプリケーションＰＤＡが果たす機能を説明する機能ブロック図である。
【００２５】
デジタルカメラＣの印刷アプリケーションＣＰＡは、ＣＰＵやＲＡＭ、ＲＯＭおよび後述のプログラムにより、図示するように、カメラ側クラス解析手段１０を構築し、通信アプリケーションＣＤＡは、直列化手段３０と、直列化データ出力手段４０とを構築する。プリンタＰの通信アプリケーションＰＤＡは、ＣＰＵやＲＡＭ、ＲＯＭおよび後述のプログラムにより、図示するように、データ取得手段５０と、復元手段６０と、クラス解析管理手段８０とを構築し、印刷アプリケーションＰＰＡはプリンタ側クラス解析手段７０を構築する。
【００２６】
デジタルカメラＣのカメラ側クラス解析手段１０は、印刷アプリケーションＣＰＡで取り扱うようクラス名とクラス情報とクラスデータを対応付けて含むクラスで区別されるオブジェクト、つまり、印刷アプリケーションＣＰＡからの印刷要求を表すプリントリクエストクラスのクラス情報から生成されるオブジェクトのクラス名から、クラス情報（カメラ側クラス情報）を解析する。図４はカメラ側通信アプリケーションＣＤＡとプリンタ側通信アプリケーションＰＤＡのクラス解析手段を概念的に示す説明図である。
【００２７】
カメラ側クラス解析手段１０により解析されるクラス情報は、クラスメソッドの実行コードの他、クラスメンバの変数一覧、直列化／復元コード等の情報を含み、クラス名と対応付けられている。カメラ側クラス解析手段１０は、これらクラス情報をクラス名から解析するためのプログラムである。
【００２８】
直列化手段３０は、印刷アプリケーションＣＰＡのプリントリクエストクラスとクラス情報から生成されるオブジェクトを、印刷アプリケーションＣＰＡの備えるカメラ側クラス解析手段１０の解析対象となるクラス情報に対応したクラス名とクラスデータとを含んでなる直列化データに変換する。図５はプリントリクエストクラスの一例とこれに対応するオブジェクトのクラスデータの例を示す説明図、図６は図５に示したプリントリクエストクラスのクラス名とクラスデータとを含んで変換した直列化データの例を示す説明図である。図５に示すように、このプリントリクエストクラスは、クラス名と、印刷モード種別（カラー・モノクロ・グレースケール）の例示の他、クラスデータにおけるデータで実際に規定される印刷ジョブ名と、印刷部数と、両面・片面の印刷様式と、印刷モードと、印刷データとを含み、クラスデータは、印刷ジョブ名と、印刷部数と、両面・片面の印刷様式と、印刷モードと、印刷データとを規定するデータを含む。そして、直列化手段３０は、図６に示すように、このプリントリクエストクラスのクラス名であってカメラ側クラス解析手段１０の解析対象となるクラス情報に対応したクラス名と、クラスデータを含んだ直列化データにオブジェクトを直列化する。
【００２９】
直列化データ出力手段４０は、直列化手段３０により得られた図６の直列化データをＵＳＢケーブルKを経てプリンタＰの通信アプリケーションＰＤＡ、詳しくはデータ取得手段５０に出力する。
【００３０】
プリンタＰのデータ取得手段５０は、デジタルカメラＣの側の直列化データ出力手段４０から直列化データを取得する。プリンタ側クラス解析手段７０は、プリンタＰの印刷アプリケーションＰＰＡの他、デバイス画像印刷のためにインストールされているそれぞれの印刷アプリケーション（デバイス用印刷アプリケーション）ごとに用意されており、それぞれの印刷アプリケーションが独自に扱うオブジェクトに対応するプリントリクエストクラスのクラス名から、クラス情報（プリンタ側クラス情報）を解析する。クラス解析管理手段８０は、このプリンタ側クラス解析手段７０のそれぞれのプリント側クラス解析手段を、そのクラス解析手段が解析対象とするクラス情報に対応するクラス名と共に管理する。
【００３１】
デバイス用印刷アプリケーションは、プリンタＰに接続されるデバイスの種類ごとに用意され、例えばデジタルカメラ用印刷アプリケーション、スキャナ用印刷アプリケーション、メモリカード用印刷アプリケーションなどが用意される。デバイス用印刷アプリケーションは、プリンタＰに任意にインストール可能であり、デバイスからの印刷前にユーザによってインストールされるものとしても良い。また、デバイスがプリンタＰに接続される都度デバイスからプリンタに自動的にインストールされるものとしても良い。
【００３２】
復元手段６０は、データ取得手段５０の取得した直列化データからオブジェクトに復元するのであって、その復元に際しては、プリンタＰにて実行される印刷アプリケーションＰＰＡの個々についてのクラス解析管理手段８０が管理するプリンタ側クラス解析手段7０から当該クラス解析手段の解析するクラス情報（プリンタ側クラス情報）を取得する。そして、この取得したプリンタ側クラス情報と、直列化データに含まれるクラスデータとからオブジェクトを復元する。
【００３３】
Ｃ：オブジェクト直列／復元処理；
次に、デジタルカメラＣおよびプリンタＰの側で行われるオブジェクト直列化、その復元の処理について説明する。図７はプリンタＰにおける接続デバイス用印刷アプリケーションにて行われる起動処理を示すフローチャート、図８はこの接続デバイス用印刷アプリケーションにて行われる終了処理を示すフローチャートである。
【００３４】
既述したようにプリンタＰにはその接続されるカメラ、スキャナ等のデバイス画像をプリンタＰにて印刷に処するようそれぞれのデバイス用の印刷アプリケーションがインストールされる。これらの印刷アプリケーションは、デバイス側においてはオブジェクトを取り扱い、オブジェクトの直列化データへの変換に際しては、アプリケーションに対応するクラス解析手段を提供する。このため、図７と図８の処理にて、プリンタＰにインストール済みのデバイス用印刷アプリケーションに対応するクラス解析手段の登録・削除を次のようにして行う。
【００３５】
図７に示すように、プリンタＰの側のデバイス用印刷アプリケーションは、プリンタＰの起動スイッチ等の操作に伴う起動時に当該アプリケーション自体のクラス解析手段を取得し（ステップＳ１００）、プリンタＰの通信アプリケーションＰＤＡに対してこのプリンタ側クラス解析手段の登録を要求する（ステップＳ１１０）。よって、この要求を受けた通信アプリケーションＰＤＡは、プリンタＰの側のデバイス用印刷アプリケーションについてのクラス解析手段を登録することで、デバイス側、図１の例ではデジタルカメラＣの側から送信される直列化データの復元にこの登録したクラス解析手段を用いることができる。
【００３６】
図８に示すように、プリンタＰの側のデバイス用印刷アプリケーションは、プリンタＰの停止スイッチ等の操作に伴う終了時に当該アプリケーション自体のクラス解析手段７０を取得し（ステップＳ１２０）、プリンタＰの通信アプリケーションＰＤＡに対してこのプリンタ側クラス解析手段７０の削除を要求する（ステップＳ１３０）。この要求を受けた通信アプリケーションＰＤＡは、図７にて登録済みのデバイス用印刷アプリケーションについてのクラス解析手段を削除する。
【００３７】
図９はプリンタＰの通信アプリケーションＰＤＡにて行われるクラス解析手段の管理処理を示すフローチャート、図１０はこの通信アプリケーションＰＤＡが行う復元化処理を示すフローチャートである。
【００３８】
図９に示すように、通信アプリケーションＰＤＡは、自身のプリンタ側クラス解析手段７０を、当該手段が解析するクラス情報に対応するクラス名との対応を取った上で、クラス解析管理手段８０に登録する（ステップＳ２００）。次いで、図７と図８で説明したデバイス用印刷アプリケーションに対応するクラス解析手段の登録・削除の要求（操作要求）を待機する（ステップＳ２１０）。その後、この操作要求を受信すると（ステップＳ２２０）、当該操作要求が登録操作であるかを判定する（ステップＳ２３０）。ここで、登録操作であれば、デバイス用印刷アプリケーションに対応するクラス解析手段を、当該解析手段が解析するクラス情報に対応するクラス名との対応を取った上で、クラス解析管理手段８０に追加登録し（ステップＳ２４０）、ステップＳ２１０に移行する。一方、ステップＳ２３０にて削除操作であると判定すると、既に登録済みのデバイス用印刷アプリケーションに対応するクラス解析手段をクラス解析管理手段８０の管理から削除し（ステップＳ２５０）、ステップＳ２１０に移行する。
【００３９】
通信アプリケーションＰＤＡが行う復元化処理では、図１０に示すように、デジタルカメラＣの直列化データ出力手段４０から図６に示す直列化データを受信し（ステップＳ３００）、その直列化データにおいて所定の規則に則して記されているクラス名を取得する（ステップＳ３１０）。次いで、クラス解析管理手段８０が管理する複数のクラス解析手段から、例えば最先に管理下となったクラス解析手段を選択する（ステップＳ３２０）。
【００４０】
ステップＳ３２０に続いては、直列化データから取得済みのクラス名を指定して選択済みクラス解析手段の解析するクラス情報を取得し（ステップＳ３３０）、クラス情報の取得失敗を判定する（ステップＳ３４０）。ここで、クラス解析手段よりクラス名に対応するクラス情報の取得に失敗すれば、クラス解析管理手段８０が管理するクラス解析手段からのクラス情報再取得を行うべく、クラス解析管理手段８０の管理するクラス解析手段を、例えばその登録順に選択して（ステップＳ３５０）、ステップＳ３３０に移行する。これにより、クラス解析管理手段８０の管理するクラス解析手段は登録順に調査・選択されることになる。一方、ステップＳ３４０でクラス解析手段よりクラス名に対応するクラス情報を取得した場合には、受信済みの直列化データに含まれるクラスデータを取得し（ステップＳ３６０）、その取得したクラスデータとクラス情報とから、直列化データをオブジェクトに復元し（ステップＳ３７０）、本ルーチンを終了する。
【００４１】
以上説明したように、デジタルカメラＣとプリンタＰで構成した本実施例の情報送受信処理システムでは、プリンタＰにインストールされたデバイス用印刷アプリケーションが該アプリケーションに用意されたクラス解析手段を通信アプリケーションの登録要求を行い、通信アプリケーションは要求されたクラス解析手段をクラス解析管理手段８０に登録する。これにより、通信アプリケーションは常に起動しているアプリケーションに用意されたクラス解析手段を参照することが可能となり、新たなデバイス用印刷アプリケーションがインストールされてもクラス解析管理手段を参照してクラス解析手段を特定し、直列化データをオブジェクトに復元することができる。これは、入出力機器が連携して動作し、接続される機器が次々に増加するようなシステムにおいてはクラス解析管理手段をメンテナンスする必要がないため、大きな効果を奏する。
【００４２】
また、本実施例では、プリンタＰの側のデバイス用印刷アプリケーションの終了時において、当該アプリケーションのクラス解析手段の登録要求・削除要求をプリンタＰの通信アプリケーションＰＤＡに出すようにした。よって、プリンタＰの通信アプリケーションＰＤＡでは、不要なデバイス用印刷アプリケーションのクラス解析手段（デジタルカメラＣの印刷アプリケーションＣＰＡにあってはカメラ側クラス解析手段１０）を保持・管理する必要がないので好ましい。また、起動していないアプリケーションに用意されたクラス解析手段を用いる直列化データを受信しても、オブジェクトへの復元ができないため、不要なデータを明確に判断することができる。
【００４３】
また、本実施例ではデジタルカメラＣとプリンタＰに同一のデバイス用印刷アプリケーションを備えるものとしたが、プリンタＰにおいてはデバイス側のクラス解析手段と同一のクラス情報が参照できれば良く、デバイス側と同一のアプリケーションがインストールされていなくとも、デバイス側と同一のクラス名および、それに対応する同一のクラス情報を保持するクラス解析手段を有するアプリケーションがインストールされていれば、該アプリケーションがクラス解析管理手段に登録作業を行い、通信アプリケーションＰＤＡはクラス解析手段を参照できるため、本実施例と同様の効果を有することができる。
【００４４】
Ｄ：変形例
次に、変形例について説明する。この変形例では、デジタルカメラＣの印刷アプリケーションＣＰＡとスキャナＳの印刷アプリケーションＳＰＡのそれぞれのオブジェクトが同一のクラス名を有している場合を想定したものであり、ハード構成・機能構成については既述した実施例と同様である。図１１は図５の相当図でありプリントリクエストクラスの一例とこれに対応するクラスデータの例を示す説明図、図１２は図１１に示したプリントリクエストクラスのクラス名とクラスデータとを含んで変換した直列化データの例を示す説明図である。
【００４５】
図１１に示すように、このデジタルカメラＣの側の印刷アプリケーションＣＰＡが有するプリントリクエストクラスは、図５に示したようにクラス名やクラスデータを含むほか、印刷アプリケーションＣＰＡを識別するアプリケーション識別子（ＣＡＭ１）と対応付けられており、このアプリケーション識別子はクラス解析手段に含まれている。この場合、スキャナＳの印刷アプリケーションＳＰＡが有するプリントリクエストクラスにあっては、そのクラス解析手段が図示する印刷アプリケーションＣＰＡのクラス名と同一のクラス名を備え、印刷アプリケーションＳＰＡを識別するアプリケーション識別子（ＳＣＮ１）を含むことがあるとする。なお、両クラスのクラス情報は相違する。
【００４６】
図１２では、上記したアプリケーション識別子を含んで直列化した直列化データを示しており、デジタルカメラＣの印刷アプリケーションＣＰＡのアプリケーション識別子は、所定の規則、この場合は、アプリケーション識別子、クラス名の順にCAM1.PrintRequest・・・のように直列化データに変換されている。スキャナＳの印刷アプリケーションＳＰＡについても、図６に倣って直列化データとしたとすると、SCN1.PrintRequest・・・となる。つまり、両印刷アプリケーションのオブジェクトを直列化した直列化データにおいては、そのクラス名が同一であるものの、アプリケーション識別子において相違する。こうして得られた直列化データは、既述したようにプリンタＰに出力される。
【００４７】
この変形例におけるオブジェクト直列化・復元のための処理は、図７〜図１０で示した処理をアプリケーション識別子に関して修正したものとなる。図１３は変形例におけるプリンタＰでの接続デバイス用印刷アプリケーションにて行われる起動処理を示すフローチャート、図１４は変形例におけるこの接続デバイス用印刷アプリケーションにて行われる終了処理を示すフローチャートである。
【００４８】
図１３に示すように、プリンタＰの側のデバイス用印刷アプリケーションは、プリンタＰの起動スイッチ等の操作に伴う当該アプリケーション自体のクラス解析手段の取得（ステップＳ１００）に続き、アプリケーション識別子についてもこれを取得する（ステップＳ１０５）。そして、プリンタＰの側の通信アプリケーションＰＤＡに対してこのアプリケーション識別子と取得したクラス解析手段の登録を要求する（ステップＳ１１０）。この登録のフローチャートは、デジタルカメラ用印刷アプリケーションＣＰＡ、スキャナ用印刷アプリケーションＳＰＡのそれぞれにおいて実行される。この要求を受けた通信アプリケーションＰＤＡは、プリンタＰの側のデバイス用印刷アプリケーションについてのクラス解析手段とアプリケーション識別子を登録することで、デバイス側、図１の例ではデジタルカメラＣの側から送信される直列化データの復元にこの登録したクラス解析手段とアプリケーション識別子を用いることができる。
【００４９】
図１４に示すように、プリンタＰの側のデバイス用印刷アプリケーションは、プリンタＰの停止スイッチ等の操作に伴う終了時にアプリケーション識別子を取得し（ステップＳ１４０）、プリンタＰの側の通信アプリケーションＰＤＡに対してこのアプリケーション識別子を指定して、当該識別子に対応するクラス解析手段の削除を要求する（ステップＳ１３０）。この削除のフローチャートは、デジタルカメラ用印刷アプリケーションＣＰＡ、スキャナ用印刷アプリケーションＳＰＡのそれぞれにおいて実行される。この要求を受けた通信アプリケーションＰＤＡは、図１３にて登録済みのデバイス用印刷アプリケーションについてのアプリケーション識別子をクラス解析手段と共に削除する。
【００５０】
図１５は変形例におけるプリンタＰの通信アプリケーションＰＤＡにて行われるクラス解析手段の管理処理を示すフローチャート、図１６は変形例における通信アプリケーションＰＤＡが行う復元化処理を示すフローチャートである。
【００５１】
図１５に示すように、通信アプリケーションＰＤＡは、自身のアプリケーション識別子の取得（ステップＳ４００）とクラス解析手段の取得を行う（ステップＳ４１０）。続いて、自身のこの取得済みアプリケーション識別子とクラス解析手段とを、当該手段が解析するクラス情報に対応するクラス名との対応を取った上で、クラス解析管理手段８０に登録する（ステップＳ４２０）。次いで、図１３と図１４で説明したデバイス用印刷アプリケーションに対応するクラス解析手段とアプリケーション識別子の登録・削除の要求（操作要求）を待機し（ステップＳ４３０）、この操作要求を受信すると（ステップＳ４４０）、当該操作要求が登録操作であるかを判定する（ステップＳ４５０）。ここで、登録操作であれば、デバイス用印刷アプリケーションに対応するクラス解析手段とアプリケーション識別子を、当該解析手段が解析するクラス情報に対応するクラス名との対応を取った上で、クラス解析管理手段８０に追加登録し（ステップＳ４６０）、ステップＳ４３０に移行する。一方、ステップＳ４５０にて削除操作であると判定すると、既に登録済みのデバイス用印刷アプリケーションに対応するクラス解析手段とアプリケーション識別子をクラス解析管理手段８０の管理から削除し（ステップＳ４７０）、ステップＳ４３０に移行する。
【００５２】
変形例における通信アプリケーションＰＤＡが行う復元化処理では、図１６に示すように、デジタルカメラＣの直列化データ出力手段４０から図１２に示す直列化データを受信する（ステップＳ３００）。そして、その直列化データにおいて所定の規則に則して記されているアプリケーション識別子を取得し（ステップＳ３０２）、その取得したアプリケーション識別子に対応するクラス解析手段をクラス解析管理手段８０から取得する（ステップＳ３０４）。次いで、上記受信した直列化データにおいて所定の規則に則して記されているクラス名を取得し（ステップＳ３１０）、そのクラス名をステップＳ３０４で取得したクラス解析手段に指定して、当該手段の解析するクラス情報を取得する（ステップＳ３１５）。つまり、アプリケーション識別子を介してクラス解析手段が特定できることから、その特定したクラス解析手段の解析するクラス情報を得る。こうすることで、デジタルカメラＣとスキャナＳがプリンタＰに接続されていたり、更に携帯電話等の複数の異なるデバイスがプリンタＰに接続されていたとしても、個々のデバイスのクラス解析手段の特定、およびクラス情報を入手できる。
【００５３】
ステップＳ３１５に続いては、受信済みの直列化データに含まれるクラスデータを取得し（ステップＳ３６０）、その取得したクラスデータとクラス情報とから、直列化データをオブジェクトに復元し（ステップＳ３７０）、本ルーチンを終了する。
【００５４】
以上説明した変形例にあっては、デジタルカメラＣの印刷アプリケーションＣＰＡとスキャナＳの印刷アプリケーションＳＰＡが同じクラス名を持つクラス情報を保持したとしても、それぞれの印刷アプリケーションに対応させたアプリケーション識別子を用いたクラス解析手段の特定ができる。よって、直列化データのオブジェクトへの変換を担うプリンタＰの通信アプリケーションＰＤＡにおいては、復元の対象となる直列化データへの直列化を行ったデバイス用印刷アプリケーションのクラス解析手段を適切に選択し、そのクラス解析手段のクラス情報を用いてオブジェクトを復元することができる。このため、複数のデバイス用印刷アプリケーションが同じクラス名を持つクラス情報を保持する場合でも、直列化データを支障なくオブジェクトに復元できる。
【００５５】
以上本発明の実施例について説明したが、本発明は上記の実施例や実施形態になんら限定されるものではなく、本発明の要旨を逸脱しない範囲において種々なる態様で実施し得ることは勿論である。例えば、上記の実施例とその変形例では、デジタルカメラＣとプリンタＰとからなる情報送受信処理システムについて説明したが、オブジェクトの直列化データへの変換・出力を行うデジタルカメラＣとして適用できるほか、直列化データを受信してこれをオブジェクトに復元した上で印刷を図るプリンタＰとしても適用できる。また、情報送受信処理システムとしての他、情報送信方法、オブジェクトの直列化データ化方法や、直列化データからのオブジェクト復元方法としての態様とすることもできる。加えて、コンピュータを用いてオブジェクトを直列化データにした上で通信路を介して移動させるプログラム、受信した直列化データをコンピュータを用いてオブジェクトに復元するプログラム、或いは、コンピュータを用いたオブジェクトの直列化データ化とその移動および直列化データの復元を行うプログラムとしての態様でも実現できる。また、こうしたプログラムを記録したコンピュータ読み取り可能な記録媒体とすることもできる。
【図面の簡単な説明】
【００５６】
【図１】本発明の実施例としての情報送受信処理システムをデジタルカメラとプリンタで構成した例を示す説明図である。
【図２】デジタルカメラとプリンタにおけるアプリケーションの関係を概念的に示す説明図である。
【図３】デジタルカメラＣの印刷アプリケーションＣＰＡ、通信アプリケーションＣＤＡとプリンタＰの印刷アプリケーションＰＰＡ、通信アプリケーションＰＤＡが果たす機能を説明する機能ブロック図である。
【図４】カメラ側通信アプリケーションＣＤＡとプリンタ側通信アプリケーションＰＤＡのクラス解析手段を概念的に示す説明図である。
【図５】プリントリクエストクラスの一例とこれに対応するオブジェクトのクラスデータの例を示す説明図である。
【図６】図５に示したプリントリクエストクラスのクラス名とクラスデータとを含んで変換した直列化データの例を示す説明図である。
【図７】プリンタＰにおける接続デバイス用印刷アプリケーションにて行われる起動処理を示すフローチャートである。
【図８】この接続デバイス用印刷アプリケーションにて行われる終了処理を示すフローチャートである。
【図９】プリンタＰの通信アプリケーションＰＤＡにて行われるクラス解析手段の管理処理を示すフローチャートである。
【図１０】この通信アプリケーションＰＤＡが行う復元化処理を示すフローチャートである。
【図１１】図５の相当図でありプリントリクエストクラスの一例とこれに対応するクラスデータの例を示す説明図である。
【図１２】図１１に示したプリントリクエストクラスのクラス名とクラスデータとを含んで変換した直列化データの例を示す説明図である。
【図１３】変形例におけるプリンタＰでの接続デバイス用印刷アプリケーションにて行われる起動処理を示すフローチャートである。
【図１４】変形例におけるこの接続デバイス用印刷アプリケーションにて行われる終了処理を示すフローチャートである。
【図１５】変形例におけるプリンタＰの通信アプリケーションＰＤＡにて行われるクラス解析手段の管理処理を示すフローチャートである。
【図１６】変形例における通信アプリケーションＰＤＡが行う復元化処理を示すフローチャートである。
【符号の説明】
【００５７】
１０…カメラ側クラス解析手段
３０…直列化手段
４０…直列化データ出力手段
５０…データ取得手段
６０…復元手段
７０…プリンタ側クラス解析手段
８０…クラス解析管理手段
Ｃ…デジタルカメラ
Ｐ…プリンタ
K…ケーブル
ＭＣ…メモリカード
ＣＩ…入力機器
【図１】
2008268990.tif 000003
【図２】
2008268990.tif 000004
【図３】
2008268990.tif 000005
【図４】
2008268990.tif 000006
【図５】
2008268990.tif 000007
【図６】
2008268990.tif 000008
【図７】
2008268990.tif 000009
【図８】
2008268990.tif 000010
【図９】
2008268990.tif 000011
【図１０】
2008268990.tif 000012
【図１１】
2008268990.tif 000013
【図１２】
2008268990.tif 000014
【図１３】
2008268990.tif 000015
【図１４】
2008268990.tif 000016
【図１５】
2008268990.tif 000017
【図１６】
2008268990.tif 000018