(57)【特許請求の範囲】
【請求項１】
スキャナ装置にて読み取られた画像データと、画像読取時における当該スキャナ装置の装置状態情報と、を記憶する装置情報記憶手段と、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記画像データを出力させる疑似スキャナ手段と、
を備えたことを特徴とする、スキャナデモンストレータ。
【請求項２】
前記スキャナ装置にて読み取られた前記画像データと前記装置状態情報とを取得し、前記装置情報記憶手段に格納する画像格納手段、
を更に備えた、請求項１に記載のスキャナデモンストレータ。
【請求項３】
前記疑似スキャナ手段は、
更に、前記装置状態情報に基づいて、スキャナ装置の動作に対応する効果音を出力させる、請求項１または２に記載のスキャナデモンストレータ。
【請求項４】
前記疑似スキャナ手段は、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置の読取時の動作に対応させて、前記画像データを出力させる、請求項１乃至３のいずれか一つに記載のスキャナデモンストレータ。
【請求項５】
前記疑似スキャナ手段は、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置の読取時の読取動作に対応させて、前記画像データを出力させる、請求項１乃至３のいずれか一つに記載のスキャナデモンストレータ。
【請求項６】
前記疑似スキャナ手段は、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置の読取時の読取完了動作を除いて、連続的に前記画像データを出力させる、請求項１乃至３のいずれか一つに記載のスキャナデモンストレータ。
【請求項７】
前記疑似スキャナ手段は、
更に、前記読取動作のスピードに同期させずに、前記画像データを出力させる、請求項５に記載のスキャナデモンストレータ。
【請求項８】
前記疑似スキャナ手段、および、前記画像格納手段は、
処理開始時にその都度配置される、請求項２に記載のスキャナデモンストレータ。
【請求項９】
前記スキャナ装置の読取時の設定に関するプロファイルを記憶するプロファイル記憶手段と、
前記プロファイルと前記装置状態情報とを関連付けたスキャン設定を取得し、前記スキャン設定に基づいて、前記スキャン設定のテストを実行するスキャンテスト手段と、
を更に備えた、請求項１に記載のスキャナデモンストレータ。
【請求項１０】
画像読取時におけるスキャナ装置の装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置にて読み取られた画像データを出力させる疑似スキャナステップ、
を含むことを特徴とする、スキャナデモンストレート方法。
【請求項１１】
前記スキャナ装置にて読み取られた前記画像データと前記装置状態情報とを取得し、装置情報記憶手段に格納する画像格納ステップ、
を更に含む、請求項１０に記載のスキャナデモンストレート方法。
【請求項１２】
前記疑似スキャナステップにて、
更に、前記装置状態情報に基づいて、前記スキャナ装置の動作に対応する効果音を出力させる、請求項１０または１１に記載のスキャナデモンストレート方法。
【請求項１３】
前記疑似スキャナステップにて、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置の読取時の動作に対応させて、前記画像データを出力させる、請求項１０乃至１２のいずれか一つに記載のスキャナデモンストレート方法。
【請求項１４】
前記疑似スキャナステップにて、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置の読取時の読取動作に対応させて、前記画像データを出力させる、請求項１０乃至１２のいずれか一つに記載のスキャナデモンストレート方法。
【請求項１５】
前記疑似スキャナステップにて、
前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置の読取時の読取完了動作を除いて、連続的に前記画像データを出力させる、請求項１０乃至１２のいずれか一つに記載のスキャナデモンストレート方法。
【請求項１６】
前記疑似スキャナステップにて、
更に、前記読取動作のスピードに同期させずに、前記画像データを出力させる、請求項１４に記載のスキャナデモンストレート方法。
【請求項１７】
前記スキャナ装置の読取時の設定に関するプロファイルと前記装置状態情報とを関連付けたスキャン設定を取得し、前記スキャン設定に基づいて、前記スキャン設定のテストを実行するスキャンテストステップ、
を更に含む、請求項１０に記載のスキャナデモンストレート方法。
【請求項１８】
画像読取時におけるスキャナ装置の装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置にて読み取られた画像データを出力させる疑似スキャナステップ、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャナデモンストレータ、スキャナデモンストレート方法、および、プログラムに関する。
【背景技術】
【０００２】
従来から、シミュレーションを行う技術が開示されている。
【０００３】
ここで、ハードウェア動作の再現が容易なソフトウェア開発を支援する技術が開示されている（特許文献１を参照）。
【０００４】
また、キーデータ入力情報を記録し、再生する技術が開示されている（特許文献２を参照）。
【０００５】
また、実機を使用して外部機器からの入力信号や入力データを記録し、外部機器が接続されていない状態でも外部機器が接続されていた状態をリアルタイムに再現することを可能とするデバッグシステムが開示されている（特許文献３を参照）。
【０００６】
また、入出力装置に対する入出力命令の実行を必要とするプログラムを、入出力命令の実行対象の入出力装置が存在しない情報処理システムにおいて、実行可能とする技術が開示されている（特許文献４を参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２５９１６２号公報
【特許文献２】特開平２−１６５３５１号公報
【特許文献３】特開２００３−２８０９４０号公報
【特許文献４】特開平５−３３４１２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来のシステム（特許文献１等）においては、スキャナ装置を使用するドライバまたはアプリケーションのデモンストレーションを行う場合に、装置状態情報の採取が行われていないため、特定のスキャナ装置でしか実施できない機能などが実施できないという問題点を有していた。そのため、従来のシステムにおいては、デモンストレーションを行う場合に、デモンストレーションに適合するスキャナ装置を準備する必要があった。
【０００９】
本発明は、上記問題点に鑑みてなされたもので、スキャナ装置を準備しなくても、簡単に高い再現性の臨場感のあるデモンストレーションの実施を可能とするスキャナデモンストレータ、スキャナデモンストレート方法、および、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
このような目的を達成するため、本発明に係るスキャナデモンストレータは、スキャナ装置にて読み取られた画像データと、画像読取時における当該スキャナ装置の装置状態情報と、を記憶する装置情報記憶手段と、前記装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記画像データを出力させる疑似スキャナ手段と、を備えたことを特徴とする。
【００１１】
また、本発明に係るスキャナデモンストレート方法は、画像読取時におけるスキャナ装置の装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置にて読み取られた画像データを出力させる疑似スキャナステップ、を含むことを特徴とする。
【００１２】
また、本発明に係るプログラムは、画像読取時におけるスキャナ装置の装置状態情報に基づいて、前記スキャナ装置に接続されていない環境で、前記スキャナ装置にて読み取られた画像データを出力させる疑似スキャナステップ、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１３】
この発明によれば、スキャナ装置を準備しなくても、簡単に高い再現性の臨場感のあるデモンストレーションの実施が可能となる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本実施形態に係るスキャナデモンストレータの構成の一例を示す全体構成図である。
【図２】図２は、本実施形態における動作情報のデータ構造の一例を示す図である。
【図３】図３は、本実施形態におけるＲｅｃデータのデータ構造の一例を示す図である。
【図４】図４は、本実施形態におけるプロファイルとＲｅｃデータとの対応表のデータ構造の一例を示す図である。
【図５】図５は、本実施形態における装置制御ラッパー部の構成の一例を示す構造図である。
【図６】図６は、本実施形態におけるテストアプリケーション部の構成の一例を示す構造図である。
【図７】図７は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図８】図８は、本実施形態における装置制御ラッパー部配置の一例を示す図である。
【図９】図９は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１０】図１０は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１１】図１１は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１２】図１２は、本実施形態におけるＲｅｃデータの一例を示す図である。
【図１３】図１３は、本実施形態の動作情報設定ツールを利用したＲｅｃモード実行時の画面の一例を示す図である。
【図１４】図１４は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１５】図１５は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１６】図１６は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１７】図１７は、本実施形態における効果音出力処理の一例を示す図である。
【図１８】図１８は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図１９】図１９は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図２０】図２０は、本実施形態の通常エミュレーション処理の一例を示す図である。
【図２１】図２１は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図２２】図２２は、本実施形態のスキャンスルー処理の一例を示す図である。
【図２３】図２３は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図２４】図２４は、本実施形態のスキャンエンドレス処理の一例を示す図である。
【図２５】図２５は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【図２６】図２６は、本実施形態のスキャンスピード調整処理の一例を示す図である。
【図２７】図２７は、本実施形態の動作情報設定ツールを利用したＰｌａｙモード実行時の画面の一例を示す図である。
【図２８】図２８は、本実施形態のスキャナデモンストレータにおける処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下に、本発明に係るスキャナデモンストレータ、スキャナデモンストレート方法、および、プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【００１６】
［本実施形態の構成］
以下、本発明の実施形態に係るスキャナデモンストレータ１００の構成の一例について図１乃至図６を参照して説明し、その後、本実施形態の処理等について詳細に説明する。但し、以下に示す実施形態は、本発明の技術思想を具体化するためのスキャナデモンストレータ１００を例示するものであって、本発明をこのスキャナデモンストレータ１００に特定することを意図するものではなく、請求の範囲に含まれるその他の実施形態のスキャナデモンストレータ１００にも等しく適用し得るものである。
【００１７】
例えば、本実施形態で例示するスキャナデモンストレータ１００における機能分散の形態は以下に限られず、同様の効果や機能を奏し得る範囲において、任意の単位で機能的または物理的に分散・統合して構成することができる。図１は、本実施形態に係るスキャナデモンストレータ１００の構成の一例を示す全体構成図である。
【００１８】
図１に示すように、本実施形態のスキャナデモンストレータ１００は、概略的に、スキャナ装置２００と通信可能に接続して構成される。ここで、通信には、一例として、ネットワーク３００（図１では省略）を介した有線通信および／または無線通信（例えば、ＷｉＦｉ（登録商標）等）の遠隔通信等を含む。また、これらスキャナデモンストレータ１００の各部は任意の通信路を介して通信可能に接続されている。
【００１９】
ここで、スキャナ装置２００は、手挿入給紙方式（連送給紙機構（ＣＤＦ）方式）のドキュメントスキャナ装置、自動給紙機構方式（ＡＤＦ方式）のドキュメントスキャナ装置、フラットベッド式のドキュメントスキャナ装置、または、オーバーヘッド型画像読取装置等であってもよい。
【００２０】
また、スキャナデモンストレータ１００は、概略的に、制御部１０２と、記憶部１０６と、入出力部１１２と、を備えて構成される（図１では省略）。また、スキャナデモンストレータ１００は、更に、入出力部１１２と制御部１０２とを接続する入出力インターフェース部１０８を備えていてもよい。
【００２１】
また、スキャナ装置２００とスキャナデモンストレータ１００の制御部１０２とは、入出力インターフェース部１０８（例えば、ＵＳＢ、または、ＳＣＳＩ等）を介して接続されていてもよい。
【００２２】
また、スキャナデモンストレータ１００は、更に、通信インターフェース部１０４を備えていてもよく、通信インターフェース部１０４を介して、外部装置（例えば、スキャナ装置２００等）と相互に通信可能に接続されていてもよい。通信インターフェース部１０４は、通信回線および／または電話回線等に接続されるアンテナおよび／またはルータ等の通信装置に接続されるインターフェースであり、スキャナデモンストレータ１００とネットワーク３００との間における通信制御を行う機能を有していてもよい。
【００２３】
ここで、通信インターフェース部１０４は、ＮＩＣ等であってもよい。また、これら各部は任意の通信路を介して通信可能に接続されている。なお、制御部１０２は、通信インターフェース部１０４、入出力インターフェース部１０８、および、入出力部１１２を制御してもよい。
【００２４】
ここで、記憶部１０６は、各種のデータベース、テーブル、および／または、ファイル（動作情報ファイル１０６ａ、装置情報フォルダ１０６ｂ、プロファイルデータベース１０６ｃ、および、プロファイル対応表１０６ｄ等）などを格納する。また、記憶部１０６は、各種アプリケーションプログラム（例えば、ユーザアプリケーション等）を記憶していてもよい。
【００２５】
記憶部１０６は、ストレージ手段であり、例えばＲＡＭ・ＲＯＭ等のメモリ、ハードディスクのような固定ディスク装置、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、フレキシブルディスク、および／または、光ディスク等を用いることができる。記憶部１０６には、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に命令を与え各種処理を行うためのコンピュータプログラム等が記録されている。
【００２６】
これら記憶部１０６の各構成要素のうち、動作情報ファイル１０６ａは、スキャナデモンストレータ１００の動作情報を記憶する。
【００２７】
ここで、図２を参照して、本実施形態における動作情報のデータ構造の一例について説明する。図２は、本実施形態における動作情報のデータ構造の一例を示す図である。
【００２８】
図２に示すように、動作情報ファイル１０６ａに記憶される動作情報は、動作モード（Ｒｅｃモード／Ｐｌａｙモード／Ｓｔｏｐモード）の設定、Ｒｅｃデータ格納フォルダ名、デバッグ用等のログ（採取）レベル、ターゲット装置情報（スキャナ装置タイプコード、スキャナ装置名、および／または、スキャナ装置番号等）、Ｐｌａｙモード詳細設定（再生モード：通常／スキャンスルー／スキャンエンドレス、スキャンスピード調整、および／または、効果音の有無等の動作フラグ）に関する情報を含んでいてもよい。
【００２９】
図１に戻り、装置情報フォルダ１０６ｂは、スキャナ装置２００にて読み取られた画像データと、画像読取時における当該スキャナ装置２００の装置状態情報と、を含むＲｅｃデータを記憶する。ここで、装置状態情報は、装置エラー情報、および／または、装置センサー情報（ＡＤＦの用紙有無など）を含んでいてもよい。
【００３０】
また、Ｒｅｃデータは、非圧縮データ、および／または、ＪＰＥＧ等の圧縮データの画像データだけでなく、画像属性情報（圧縮形式、解像度、縦横サイズ、給紙情報（ＡＤＦ表／ＡＤＦ裏／ＦＢ）、および／または、読取り時刻等の属性情報を含む画像情報を含んでいてもよい。
【００３１】
また、Ｒｅｃデータは、Ｒｅｃデータの記録時間、および／または、スキャン装置制御への要求と応答結果とを記録／管理するＲｅｃデータ管理情報を含んでおり、本実施形態において、装置状態情報は、Ｒｅｃデータ管理情報に含まれていてもよい。
【００３２】
ここで、Ｒｅｃデータ管理情報は、装置タイプコード、装置番号、解像度、装置ＲＯＭ情報（装置ＥＥＰＲＯＭ情報）、および／または、ＡＤＦ／ＦＢの有無等を含む装置動作情報を含んでいてもよい。
【００３３】
ここで、図３を参照して、本実施形態におけるＲｅｃデータのデータ構造の一例について説明する。図３は、本実施形態におけるＲｅｃデータのデータ構造の一例を示す図である。
【００３４】
図３に示すように、装置情報フォルダ１０６ｂに記憶されるＲｅｃデータに含まれるＲｅｃデータ管理情報は、Ｒｅｃデータに含まれる各データ（例えば、装置ＲＯＭ情報、装置状態情報、装置統計情報、または、画像データ等）と、記録時間等と、の対応を記憶していてもよい。
【００３５】
ここで、Ｒｅｃデータ管理情報は、記録時間、開始マーカー、装置タイプ情報（装置タイプコード）、ＤｅｍｏＭｏｄｅバージョン情報、装置制御部復帰値、要求コード、要求／応答詳細データ、装置ＲＯＭ情報、装置（詳細）状態情報、装置統計情報、および／または、画像ファイル名等を含んでいてもよい。
【００３６】
図１に戻り、プロファイルデータベース１０６ｃは、スキャナ装置２００の読取時の設定に関するプロファイルを記憶する。ここで、プロファイルは、スキャン時における、スキャナ装置２００のスキャナドライバの設定を保持しているデータ（例えば、ファイル等）であってもよい。
【００３７】
また、プロファイル対応表１０６ｄは、プロファイルと、当該プロファイルに対応するＲｅｃデータと、の対応を定義したテーブル（対応表）を記憶する。
【００３８】
ここで、図４を参照して、本実施形態におけるプロファイルとＲｅｃデータとの対応表のデータ構造の一例について説明する。図４は、本実施形態におけるプロファイルとＲｅｃデータとの対応表のデータ構造の一例を示す図である。
【００３９】
図４に示すように、プロファイルとＲｅｃデータとの対応表には、スキャナドライバのプロファイル名に対応付けて、Ｒｅｃデータ格納フォルダ名、ＤｅｍｏＭｏｄｅのＰｌａｙ設定、スキャンデータの格納フォルダ名、スキャンデータの格納ファイル名形式、ファイルフォーマット、および／または、実行順序情報等が記録されていてもよい。
【００４０】
また、記憶部１０６は、各種アプリケーションプログラム（例えば、ユーザアプリケーション等）を記憶していてもよい。
【００４１】
また、入出力部１１２は、データの入出力（Ｉ／Ｏ）を行う。ここで、入出力部１１２は、例えば、キー入力部、タッチパネル、コントロールパッド（例えば、タッチパッド、および、ゲームパッド等）、マウス、キーボード、および、マイク等であってもよい。また、入出力部１１２は、アプリケーション等の表示画面を表示する表示部（例えば、液晶または有機ＥＬ等から構成されるディスプレイ、モニタ、および、タッチパネル等）であってもよい。また、入出力部１１２は、音声情報を音声として出力する音声出力部（例えば、スピーカ等）であってもよい。
【００４２】
また、制御部１０２は、スキャナデモンストレータ１００を統括的に制御するＣＰＵ等からなる。制御部１０２は、制御プログラムと各種の処理手順等を規定したプログラムと所要データとを格納するための内部メモリを有し、これらプログラムに基づいて種々の処理を実行するための情報処理を行う。
【００４３】
ここで、制御部１０２は、大別して、動作情報設定部１０２ａ、スキャナドライバ部１０２ｂ、装置制御部１０２ｃ、装置制御ラッパー部１０２ｄ、装置制御主処理部１０２ｅ、および、テストアプリケーション部１０２ｆを備える。
【００４４】
動作情報設定部１０２ａは、ユーザの指定により、動作情報を特定のファイルに設定するアプリケーションプログラムを実行する。ここで、特定のファイルは、動作情報ファイル１０６ａであってもよい。
【００４５】
スキャナドライバ部１０２ｂは、装置制御ラッパー部１０２ｄから画像情報および／または装置状態情報を取得し、画像処理等を行う。ここで、スキャナドライバ部１０２ｂは、各種アプリケーションプログラム（ユーザアプリケーション）からの指示に基づいて、装置制御ラッパー部１０２ｄから画像情報および／または装置状態情報を取得し、画像処理等を行い、当該アプリケーションプログラムに画像を提供してもよい。
【００４６】
ここで、ユーザアプリケーションは、ユーザが使用する、スキャナ装置２００を使用するためのアプリケーションプログラムである。ここで、ユーザアプリケーションは、スキャナドライバを使用して、スキャナ装置２００にて画像データを読み取らせてもよい。
【００４７】
装置制御部１０２ｃは、画像情報および装置状態情報を取得する。ここで、装置制御部１０２ｃは、装置制御ラッパー部１０２ｄと、装置制御主処理部１０２ｅと、を少なくとも備える。
【００４８】
装置制御ラッパー部１０２ｄは、スキャナ装置２００にて読み取られた画像データの処理を行う。ここで、装置制御ラッパー部１０２ｄは、疑似スキャナ手段、または、画像格納手段であってもよい。また、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、スキャナ装置２００に接続されていない環境で、画像データを出力させてもよい。
【００４９】
また、装置制御ラッパー部１０２ｄは、スキャナ装置２００にて読み取られた画像データと装置状態情報とを取得し、装置情報フォルダ１０６ｂに格納してもよい。また、装置制御ラッパー部１０２ｄは、更に、装置状態情報に基づいて、スキャナ装置２００の動作に対応する効果音を出力させてもよい。
【００５０】
また、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、スキャナ装置２００に接続されていない環境で、スキャナ装置２００の読取時の動作に対応させて、画像データを出力させてもよい。また、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、スキャナ装置２００に接続されていない環境で、スキャナ装置２００の読取時の読取動作に対応させて、画像データを出力させてもよい。
【００５１】
また、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、スキャナ装置２００に接続されていない環境で、スキャナ装置２００の読取時の読取完了動作を除いて、連続的に画像データを出力させてもよい。また、装置制御ラッパー部１０２ｄは、更に、読取動作のスピードに同期させずに、画像データを出力させてもよい。
【００５２】
また、装置制御ラッパー部１０２ｄは、処理開始時にその都度配置されてもよい。ここで、装置制御ラッパー部１０２ｄは、概念的に、スキャナドライバ部１０２ｂと装置制御部１０２ｃとの間に位置していてもよい。
【００５３】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃモード（画像読取モード）においては、スキャナドライバ部１０２ｂと装置制御部１０２ｃとの間で送受信される、画像情報および／または装置状態情報を、特定のディレクトリ（装置情報フォルダ１０６ｂ）内にファイルとして記録してもよい。
【００５４】
また、装置制御ラッパー部１０２ｄは、Ｐｌａｙモード（デモンストレーションモード）においては、特定のディレクトリ（装置情報フォルダ１０６ｂ）内に記録されている画像情報および／または装置状態情報を使用し、装置制御部１０２ｃの動作をエミュレーションしてもよい。
【００５５】
ここで、図５を参照して、本実施形態における装置制御ラッパー部１０２ｄの構造の一例について説明する。図５は、本実施形態における装置制御ラッパー部１０２ｄの構成の一例を示す構造図である。
【００５６】
図５に示すように、装置制御ラッパー部１０２ｄは、大別して、スキャナデモンストレータ１００の各部と接続するインターフェースである疑似装置制御部、動作情報を判定する動作情報判定部、Ｒｅｃモードにおける処理を行うＲｅｃ処理部、および、Ｐｌａｙモードにおける処理を行うＰｌａｙ処理部を備えていてもよい。
【００５７】
ここで、Ｒｅｃ処理部は、装置制御主処理部１０２ｅを呼び出す装置制御呼出部、Ｒｅｃモードにおいて必要な動作情報を分析するＲｅｃ要求分析部、および、Ｒｅｃデータを装置情報フォルダ１０６ｂに格納するＲｅｃデータ記録部を備えていてもよい。
【００５８】
また、Ｐｌａｙ処理部は、Ｐｌａｙモードにおいて必要な動作情報を分析するＰｌａｙ要求分析部、装置情報フォルダ１０６ｂに記憶されたＲｅｃデータを取得する（読み込む）Ｒｅｃデータ読込部、および、Ｐｌａｙモードにおいて出力させる出力データを作成する疑似応答データ作成部を備えていてもよい。
【００５９】
図１に戻り、装置制御主処理部１０２ｅは、通信インターフェース部１０４、または、入出力インターフェース部（ＵＳＢ、または、ＳＣＳＩ等）１０８を介して、スキャナ装置２００と通信し、スキャナ装置２００から画像情報および装置状態情報を含むＲｅｃデータを取得する。
【００６０】
テストアプリケーション部１０２ｆは、プロファイルと装置状態情報とを関連付けたスキャン設定を取得し、スキャン設定に基づいて、スキャン設定のテストを実行する。ここで、テストアプリケーション部１０２ｆは、スキャンテスト手段であってもよい。
【００６１】
また、テストアプリケーション部１０２ｆは、プロファイルと装置状態情報とを関連付けたスキャン設定を取得し、スキャン設定に基づいて、スキャナ装置２００にて画像データを読み取らせることで、スキャン設定のテストを実行してもよい。
【００６２】
また、テストアプリケーション部１０２ｆは、Ｒｅｃデータとドライバのプロファイルとを、事前に定義されたプロファイル対応表１０６ｄに基づいて、自動で切換えながら、スキャナ装置２００におけるスキャン処理を自動実行させて、スキャン設定のテスト（テスト用アプリケーションプログラム）を実行してもよい。
【００６３】
ここで、図６を参照して、本実施形態におけるテストアプリケーション部１０２ｆの構造の一例について説明する。図６は、本実施形態におけるテストアプリケーション部１０２ｆの構成の一例を示す構造図である。
【００６４】
図６に示すように、テストアプリケーション部１０２ｆは、ユーザにスキャンテストに関するパラメータの設定をさせるユーザインターフェースを提供するパラメータ設定部を備えていてもよい。
【００６５】
また、テストアプリケーション部１０２ｆは、プロファイル対応表１０６ｄを管理するプロファイル／Ｒｅｃデータ対応管理部、スキャナ装置２００におけるスキャン処理を実行させるスキャン部、および、スキャン処理実行時に、プロファイル対応表１０６ｄに基づいて、Ｒｅｃデータとスキャナドライバのプロファイルとを、切換えるＲｅｃデータ切換部を備えていてもよい。
【００６６】
ここで、テストアプリケーション部１０２ｆは、スキャナドライバの設定を保持するプロファイルをスキャナドライバに設定し、且つ、これに関連付けられているＲｅｃデータを装置制御ラッパー部１０２ｄにより実行されるＰｌａｙモードで使用するための動作情報（動作情報ファイル１０６ａに記憶される動作情報）を、動作情報設定部（動作情報設定ツール）１０２ａに設定させてもよい。
【００６７】
［本実施形態の処理］
上述した構成のスキャナデモンストレータ１００で実行される処理の一例について、図７乃至図２８を参照して説明する。
【００６８】
［動作情報設定部１０２ａによる処理］
まず、本実施形態における動作情報設定部１０２ａによる処理の一例について、図７および図８を参照して説明する。図７は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【００６９】
図７に示すように、まず、スキャナ装置２００のデモンストレーション、または、スキャンテストを実施する場合、動作情報設定部１０２ａは、ユーザにより設定された動作情報に含まれる動作モードが、Ｒｅｃモード、Ｐｌａｙモード、または、Ｓｔｏｐモードのいずれかであるか判定する（ステップＳＡ−１）。
【００７０】
そして、動作情報設定部１０２ａは、動作モードが、Ｒｅｃモードであると判定した場合（ステップＳＡ−１：Ｒｅｃモード）、処理をステップＳＡ−２に移行させる。
【００７１】
そして、動作情報設定部１０２ａは、動作情報に設定されている、Ｒｅｃデータが格納されるＲｅｃデータ格納フォルダ（装置情報フォルダ１０６ｂ）が有る（ユーザにより指定されている）か否か、および、装置情報フォルダ１０６ｂが空である（保存容量が十分である）か否か等の状態をチェックする（ステップＳＡ−２）。
【００７２】
そして、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂが無い（ユーザにより指定されていない）、または、装置情報フォルダ１０６ｂが空でない（保存容量が不十分である）と判定した場合（ステップＳＡ−２：Ｎｏ）、エラー処理を実行し、処理を終了する。
【００７３】
一方、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂが有る（ユーザにより指定されている）、且つ、装置情報フォルダ１０６ｂが空である（保存容量が十分である）と判定した場合（ステップＳＡ−２：Ｙｅｓ）、処理をステップＳＡ−３に移行させる。
【００７４】
そして、動作情報設定部１０２ａは、設定された動作情報を動作情報ファイル１０６ａに書き込む（ステップＳＡ−３）。
【００７５】
そして、動作情報設定部１０２ａは、装置制御部１０２ｃに装置制御ラッパー部１０２ｄを配置し（ステップＳＡ−４）、処理を終了する。すなわち、動作情報設定部１０２ａは、動作情報を記憶装置の所定の場所に記録し、装置制御部１０２ｃに装置制御ラッパー部１０２ｄを配置してもよい。
【００７６】
また、動作情報設定部１０２ａは、動作モードが、Ｓｔｏｐモードであると判定した場合（ステップＳＡ−１：Ｓｔｏｐモード）、処理をステップＳＡ−５に移行させる。
【００７７】
そして、動作情報設定部１０２ａは、動作情報ファイル１０６ａに記憶されている動作情報を削除する（ステップＳＡ−５）。
【００７８】
そして、動作情報設定部１０２ａは、装置制御部１０２ｃに配置されている装置制御ラッパー部１０２ｄを削除し（ステップＳＡ−６）、処理を終了する。
【００７９】
また、動作情報設定部１０２ａは、動作モードが、Ｐｌａｙモードであると判定した場合（ステップＳＡ−１：Ｐｌａｙモード）、処理をステップＳＡ−７に移行させる。
【００８０】
そして、動作情報設定部１０２ａは、動作情報に設定されている装置情報フォルダ１０６ｂが有るか否か、および、装置情報フォルダ１０６ｂが空であるか否か等の状態をチェックする（ステップＳＡ−７）。
【００８１】
そして、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂが無い、または、装置情報フォルダ１０６ｂが空であると判定した場合（ステップＳＡ−７：Ｎｏ）、エラー処理を実行し、処理を終了する。
【００８２】
一方、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂが有る、且つ、装置情報フォルダ１０６ｂが空でない（Ｒｅｃデータが事前に記録されている）と判定した場合（ステップＳＡ−７：Ｙｅｓ）、処理をステップＳＡ−８に移行させる。
【００８３】
そして、動作情報設定部１０２ａは、Ｒｅｃデータが格納されている装置情報フォルダ１０６ｂを指定し、装置情報フォルダ１０６ｂに事前に記録されているＲｅｃデータを検証、および／または、解析する（ステップＳＡ−８）。
【００８４】
そして、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂに事前に記録されているＲｅｃデータが妥当であるか否かを判定する（ステップＳＡ−９）。
【００８５】
そして、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂに事前に記録されているＲｅｃデータが不正であると判定した場合（ステップＳＡ−９：Ｎｏ）、エラー処理を実行し、処理を終了する。
【００８６】
一方、動作情報設定部１０２ａは、装置情報フォルダ１０６ｂに事前に記録されているＲｅｃデータが妥当であると判定した場合（ステップＳＡ−９：Ｙｅｓ）、処理をステップＳＡ−１０に移行させる。
【００８７】
そして、動作情報設定部１０２ａは、Ｒｅｃデータの詳細情報を入出力部１１２に表示させる（ステップＳＡ−１０）。
【００８８】
そして、動作情報設定部１０２ａは、動作情報を動作情報ファイル１０６ａに書き込む（ステップＳＡ−１１）。ここで、動作情報は、動作フラグ（通常／スキャンスルー／スキャンエンドレス）、効果音の有無、スキャナ装置タイプコード、および／または、スキャナ装置名等を含んでいてもよい。
【００８９】
そして、動作情報設定部１０２ａは、装置制御部１０２ｃに装置制御ラッパー部１０２ｄを配置し（ステップＳＡ−１２）、処理を終了する。
【００９０】
このように、本実施形態において、動作情報設定部１０２ａは、Ｒｅｃモード、Ｐｌａｙモード、Ｓｔｏｐモード、データ格納フォルダ、または、各種詳細設定情報を動作情報として設定する動作情報設定ツールであってもよい。
【００９１】
ここで、図８を参照して、本実施形態における装置制御ラッパー部１０２ｄ配置の一例について説明する。図８は、本実施形態における装置制御ラッパー部１０２ｄ配置の一例を示す図である。
【００９２】
図８に示すように、動作情報設定部１０２ａは、スキャナドライバ格納フォルダ（例えば、制御部１０２の内部メモリ等）に配置された装置制御部１０２ｃ（ＤｅｖｉｃｅＣｔｌ．ｄｌｌ）の下位に装置制御ラッパー部１０２ｄ（ＤｅｍｏＭｏｄｅ．ｄｌｌ）を配置、または、スキャナドライバ格納フォルダに配置された装置制御ラッパー部１０２ｄ（ＤｅｍｏＭｏｄｅ．ｄｌｌ）を削除してもよい。
【００９３】
すなわち、動作情報設定ツール（動作情報設定部１０２ａ）は、ＲｅｃモードまたはＰｌａｙモードの際、装置制御ラッパー部１０２ｄ（ＤｅｍｏＭｏｄｅ．ｄｌｌ）をスキャナドライバ格納フォルダに複写してもよい。
【００９４】
また、動作情報設定ツール（動作情報設定部１０２ａ）は、Ｓｔｏｐモードの際に、スキャナドライバ格納フォルダに装置制御ラッパー部１０２ｄ（ＤｅｍｏＭｏｄｅ．ｄｌｌ）が存在する場合、装置制御ラッパー部１０２ｄ（ＤｅｍｏＭｏｄｅ．ｄｌｌ）を削除してもよい。
【００９５】
［装置制御ラッパー部１０２ｄ呼出処理］
次に、本実施形態における装置制御ラッパー部１０２ｄ呼出処理の一例について、図９を参照して説明する。図９は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【００９６】
図９に示すように、まず、ユーザによりスキャナドライバを使用するユーザアプリケーションが起動された場合、ユーザアプリケーションによりスキャナドライバが呼び出され、呼び出されたスキャナドライバが装置制御部１０２ｃを呼び出す。そして、装置制御部１０２ｃは、スキャナドライバからの呼び出しが初回か否かを判定する（ステップＳＢ−１）。
【００９７】
そして、装置制御部１０２ｃは、スキャナドライバからの呼び出しが初回ではない（２回目以降の呼び出しである）と判定した場合（ステップＳＢ−１：Ｎｏ）、処理をステップＳＢ−４に移行させる。
【００９８】
一方、装置制御部１０２ｃは、スキャナドライバからの呼び出しが初回であると判定した場合（ステップＳＢ−１：Ｙｅｓ）、処理をステップＳＢ−２に移行させる。
【００９９】
そして、装置制御部１０２ｃは、装置制御ラッパー部１０２ｄの有無、すなわち、配置されているか否かを判定（確認）する（ステップＳＢ−２）。
【０１００】
そして、装置制御部１０２ｃは、装置制御ラッパー部１０２ｄが配置されていないと判定した場合（ステップＳＢ−２：Ｎｏ）、処理をステップＳＢ−４に移行させる。
【０１０１】
一方、装置制御部１０２ｃは、装置制御ラッパー部１０２ｄが配置されていると判定した場合（ステップＳＢ−２：Ｙｅｓ）、処理をステップＳＢ−３に移行させる。
【０１０２】
そして、装置制御部１０２ｃは、装置制御ラッパー部１０２ｄのエントリ設定を行い（ステップＳＢ−３）、処理をステップＳＢ−４に移行させる。
【０１０３】
そして、装置制御部１０２ｃは、装置制御ラッパー部１０２ｄのエントリ（ラッパーエントリ）があるか否かを判定する（ステップＳＢ−４）。
【０１０４】
そして、装置制御部１０２ｃは、ラッパーエントリがないと判定した場合（ステップＳＢ−４：Ｎｏ）、処理をステップＳＢ−５に移行させる。
【０１０５】
そして、装置制御部１０２ｃは、以降の装置制御部１０２ｃへの呼び出し（処理呼出）を、全て装置制御主処理部１０２ｅへの呼び出しに変更し、装置制御主処理部１０２ｅに各種処理を行わせ（ステップＳＢ−５）、処理を終了する。
【０１０６】
一方、装置制御部１０２ｃは、ラッパーエントリがあると判定した場合（ステップＳＢ−４：Ｙｅｓ）、処理をステップＳＢ−６に移行させる。
【０１０７】
そして、装置制御部１０２ｃは、以降の装置制御部１０２ｃへの呼び出し（処理呼出）を、全て装置制御ラッパー部１０２ｄへの呼び出しに変更し、装置制御ラッパー部１０２ｄに各種処理を行わせ（ステップＳＢ−６）、処理を終了する。
【０１０８】
ここで、本実施形態において、装置制御ラッパー部１０２ｄによる処理は、スキャナ装置２００と上位プログラムとの送受信データを記録するＲｅｃモード、Ｒｅｃモードで記録されたデータを使用して仮想スキャナ装置経由で上位プログラムにイメージデータを提供するＰｌａｙモード、および、無操作とするＳｔｏｐモードの提供等であってもよい。
【０１０９】
すなわち、本実施形態においては、装置制御ラッパー部１０２ｄが配置されていれば、以降の装置制御部１０２ｃへの処理呼出を、全て装置制御ラッパー部１０２ｄへの処理呼出に変更する。
【０１１０】
［装置制御ラッパー部１０２ｄによる処理］
次に、本実施形態における装置制御ラッパー部１０２ｄによる処理の一例について、図１０乃至図２７を参照して説明する。図１０は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【０１１１】
図１０に示すように、まず、装置制御ラッパー部１０２ｄは、所定の場所（動作情報ファイル１０６ａ）に動作情報が記憶されているか否かを確認し、動作情報が記憶されている場合、動作情報ファイル１０６ａに記憶されている動作情報に設定されている内容を読み取る（ステップＳＣ−１）。
【０１１２】
そして、装置制御ラッパー部１０２ｄは、動作情報に設定されている動作モードが、Ｒｅｃモード、Ｐｌａｙモード、または、Ｓｔｏｐモードであるか判定する（ステップＳＣ−２）。
【０１１３】
そして、装置制御ラッパー部１０２ｄは、動作情報に設定されている動作モードが、Ｒｅｃモード、または、Ｓｔｏｐモードであると判定した場合（ステップＳＣ−２：Ｓｔｏｐ／Ｒｅｃモード）、処理をステップＳＣ−３に移行させる。
【０１１４】
そして、装置制御ラッパー部１０２ｄは、装置制御主処理部１０２ｅを呼び出す（ステップＳＣ−３）。
【０１１５】
そして、装置制御ラッパー部１０２ｄは、動作情報に設定されている動作モードが、Ｒｅｃモード、または、Ｓｔｏｐモードであるか判定する（ステップＳＣ−４）。
【０１１６】
そして、装置制御ラッパー部１０２ｄは、動作情報に設定されている動作モードが、Ｓｔｏｐモードであると判定した場合（ステップＳＣ−４：Ｓｔｏｐモード）、処理を終了する。
【０１１７】
一方、装置制御ラッパー部１０２ｄは、動作情報に設定されている動作モードが、Ｒｅｃモードであると判定した場合（ステップＳＣ−４：Ｒｅｃモード）、処理をステップＳＣ−５に移行させる。
【０１１８】
そして、装置制御ラッパー部１０２ｄは、動作情報に設定されている内容に基づいて、Ｒｅｃモード処理を実行し（ステップＳＣ−５）、処理を終了する。
【０１１９】
［Ｒｅｃモード処理］
ここで、図１１乃至図１３を参照して、本実施形態におけるＲｅｃモード処理の一例について説明する。図１１は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【０１２０】
図１１に示すように、装置制御ラッパー部１０２ｄは、装置制御主処理部１０２ｅを呼び出し、装置制御主処理部１０２ｅの呼び出しが初回か否かを判定する（ステップＳＤ−１）。
【０１２１】
そして、装置制御ラッパー部１０２ｄは、実行した呼び出しが初回ではない（２回目以降の呼び出しである）と判定した場合（ステップＳＤ−１：Ｎｏ）、処理をステップＳＤ−５に移行させる。
【０１２２】
一方、装置制御ラッパー部１０２ｄは、実行した呼び出しが初回であると判定した場合（ステップＳＤ−１：Ｙｅｓ）、処理をステップＳＤ−２に移行させる。
【０１２３】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃデータが格納される装置情報フォルダ１０６ｂが空であるか否かのフォルダチェックを行う（ステップＳＤ−２）。
【０１２４】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂが空（空フォルダ）であると判定した場合（ステップＳＤ−２：Ｙｅｓ）、処理をステップＳＤ−４に移行させる。
【０１２５】
一方、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂが空でないと判定した場合（ステップＳＤ−２：Ｎｏ）、処理をステップＳＤ−３に移行させる。
【０１２６】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂにＲｅｃデータを追加できるか否かを判定する（ステップＳＤ−３）。
【０１２７】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂにＲｅｃデータを追加できないと判定した場合（ステップＳＤ−３：Ｎｏ）、エラー処理を実行し、処理を終了する。
【０１２８】
一方、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂにＲｅｃデータを追加できると判定した場合（ステップＳＤ−３：Ｙｅｓ）、処理をステップＳＤ−４に移行させる。
【０１２９】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂにＲｅｃデータ書込前処理を行い（ステップＳＤ−４）、処理をステップＳＤ−５に移行させる。
【０１３０】
そして、装置制御ラッパー部１０２ｄは、装置制御主処理部１０２ｅにスキャナ装置２００と通信し、スキャナ装置２００から送受信情報（装置ＲＯＭ情報、装置状態情報、装置統計情報、および／または、画像データ）を取得するように制御する（ステップＳＤ−５）。
【０１３１】
すなわち、装置制御ラッパー部１０２ｄは、装置制御主処理部１０２ｅにスキャナ装置２００の装置状態情報、スキャナ装置２００の動作設定、および、画像データ等の取得を行わせてもよい。
【０１３２】
このように、本実施形態における仮想スキャナ装置の動作において、事前に実際のスキャナ装置２００の送受信データが採取されることで、より正確にスキャナ装置２００のエミュレーションを可能としている。
【０１３３】
そして、装置制御ラッパー部１０２ｄは、日付時刻を取得する（ステップＳＤ−６）。ここで、日付時刻は、呼出時刻、通信時刻、または、取得時刻等であってもよい。
【０１３４】
そして、装置制御ラッパー部１０２ｄは、装置制御主処理部１０２ｅによりスキャナ装置２００から取得された送受信情報が画像データであるか否かを判定する（ステップＳＤ−７）。
【０１３５】
そして、装置制御ラッパー部１０２ｄは、送受信情報が画像データ以外であると判定した場合（ステップＳＤ−７：画像以外）、処理をステップＳＤ−８に移行させる。
【０１３６】
そして、装置制御ラッパー部１０２ｄは、取得した日付時刻とともに、送受信情報を画像情報以外の情報（Ｒｅｃデータ管理情報）として動作情報で指定（設定）された装置情報フォルダ１０６ｂに記録（出力）し（ステップＳＤ−８）、処理を終了する。
【０１３７】
一方、装置制御ラッパー部１０２ｄは、送受信情報が画像データであると判定した場合（ステップＳＤ−７：画像）、処理をステップＳＤ−９に移行させる。
【０１３８】
そして、装置制御ラッパー部１０２ｄは、取得した日付時刻とともに、送受信情報を画像情報として動作情報で指定（設定）された装置情報フォルダ１０６ｂに記録（出力）し（ステップＳＤ−９）、処理を終了する。
【０１３９】
ここで、図１２を参照して、本実施形態におけるＲｅｃデータの一例について説明する。図１２は、本実施形態におけるＲｅｃデータの一例を示す図である。
【０１４０】
図１２に示すように、装置情報フォルダ１０６ｂ（Ｄａｔａ−Ｆｏｌｄｅｒ）には、Ｒｅｃデータ管理情報（ＰＳＩＰ＿ＤＭ＿０００００００００００００００ｒｅｃ．ｄａｔ）、装置ＲＯＭ情報（ＰＳＩＰ＿ＤＭ＿１４０９０２１７３５１０５０１０００１ｒｏｍ．ｄａｔ）、画像データ（ＰＳＩＰ＿ＤＭ＿１４０９０２１７３５１３６０１０００２ｉｍｇ．ｄａｔ）、および、画像データ（ＰＳＩＰ＿ＤＭ＿１４０９０２１７３５１３６３６０００３ｉｍｇ．ｄａｔ）が格納されていてもよい。
【０１４１】
そして、図１２に示すように、装置情報フォルダ１０６ｂに記憶されたＲｅｃデータ管理情報には、装置ＲＯＭ情報（ＰＳＩＰ＿ＤＭ＿１４０９０２１７３５１０５０１０００１ｒｏｍ．ｄａｔ）、画像データ（ＰＳＩＰ＿ＤＭ＿１４０９０２１７３５１３６０１０００２ｉｍｇ．ｄａｔ）、および、画像データ（ＰＳＩＰ＿ＤＭ＿１４０９０２１７３５１３６３６０００３ｉｍｇ．ｄａｔ）それぞれの管理情報が記録されていてもよい。
【０１４２】
また、図１３を参照して、本実施形態における動作情報設定ツールを利用したＲｅｃモード実行の一例について説明する。図１３は、本実施形態の動作情報設定ツールを利用したＲｅｃモード実行時の画面の一例を示す図である。
【０１４３】
図１３に示すように、ユーザにより入出力部１１２を介して空のフォルダ（装置情報フォルダ１０６ｂ）が指定され、Ｒｅｃボタンが押下された場合（ステップＳＥ−１）、スキャナデモンストレータ１００は、Ｒｅｃモード処理を開始する（ステップＳＥ−２）。
【０１４４】
そして、スキャナデモンストレータ１００は、デモ対象のアプリケーションを起動し、スキャナ装置２００にてスキャン処理が実施される（ステップＳＥ−３）。
【０１４５】
そして、スキャナ装置２００にてスキャン処理終了後、ユーザにより入出力部１１２を介してＳｔｏｐボタンが押下された場合、スキャナデモンストレータ１００は、装置情報フォルダ１０６ｂに格納されたＲｅｃデータの概要情報を入出力部１１２に表示させる（ステップＳＥ−４）。
【０１４６】
ここで、図１３に示すように、スキャナデモンストレータ１００は、スキャン処理開始日時（Ｓｔａｒｔ  Ｄａｔｅ  ＆  Ｔｉｍｅ）、スキャン処理終了日時（Ｅｎｄ  Ｄａｔｅ  ＆  Ｔｉｍｅ）、スキャナ装置名（Ｓｃａｎｎｅｒ  Ｎａｍｅ）、ドライバの種類（Ｋｉｎｄ  ｏｆ  Ｒｅｃ  Ｄｒｉｖｅｒ）、本ツールのバージョン番号（Ｒｅｃ  Ｖｅｒｓｉｏｎ）、スキャン処理で取得したスキャン画像のページ数（Ｓｃａｎｎｅｄ  Ｐａｇｅｓ）、スキャン画像のビット深度（Ｂｉｔｓ  Ｐｅｒ  Ｐｉｘｅｌ）、および、スキャン画像の解像度（Ｒｅｓｏｌｕｔｉｏｎ）をＲｅｃデータの概要情報として表示させている。
【０１４７】
このように、本実施形態においては、ユーザ指定の特定フォルダへのＲｅｃデータの保存ができるため、特別な知識を必要とせず、Ｒｅｃデータの採取が簡単に行え、障害の再現調査、または、画像パラメータの調整補助等が簡単に行える。
【０１４８】
図１０に戻り、装置制御ラッパー部１０２ｄは、動作情報に設定されている動作モードが、Ｐｌａｙモードであると判定した場合（ステップＳＣ−２：Ｐｌａｙモード）、処理をステップＳＣ−６に移行させる。
【０１４９】
そして、装置制御ラッパー部１０２ｄは、動作情報に設定されている内容に基づいて、Ｐｌａｙモード処理を実行し（ステップＳＣ−６）、処理を終了する。
【０１５０】
［Ｐｌａｙモード処理］
ここで、図１４乃至図２７を参照して、本実施形態におけるＰｌａｙモード処理の一例について説明する。図１４は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【０１５１】
図１４に示すように、装置制御ラッパー部１０２ｄは、ユーザにより入出力部１１２を介してデモンストレーションの開始要求が入力された場合、装置制御ラッパー部１０２ｄの呼び出しが初回か否かを判定する（ステップＳＦ−１）。
【０１５２】
そして、装置制御ラッパー部１０２ｄは、実行した呼び出しが初回ではない（２回目以降の呼び出しである）と判定した場合（ステップＳＦ−１：Ｎｏ）、処理をステップＳＦ−５に移行させる。
【０１５３】
一方、装置制御ラッパー部１０２ｄは、実行した呼び出しが初回であると判定した場合（ステップＳＦ−１：Ｙｅｓ）、処理をステップＳＦ−２に移行させる。
【０１５４】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂに記憶されているＲｅｃデータが妥当であるか否かのフォルダチェックを行う（ステップＳＦ−２）。
【０１５５】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃデータが不正であると判定した場合（ステップＳＦ−２：Ｎｏ）、エラー処理を実行し、処理を終了する。
【０１５６】
一方、装置制御ラッパー部１０２ｄは、Ｒｅｃデータが妥当であると判定した場合（ステップＳＦ−２：Ｙｅｓ）、処理をステップＳＦ−３に移行させる。
【０１５７】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃデータに含まれるスキャナ装置タイプコードと、動作情報ファイル１０６ａに記憶された動作情報に含まれるスキャナ装置タイプコードと、が一致するか否かを判定する（ステップＳＦ−３）。
【０１５８】
そして、装置制御ラッパー部１０２ｄは、スキャナ装置タイプコードが不一致であると判定した場合（ステップＳＦ−３：Ｎｏ）、エラー処理を実行し、処理を終了する。
【０１５９】
一方、装置制御ラッパー部１０２ｄは、スキャナ装置タイプコードが一致すると判定した場合（ステップＳＦ−３：Ｙｅｓ）、処理をステップＳＦ−４に移行させる。
【０１６０】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃデータの読み込み前処理を行い（ステップＳＦ−４）、処理をステップＳＦ−５に移行させる。
【０１６１】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂから読み込んだ、デモンストレーションの開始要求に係るＲｅｃデータである要求情報が、画像データであるか否かを判定する（ステップＳＦ−５）。
【０１６２】
そして、装置制御ラッパー部１０２ｄは、要求情報が画像データ以外の情報であると判定した場合（ステップＳＦ−５：画像以外）、処理をステップＳＦ−６に移行させる。
【０１６３】
そして、装置制御ラッパー部１０２ｄは、画像データ以外の情報を入出力部１１２を介して出力（表示）させ（ステップＳＦ−６）、処理を終了する。
【０１６４】
一方、装置制御ラッパー部１０２ｄは、要求情報が画像データであると判定した場合（ステップＳＦ−５：画像）、処理をステップＳＦ−７に移行させる。
【０１６５】
そして、装置制御ラッパー部１０２ｄは、効果音出力処理を実行する（ステップＳＦ−７）。すなわち、装置制御ラッパー部１０２ｄは、フォルダチェックおよびスキャナ装置タイプコードチェック後、動作情報の設定内容に従い、スキャナ動作音の再生を実行してもよい。
【０１６６】
［効果音出力処理］
ここで、図１５乃至図１７を参照して、本実施形態における効果音出力処理の一例を説明する。図１５および図１６は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。図１７は、本実施形態における効果音出力処理の一例を示す図である。
【０１６７】
図１５に示すように、装置制御ラッパー部１０２ｄは、動作情報ファイル１０６ａに記憶された動作情報に基づいて、ユーザにより設定された音声ファイル（ＷＡＶファイル）があるか否かを判定する（ステップＳＧ−１）。
【０１６８】
そして、装置制御ラッパー部１０２ｄは、ユーザにより設定されたＷＡＶファイルがあると判定した場合（ステップＳＧ−１：Ｙｅｓ）、処理をステップＳＧ−２に移行させる。
【０１６９】
そして、装置制御ラッパー部１０２ｄは、ユーザにより設定された効果音データ（ＷＡＶファイル）を装置情報フォルダ１０６ｂから読み込み（ステップＳＧ−２）、処理を終了する。
【０１７０】
一方、装置制御ラッパー部１０２ｄは、ユーザにより設定されたＷＡＶファイルがないと判定した場合（ステップＳＧ−１：Ｎｏ）、処理をステップＳＧ−３に移行させる。
【０１７１】
そして、装置制御ラッパー部１０２ｄは、予め設定された効果音データ（ＷＡＶファイル）を記憶部１０６から読み込み（ステップＳＧ−３）、処理を終了する。
【０１７２】
次に、図１６に示すように、装置制御ラッパー部１０２ｄは、動作情報ファイル１０６ａに記憶された動作情報に設定されている内容（例えば、効果音の有無等）に基づいて、効果音を出力するか否かを判定する（ステップＳＨ−１）。
【０１７３】
そして、装置制御ラッパー部１０２ｄは、効果音を出力しないと判定した場合（ステップＳＨ−１：Ｎｏ）、処理を終了する。
【０１７４】
一方、装置制御ラッパー部１０２ｄは、効果音を出力すると判定した場合（ステップＳＨ−１：Ｙｅｓ）、処理をステップＳＨ−２に移行させる。
【０１７５】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂに記憶されたＲｅｃデータ（例えば、画像属性情報等）に基づいて、出力させる画像データのスキャン条件（ＡＤＦ表／ＡＤＦ裏／フラットベッド）を判定する（ステップＳＨ−２）。
【０１７６】
そして、装置制御ラッパー部１０２ｄは、画像データのスキャン条件がＡＤＦではない（フラットベッド）と判定した場合（ステップＳＨ−２：ＡＤＦでない）、処理をステップＳＨ−３に移行させる。
【０１７７】
そして、装置制御ラッパー部１０２ｄは、フラットベッド（ＦＢ）用の効果音データを読み込み（ステップＳＨ−３）、処理を終了する。
【０１７８】
一方、装置制御ラッパー部１０２ｄは、画像データのスキャン条件がＡＤＦであると判定した場合（ステップＳＨ−２：ＡＤＦ）、処理をステップＳＨ−４に移行させる。
【０１７９】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂに記憶されたＲｅｃデータ（例えば、画像属性情報等）に基づいて、出力させる画像データが表面か否かを判定する（ステップＳＨ−４）。
【０１８０】
そして、装置制御ラッパー部１０２ｄは、出力させる画像データが裏面であると判定した場合（ステップＳＨ−４：Ｎｏ）、処理をステップＳＨ−５に移行させる。
【０１８１】
そして、装置制御ラッパー部１０２ｄは、ＡＤＦ裏面用の効果音データを読み込み（ステップＳＨ−５）、処理を終了する。
【０１８２】
一方、装置制御ラッパー部１０２ｄは、出力させる画像データが表面であると判定した場合（ステップＳＨ−４：Ｙｅｓ）、処理をステップＳＨ−６に移行させる。
【０１８３】
そして、装置制御ラッパー部１０２ｄは、ＡＤＦ表面用の効果音データを読み込み（ステップＳＨ−６）、処理を終了する。
【０１８４】
ここで、図１７に示すように、装置制御ラッパー部１０２ｄは、ＡＤＦ表面用の効果音データを読み込んだ場合、スキャナ装置２００の読取時の動作（例えば、読取順等）に対応させて、スキャン画像データを入出力部１１２に表示させ、且つ、スキャナ装置２００の動作（１枚目原稿、２枚目原稿、および、３枚目原稿の表面読取）に対応するＡＤＦ表面用の効果音データを入出力部１１２を介して音声出力させてもよい。
【０１８５】
このように、本実施形態においては、効果音を再生させることにより、デモンストレーションの臨場感を向上し、ユーザのデモンストレーションに対する印象を向上させることができる。
【０１８６】
図１４に戻り、装置制御ラッパー部１０２ｄは、装置（詳細）状態情報に基づいて、スキャナ装置２００に接続されていない環境で、画像データを入出力部１１２を介して出力（表示）させる（ステップＳＦ−８）。
【０１８７】
そして、装置制御ラッパー部１０２ｄは、動作情報に基づいて、最終画像情報設定処理を実行する（ステップＳＦ−９）。すなわち、装置制御ラッパー部１０２ｄは、動作情報の設定内容に従い、スキャンスルーまたはスキャンエンドレスの設定に合わせた最終画像通知を実行してもよい。
【０１８８】
［最終画像情報設定処理］
ここで、図１８乃至図２４を参照して、本実施形態における最終画像情報設定処理の一例を説明する。図１８は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【０１８９】
図１８に示すように、装置制御ラッパー部１０２ｄは、動作情報ファイル１０６ａに記憶された動作情報に基づいて、Ｐｌａｙ（詳細）設定（例えば、再生モード等）を確認する（ステップＳＩ−１）。
【０１９０】
そして、装置制御ラッパー部１０２ｄは、再生モードが通常であると確認した場合（ステップＳＩ−１：通常）、処理をステップＳＩ−２に移行させる。
【０１９１】
そして、装置制御ラッパー部１０２ｄは、通常エミュレーション処理を実行し（ステップＳＩ−２）、処理を終了する。
【０１９２】
［通常エミュレーション処理］
ここで、図１９および図２０を参照して、本実施形態における通常エミュレーション処理の一例について説明する。図１９は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。図２０は、本実施形態の通常エミュレーション処理の一例を示す図である。
【０１９３】
図１９に示すように、装置制御ラッパー部１０２ｄは、出力させる画像データがスキャン最終画像データ、すなわち、画像読取時にスキャナ装置２００の原稿台にセットされた用紙の最後の１枚に関する画像データであるか否かを判定する（ステップＳＪ−１）。
【０１９４】
そして、装置制御ラッパー部１０２ｄは、出力させる画像データがスキャン最終画像データではないと判定した場合（ステップＳＪ−１：Ｎｏ）、処理を終了する。
【０１９５】
一方、装置制御ラッパー部１０２ｄは、出力させる画像データがスキャン最終画像データであると判定した場合（ステップＳＪ−１：Ｙｅｓ）、処理をステップＳＪ−２に移行させる。
【０１９６】
そして、装置制御ラッパー部１０２ｄは、出力させる画像データを最終画像情報として設定し（ステップＳＪ−２）、処理を終了する。
【０１９７】
図２０に示すように、用紙１３、および、用紙２３が、画像読取時にスキャナ装置２００の原稿台にセットされた用紙の最後の１枚（原稿台が空になる直前の用紙）に該当し、用紙２１が、原稿台に再度用紙がセットされて画像読取が再開される際にスキャンされる用紙に該当する。
【０１９８】
そこで、装置制御ラッパー部１０２ｄは、１回の休止をはさんで２回の画像読取がスキャナ装置２００により行われている場合において、用紙１３および用紙２３に関する画像データを最終画像情報として設定する。
【０１９９】
そして、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、実際のスキャナ装置２００による画像読取に対応させて用紙１１、用紙１２および用紙１３に関する画像データを順番に入出力部１１２に表示させ、原稿台に再度用紙がセットされて画像読取が再開される迄の休止動作に対応させて出力休止処理（例えば、用紙無を入出力部１１２を介して通知等）をさせる。
【０２００】
そして、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、実際のスキャナ装置２００による画像読取（スキャン再開）に対応させて用紙２１、用紙２２および用紙２３に関する画像データを順番に入出力部１１２に表示させて、エミュレーション処理を終了させる。
【０２０１】
このように、本実施形態においては、個々の画像データの管理を行うことなく、疑似スキャナ装置の動作を簡単に再現でき、且つ、スキャナ装置２００の詳細情報などを記録することにより、より再現性の高いデモンストレーションが実施可能となる。
【０２０２】
図１８に戻り、装置制御ラッパー部１０２ｄは、再生モードがスキャンスルーであると確認した場合（ステップＳＩ−１：スキャンスルー）、処理をステップＳＩ−３に移行させる。
【０２０３】
そして、装置制御ラッパー部１０２ｄは、スキャンスルー処理を実行し（ステップＳＩ−３）、処理を終了する。
【０２０４】
［スキャンスルー処理］
ここで、図２１および図２２を参照して、本実施形態におけるスキャンスルー処理の一例について説明する。図２１は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。図２２は、本実施形態のスキャンスルー処理の一例を示す図である。
【０２０５】
図２１に示すように、装置制御ラッパー部１０２ｄは、出力させる画像データがＲｅｃデータ最終画像データ、すなわち、Ｒｅｃデータにおいて、スキャナ装置２００により時系列的に最後に読み取られた画像データであるか否かを判定する（ステップＳＫ−１）。
【０２０６】
そして、装置制御ラッパー部１０２ｄは、出力させる画像データがＲｅｃデータ最終画像データではないと判定した場合（ステップＳＫ−１：Ｎｏ）、処理を終了する。
【０２０７】
一方、装置制御ラッパー部１０２ｄは、出力させる画像データがＲｅｃデータ最終画像データであると判定した場合（ステップＳＫ−１：Ｙｅｓ）、処理をステップＳＫ−２に移行させる。
【０２０８】
そして、装置制御ラッパー部１０２ｄは、出力させる画像データを最終画像情報として設定し（ステップＳＫ−２）、処理を終了する。
【０２０９】
図２２に示すように、１回の休止をはさんで２回の画像読取がスキャナ装置２００により行われている場合において、用紙２３に関する画像データが、Ｒｅｃデータにおいて、スキャナ装置２００により時系列的に最後に読み取られた画像データに該当する。
【０２１０】
そこで、装置制御ラッパー部１０２ｄは、用紙２３に関する画像データを最終画像情報として設定してもよい。そして、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、実際のスキャナ装置２００による画像読取に対応させて用紙１１、用紙１２および用紙１３に関する画像データを順番に入出力部１１２に表示させる。
【０２１１】
そして、装置制御ラッパー部１０２ｄは、原稿台に再度用紙がセットされて画像読取が再開される迄の休止動作に対応させる出力休止処理（例えば、用紙無を入出力部１１２を介して通知等）をさせずに、スキャン再開後の実際のスキャナ装置２００による画像読取に対応させて用紙２１、用紙２２および用紙２３に関する画像データを順番に入出力部１１２に表示させて、エミュレーション処理を終了させる。
【０２１２】
これにより、本実施形態においては、出力途中で用紙なし等が通知されないため、スキャン処理が継続しているようにエミュレーション処理がされる。
【０２１３】
このように、本実施形態においては、スキャンスルー機能を実装することにより、デモンストレーションデータの作製が容易となる。
【０２１４】
図１８に戻り、装置制御ラッパー部１０２ｄは、再生モードがスキャンエンドレスであると確認した場合（ステップＳＩ−１：スキャンエンドレス）、処理をステップＳＩ−４に移行させる。
【０２１５】
そして、装置制御ラッパー部１０２ｄは、スキャンエンドレス処理を実行し（ステップＳＩ−４）、処理を終了する。
【０２１６】
［スキャンエンドレス処理］
ここで、図２３および図２４を参照して、本実施形態におけるスキャンエンドレス処理の一例について説明する。図２３は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。図２４は、本実施形態のスキャンエンドレス処理の一例を示す図である。
【０２１７】
図２３に示すように、装置制御ラッパー部１０２ｄは、出力させる画像データがＲｅｃデータ最終画像データ、すなわち、Ｒｅｃデータにおいて、スキャナ装置２００により時系列的に最後に読み取られた画像データであるか否かを判定する（ステップＳＬ−１）。
【０２１８】
そして、装置制御ラッパー部１０２ｄは、出力させる画像データがＲｅｃデータ最終画像データではないと判定した場合（ステップＳＬ−１：Ｎｏ）、処理を終了する。
【０２１９】
一方、装置制御ラッパー部１０２ｄは、出力させる画像データがＲｅｃデータ最終画像データであると判定した場合（ステップＳＬ−１：Ｙｅｓ）、処理をステップＳＬ−２に移行させる。
【０２２０】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃデータの（時系列的に）先頭画像データを次出力画像データとして設定し（ステップＳＬ−２）、処理を終了する。
【０２２１】
図２４に示すように、１回の休止をはさんで２回の画像読取がスキャナ装置２００により行われている場合において、用紙２３に関する画像データが、Ｒｅｃデータにおいて、スキャナ装置２００により時系列的に最後に読み取られた画像データに該当する。
【０２２２】
そこで、装置制御ラッパー部１０２ｄは、用紙１１に関する画像データを次出力画像データとして設定してもよい。そして、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、実際のスキャナ装置２００による画像読取に対応させて用紙１１、用紙１２および用紙１３に関する画像データを順番に入出力部１１２に表示させる。
【０２２３】
そして、装置制御ラッパー部１０２ｄは、原稿台に再度用紙がセットされて画像読取が再開される迄の休止動作に対応させる出力休止処理（例えば、用紙無を入出力部１１２を介して通知等）をさせずに、スキャン再開後の実際のスキャナ装置２００による画像読取に対応させて用紙２１、用紙２２および用紙２３に関する画像データを順番に入出力部１１２に表示させる。
【０２２４】
そして、装置制御ラッパー部１０２ｄは、エミュレーション処理を終了させずに、用紙１１乃至用紙２３に関する画像データの出力を繰り返し実行する。
【０２２５】
これにより、本実施形態においては、出力途中で用紙なし等が通知されず、Ｒｅｃデータの終端に達したら先頭画像に戻るため、スキャン処理が無限に継続しているようにエミュレーション処理がされる。
【０２２６】
このように、本実施形態においては、スキャンエンドレス機能を実装することにより、簡単にアプリケーションの連続動作が可能となる。
【０２２７】
すなわち、本実施形態においては、仮想スキャナ装置の動作において、実際のスキャナ装置２００では実現できない疑似連続スキャンを再現している。
【０２２８】
図１４に戻り、装置制御ラッパー部１０２ｄは、動作情報に基づいて、スキャンスピード調整処理を実行し（ステップＳＦ−１０）、処理を終了する。すなわち、装置制御ラッパー部１０２ｄは、動作情報の設定内容に従い、Ｒｅｃデータの時刻情報を元にスキャンスピードの調整を実行してもよい。
【０２２９】
［スキャンスピード調整処理］
ここで、図２５および図２６を参照して、本実施形態におけるスキャンスピード調整処理の一例について説明する。図２５は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。図２６は、本実施形態のスキャンスピード調整処理の一例を示す図である。
【０２３０】
図２５に示すように、装置制御ラッパー部１０２ｄは、動作情報ファイル１０６ａに記憶された動作情報に設定されている内容（例えば、スキャンスピード調整等）に基づいて、画像データ出力のスピード調整をするか否かを判定する（ステップＳＭ−１）。
【０２３１】
そして、装置制御ラッパー部１０２ｄは、スピード調整しないと判定した場合（ステップＳＭ−１：Ｎｏ）、処理をステップＳＭ−６に移行させる。
【０２３２】
一方、装置制御ラッパー部１０２ｄは、スピード調整すると判定した場合（ステップＳＭ−１：Ｙｅｓ）、処理をステップＳＭ−２に移行させる。
【０２３３】
そして、装置制御ラッパー部１０２ｄは、装置情報フォルダ１０６ｂに記憶されたＲｅｃデータに基づいて、前画像データ出力時間と、現画像データ出力時間と、から経過時間を算出する（ステップＳＭ−２）。
【０２３４】
そして、装置制御ラッパー部１０２ｄは、前画像データ出力の終了時刻と現在時刻とから実際の経過時間を算出する（ステップＳＭ−３）。
【０２３５】
そして、装置制御ラッパー部１０２ｄは、ステップＳＭ−２にて算出したＲｅｃデータの経過時間から、ステップＳＭ−３にて算出した実際の経過時間を引いた値が、所定の閾値より大きいか否かを判定する（ステップＳＭ−４）。
【０２３６】
そして、装置制御ラッパー部１０２ｄは、所定の閾値以下と判定した場合（ステップＳＭ−４：Ｎｏ）、処理をステップＳＭ−６に移行させる。
【０２３７】
一方、装置制御ラッパー部１０２ｄは、所定の閾値より大きいと判定した場合（ステップＳＭ−４：Ｙｅｓ）、処理をステップＳＭ−５に移行させる。
【０２３８】
そして、装置制御ラッパー部１０２ｄは、Ｒｅｃデータの経過時間と実際の経過時間の時間差の時間、エミュレーション処理を進行させずに停止（例えば、表示を変更させない等）し（ステップＳＭ−５）、処理をステップＳＭ−６に移行させる。
【０２３９】
そして、装置制御ラッパー部１０２ｄは、現画像データ出力の終了時刻を記録し（ステップＳＭ−６）、処理を終了する。
【０２４０】
ここで、図２６上図には、スキャナ装置２００による実際の画像読取時における、スキャンスピード（開始からの経過時間）が示してある。
【０２４１】
そして、図２６下図に示すように、装置制御ラッパー部１０２ｄは、装置状態情報に基づいて、図２６上図に示す実際の読取動作のスピードに同期させずに、画像データを入出力部１１２に表示させてもよい。
【０２４２】
すなわち、図２６下図に示すように、スキャナデモンストレータ１００におけるスキャンスピード非同期機能においては、用紙１裏面から用紙２表面の実際の経過時間：０．３秒間を待たずに、０．１秒で画像データの出力をするように変更させてもよい。
【０２４３】
また、図２６下図に示すように、スキャナデモンストレータ１００におけるスキャンスピード非同期機能においては、用紙２裏面から用紙３表面の実際の経過時間：０．３秒間を待たずに、０．１秒で画像データの出力をするように変更させてもよい。
【０２４４】
ここで、図２７を参照して、本実施形態における動作情報設定ツールを利用したＰｌａｙモード実行の一例について説明する。図２７は、本実施形態の動作情報設定ツールを利用したＰｌａｙモード実行時の画面の一例を示す図である。
【０２４５】
図２７に示すように、ユーザにより入出力部１１２を介してＲｅｃデータが格納されているフォルダ（装置情報フォルダ１０６ｂ）が指定され、Ｐｌａｙボタンが押下された場合（ステップＳＮ−１）、スキャナデモンストレータ１００は、Ｐｌａｙモード処理を開始する（ステップＳＮ−２）。
【０２４６】
そして、スキャナデモンストレータ１００は、スキャナ装置２００が未接続でも、Ｒｅｃデータ採取時のスキャナ装置２００（仮想装置）が使用可能となり、ユーザにより入出力部１１２を介して仮想装置が選択された場合（ステップＳＮ−３）、スキャナ装置２００のデモンストレーション処理が実施される（ステップＳＮ−４）。
【０２４７】
そして、スキャナ装置２００にてデモンストレーション処理終了後、ユーザにより入出力部１１２を介してＳｔｏｐボタンが押下された場合（ステップＳＮ−５）、スキャナデモンストレータ１００は、Ｐｌａｙモードを停止する（ステップＳＮ−６）。
【０２４８】
ここで、図２７に示すように、スキャナデモンストレータ１００は、スキャナ装置名に付加される番号を指定するためのボタン（ＤＳ  Ｓｕｂ  Ｎｏ．）、スキャンスルーを設定するためのチェックボックス（Ｓｃａｎ  Ｔｈｒｏｕｇｈ）、スキャンエンドレスを設定するためのチェックボックス（Ｓｃａｎ  Ｅｎｄｌｅｓｓ）、スキャン速度の実際のスキャナ装置２００との同期を設定するためのチェックボックス（Ｉｍｉｔａｔｅ  Ｓｃａｎ  Ｓｐｅｅｄ）、効果音を設定するためのチェックボックス（Ｓｏｕｎｄ  ｏｆ  Ｓｃａｎｎｉｎｇ）、格納されているスキャン画像に新たなスキャン画像を追加するためのボタン（Ａｄｄ）、スキャン画像を削除するためのボタン（Ｃｌｅａｒ）、および、Ｐｌａｙモードの実行を指示するためのボタン（Ｐｌａｙ）を、Ｐｌａｙモード実行時の概要情報として表示させている。
【０２４９】
このように、本実施形態においては、Ｒｅｃデータへのデータ追加機能（既存のＲｅｃデータへの新たなスキャンデータの追加機能）を有することにより、簡単にデモンストレーションデータの作成が可能となる。
【０２５０】
なお、本実施形態において、装置制御ラッパー部１０２ｄは、装置ＲＯＭ情報、装置（詳細）状態情報、装置統計情報、および、画像データの取得の場合、Ｒｅｃデータに記録されたファイル情報を元に当該ファイルを読み込み、スキャナドライバに通知してもよい。
【０２５１】
［テストプログラム処理］
最後に、図２８を参照して、本実施形態におけるテストプログラム処理の一例について説明する。図２８は、本実施形態のスキャナデモンストレータ１００における処理の一例を示すフローチャートである。
【０２５２】
図２８に示すように、テストアプリケーション部１０２ｆは、プロファイル対応表１０６ｄに基づいて、登録されているプロファイルとＲｅｃデータとの組合せを実行順序情報を基にソートする（ステップＳＯ−１）。
【０２５３】
そして、テストアプリケーション部１０２ｆは、登録されているプロファイルとＲｅｃデータとの組合せが有効か否かを判定する（ステップＳＯ−２）。
【０２５４】
そして、テストアプリケーション部１０２ｆは、登録されているプロファイルとＲｅｃデータとの組合せが無効であると判定した場合（ステップＳＯ−２：Ｎｏ）、登録されている組み合わせが残っていれば、処理をステップＳＯ−２に移行させ、登録されている組み合わせがなければ、処理を終了する。
【０２５５】
一方、テストアプリケーション部１０２ｆは、登録されているプロファイルとＲｅｃデータとの組合せが有効であると判定した場合（ステップＳＯ−２：Ｙｅｓ）、処理をステップＳＯ−３に移行させる。
【０２５６】
そして、テストアプリケーション部１０２ｆは、スキャナドライバで指定のプロファイルへ切換える（ステップＳＯ−３）。すなわち、テストアプリケーション部１０２ｆは、スキャナドライバの設定を保持するプロファイルをスキャナドライバに設定してもよい。
【０２５７】
そして、テストアプリケーション部１０２ｆは、ＤｅｍｏＭｏｄｅの設定を行う（ステップＳＯ−４）。すなわち、テストアプリケーション部１０２ｆは、プロファイルに関連付けられているＲｅｃデータをＰｌａｙモードで使用するように、動作情報設定部（動作情報設定ツール）１０２ａに動作情報の設定を行わせる。
【０２５８】
そして、テストアプリケーション部１０２ｆは、スキャナ装置２００にスキャン処理を実行させ、取得した画像データを所定のフォルダに格納し（ステップＳＯ−５）、登録されている組み合わせが残っていれば、処理をステップＳＯ−２に移行させ、登録されている組み合わせがなければ、処理を終了する。
【０２５９】
このように、本実施形態においては、スキャナ装置２００の詳細情報などを記録することにより、より再現性の高いテストが実施可能となり、スキャナ装置２００を使用した動作テストを、自動実行することが可能となる。
【０２６０】
また、本実施形態のスキャンテストにおいて、スキャンエンドレス機能を実装することにより、簡単にアプリケーションの連続動作における、負荷テストが可能となる。
【０２６１】
また、本実施形態のスキャンテストにおいて、スキャンスピード非同期機能を実装することにより、論理上の最高速でスキャン動作をシミュレーションすることができ、上位ドライバ、または、アプリケーションの負荷テストが簡単に実施可能となる。
【０２６２】
また、本実施形態においては、Ｒｅｃデータとスキャナ設定（プロファイル）とを連携させることにより、より多くのパターンのテストの自動化が行える。
【０２６３】
すなわち、本実施形態においては、仮想スキャナ装置の動作において、様々なスキャナ装置２００を接続することなく、疑似動作させられるため、スキャナのプロファイルとＲｅｃデータとの関連付けに基づいて、自動で、様々な設定のスキャンテストが実施できる。
【０２６４】
また、本実施形態において、テストアプリケーション部１０２ｆは、装置制御部１０２ｃから画像データを取得し、ユーザアプリケーションの設定に基づき、画像処理およびファイル格納を、スキャナドライバ部１０２ｂのテストにおいて、さまざまなプロファイル（スキャナの読取り設定）と、Ｐｌａｙモードで使用する記録データと、を関連付け、自動でそれぞれを切換えながら様々なパターンの動作テストを行うテストアプリケーションを実行してもよい。
【０２６５】
以上のように、本実施形態においては、スキャナ装置２００を使用して事前にデモンストレーションやテストを実施し、その際の画像データおよび装置状態情報を採取し、特定フォルダに保存するＲｅｃモードを備えている。
【０２６６】
そして、本実施形態においては、Ｒｅｃモードを使用することにより、これまで煩雑な作業であった、画像データの採取および管理が簡単に行えるようにしている。
【０２６７】
また、本実施形態においては、既存のＲｅｃデータに新たにスキャン結果を追加する機能も備え、簡単なデモンストレーションデータの準備を可能としている。
【０２６８】
これにより、本実施形態においては、スキャンした画像データの採取および管理の煩雑さを解消し、且つ、装置状態情報の採取および利用により、特定のスキャナ装置２００でしか実施できなかった機能の実施が仮想スキャナ装置で疑似的にできるようになっている。
【０２６９】
また、本実施形態においては、Ｒｅｃモードで採取された画像データと装置状態情報とに基づいて、疑似スキャナ装置を作成し、この疑似スキャナ装置から本当のスキャナ装置２００と同様の画像出力を実現するＰｌａｙモードを備えている。
【０２７０】
そして、本実施形態においては、装置状態情報の採取により、より再現性の高いデモンストレーションが行えるようにしている。
【０２７１】
これにより、本実施形態においては、スキャナ装置２００は多数の機種があり、機種毎に実施可能な機能が異なるため、特定機種のデモンストレーションを行う場合、デモンストレーションに適合するスキャナ装置の準備が必要であったという、従来の課題を解決している。
【０２７２】
また、本実施形態においては、スキャナ装置２００から得られる画像データは、スキャン処理毎に、搬送時の用紙の歪み、外光、ならびに、ローラーおよびレンズの汚れなどの要因により微妙に異なるものとなることにより、画像処理結果が異なる場合があり、実施内容によってはデモンストレーション時に常に安定した結果が得られないという、従来の課題を解決することで、従来よりもデモンストレーション時に安定した結果が得られるようになっている。
【０２７３】
また、本実施形態におけるＰｌａｙモードでのデモンストレーションでは、スキャナ装置２００のスキャン速度を実際のスキャナ装置２００の動作性能に一致させるスキャンスピード同期機能を備えている。
【０２７４】
また、本実施形態においては、スキャナ装置２００の動作の効果音を再生することにより、より臨場感のあるデモンストレーションが実施できるようにしている。
【０２７５】
このように、本実施形態においては、スキャナ動作音の再生を行い、仮想スキャナ装置の動作を、実際のスキャナ装置２００の動作スピードに調整することで、より臨場感のあるデモンストレーションができる。
【０２７６】
これにより、本実施形態においては、疑似スキャナドライバによりデモンストレーションを行った場合であっても、デモンストレーションを見る側に、単純に画像イメージが表示されるだけという印象を与えないようにすることができるようになっている。
【０２７７】
さらに、本実施形態においては、スキャナ装置２００を使用したドライバやアプリケーションのテスト向けとして、Ｒｅｃモードで採取した画像データを指定回数、または、無限に繰り返し出力し、連続動作テストが自動で行える機能を備えている。
【０２７８】
また、本実施形態においては、Ｒｅｃモードで採取した画像データおよび装置状態情報と、スキャン設定ファイルと、を関連付けし、自動実行する機能を提供することにより、より多くのスキャン設定のテストの自動実行を可能としている。
【０２７９】
これにより、本実施形態においては、ＡＤＦを持つスキャナ装置２００のテストを行う場合であっても、実機を使わないため、テスト前にスキャナ装置２００のＡＤＦに用紙をセットする必要もなく、連続運転テスト、または、テスト自体の自動化ができるようになっている。
【０２８０】
また、近年、スキャナ装置２００単体の機能強化以上に、ドライバ、アプリケーション（ソフトウェア）の機能強化が多くなり、ソフトウェアを中心としたデモンストレーションも重要となっているが、本実施形態においては、スキャナ装置２００を使用したデモンストレーションの場合、スキャナ装置２００への興味が多くなり、十分にソフトウェア機能をアピールできないという、従来の課題を解決している。
【０２８１】
［他の実施形態］
さて、これまで本発明の実施形態について説明したが、本発明は、上述した実施形態以外にも、請求の範囲に記載した技術的思想の範囲内において種々の異なる実施形態にて実施されてよいものである。
【０２８２】
例えば、スキャナデモンストレータ１００は、スタンドアローンの形態で処理を行ってもよく、クライアント端末（スキャナデモンストレータ１００とは別筐体である）からの要求に応じて処理を行い、その処理結果を当該クライアント端末に返却するようにしてもよい。
【０２８３】
また、実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。
【０２８４】
このほか、明細書中および図面中で示した処理手順、制御手順、具体的名称、各処理の登録データもしくは検索条件等のパラメータを含む情報、画面例、または、データベース構成については、特記する場合を除いて任意に変更することができる。
【０２８５】
また、スキャナデモンストレータ１００、および、スキャナ装置２００に関して、図示の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
【０２８６】
例えば、スキャナデモンストレータ１００、および、スキャナ装置２００の各装置が備える処理機能、特に制御部１０２にて行われる各処理機能については、その全部または任意の一部を、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）および当該ＣＰＵにて解釈実行されるプログラムにて実現してもよく、また、ワイヤードロジックによるハードウェアとして実現してもよい。尚、プログラムは、後述する、コンピュータに本発明に係る方法を実行させるためのプログラム化された命令を含む、一時的でないコンピュータ読み取り可能な記録媒体に記録されており、必要に応じてスキャナデモンストレータ１００に機械的に読み取られる。すなわち、ＲＯＭまたはＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの記憶部１０６などには、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）と協働してＣＰＵに命令を与え、各種処理を行うためのコンピュータプログラムが記録されている。このコンピュータプログラムは、ＲＡＭにロードされることによって実行され、ＣＰＵと協働して制御部を構成する。
【０２８７】
また、このコンピュータプログラムは、スキャナデモンストレータ１００、および、スキャナ装置２００に対して任意のネットワークを介して接続されたアプリケーションプログラムサーバに記憶されていてもよく、必要に応じてその全部または一部をダウンロードすることも可能である。
【０２８８】
また、本発明に係るプログラムを、コンピュータ読み取り可能な記録媒体に格納してもよく、また、プログラム製品として構成することもできる。ここで、この「記録媒体」とは、メモリーカード、ＵＳＢメモリ、ＳＤカード、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、および、Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ等の任意の「可搬用の物理媒体」を含むものとする。
【０２８９】
また、「プログラム」とは、任意の言語や記述方法にて記述されたデータ処理方法であり、ソースコードやバイナリコード等の形式を問わない。なお、「プログラム」は必ずしも単一的に構成されるものに限られず、複数のモジュールやライブラリとして分散構成されるものや、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）に代表される別個のプログラムと協働してその機能を達成するものをも含む。なお、実施形態に示した各装置において記録媒体を読み取るための具体的な構成、読み取り手順、あるいは、読み取り後のインストール手順等については、周知の構成や手順を用いることができる。
【０２９０】
記憶部１０６に格納される各種のデータベース等（動作情報ファイル１０６ａ、装置情報フォルダ１０６ｂ、プロファイルデータベース１０６ｃ、および、プロファイル対応表１０６ｄ）は、ＲＡＭもしくはＲＯＭ等のメモリ装置、ハードディスク等の固定ディスク装置、フレキシブルディスク、および／または、光ディスク等のストレージ手段であり、各種処理やウェブサイト提供に用いる各種のプログラム、テーブル、データベース、および／または、ウェブページ用ファイル等を格納してもよい。
【０２９１】
また、スキャナデモンストレータ１００は、既知のパーソナルコンピュータ、ワークステーション等の情報処理装置として構成してもよく、また、該情報処理装置に任意の周辺装置を接続して構成してもよい。また、スキャナデモンストレータ１００は、該情報処理装置に本発明の方法を実現させるソフトウェア（プログラム、データ等を含む）を実装することにより実現してもよい。
【０２９２】
更に、装置の分散・統合の具体的形態は図示するものに限られず、その全部または一部を、各種の付加等に応じて、または、機能負荷に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。すなわち、上述した実施形態を任意に組み合わせて実施してもよく、実施形態を選択的に実施してもよい。
【産業上の利用可能性】
【０２９３】
以上のように、スキャナ装置を準備しなくても、簡単に高い再現性の臨場感のあるデモンストレーションの実施を可能とするスキャナデモンストレータ、スキャナデモンストレート方法、および、プログラムは、産業上の多くの分野、特にスキャナまたはカメラで読み込んだ画像を扱う画像処理分野で実施することができ、極めて有用である。
【符号の説明】
【０２９４】
１００  スキャナデモンストレータ
１０２  制御部
１０２ａ  動作情報設定部
１０２ｂ  スキャナドライバ部
１０２ｃ  装置制御部
１０２ｄ  装置制御ラッパー部
１０２ｅ  装置制御主処理部
１０２ｆ  テストアプリケーション部
１０４  通信インターフェース部
１０６  記憶部
１０６ａ  動作情報ファイル
１０６ｂ  装置情報フォルダ
１０６ｃ  プロファイルデータベース
１０６ｄ  プロファイル対応表
１０８  入出力インターフェース部
１１２  入出力部
２００  スキャナ装置
３００  ネットワーク
【要約】
【課題】スキャナ装置を準備しなくても、簡単に高い再現性の臨場感のあるデモンストレーションの実施を可能とするスキャナデモンストレータ、スキャナデモンストレート方法、および、プログラムを提供することを課題とする。
【解決手段】本発明は、画像読取時におけるスキャナ装置の装置状態情報に基づいて、スキャナ装置に接続されていない環境で、スキャナ装置にて読み取られた画像データを出力させる。
【選択図】図１４【図１】
0005855729.tif 000002
【図２】
0005855729.tif 000003
【図３】
0005855729.tif 000004
【図４】
0005855729.tif 000005
【図５】
0005855729.tif 000006
【図６】
0005855729.tif 000007
【図７】
0005855729.tif 000008
【図８】
0005855729.tif 000009
【図９】
0005855729.tif 000010
【図１０】
0005855729.tif 000011
【図１１】
0005855729.tif 000012
【図１２】
0005855729.tif 000013
【図１３】
0005855729.tif 000014
【図１４】
0005855729.tif 000015
【図１５】
0005855729.tif 000016
【図１６】
0005855729.tif 000017
【図１７】
0005855729.tif 000018
【図１８】
0005855729.tif 000019
【図１９】
0005855729.tif 000020
【図２０】
0005855729.tif 000021
【図２１】
0005855729.tif 000022
【図２２】
0005855729.tif 000023
【図２３】
0005855729.tif 000024
【図２４】
0005855729.tif 000025
【図２５】
0005855729.tif 000026
【図２６】
0005855729.tif 000027
【図２７】
0005855729.tif 000028
【図２８】
0005855729.tif 000029