(57)【要約】【課題】情報処理装置が具備する内部デバイスを複数のデバイス制御装置が入出力機能として仮想化制御している場合、デバイス制御装置が内部デバイスを仮想化制御する際に、内部デバイスを仮想化制御している他のデバイス制御装置を意識することなく、情報処理装置が具備する内部デバイスを仮想化制御可能とする。【解決手段】情報処理装置が具備する内部デバイスをネットワーク上の複数のデバイス制御装置で仮想化制御している際、仮想デバイス設定切替部が各デバイス制御装置の要求に応じて制御振分情報を参照して個別設定と共通設定を切り替えることで、仮想化制御している情報処理装置の内部デバイスの設定を変更する、または情報処理装置に設定を変更したように見せる。【選択図】図１
2017182735.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して複数のデバイス制御装置に接続された情報処理装置であって、
前記情報処理装置が具備する所定の機能を自身に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶手段と、
前記仮想デバイス識別情報を前記デバイス制御装置に送信する識別情報送信手段と、
前記デバイス制御装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該デバイス制御装置からの制御要求に従って制御する際、前記内部デバイスとの間のデータ通信は第１のデータ形式に変換し、前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想デバイス制御手段と、
前記デバイス制御装置からの制御要求を、前記内部デバイスに所定の動作または所定のデータを要求する第１の制御要求か、前記内部デバイスの設定変更に関する第２の制御要求かを判断する制御要求判断手段と、
前記制御要求判断手段の判断に基づき、前記第２の制御要求である場合に前記内部デバイスの設定値を前記制御要求の送信元である前記デバイス制御装置毎に分けて保存する設定保存手段と、
前記仮想デバイス制御手段が前記第１のデータ形式へ変換処理および前記第２のデータ形式への変換処理の際、データ内容を前記設定保存手段に保存する設定値が前記内部デバイスに設定されているかのように変更するデータ変更手段と、
前記制御要求判断手段の判断に基づき、前記設定保存手段が前記デバイス制御装置毎に分けて保存する設定値のうち指定した前記デバイス制御装置に紐付いた設定値の一群を、前記データ変更手段が前記データ内容を変更する際に使用するように前記データ変更手段に指示する設定切替手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記制御要求判断手段は、前記デバイス制御装置から制御要求を前記第１の制御要求か、前記第２の制御要求かを判断し、
当該制御要求が前記第２の制御要求であるならば、さらに当該制御要求による設定変更が前記データ変更手段での処理で代替可能な制御要求であるか否かを判断すること
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御要求判断手段は、前記デバイス制御装置からの前記第２の制御要求が前記データ変更手段での処理で代替不可能な制御要求であると判断すると、前記仮想デバイス制御手段を通して当該制御要求を前記内部デバイスに送信することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記設定保存手段は、前記設定変更が前記データ変更手段による処理で代替可能ならば当該第２の制御要求を前記内部デバイスに送信せず、代わりに当該制御要求によって変更される前記内部デバイスの設定値を、当該制御要求の送信元である前記デバイス制御装置毎に分けて保存することを特徴とする請求項２または請求項３に記載の情報処理装置。
【請求項５】
前記設定切替手段は、前記第１の制御要求ならば、当該制御要求の送信元である前記デバイス制御装置に紐付いた前記設定保存手段が保存する設定値を、前記データ変更手段が当該制御要求および当該制御要求に対するデータ通信のデータ変更の際使用するように指示することを特徴とする請求項１乃至請求項４の何れか１項に記載の情報処理装置。
【請求項６】
ネットワークを介して複数のデバイス制御装置に接続された情報処理装置の制御方法であって、
前記情報処理装置が具備する所定の機能を自身に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶ステップと、
前記仮想デバイス識別情報を前記デバイス制御装置に送信する識別情報送信ステップと、
前記デバイス制御装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該デバイス制御装置からの制御要求に従って制御する際、前記内部デバイスとの間のデータ通信は第１のデータ形式に変換し、前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想デバイス制御ステップと、
前記デバイス制御装置からの制御要求を、前記内部デバイスに所定の動作または所定のデータを要求する第１の制御要求か、前記内部デバイスの設定変更に関する第２の制御要求かを判断する制御要求判断ステップと、
前記制御要求判断ステップの判断に基づき、前記第２の制御要求である場合に前記内部デバイスの設定値を前記制御要求の送信元である前記デバイス制御装置毎に分けて保存する設定保存ステップと、
前記仮想デバイス制御ステップにて前記第１のデータ形式へ変換処理および前記第２のデータ形式への変換処理の際、データ内容を前記設定保存ステップにて保存する設定値を前記内部デバイスに設定されているかのように変更するデータ変更ステップと、
前記制御要求判断ステップの判断に基づき、前記設定保存ステップが前記デバイス制御装置毎に分けて保存する設定値のうち指定した前記デバイス制御装置に紐付いた設定値の一群を、前記データ変更ステップが前記データ内容を変更する際に使用するように前記データ変更ステップに指示する設定切替ステップと、
を有することを特徴とする情報処理装置の制御方法。
【請求項７】
前記制御要求判断ステップは、前記デバイス制御装置から制御要求を前記第１の制御要求か、前記第２の制御要求かを判断し、
当該制御要求が前記第２の制御要求であるならば、さらに当該制御要求による設定変更が前記データ変更ステップでの処理で代替可能な制御要求であるか否かを判断すること
を特徴とする請求項６に記載の情報処理装置の制御方法。
【請求項８】
前記制御要求判断ステップは、前記デバイス制御装置からの前記第２の制御要求が前記データ変更ステップでの処理で代替不可能な制御要求であると判断すると、前記仮想デバイス制御ステップを通して当該制御要求を前記内部デバイスに送信することを特徴とする請求項７に記載の情報処理装置の制御方法。
【請求項９】
前記設定保存ステップは、前記設定変更が前記データ変更ステップによる処理で代替可能ならば当該第２の制御要求を前記内部デバイスに送信せず、代わりに当該制御要求によって変更される前記内部デバイスの設定値を、当該制御要求の送信元である前記デバイス制御装置毎に分けて保存することを特徴とする請求項７または請求項８に記載の情報処理装置の制御方法。
【請求項１０】
前記設定切替ステップは、前記第１の制御要求ならば、当該制御要求の送信元である前記デバイス制御装置に紐付いた前記設定保存ステップが保存する設定値を、前記データ変更ステップが当該制御要求および当該制御要求に対するデータ通信のデータ変更の際使用するように指示することを特徴とする請求項６乃至請求項９の何れか１項に記載の情報処理装置の制御方法。
【請求項１１】
複数のデバイス制御装置と、請求項１乃至請求項５の何れか１項に記載の情報処理装置から構成されるデバイス制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続されたデバイス制御装置から送られる各種要求を処理するための情報処理装置、その制御方法、およびデバイス制御システムに関する。
【背景技術】
【０００２】
近年、ネットワークの普及によって、プリンタ、ストレージ、およびスキャナなどのデバイスを、ネットワーク上の情報処理装置であるクライアントＰＣが共有デバイスとして利用することが行われている。その実現方法がいくつか提案されている。
【０００３】
例えば、本出願人は、携帯端末、ＰＤＡ、あるいはスマートフォンなどの情報処理装置に具備されている操作パネル（内部デバイス）を、プリンタや複合機などのデバイス制御装置の入出力機能として仮想化制御し、携帯端末からデバイス制御装置を遠隔操作することで印刷やスキャンを実行させるデバイス制御システムを提案している（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１２７１２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
情報処理装置が具備する内部デバイスを複数のデバイス制御装置が入出力機能として仮想化制御している場合、デバイス制御装置による内部デバイスの仮想化制御が、当該内部デバイスを仮想化制御している他のデバイス制御装置においても内部デバイスの状態について情報処理装置が整合性を取る必要がある。これは、複数のデバイス制御装置から内部デバイスを仮想化制御した場合に、一方のデバイス制御装置が内部デバイスの設定を変更した場合に、他方のデバイス制御装置が意図しない設定により動作してしまうためである。
【０００６】
本発明は、特許文献１のデバイス制御システムをさらに拡張・発展させ、情報処理装置が具備する内部デバイスを複数のデバイス制御装置が入出力機能として仮想化制御している場合、デバイス制御装置が内部デバイスを仮想化制御する際に、内部デバイスを仮想化制御している他のデバイス制御装置を意識することなく、情報処理装置が具備する内部デバイスを仮想化制御可能な情報処理装置、その制御方法、およびデバイス制御システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、請求項１に記載の情報処理装置は、ネットワークを介して複数のデバイス制御装置に接続された情報処理装置であって、前記情報処理装置が具備する所定の機能を自身に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶手段と、前記仮想デバイス識別情報を前記デバイス制御装置に送信する識別情報送信手段と、前記デバイス制御装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該デバイス制御装置からの制御要求に従って制御する際、前記内部デバイスとの間のデータ通信は第１のデータ形式に変換し、前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想デバイス制御手段と、前記デバイス制御装置からの制御要求を、前記内部デバイスに所定の動作または所定のデータを要求する第１の制御要求か、前記内部デバイスの設定変更に関する第２の制御要求かを判断する制御要求判断手段と、前記制御要求判断手段の判断に基づき、前記第２の制御要求である場合に前記内部デバイスの設定値を前記制御要求の送信元である前記デバイス制御装置毎に分けて保存する設定保存手段と、前記仮想デバイス制御手段が前記第１のデータ形式へ変換処理および前記第２のデータ形式への変換処理の際、データ内容を前記設定保存手段に保存する設定値が前記内部デバイスに設定されているかのように変更するデータ変更手段と、前記制御要求判断手段の判断に基づき、前記設定保存手段が前記デバイス制御装置毎に分けて保存する設定値のうち指定した前記デバイス制御装置に紐付いた設定値の一群を、前記データ変更手段が前記データ内容を変更する際に使用するように前記データ変更手段に指示する設定切替手段と、を有することを特徴とする。
【０００８】
上記の課題を解決するために、請求項６に記載の情報処理装置の制御方法は、ネットワークを介して複数のデバイス制御装置に接続された情報処理装置の制御方法であって、前記情報処理装置が具備する所定の機能を自身に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶ステップと、前記仮想デバイス識別情報を前記デバイス制御装置に送信する識別情報送信ステップと、前記デバイス制御装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該デバイス制御装置からの制御要求に従って制御する際、前記内部デバイスとの間のデータ通信は第１のデータ形式に変換し、前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想デバイス制御ステップと、前記デバイス制御装置からの制御要求を、前記内部デバイスに所定の動作または所定のデータを要求する第１の制御要求か、前記内部デバイスの設定変更に関する第２の制御要求かを判断する制御要求判断ステップと、前記制御要求判断ステップの判断に基づき、前記第２の制御要求である場合に前記内部デバイスの設定値を前記制御要求の送信元である前記デバイス制御装置毎に分けて保存する設定保存ステップと、前記仮想デバイス制御ステップにて前記第１のデータ形式へ変換処理および前記第２のデータ形式への変換処理の際、データ内容を前記設定保存ステップにて保存する設定値を前記内部デバイスに設定されているかのように変更するデータ変更ステップと、前記制御要求判断ステップの判断に基づき、前記設定保存ステップが前記デバイス制御装置毎に分けて保存する設定値のうち指定した前記デバイス制御装置に紐付いた設定値の一群を、前記データ変更ステップが前記データ内容を変更する際に使用するように前記データ変更ステップに指示する設定切替ステップと、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、情報処理装置が具備する内部デバイスをネットワーク上の複数のデバイス制御装置で仮想化制御した際に、情報処理装置が各デバイス制御装置からの要求に応じて設定を切り替える。これにより、デバイス制御装置は、内部デバイスを仮想化制御している他のデバイス制御装置を意識することなく、単独で内部デバイスを仮想化制御しているかのように内部デバイスを仮想化制御することが可能になる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態によるデバイス制御システムの一例を概略的に示すブロック図である。
【図２】振分情報３０４の一例を示す図である
【図３】共通設定３０６、個別設定３０７および個別設定３０８の一例を示す図である。
【図４】仮想デバイス識別情報３１０の一例を示す図である。
【図５】変換設定情報３１２の一例を示す図である。
【図６】各デバイス制御装置（１００，２００）が情報処理装置３００に備えられた内部デバイス４００の設定を変更する際の動作を説明するためのシーケンス図である。
【図７】各デバイス制御装置（１００，２００）が個別設定でそれぞれカメラ３１５の撮影画像を取得する際の動作を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態によるデバイス制御システムの一例について図面を参照して説明する。
【００１２】
図１は、本実施形態によるデバイス制御システムの一例を概略的に示すブロック図である。
【００１３】
＜システム構成＞
図示のデバイス制御システムにおいては、デバイス制御装置１００とデバイス制御装置２００、情報処理装置３００が有線回線又は無線回線のローカルエリアネットワーク（ＬＡＮ）を介して接続されている。または、デバイス制御装置１００とデバイス制御装置２００、情報処理装置３００が、３Ｇ回線やＷｉ−Ｆｉ（登録商標）などの無線通信路を介して接続されている。
【００１４】
デバイス制御装置１００とデバイス制御装置２００は、例えば、ユーザーによって利用されるパーソナルコンピュータ（ＰＣ）などの装置である。情報処理装置３００は、例えば、携帯電話、ＰＤＡ、あるいはスマートフォンなどの装置である。
【００１５】
なお、図１に示すデバイス制御システムにおいてはデバイス制御装置１００とデバイス制御装置２００、情報処理装置３００がそれぞれ１つのみ示されているが、デバイス制御装置１００とデバイス制御装置２００、情報処理装置３００の台数は図示の例に限定されるものではない。
【００１６】
＜デバイス制御装置１００の構成＞
デバイス制御装置１００は、例えば、ユーザーによって利用されるパーソナルコンピュータ（ＰＣ）などの装置であって、ハードウェア構成として、ＣＰＵ、メモリ、および通信部（ともに不図示）、記憶部を備えている。
【００１７】
ＣＰＵは、デバイス制御装置１００全体の制御を司る。メモリはＲＡＭおよびＲＯＭなどである。
【００１８】
通信部は、ＬＡＮおよび無線通信路に接続するためのインターフェースであって、情報処理装置３００とデータ送受信を行う。
【００１９】
記憶部には、ソフトウェアであるオペレーティングシステム（以下「ＯＳ」と呼ぶ：不図示）、アプリケーション１０１、デバイスドライバ１０２、仮想化制御部１０４、通信制御部１０５が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。なお、これらソフトウェアはメモリに読み出されて、ＣＰＵの制御に従い動作する。
【００２０】
アプリケーション１０１は、デバイスドライバ１０２に対してデータ入出力要求を指示することによって、情報処理装置３００の内部デバイス４００を制御するソフトウェアプログラムである。
【００２１】
デバイスドライバ１０２は、カメラドライバ１０３を備えている。
【００２２】
デバイスドライバ１０２は、ＯＳまたはアプリケーション１０１からのデータ入出力要求を、情報処理装置３００の内部デバイス４００に応じたデータ形式のデータ（以下「制御コマンド」と呼ぶ）に変換して、当該制御コマンドを仮想化制御部１０４に送る。さらに、デバイスドライバ１０２は制御コマンドに対する応答をアプリケーション１０１に通知する。デバイスドライバ１０２は、一般に製造会社によって提供されるソフトウェア部品であって、デバイス制御装置１００は各デバイスに対応したデバイスドライバ１０２によって情報処理装置３００の内部デバイス４００を制御することができる。情報処理装置３００のカメラ３１５は、デバイスドライバ１０２内のカメラドライバ１０３によって制御することができる。
【００２３】
仮想化制御部１０４は、デバイスドライバ１０２から送られた制御コマンド（つまり、データ入出力要求）をＵＳＢデータ形式に準拠したパケットデータ（以下「ＵＳＢデータ」と呼ぶ）に変換する。また、仮想化制御部１０４は通信制御部１０５から送られてくるＵＳＢデータを制御コマンドと同様のデータ形式に変換してデバイスドライバ１０２に送る。
【００２４】
さらに、仮想化制御部１０４は、情報処理装置３００の内部デバイス４００に対するデータ送受信要求に対して、情報処理装置３００の内部デバイス４００がデバイス制御装置１００に直接的に接続（ローカル接続）されている際と同様の振る舞いをシミュレートする機能（以下「仮想化制御」と呼ぶ）を備えている。この仮想化制御によって、デバイス制御装置１００は情報処理装置３００の内部デバイス４００（カメラ３１５の撮影画像取得機能、カメラ操作機能）をローカル接続した場合と同一の状態であると認識してデータの送受信を行うことができる。
【００２５】
通信制御部１０５は、仮想化制御部１０４から送られるＵＳＢデータと情報処理装置３００と通信する際のネットワークパケットとの変換処理を行って、情報処理装置３００との間でデータ送受信の制御を行う。また、通信制御部１０５は仮想化制御部１０４を介してアプリケーション１０１またはデバイスドライバ１０２から送られるデータ送受信要求に応じて、情報処理装置３００との間のセッションの開始および切断の制御を行う。
【００２６】
＜デバイス制御装置２００の構成＞
デバイス制御装置２００は、例えば、ユーザーによって利用されるパーソナルコンピュータ（ＰＣ）などの装置であって、ハードウェア構成として、ＣＰＵ、メモリ、および通信部（ともに不図示）、記憶部を備えている。
【００２７】
デバイス制御装置２００の構成はデバイス制御装置１００と同一の構成であるため説明を省略する。デバイス制御装置２００のアプリケーション２０１、デバイスドライバ２０２、カメラドライバ２０３、仮想化制御部２０４、通信制御部２０５は、それぞれデバイス制御装置１００のアプリケーション１０１、デバイスドライバ１０２、カメラドライバ１０３、仮想化制御部１０４、通信制御部１０５と同等の機能を有し、情報処理装置３００とデータ送受信を行う。
【００２８】
＜情報処理装置３００の構成＞
情報処理装置３００は、例えば、携帯電話、ＰＤＡ、あるいはスマートフォンなどの装置であって、ハードウェア構成として、ＣＰＵ、メモリ、通信部、記憶部（ともに不図示）、およびカメラ３１５を備えている。カメラ３１５は、画像出力機能とカメラ操作機能を兼ね備えており、内部バス３１４を介してカメラＩ／Ｆ３１３に接続されている。本実施形態において、カメラ３１５は、情報処理装置３００の内部デバイス４００として位置づけられる。
【００２９】
記憶部には、ソフトウェアであるオペレーティングシステム（以下「ＯＳ」と呼ぶ：不図示）、通信制御部３０１、仮想化通信部３０２、仮想デバイス設定切替部３０３、仮想デバイス設定管理部３０５、仮想デバイス制御部３０９が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。なお、これらソフトウェアはメモリに読み出されて、ＣＰＵの制御に従い動作する。
【００３０】
通信制御部３０１は、情報処理装置３００とデバイス制御装置１００またはデバイス制御装置２００との間で行われる入出力データなどの送受信を制御する。
【００３１】
仮想化通信部３０２は、情報処理装置３００に備えられた内部デバイス４００があたかもデバイス制御装置１００またはデバイス制御装置２００に直接的に（ローカル）接続されているかのように認識させて制御できるようにするため、デバイス制御装置１００の仮想化制御部１０４またはデバイス制御装置２００の仮想化制御部２０４からの制御要求に従って（連動して）内部デバイス４００の制御を行う。
【００３２】
また、仮想化通信部３０２が仮想デバイス制御部３０９に内部デバイス４００への接続を要求すると、仮想デバイス制御部３０９は仮想デバイス識別情報３１０を仮想化通信部３０２に送る。一方、仮想化通信部３０２が仮想デバイス制御部３０９に切断を要求すると、仮想化通信部３０２は内部デバイス４００の仮想化制御を終了する。
【００３３】
仮想デバイス設定切替部３０３は、振分情報３０４を備えている。振分情報３０４は、仮想デバイス設定切替部３０３が、仮想化通信部３０２から内部デバイス４００への制御要求を受け取った際に、受け取った制御要求に対する仮想デバイス設定切替部３０３の動作を決定するために参照する。
【００３４】
図２は、図１に示す振分情報３０４の一例を示す図である。振分情報３０４は、図２（ａ）の制御振分情報と図２（ｂ）の個別設定振分情報から構成されている。
【００３５】
仮想デバイス設定切替部３０３は、受け取った制御要求をもとに図２（ａ）の振分情報３０４の制御振分情報を参照し、動作種別が個別設定変更または個別設定切替であった場合、さらに制御要求の要求元デバイス制御装置をもとに図２（ｂ）の振分情報３０４の個別設定振分情報を参照して、変更または切り替える(後述するデータ形式変換処理部３１１の変換設定情報３１２に設定する)個別設定を決定する。
【００３６】
図２（ａ）の制御振分情報は、制御種別と動作種別から構成されている。制御種別は、仮想化通信部３０２からの内部デバイス４００（カメラ３１５）に対する制御要求の種別を一意に示す名称やＩＤである。例えば、カメラ３１５に対するフォーカス変更、光学ズーム変更、コントラスト変更、色調変更、輝度変更、画像取得などの制御要求の種別を表す名称またはＩＤ（不図示）などの情報である。デバイス制御装置１００またはデバイス制御装置２００が内部デバイス４００を仮想化制御している場合、デバイス制御装置１００またはデバイス制御装置２００から送信されるＵＳＢデータをデータ形式変換処理部３１１で変換し、内部デバイス４００に送る際に、内部デバイス４００が処理できるデータ形式に変換するためには当該ＵＳＢデータの制御種別の判別が必要である。
【００３７】
動作種別は、制御種別に対応する仮想デバイス設定切替部３０３の動作種別を一意に表す名称やＩＤなどである。例えば、共通設定変更、個別設定変更、個別設定切替などの仮想デバイス設定切替部３０３の動作の種別を表す名称またはＩＤである。
【００３８】
制御振分情報の制御種別で動作種別が個別設定変更となるのは、内部デバイス４００の設定変更に関する制御要求の場合である。この場合、内部デバイス４００に対する設定を、内部デバイス４００から取得したデータ（画像）を計算処理（画像処理）により後述するデータ形式変換処理部３１１が変更する。当該制御要求による設定変更が、データ形式変換処理部３１１により内部デバイス４００に設定されているように見せることができる制御種別である。例えば、コントラスト変更、色調変更、輝度変更などである。
【００３９】
制御振分情報の動作種別が共通設定変更となるのは、内部デバイス４００の設定変更に関する制御要求の場合である。この場合、内部デバイス４００に対する設定を、内部デバイス４００から取得したデータ（画像）を計算処理（画像処理）により後述するデータ形式変換処理部３１１が変更することができない。当該制御要求による設定変更が、データ形式変換処理部３１１では内部デバイス４００に設定されているように見せることができない制御種別である。例えば、フォーカス変更、光学ズーム変更などである。
【００４０】
制御振分情報の動作種別が個別設定切替となるのは、内部デバイス４００からのデータ取得に関する制御要求の場合である。この場合、後述するデータ形式変換処理部３１１が、後述する変換設定情報３１２に個別設定３０７または個別設定３０８を設定した後に、内部デバイス４００からデータを取得する。データ形式変換処理部３１１が、取得したデータ（画像）を変換設定情報３１２の設定値に従い計算処理（画像処理）により変更する制御種別である。例えば、画像取得などである。
【００４１】
図２（ｂ）の個別設定振分情報は、要求元情報と個別設定情報から構成されている。要求元情報はカメラ３１５に対する制御要求の要求元のデバイス制御装置を一意に識別できる情報を用いる。例えば、デバイス制御装置の名称や、ＩＰアドレス、ＭＡＣアドレスなどである。個別設定情報は、デバイス制御装置に対応した後述する仮想デバイス設定管理部３０５が持つ個別設定を一意に表す名称やＩＤである。個別設定振分情報を参照することで、制御要求の要求元のデバイス制御装置から当該デバイス制御装置に紐付いた個別設定を一意に判別できるため、仮想デバイス設定切替部３０３が制御要求を処理する際に、いずれの個別設定を使用すべきかを一意に判断することができる。
【００４２】
仮想デバイス設定切替部３０３は、仮想化通信部３０２からカメラ３１５に対する制御要求を受け取ると、受け取った制御要求の制御種別に基づき振分情報３０４の制御振分情報を参照し、制御種別が共通設定変更であれば共通設定３０６の変更を仮想デバイス設定管理部３０５に指示する。
【００４３】
また、仮想デバイス設定切替部３０３は、仮想化通信部３０２から受け取った制御要求の制御種別が個別設定変更であれば、さらに受け取った制御要求の要求元デバイス制御装置情報に基づき振分情報３０４の個別設定振分情報を参照して、個別設定３０７または個別設定３０８の設定変更を仮想デバイス設定管理部３０５に指示する。
【００４４】
加えて、仮想デバイス設定切替部３０３は、仮想化通信部３０２から受け取った制御要求の制御種別が個別設定切替であれば、さらに受け取った制御要求の要求元デバイス制御装置情報に基づき振分情報３０４の個別設定振分情報を参照して、個別設定３０７または個別設定３０８への設定切替を仮想デバイス設定管理部３０５に指示し、設定切替完了通知を仮想デバイス設定管理部３０５から受け取ると、制御要求を仮想デバイス制御部３０９に送信する。
【００４５】
仮想デバイス設定管理部３０５は、共通設定３０６、個別設定３０７および個別設定３０８を備えている。
【００４６】
共通設定３０６は、デバイス制御装置１００またはデバイス制御装置２００が仮想化制御している内部デバイス４００（カメラ３１５）の制御設定のうち複数の設定値を持つことが難しい設定の設定項目と設定値を紐付けて記憶したものである。例えば、フォーカスや光学ズームなど設定の変更に時間がかかり、かつ設定値の差異を仮想デバイス制御部３０９での計算処理によって代替できない設定を共通設定３０６とする。
【００４７】
個別設定３０７および個別設定３０８は、デバイス制御装置１００またはデバイス制御装置２００が仮想化制御している内部デバイス４００（カメラ３１５）の制御設定のうち、内部デバイス４００を仮想化制御しているデバイス制御装置毎に複数の設定値を持つことが可能な設定の設定項目と設定値を紐付けて記憶したものである。
【００４８】
図３は、図１に示す共通設定３０６、個別設定３０７および個別設定３０８の一例を示す図である。共通設定３０６、個別設定３０７および個別設定３０８は、設定項目、設定値から構成されている。
【００４９】
設定項目は、設定変更要求によって変更できる内部デバイス４００の設定を一意に識別できる名称またはＩＤなどである。例えば、フォーカス、光学ズーム、コントラスト、色調、輝度などである。
【００５０】
設定値は、設定項目に設定された値である。例えば、フォーカスであれば矩形領域を示す４つの数値、光学ズームであれば倍率を表す数値、コントラストであれば−１２６から＋１２８まで範囲の値、色調であればＲＧＢ毎の−１２６から＋１２８まで範囲の３つの値、輝度であれば−１２６から＋１２８まで範囲の値などである。
【００５１】
仮想デバイス設定管理部３０５は、仮想デバイス設定切替部３０３から共通設定３０６の変更要求を受け取ると、仮想デバイス制御部３０９に対して指示された共通設定の変更を指示する。また、仮想デバイス設定切替部３０３から個別設定３０７または個別設定３０８への切替要求を受け取ると、仮想デバイス制御部３０９に変換設定情報３１２を変更するよう指示する。
【００５２】
仮想デバイス制御部３０９は、仮想デバイス識別情報３１０およびデータ形式変換処理部３１１を備えている。さらに、仮想デバイス制御部３０９は、情報処理装置３００に備えられた内部デバイス４００を仮想的なＵＳＢデバイスに切り替えるユーザインターフェースなどの切替部（不図示）を備えている。
【００５３】
仮想デバイス識別情報３１０は、デバイス制御装置１００やデバイス制御装置２００に内部デバイス４００を認識させるために用いられる。内部デバイス４００のカメラ３１５は、個体識別情報に相当する情報を有していないので、デバイス制御装置１００やデバイス制御装置２００は内部デバイス４００を認識することができない。
【００５４】
そこで、個体識別情報に相当する仮想デバイス識別情報３１０を内部デバイス４００の各々に割り当てて、デバイス制御装置１００やデバイス制御装置２００にカメラ３１５をＵＳＢデバイスとして認識させる。ここでは、ＵＳＢデバイスのデータ構造を定義する構成情報（以下、「ＵＳＢディスクリプタ」と呼ぶ）を疑似的に作成したものを仮想デバイス識別情報３１０とする。
【００５５】
図４は、図１に示す仮想デバイス識別情報３１０の一例を示す図である。
【００５６】
カメラ３１５は、画像出力機能とカメラ操作機能をそれぞれ備え、画像出力機能とカメラ操作機能はビデオクラスに対応している。カメラ３１５をＵＳＢデバイスとして認識させるために疑似的なＵＳＢディスクリプタ（つまり、仮想デバイス識別情報３１０）を割り当てている。
【００５７】
図４に示す疑似的なＵＳＢディスクリプタは、ベンダーＩＤ、プロダクトＩＤ、クラス、サブクラス、プロトコル、およびインターフェースから構成されている。
【００５８】
ベンダーＩＤは、各企業や製造会社毎に割り当てられる識別情報であり、プロダクトＩＤは、ベンダーＩＤを持つ企業や会社が各製品や機種毎に重複しないよう割り振るコードである。本実施形態では、情報処理装置３００に割り当てられているベンダーＩＤおよびプロダクトＩＤが用いられる。
【００５９】
また、クラス、サブクラス、プロトコル、およびインターフェースは、キーボード、マウス、デジタイザー、カメラおよびディスプレイなどデバイスの種類に応じてＵＳＢ規格で規定されている情報である。そして、ベンダーＩＤおよびプロダクトＩＤと、クラス、サブクラス、プロトコル、およびインターフェースとを関連付けた疑似的なＵＳＢディスクリプタを作成して、仮想デバイス制御部３０９が仮想デバイス識別情報３１０として保持（記憶）する。
【００６０】
データ形式変換処理部３１１は、変換設定情報３１２を備えている。
【００６１】
図５は、図１に示す変換設定情報３１２の一例を示す図である。変換設定情報３１２は、設定項目、設定値から構成されている。
【００６２】
設定項目は、デバイス制御装置１００またはデバイス制御装置２００からの設定変更要求によって変更できる内部デバイス４００の設定を一意に識別できる名称またはＩＤなどである。例えば、設定項目は、コントラストや色調、輝度などである。
【００６３】
設定値は、設定項目に設定された値である。例えば、設定値は、コントラストであれば−１２６から＋１２８まで範囲の値、色調であればＲＧＢ毎の−１２６から＋１２８まで範囲の３つの値、輝度であれば−１２６から＋１２８まで範囲の値などである。
【００６４】
データ形式変換処理部３１１は、仮想化通信部３０２から送られるＵＳＢデータ形式に準拠したパケットデータ（ＵＳＢデータ）と内部デバイス４００で処理可能なデータ形式のデータとの変換処理を行って、内部デバイス４００と接続されたカメラＩ／Ｆ３１３とデバイス制御装置１００やデバイス制御装置２００との間のデータの送受信を可能にしている。
【００６５】
さらに、データ形式変換処理部３１１は、ＵＳＢデータと内部デバイス４００で処理可能なデータ形式のデータとの変換処理を行う際に、変換設定情報３１２を参照し、変換設定情報３１２の設定値に応じたデータ変換を行うことで、内部デバイス４００に変換設定情報３１２の設定値が内部デバイス４００に適応されているかのように内部デバイス４００から情報を取得することができる。
【００６６】
＜内部デバイス４００の構成＞
前述のように、内部デバイス４００は、画像出力機能とカメラ操作機能を備えた入出力装置（カメラ）であって、内部バス３１４を介してカメラＩ／Ｆ３１３に接続される。画像出力機能はカメラ３１５が出力する画像を処理し、カメラ操作機能はカメラ３１５への光学ズーム制御、フォーカス制御、輝度制御、色調制御、コントラス制御、などの操作を処理する。なお、本実施形態では、内部デバイス４００をカメラ３１５として説明するが、これに限定されず、情報処理装置３００内の記憶装置やタッチパネル（ともに不図示）などであってもよい。
【００６７】
＜画像出力機能／カメラ操作機能の仮想化制御とデータ形式変換について＞
本実施形態において、デバイス制御装置１００またはデバイス制御装置２００が内部デバイス４００の仮想化制御開始時に、仮想デバイス制御部３０９は、カメラの画像出力機能／カメラ操作機能に係る仮想デバイス識別情報３１０として、ビデオクラスを識別したＵＳＢディスクリプタを仮想化通信部３０２に送る。
【００６８】
また、データ形式変換処理部３１１は、カメラの画像出力機能から出力される画像データやカメラ操作機能からの応答データをビデオクラスのＵＳＢデータに変換し、カメラＩ／Ｆ３１３を介して仮想化通信部３０２に送る。
【００６９】
加えて、データ形式変換処理部３１１は、仮想化通信部３０２から送られるＵＳＢデータをカメラ操作機能のデータ形式（第１のデータ形式）に変換して、カメラＩ／Ｆ３１３を介してカメラ３１５に送る。
【００７０】
なお、仮想化通信部３０２から送られるＵＳＢデータをデータ変換せずに通すことができる場合、またはデータ変換を行わなくてもカメラ３１５が認識できるデータ形式の場合は、データ変換せずにカメラＩ／Ｆ３１３を介してカメラ３１５に送る。上述の処理により、デバイス制御装置１００とデバイス制御装置２００は、情報処理装置３００の内部デバイス４００（カメラ３１５）を仮想化制御することができる。
【００７１】
＜データ内容の変換について＞
本実施形態において、デバイス制御装置１００およびデバイス制御装置２００が情報処理装置３００の内部デバイス４００(カメラ３１５)をすでに仮想化制御している状態とし、また、デバイス制御装置１００の個別設定は個別設定３０７に、デバイス制御装置２００の個別設定は個別設定３０８にそれぞれ記憶しているものとして説明する。
【００７２】
デバイス制御装置１００が情報処理装置３００が備えるカメラ３１５に設定変更要求（例えば、コントラスト変更要求）を送信する場合を説明する。カメラ３１５のコントラスト設定は、カメラ３１５から撮影画像を取得した際に、取得画像のコントラストを規定する設定値である。デバイス制御装置１００がカメラ３１５にコントラスト変更要求を送信すると、カメラ３１５のコントラスト設定が変更される。その後、デバイス制御装置１００が画像取得要求をカメラ３１５に送信すると、コントラストが変更された画像を取得することができる。しかし、この後、デバイス制御装置２００が画像取得要求をカメラ３１５に送信すると、デバイス制御装置２００は自身でコントラスト設定を変更していないのにもかかわらず、デバイス制御装置１００によってコントラストが変更された画像を取得することになるため、不整合が発生する。
【００７３】
上述のような不整合を防止するために、仮想デバイス設定切替部３０３は、デバイス制御装置１００からのカメラ３１５に対するコントラスト変更要求をカメラ３１５に送信せず、代わりに個別設定３０７のコントラスト設定を変更する。そして、デバイス制御装置１００からの画像取得要求の際に、仮想デバイス制御部３０９のデータ形式変換処理部３１１でカメラ３１５から取得したデータ（画像）を計算処理（画像処理）により、データ形式変換処理部３１１が個別設定３０７のコントラスト設定に合わせてコントラストを変更することで、デバイス制御装置１００は自身が変更したコントラスト設定でカメラ３１５から画像を取得することができる。
【００７４】
同様に、デバイス制御装置１００が情報処理装置３００が備えるカメラ３１５に（例えば、色調変更要求）を送信する場合も、デバイス制御装置２００からのカメラ３１５に対する色調変更要求をカメラ３１５に送信せず、代わりに個別設定３０７のコントラスト設定を変更することで、デバイス制御装置１００もデバイス制御装置２００によるカメラ３１５の設定変更の影響を受けずに、カメラ３１５から画像を取得することができる。
【００７５】
上述のように、デバイス制御装置１００とデバイス制御装置２００は互いを意識することなく、内部デバイス４００の設定を各々変更でき、各々変更した設定で内部デバイス４００からデータを取得することができる。
【００７６】
ただし、カメラ３１５から取得したデータ（画像）を計算処理（画像処理）することで
は実現できない設定変更要求（例えばフォーカス変更要求）については、カメラ３１５に送信し、カメラ３１５の設定を変更する。
【００７７】
＜デバイス制御システムのシーケンス（個別設定変更、共通設定変更）＞
図６は、図１に示すデバイス制御システムにおいてデバイス制御装置１００またはデバイス制御装置２００が情報処理装置３００に備えられた内部デバイス４００の設定を変更する際の動作を説明するためのシーケンス図である。
【００７８】
なお、デバイス制御装置１００およびデバイス制御装置２００が情報処理装置３００の内部デバイス４００(カメラ３１５)をすでに仮想化制御している状態とし、また、デバイス制御装置１００の個別設定は個別設定３０７に、デバイス制御装置２００の個別設定は個別設定３０８にそれぞれ記憶しているものとして説明する。
【００７９】
最初に、デバイス制御装置１００による個別設定３０７の変更処理を説明する。なお、カメラ３１５に対する個別設定の変更処理として、デバイス制御装置１００からの要求に基づくコントラストの変更処理について説明し、デバイス制御装置２００からの要求に基づく色調変更処理について説明する。
【００８０】
まず、デバイス制御装置１００のアプリケーション１０１がカメラ３１５のコントラスト変更要求をデバイスドライバ１０２に送信する（ステップＳ１０１）。
【００８１】
デバイスドライバ１０２は、アプリケーション１０１から受け取ったコントラスト変更要求を仮想化制御部１０４に送信する（ステップＳ１０２）。
【００８２】
仮想化制御部１０４は、デバイスドライバ１０２から受け取ったコントラスト変更要求を、通信制御部１０５を介して情報処理装置３００の仮想化通信部３０２に送信する（ステップＳ１０３）。
【００８３】
仮想化通信部３０２は、通信制御部３０１を介してデバイス制御装置１００の仮想化制御部１０４から受け取ったコントラスト変更要求を仮想デバイス設定切替部３０３に送信する（ステップＳ１０４）。
【００８４】
仮想デバイス設定切替部３０３は、仮想化通信部３０２からデバイス制御装置１００のコントラスト変更要求を受け取ると、振分情報３０４を参照して、個別設定３０７のコントラスト設定を更新すればよいと判断し、個別設定３０７のコントラスト設定の変更を仮想デバイス設定管理部３０５に指示する（ステップＳ１０５）。
【００８５】
仮想デバイス設定管理部３０５は、仮想デバイス設定切替部３０３からの指示に従い個別設定３０７のコントラスト設定を変更し（ステップＳ１０６）、仮想デバイス設定切替部３０３へ変更完了通知を送信する（ステップＳ１０７）。
【００８６】
仮想デバイス設定切替部３０３は、仮想デバイス設定管理部３０５から変更完了通知を受け取ると、仮想化通信部３０２に変更完了通知を送信する（ステップＳ１０８）。
【００８７】
仮想化通信部３０２は、仮想デバイス設定切替部３０３から変更完了通知を受け取ると、通信制御部３０１を介してデバイス制御装置１００の仮想化制御部１０４に変更完了通知を送信する（ステップＳ１０９）。
【００８８】
仮想化制御部１０４は、通信制御部１０５を介して情報処理装置３００の仮想化通信部３０２から変更完了通知を受け取ると、デバイスドライバ１０２に変更完了通知を送信する（ステップＳ１１０）。
【００８９】
デバイスドライバ１０２は、仮想化制御部１０４から変更完了通知を受け取ると、アプリケーション１０１に変更完了通知を送信する（ステップＳ１１１）。アプリケーション１０１は、画像取得要求をカメラ３１５に送信すれば、変更したコントラスト設定の画像をカメラ３１５から取得できるようになる。
【００９０】
次に、デバイス制御装置２００による個別設定３０８の変更処理を説明する。
【００９１】
まず、デバイス制御装置２００のアプリケーション２０１がカメラ３１５の色調変更要求をデバイスドライバ２０２に送信する（ステップＳ１２１）。
【００９２】
デバイスドライバ２０２は、アプリケーション２０１から受け取った色調変更要求を仮想化制御部２０４に送信する（ステップＳ１２２）。
【００９３】
仮想化制御部２０４は、デバイスドライバ２０２から受け取った色調変更要求を、通信制御部２０５を介して情報処理装置３００の仮想化通信部３０２に送信する（ステップＳ１２３）。
【００９４】
仮想化通信部３０２は、通信制御部３０１を介してデバイス制御装置２００の仮想化制御部２０４から受け取った色調変更要求を仮想デバイス設定切替部３０３に送信する（ステップＳ１２４）。
【００９５】
仮想デバイス設定切替部３０３は、仮想化通信部３０２からデバイス制御装置２００の色調変更要求を受け取ると、振分情報３０４を参照して、個別設定３０８の色調設定を更新すればよいと判断し、個別設定３０８の色調設定の変更を仮想デバイス設定管理部３０５に指示する（ステップＳ１２５）。
【００９６】
仮想デバイス設定管理部３０５は、仮想デバイス設定切替部３０３からの指示に従い個別設定３０８の色調設定を変更し（ステップＳ１２６）、仮想デバイス設定切替部３０３へ変更完了通知を送信する（ステップＳ１２７）。
【００９７】
仮想デバイス設定切替部３０３は、仮想デバイス設定管理部３０５から変更完了通知を受け取ると、仮想化通信部３０２に変更完了通知を送信する（ステップＳ１２８）。
【００９８】
仮想化通信部３０２は、仮想デバイス設定切替部３０３から変更完了通知を受け取ると、通信制御部３０１を介してデバイス制御装置２００の仮想化制御部２０４に変更完了通知を送信する（ステップＳ１２９）。
【００９９】
仮想化制御部２０４は、通信制御部２０５を介して情報処理装置３００の仮想化通信部３０２から変更完了通知を受け取ると、デバイスドライバ２０２に変更完了通知を送信する（ステップＳ１３０）。
【０１００】
デバイスドライバ２０２は、仮想化制御部２０４から変更完了通知を受け取ると、アプリケーション２０１に変更完了通知を送信する（ステップＳ１３１）。アプリケーション２０１は、画像取得要求をカメラ３１５に送信すれば、変更した色調の画像をカメラ３１５から取得できるようになる。
【０１０１】
最後に、デバイス制御装置２００による共通設定３０６の変更処理を説明する。ここでは、カメラ３１５に対する共通設定の変更処理として、デバイス制御装置２００からの要求に基づくフォーカス変更処理について述べる。
【０１０２】
まず、デバイス制御装置２００のアプリケーション２０１がカメラ３１５のフォーカス変更要求をデバイスドライバ２０２に送信する（ステップＳ１４１）。
【０１０３】
デバイスドライバ２０２は、アプリケーション２０１から受け取ったフォーカス変更要求を仮想化制御部２０４に送信する（ステップＳ１４２）。
【０１０４】
仮想化制御部２０４は、デバイスドライバ２０２から受け取ったフォーカス変更要求を、通信制御部２０５を介して情報処理装置３００の仮想化通信部３０２に送信する（ステップＳ１４３）。
【０１０５】
仮想化通信部３０２は、通信制御部３０１を介してデバイス制御装置２００の仮想化制御部２０４から受け取ったフォーカス変更要求を仮想デバイス設定切替部３０３に送信する（ステップＳ１４４）。
【０１０６】
仮想デバイス設定切替部３０３は、仮想化通信部３０２からデバイス制御装置２００のフォーカス変更要求を受け取ると、振分情報３０４を参照して、振分情報３０４の参照結果に基づき共通設定３０６のフォーカス設定の変更を仮想デバイス設定管理部３０５に指示する（ステップＳ１４５）。
【０１０７】
仮想デバイス設定管理部３０５は、仮想デバイス設定切替部３０３からの指示に従い仮想デバイス制御部３０９にカメラ３１５のフォーカス変更要求を送信する（ステップＳ１４６）。
【０１０８】
仮想デバイス制御部３０９は、仮想デバイス設定管理部３０５の指示に従いカメラ３１５にフォーカス変更要求を送信する（ステップＳ１４７）。このとき、仮想デバイス制御部３０９のデータ形式変換処理部３１１は、仮想デバイス設定管理部３０５から送られるＵＳＢデータをカメラ３１５のデータ形式（第１のデータ形式）に変換して、カメラＩ／Ｆ３１３を介してカメラ３１５に送信する。なお、仮想デバイス設定管理部３０５から送られるＵＳＢデータをデータ変換せずにカメラＩ／Ｆ３１３に通すことができる場合、またはデータ変換を行わなくてもカメラ３１５が認識できるデータ形式の場合は、データ変換せずにカメラＩ／Ｆ３１３を介してカメラ３１５に送る。
【０１０９】
カメラ３１５は、仮想デバイス制御部３０９からフォーカス変更要求を受け取ると、受け取ったフォーカス変更要求に従いフォーカス設定を変更し（ステップＳ１４８）、変更完了通知を仮想デバイス制御部３０９に送信する（ステップＳ１４９）。
【０１１０】
仮想デバイス制御部３０９は、カメラ３１５から変更完了通知を受け取ると、仮想デバイス設定管理部３０５に変更完了通知を送信する（ステップＳ１５０）。このとき、仮想デバイス制御部３０９のデータ形式変換処理部３１１は、カメラＩ／Ｆ３１３を介して受信した変更完了通知をＵＳＢデータ（第２のデータ形式）に変換して仮想デバイス設定管理部３０５に送信する。
【０１１１】
仮想デバイス設定管理部３０５は、仮想デバイス制御部３０９から変更完了通知を受け取ると、共通設定３０６のフォーカス設定を変更し、仮想デバイス設定切替部３０３へ変更完了通知を送信する（ステップＳ１５１）。
【０１１２】
仮想デバイス設定切替部３０３は、仮想デバイス設定管理部３０５から変更完了通知を受け取ると、仮想化通信部３０２に変更完了通知を送信する（ステップＳ１５２）。
【０１１３】
仮想化通信部３０２は、仮想デバイス設定切替部３０３から変更完了通知を受け取ると、通信制御部３０１を介してデバイス制御装置２００の仮想化制御部２０４に変更完了通知を送信する（ステップＳ１５３）。
【０１１４】
仮想化制御部２０４は、通信制御部２０５を介して情報処理装置３００の仮想化通信部３０２から変更完了通知を受け取ると、デバイスドライバ２０２に変更完了通知を送信する（ステップＳ１５４）。
【０１１５】
デバイスドライバ２０２は、仮想化制御部２０４から変更完了通知を受け取ると、アプリケーション２０１に変更完了通知を送信する（ステップＳ１５５）。
【０１１６】
上述のように、本実施形態では、情報処理装置３００が具備する内部デバイス４００をネットワーク上のデバイス制御装置１００とデバイス制御装置２００で仮想化制御している際、仮想デバイス設定切替部３０３が各デバイス制御装置の要求に応じて個別設定と共通設定を切り替えることで、デバイス制御装置１００とデバイス制御装置２００は互いを意識することなく仮想化制御している情報処理装置３００の内部デバイス４００（例：カメラ３１５）の設定を変更することができる。
【０１１７】
＜デバイス制御システムのシーケンス（個別設定切替）＞
図７は、図１に示すデバイス制御システムにおいてデバイス制御装置１００またはデバイス制御装置２００が情報処理装置３００に備えられた仮想デバイス制御部３０９の設定を切り替えることで、デバイス制御装置１００は個別設定３０７で、デバイス制御装置２００は個別設定３０８でそれぞれカメラ３１５の撮影画像を取得する際の動作を説明するためのシーケンス図である。
【０１１８】
最初に、デバイス制御装置１００によるカメラ３１５の撮影画像取得処理について説明する。
【０１１９】
まず、デバイス制御装置１００のアプリケーション１０１がカメラ３１５の画像取得要求をデバイスドライバ１０２に送信する（ステップＳ２０１）。
【０１２０】
デバイスドライバ１０２は、アプリケーション１０１から受け取った画像取得要求を仮想化制御部１０４に送信する（ステップＳ２０２）。
【０１２１】
仮想化制御部１０４は、デバイスドライバ１０２から受け取った画像取得要求を、通信制御部１０５を介して情報処理装置３００の仮想化通信部３０２に送信する（ステップＳ２０３）。
【０１２２】
仮想化通信部３０２は、通信制御部３０１を介してデバイス制御装置１００の仮想化制御部１０４から受け取った画像取得要求を仮想デバイス設定切替部３０３に送信する（ステップＳ２０４）。
【０１２３】
仮想デバイス設定切替部３０３は、仮想化通信部３０２からデバイス制御装置１００の画像取得要求を受け取ると、振分情報３０４を参照して、振分情報３０４の参照結果に基づいて個別設定３０７への設定切替を仮想デバイス設定管理部３０５に指示する（ステップＳ２０５）。
【０１２４】
仮想デバイス設定管理部３０５は、仮想デバイス設定切替部３０３からの指示に従い仮想デバイス制御部３０９に個別設定３０７を送信し、変換設定情報３１２に適用するよう指示する（ステップＳ２０６）。
【０１２５】
仮想デバイス制御部３０９は、仮想デバイス設定管理部３０５から受け取った個別設定３０７に基づきデータ形式変換処理部３１１の変換設定情報３１２を変更し（ステップＳ２０７）、変更完了通知を仮想デバイス設定管理部３０５に送信する（ステップＳ２０８）。
【０１２６】
仮想デバイス設定管理部３０５は、仮想デバイス制御部３０９から変更完了通知を受け取ると、切替完了通知を仮想デバイス設定切替部３０３に送信する（ステップＳ２０９）。
【０１２７】
仮想デバイス設定切替部３０３は、仮想デバイス設定管理部３０５から切替完了通知を受け取ると、画像取得要求を仮想デバイス制御部３０９に送信する（ステップＳ２１０）。
【０１２８】
仮想デバイス制御部３０９は、仮想デバイス設定切替部３０３から画像取得要求を受け取ると、カメラ３１５に画像取得要求を送信する（ステップＳ２１１）。このとき、仮想デバイス制御部３０９のデータ形式変換処理部３１１は、仮想デバイス設定切替部３０３から送られるＵＳＢデータをカメラ３１５のデータ形式（第１のデータ形式）に変換して、カメラＩ／Ｆ３１３を介してカメラ３１５に送信する。なお、仮想デバイス設定切替部３０３から送られるＵＳＢデータをデータ変換せずにカメラＩ／Ｆ３１３に通すことができる場合、またはデータ変換を行わなくてもカメラ３１５が認識できるデータ形式の場合は、データ変換せずにカメラＩ／Ｆ３１３を介してカメラ３１５に送る。
【０１２９】
カメラ３１５は、仮想デバイス制御部３０９から画像取得要求を受け取ると、画像撮影処理を実行し（ステップＳ２１２）、撮影画像を仮想デバイス制御部３０９に送信する（ステップＳ２１３）。
【０１３０】
仮想デバイス制御部３０９は、取得したカメラ３１５の撮影画像を仮想デバイス設定切替部３０３に送信する（ステップＳ２１４）。このとき、仮想デバイス制御部３０９のデータ形式変換処理部３１１は、カメラ３１５から取得した撮影画像をＵＳＢデータ形式（第２のデータ形式）に変換する。なお、カメラ３１５から取得した撮影画像が変換する必要のない形式であった場合は、仮想デバイス制御部３０９はカメラ３１５から取得した撮影画像をそのまま仮想デバイス設定切替部３０３に送信する。また、このとき、データ形式変換処理部３１１は変換設定情報３１２に基づき計算処理（画像処理）を実行し、変換設定情報３１２の設定値に応じた画像となるようにカメラ３１５の撮影画像を変換したのちＵＳＢデータ形式に変換する。
【０１３１】
仮想デバイス設定切替部３０３は、仮想デバイス制御部３０９から撮影画像を受け取ると、仮想化通信部３０２に撮影画像を送信する（ステップＳ２１５）。
【０１３２】
仮想化通信部３０２は、仮想デバイス設定切替部３０３から撮影画像を受け取ると、通信制御部３０１を介してデバイス制御装置１００の仮想化制御部１０４に撮影画像を送信する（ステップＳ２１６）。
【０１３３】
仮想化制御部１０４は、通信制御部１０５を介して情報処理装置３００の仮想化通信部３０２から撮影画像を受け取ると、デバイスドライバ１０２に撮影画像を送信する（ステップＳ２１７）。
【０１３４】
デバイスドライバ１０２は、仮想化制御部１０４から撮影画像を受け取ると、アプリケーション１０１に撮影画像を送信する（ステップＳ２１８）。
【０１３５】
デバイス制御装置２００によるカメラ３１５の撮影画像取得処理（ステップＳ２３１〜ステップＳ２４８）は、デバイス制御装置１００の各機能部に対応するデバイス制御装置２００の各機能部が個別設定３０８に関して、ステップＳ２０１〜ステップＳ２１８と同様の処理を行う。したがって、デバイス制御装置２００と情報処理装置３００の間で行われるステップＳ２３１〜ステップＳ２４８は、上述したデバイス制御装置１００と情報処理装置３００の間で行われるステップＳ２０１〜ステップＳ２１８と同一の処理を行うため説明を省略する。
【０１３６】
上述のように、本実施形態では、デバイス制御装置１００とデバイス制御装置２００が情報処理装置３００に備えられた仮想デバイス制御部３０９の変換設定情報３１２をそれぞれの個別設定に切り替えることで、それぞれのデバイス制御装置の設定によりカメラ３１５の撮影画像を取得することができる。
【０１３７】
以上、本発明について実施形態に基づいて説明したが、本発明は、これらの実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【０１３８】
例えば、情報処理装置３００の仮想デバイス設定管理部３０５が共通設定３０６と個別設定３０７、個別設定３０８を備えると説明したが、共通設定３０６を備えず共通設定３０６に含まれる操作は受け付けないようにしてもよい。
【０１３９】
デバイス制御装置１００とデバイス制御装置２００に仮想化制御されるデバイスは、情報処理装置３００の内部デバイス４００（カメラ３１５）として説明したが、情報処理装置３００が備えるタッチパネルやディスプレイなど表示装置、内蔵されたフラッシュメモリ（例：ＳＤメモリカード）などの記憶装置、内蔵されたスピーカーなど（いずれも不図示）であってもよい。
【０１４０】
情報処理装置３００に通信Ｉ／Ｆ（不図示）を介して外部デバイス（不図示）が接続された場合、デバイス制御装置１００とデバイス制御装置２００は、情報処理装置３００に接続された外部デバイスを仮想化制御し、外部デバイスとの間におけるデータ送受信を行うことができる。なお、外部デバイスは、例えば、キーボード、マウス、デジタイザーおよびテンキーなどの入力装置、液晶ディスプレイなどの表示装置、ＵＳＢメモリなどの記憶装置などであって、外部デバイスは情報処理装置３００にＵＳＢインターフェースなどの通信Ｉ／Ｆによって接続される。
【０１４１】
上記の実施形態の機能を制御方法として、この制御方法をデバイス制御装置１００またはデバイス制御装置２００に実行させるようにすればよい。また、上述の実施形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムをデバイス制御装置１００が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【０１４２】
また、本発明は、以下の処理を実行することによっても実現される。つまり、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種の記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵなど）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１４３】
１００、２００：デバイス制御装置
１０１、２０１：アプリケーション
１０２、２０２：デバイスドライバ
１０３、２０３：カメラドライバ
１０４、２０４：仮想化制御部
１０５、２０５：通信制御部
３００：情報処理装置
３０１：通信制御部
３０２：仮想化通信部
３０３：仮想デバイス設定切替部
３０４：振分情報
３０５：仮想デバイス設定管理部
３０６：共通設定
３０７、３０８：個別設定
３０９：仮想デバイス制御部
３１０：仮想デバイス識別情報
３１１：データ形式変換部
３１２：変換設定情報
３１３：カメラＩ／Ｆ
３１４：内部バス
４００：内部デバイス
３１５：カメラ
【図１】
2017182735.tif 000003
【図２】
2017182735.tif 000004
【図３】
2017182735.tif 000005
【図４】
2017182735.tif 000006
【図５】
2017182735.tif 000007
【図６】
2017182735.tif 000008
【図７】
2017182735.tif 000009