(57)【要約】【課題】アプリケーションの処理負荷の軽減を小規模のハードウェアで可能とする。【解決手段】ドライバは、入力情報を入力装置から取得したとき、入力ＩＤと該入力ＩＤに対応する入力情報と該入力ＩＤの成立条件との対応関係を示す対応データをアプリケーションに問い合わせる。そして、該対応データに基づいて入力情報に対応する入力ＩＤを取得し、該入力ＩＤに対応する成立条件に基づいて該入力ＩＤをアプリケーションに出力する。アプリケーションは、ドライバからの問い合わせに応じて該アプリケーションが現在受付可能な入力ＩＤについての対応データを応答する。【選択図】図４
2010097352.tif 000002
【特許請求の範囲】
【請求項１】
処理状態に応じて受付可能な入力ＩＤが変動するアプリケーションと、入力装置から取得した入力情報に応じた入力ＩＤを前記アプリケーションへ出力するドライバとを備える情報処理装置であって、
前記ドライバは、
前記入力情報を前記入力装置から取得したとき、前記入力ＩＤと該入力ＩＤに対応する前記入力情報と該入力ＩＤの成立条件との対応関係を示す対応データを前記アプリケーションに問い合わせる問合手段と、
前記対応データに基づいて前記入力情報に対応する前記入力ＩＤを取得し、該入力ＩＤに対応する前記成立条件に基づいて該入力ＩＤを前記アプリケーションに出力する出力手段とを具備し、
前記アプリケーションは、
前記ドライバからの問い合わせに応じて該アプリケーションが現在受付可能な前記入力ＩＤについての前記対応データを応答する応答手段と、
前記ドライバから出力された前記入力ＩＤを受け付け、該入力ＩＤに応じた処理を実行する実行手段とを具備することを特徴とする情報処理装置。
【請求項２】
前記入力装置にはタッチパネルが含まれ、
前記応答手段は前記タッチパネルに現在表示している画面が受付可能な操作に対応する前記入力ＩＤについての前記対応データを応答することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記問合手段は、複数の時刻にわたり前記入力情報を前記入力装置から取得するとともに、
前記成立条件は、前記入力ＩＤが最初に取得されたときの該入力ＩＤの出力可否を指定する情報を含むことを特徴とする請求項１または請求項２のいずれかに記載の情報処理装置。
【請求項４】
前記成立条件は、前記入力ＩＤが連続して取得される期間の最後における該入力ＩＤの出力可否を指定する情報を含むことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記成立条件は、前記入力ＩＤが連続して取得される期間中の所定周期における該入力ＩＤの出力可否を指定する情報を含むことを特徴とする請求項３または請求項４のいずれか一項に記載の情報処理装置。
【請求項６】
前記タッチパネルには表示内容に定型性を有さない第１領域と該定型性を有する第２領域とが設けられ、
前記ドライバは、前記第１領域に関する前記入力情報を取得したとき前記問合手段により前記対応データを前記アプリケーションに問い合わせるとともに、前記第２領域に関する前記入力情報を取得したとき自己が有するデータに基づいて該入力情報に対応する前記入力ＩＤを前記アプリケーションに出力することを特徴とする請求項２から請求項５のいずれか一項に記載の情報処理装置。
【請求項７】
処理状態に応じて受付可能な入力ＩＤが変動するアプリケーションと、入力装置から取得した入力情報に応じた入力ＩＤを前記アプリケーションへ出力するドライバとを用いた情報処理方法であって、
前記ドライバは、
前記入力情報を前記入力装置から取得したとき、前記入力ＩＤと該入力ＩＤに対応する前記入力情報と該入力ＩＤの成立条件との対応関係を示す対応データを該アプリケーションに問い合わせ、
前記前記対応データに基づいて前記入力情報に対応する前記入力ＩＤを取得し、該入力ＩＤに対応する前記成立条件に基づいて該入力ＩＤを前記アプリケーションに出力するとともに、
前記アプリケーションは、
前記ドライバからの問い合わせに応じて該アプリケーションが現在受付可能な前記入力ＩＤについての前記対応データを応答し、
前記ドライバから出力された前記入力ＩＤを受け付け、該入力ＩＤに応じた処理を実行することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
例えばプリンタやスキャナ等の情報処理装置において、タッチパネル等の入力装置に対する入力操作に応じて、アプリケーション等のソフトウェアを動作させている。そのためには、入力装置のハードウェアが生成した電気信号をソフトウェアで認識可能なデータ（入力ＩＤ）に変換するインターフェイスが必要となっている。特許文献１は、このようなインターフェイスについて開示している。特許文献１においては、インターフェイスとしてのパネル制御部がタッチパネルから得られたタッチ座標情報をアプリケーションが認識可能な論理キーに変換し、該論理キーをアプリケーションに出力する。論理キーに変換するにあたっては、パネル制御部が自ら記憶するか、アプリケーションからロードした論理キー変換情報を使用する。この論理キー変換情報においては、アプリケーションがタッチパネル表示させる各画面に対応した論理キーとタッチ座標情報との対応関係がテーブルとして格納されている。かかる構成では、パネル制御部がタッチ座標情報を論理キーに変換するため、アプリケーションの処理負荷を軽減しつつ、タッチパネル仕様変更等に依存しないアプリケーションの汎用性を確保することが可能であった。
【０００３】
【特許文献１】特開平６−２８１０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
近年の情報処理装置の多機能化に応じて、アプリケーションが実行する処理も複雑化し、入力装置にて受け付けられる操作の数が増大している。特に、タッチパネルが表示させる画面の数も増大し、それにともなってタッチパネルが受け付ける操作の数も増大している。そのため、上述した特許文献１では、各画面について論理キーとタッチ座標情報とを格納した論理キー変換情報のデータ量が増大することとなる。すなわち、論理キー変換情報をパネル制御部が自ら記憶したり、アプリケーションからロードしたりするために必要な記憶容量や伝送容量等を多く確保しておかなければならないという問題があった。
本発明は前記課題にかんがみてなされたもので、アプリケーションの処理負荷の軽減を小規模のハードウェアで可能とする情報処理装置および情報処理方法を提供するものである。
【課題を解決するための手段】
【０００５】
本発明の情報処理装置は、処理状態に応じて受付可能な入力ＩＤが変動するアプリケーションと、入力装置から取得した入力情報に応じた入力ＩＤを前記アプリケーションへ出力するドライバとを備える。このような状況において、前記ドライバが備える問合手段は、前記入力情報を前記入力装置から取得したとき、前記入力ＩＤと該入力ＩＤに対応する前記入力情報と該入力ＩＤの成立条件との対応関係を示す対応データを前記アプリケーションに問い合わせる。そして、出力手段は、前記対応データに基づいて前記入力情報に対応する前記入力ＩＤを取得し、該入力ＩＤに対応する前記成立条件に基づいて該入力ＩＤを前記アプリケーションに出力する。かかる構成により、前記入力装置からの前記入力情報に対応する前記入力ＩＤを前記アプリケーションに出力することができ、前記入力装置に対する入力に応じた動作を前記アプリケーションに行わせることができる。
【０００６】
一方、前記アプリケーションが備える応答手段は、前記ドライバからの問い合わせに応じて該アプリケーションが現在受付可能な前記入力ＩＤについての前記対応データを応答する。すなわち、前記アプリケーションから現在受付可能な前記入力ＩＤについての前記対応データが応答されるため、前記ドライバは該アプリケーションが現在受付可能な前記入力ＩＤへの変換を行うことが可能となる。すなわち、処理状態に応じて前記アプリケーションが受付可能な前記入力ＩＤが変動しても、前記ドライバは該アプリケーションが受付可能な前記入力ＩＤを出力することができる。前記アプリケーションが現在受付可能な前記入力ＩＤについての前記対応データが応答され、前記アプリケーションが現在受け付けることができないような前記入力ＩＤについての前記対応データは応答されないため、無駄なデータ伝送や記憶を防止することができる。
【０００７】
前記入力装置の好適な一例としてタッチパネルが挙げられる。この場合、前記アプリケーションが受付可能な前記入力ＩＤは、前記タッチパネルに現在表示している画面が受付可能な操作に対応することとなる。そのため、前記応答手段は、前記タッチパネルに現在表示している画面が受付可能な操作に対応する前記入力ＩＤについての前記対応データを応答すればよい。このようにすることにより、前記タッチパネルが表示する画面の種類が多い場合でも、前記ドライバは該アプリケーションが受付可能な前記入力ＩＤを出力することができる。むろん、前記入力装置は前記タッチパネルに限られるものではない。例えば、文字入力モードごとに異なる文字が割り当てられるキーボードやキーパッドにおいては、前記アプリケーションの処理状態としての文字入力モードに応じた前記対応データを応答すればよい。
【０００８】
また、前記入力装置は複数の時刻にわたって操作されるため、前記問合手段は複数の時間にわたり前記入力情報を前記入力装置から取得することが望ましい。このような場合、どのタイミングで前記入力ＩＤを前記アプリケーションへ出力するかを前記成立条件に基づいて判定するようにしてもよい。例えば、前記成立条件によって、前記入力ＩＤが最初に取得されたときにおける該入力ＩＤの出力可否を指定するようにしてもよい。これにより、入力開始時において前記アプリケーションに応答動作をさせることができる。別の例として、前記入力ＩＤが連続して取得される期間の最後における該入力ＩＤの出力可否を指定するようにしてもよい。これにより、入力終了時において前記アプリケーションに応答動作をさせることができる。さらに別の一例として、同一の前記入力ＩＤが連続して取得される期間の所定周期における該入力ＩＤの出力可否を指定するようにしてもよい。これにより、入力期間中における所定周期ごとに前記アプリケーションに応答動作をさせることができる。
【０００９】
ところで、前記タッチパネルが表示内容に定型性を有さない第１領域と該定型性を有する第２領域からなる場合、該定型性を有する第２領域に対する前記入力情報に対応する前記入力ＩＤの数は限られたものとなる。従って、前記第２領域に対する前記入力情報と前記入力ＩＤとの対応関係を示すデータのデータ量も限られたものとなり、該データを前記ドライバが有していても問題とならない。従って、前記第２領域については、前記ドライバが自ら有するデータに基づいて前記入力情報に対応する前記入力ＩＤを前記アプリケーションに出力すればよい。
【００１０】
さらに、本発明の技術的思想は、具体的な情報処理装置にて具現化されるのみならず、当該装置にて実行される方法において具現化することもできる。すなわち、上述した情報処理装置が具備する各手段が行う処理に対応する工程を行う情報処理方法としても本発明を特定することができる。むろん、上述した情報処理装置がプログラムを読み込んで上述した各手段を実現する場合には、当該各手段に対応する機能を実行させるプログラムや当該プログラムを記録した各種記録媒体においても本発明の技術的思想が具現化できることは言うまでもない。なお、本発明の情報処理装置は、単一の装置のみならず、複数の装置によって分散して存在可能であることはいうまでもない。さらに、情報処理装置が単独で存在しているものに限られず、例えばプリンタやスキャナ等の一部として組み込まれていてもよい。
【発明を実施するための最良の形態】
【００１１】
以下、下記の順序に従って本発明の実施形態を説明する。
１．ハードウェア構成：
２．ソフトウェア構成：
３．入力処理：
【００１２】
１．ハードウェア構成：
図１は、本発明の一実施形態にかかる情報処理装置としてのプリンタ複合機１０（以下、ＳＰＣ１０と表記。）のハードウェアの概略構成を示している。同図において、ＳＰＣ１０は通信バス１０ａを有しており、該通信バス１０ａを介して各構成要素が相互に通信可能に接続されている。ＳＰＣ１０は、ＣＰＵ１１とＲＯＭ１２とＲＡＭ１３とプリンタ部１４とスキャナ部１５とメモリカードＩ／Ｆ１６とＵＳＢＩ／Ｆ１７とタッチパネル１８とスイッチ１９とから構成されている。ＣＰＵ１１はＲＯＭ１２に記憶されたプログラムコードを読み出してプログラム（オペレーティングシステムやアプリケーションやドライバ）を実行する。アプリケーションや各種ドライバの実行に必要なデータやパラメータはＲＡＭ１３に一時記憶される。
【００１３】
本実施形態のプリンタ部１４はインクジェット方式のプリンタメカを有しており、インク滴を印刷データに準じて吐出するキャリッジ機構や印刷用紙のフィードを行う紙送り機構等から構成される。本実施形態のスキャナ部１５はフラットベッド方式であり、原稿台や照明やラインセンサ等から構成される。むろん、プリンタ部１４とスキャナ部１５は以上の構成に限られず他の方式であってもよい。メモリカードＩ／Ｆ１６はメモリカードスロットを有しており、メモリカードスロットに挿入されたメモリカードにアクセスし、データの読み書きを行う。ＵＳＢＩ／Ｆ１７は、ＳＰＣ１０に外部のコンピュータ等を接続するためのインターフェイスを提供する。タッチパネル１８は、液晶パネル１８ａと固定表示パネル１８ｂとタッチセンサ１８ｃとセンサ回路１８ｄとから構成されている。
【００１４】
図２は、タッチパネル１８の構造を示している。液晶パネル１８ａと固定表示パネル１８ｂは互いに長さ（Ｙ方向）が同じとなる矩形平面状に形成されており、互いに面一となるように配置される。本実施形態のタッチセンサ１８ｃは、アナログ抵抗膜方式を採用しており、矩形平面状に形成されている。タッチセンサ１８ｃは、液晶パネル１８ａと固定表示パネル１８ｂの双方を表面側から覆うように、液晶パネル１８ａと固定表示パネル１８ｂに重ね合わされる。センサ回路１８ｄは、センサ回路１８ｃはタッチセンサ１８ｂにおける抵抗変化を計測することにより、指等によってタッチされたタッチセンサ１８ｂの位置の座標（入力情報）を取得する。さらに、センサ回路１８ｃは、タッチされた位置の座標をデジタル信号に変換し、ＣＰＵ１１に出力する。
【００１５】
液晶パネル１８ａは図示しないドライバ回路とバックライトを有している。ＣＰＵ１１から出力される画像データに基づいてドライバ回路が駆動信号を生成し、該駆動信号に基づいて液晶パネル１８ａ上の各画素の液晶素子を駆動させる。各画素の液晶素子を駆動させることにより、バックライトを偏光させ任意のカラー画像を表示する。固定表示パネル１８ｂは、表示板１８ｂ１と複数のＬＥＤ１８ｂ２とから構成されており、各ＬＥＤ１８ｂ２を表面側から覆うように表示板１８ｂ１が取り付けられる。表示板１８ｂ１は全体的に非透光とされているが、一部に透光パターン（抜き文字）を設けることによりＬＥＤ１８ｂ２の光を表面側に透過させる。
【００１６】
透光パターンは文字（＋，−，ＯＫ，戻る）を表しており、各透光パターンに対応する各ＬＥＤ１８ｂ２を点灯させることにより、透光パターンの文字を視認可能とすることができる。タッチセンサ１８ｃは、液晶パネル１８ａ（第１領域）と固定表示パネル１８ｂ（第２領域）の双方を覆うため、液晶パネル１８ａと固定表示パネル１８ｂに対するタッチを検知することができる。スイッチ１９は、機械式スイッチとスイッチ回路とから構成される。スイッチ回路は、機械式スイッチ（電源スイッチ）の操作に応じたデジタル信号を生成し、ＣＰＵ１１に出力する。
【００１７】
２．ソフトウェア構成
図３は、ＣＰＵ１１が実行するプログラムのソフトウェア構成を示している。同図において、ＣＰＵ１１は、オペレーティングシステムＯＳを実行し、該オペレーティングシステムＯＳ上にてアプリケーションＡＰＬと入力ドライバＩＤＲが実行される。オペレーティングシステムＯＳは、アプリケーションＡＰＬと入力ドライバＩＤＲの仲介をなす。アプリケーションＡＰＬは、タッチパネル１８とスイッチ１９によって受け付けられた操作応じて、プリンタ部１４やスキャナ部１５やメモリカードＩ／Ｆ１６やＵＳＢＩ／Ｆ１７を制御する処理を行う。入力ドライバＩＤＲは、タッチパネル１８とスイッチ１９とからなる入力装置と、アプリケーションＡＰＬとの間に介在し、タッチパネル１８やスイッチ１９に対する操作に応じた入力ＩＤをプリケーションＡＰＬに出力する入力処理を実行する。以下、入力処理について説明する。
【００１８】
３．入力処理：
図４は入力ドライバＩＤＲが実行する処理を示し、図５Ａ〜図５ＢはアプリケーションＡＰＬが実行する処理を示している。図４のステップＳ１００においては、入力ドライバＩＤＲがタッチセンサ１８ｃに対するタッチが検出されるまで待機する。タッチセンサ１８ｃはセンサ上のいずれかの位置（点）がタッチされると当該位置の座標を示すデジタル信号をＣＰＵ１１に出力するため、該デジタル信号の受付をもってタッチセンサ１８ｃがタッチされたと判断することができる。タッチセンサ１８ｃのタッチが検出されると、ステップＳ１０５にてタッチ状態をＯＦＦからＯＮに設定し、カウンタ値ｎを０にリセットする。ステップＳ１１０においては、入力ドライバＩＤＲがタッチされた位置を示す座標をデジタル信号に基づいて取得する。ステップＳ１１５においては、取得した座標が液晶パネル１８ａ上であるか固定表示パネル１８ｂ上であるかを判定する。
【００１９】
取得した座標が液晶パネル１８ａ上である場合には、ステップＳ１２０において入力ドライバＩＤＲがアプリケーションＡＰＬに対して対応データＣＤ１の問い合わせを行う（問合手段）。図５Ａに示す応答処理において、アプリケーションＡＰＬは入力ドライバＩＤＲからの問い合わせを受け付ける（ステップＳ２００）。すると、ステップＳ２１０において、アプリケーションＡＰＬは液晶パネル１８ａにおける現在の処理状態を取得し、該処理状態に対応する対応データＣＤ１を取得する。
【００２０】
図６Ａは一例として画質調整メニューを液晶パネル１８ａに表示する処理状態における対応データＣＤ１を示し、図６Ｂは一例として画像選択メニューを液晶パネル１８ａに表示する処理状態における対応データＣＤ１を示している。図６Ａに示すように、画質調整メニューにおいては明るさ調整ボタンＢ１とコントラスト調整ボタンＢ２と彩度調整ボタンＢ３が表示されており、これらのボタンＢ１〜Ｂ３を操作することが可能となっている。画質調整メニューにおける対応データＣＤ１では、各ボタンＢ１〜Ｂ３について固有の入力ＩＤと、タッチセンサ１８ｃにおける各ボタンＢ１〜Ｂ３の表示領域を特定する座標（矩形領域の隅の座標）と、各ボタンＢ１〜Ｂ３についての成立条件とが対応付けられて記憶されている。各入力ＩＤは、互いに固有なデータ（コード）であり、データ形式は特に限定されない。また、アプリケーションＡＰＬは各入力ＩＤの入力をトリガーとして各種処理を実行する。アプリケーションＡＰＬが画質調整メニューを表示する処理状態では、各ボタンＢ１〜Ｂ３に対応する入力ＩＤが受付可能であることを意味する。なお、各ボタンＢ１〜Ｂ３の形状は矩形に限られず、例えば円形であってもよい。この場合、表示領域は中心の座標と直径によって特定することができる。
【００２１】
一方、図６Ｂに示すように、画像選択メニューにおいては上スクロールボタンＢ４と下スクロールボタンＢ５とサムネイル選択ボタンＢ６〜Ｂ１４が表示されており、これらのボタンＢ４〜Ｂ１４を操作することが可能となっている。画像選択メニューにおける対応データＣＤ１においても、各ボタンＢ４〜Ｂ１４について固有の入力ＩＤと、タッチセンサ１８ｃにおける各ボタンＢ４〜Ｂ１４の表示領域を特定する座標と、各ボタンＢ４〜Ｂ１４についての成立条件とが対応付けられて記憶されている。アプリケーションＡＰＬが画像選択メニューを表示する状態では、各ボタンＢ６〜Ｂ１４に対応する入力ＩＤが受付可能であることを意味する。以上のように、アプリケーションＡＰＬが画質調整メニューを表示している処理状態と、画像選択メニューを表示している処理状態は互いに異なっており、それぞれの処理状態において受付可能な入力ＩＤが異なったものとなっている。
【００２２】
アプリケーションＡＰＬは液晶パネル１８ａの表示制御を自ら行っており、アプリケーションＡＰＬはステップＳ２１０において自ら制御する表示状態（処理状態）に対応する対応データＣＤ１を取得することが可能となっている。ステップＳ２２０において、アプリケーションＡＰＬは対応データＣＤ１を入力ドライバＩＤＲに返し、再び、ステップＳ２００にて入力ドライバＩＤＲからの問い合わせを受け付ける。以上のように、アプリケーションＡＰＬは、入力ドライバＩＤＲからの問い合わせを受け付け可能な状態で待機し、問い合わせを受け付けた場合には現在の表示状態に対応する対応データＣＤ１を入力ドライバＩＤＲに応答する（応答手段）。
【００２３】
図５のステップＳ１２０においては、入力ドライバＩＤＲがアプリケーションＡＰＬから対応データＣＤ１を取得する。実体的には、ＲＡＭ１３において入力ドライバＩＤＲのために割り当てられた領域に対応データＣＤ１を記憶させる。このとき、対応データＣＤ１を記憶するためにＲＡＭ１３の一部が占有されるが、対応データＣＤ１はアプリケーションＡＰＬが液晶パネル１８ａに現在表示させている画面に対応するものに限られるため、ＲＡＭ１３の占有量を抑えることができる。ステップＳ１２５においては、入力ドライバＩＤＲがステップＳ１１０にて取得した座標が対応データＣＤ１に定義されたボタンＢの表示領域のいずれかに属するかを特定し、該表示領域に対応する入力ＩＤを取得する。ただし、いずれの表示領域にも属さない場合には、入力ＩＤが取得できないこととなる。ステップＳ１３０においては、入力ＩＤが取得できたか否かを判定し、取得できなかった場合には、ステップＳ１７５にてタッチ状態をＯＦＦに設定し、リターンする。すなわち、有効な領域がタッチされていないとして、次のタッチを待機する（ステップＳ１００）。ステップＳ１７０においては、入力ＩＤに対応する成立条件を対応データＣＤ１から取得する。
【００２４】
ステップＳ１３５においては、現在のタッチ状態が、取得した成立条件を満足するか否かを判定する判定処理を実行する。本実施形態では、ステップＳ１３５以降において、ステップＳ１３５の判定処理を複数の時刻について繰り返して実行するループ処理を行う。ここでは、まずループ処理の全体的な流れを説明し、その後、ステップＳ１３５の判定処理の詳細について説明する。現在のタッチ状態が取得した成立条件を満足する場合（ステップＳ１４０）には、ステップＳ１４５において入力ＩＤをアプリケーションＡＰＬに出力する（出力手段）。図５Ｂに示すようにアプリケーションＡＰＬは入力ＩＤを受け付ける状態で待機しており（ステップＳ３００）、入力ＩＤが受け付けられると、該入力ＩＤに応じた処理をステップＳ３１０にて実行する（実行手段）。例えば、明るさ調整ボタンＢ１に対応する入力ＩＤが入力された場合にはアプリケーションＡＰＬが明るさの調整量が受付可能な処理状態に遷移し、コントラスト調整ボタンＢ２に対応する入力ＩＤが入力された場合にはコントラストの調整量が受付可能な処理状態に遷移する。多くの場合、この処理状態の遷移に応じて液晶パネル１８ａの表示状態やＬＥＤ１８ｂ２の点灯状態が変動することとなり、受付可能な操作に対応する入力ＩＤも変動することとなる。
【００２５】
一方、現在のタッチ状態が、取得した成立条件を満足しない場合には、入力ＩＤをアプリケーションＡＰＬに出力することなく次のステップに進む。ステップＳ１５０においては、タッチ状態がＯＮであるかＯＦＦであるかを判定し、ＯＦＦである場合には処理を終了させる。一方、タッチ状態がＯＮである場合にはステップＳ１５５においてタッチ継続中であるか否かを判定する。入力ドライバＩＤＲは、タッチセンサ１８ｃが現在出力しているデジタル信号を取得し、該デジタル信号が示す座標に対応する入力ＩＤを対応データＣＤ１に基づいて取得する。タッチセンサ１８ｃにおけるいずれの位置もタッチされていない場合や、取得した座標が対応データＣＤ１に定義された表示領域のいずれかにも属さない場合には、入力ＩＤは取得できないこととなる。そして、入力ＩＤが前回取得した入力ＩＤから変動していない場合には、タッチ継続中であると判定する。
【００２６】
すなわち、ステップＳ１５５では、同一のボタンＢが継続的に操作（タッチ）されているか否かが判定される。取得した入力ＩＤが変動したり、入力ＩＤが取得できなくなった場合には、同一のボタンＢが継続的にタッチされていないと判定することができる。同一のボタンＢが継続的にタッチされていないと判定された場合には、ステップＳ１０５においてＯＮに設定されていたタッチ状態をＯＦＦに設定する（ステップＳ１６０）。一方、同一のボタンＢが継続的にタッチされていない場合には、タッチ状態をＯＮにしたままタイマをスタートさせる（ステップＳ１６５）。次の、ステップＳ１７０においては、所定の監視周期Δｔだけ待機した上でカウンタ値ｎに１を加算し、判定処理（ステップＳ１３５）に戻る。
【００２７】
以上のループ処理によれば、同一のボタンＢが継続的にタッチされている限り、タッチ状態がＯＮのまま維持され、監視周期Δｔごとに判定処理（ステップＳ１３５）が繰り返して実行されることとなる。また、カウンタ値ｎは同一のボタンＢのタッチ開始時に０にリセットされ、その後、監視周期Δｔを経過するごとに１ずつ増加していく。一方、同一のボタンＢ１〜Ｂ３が継続的にタッチされなくなると、その段階で、タッチ状態がＯＦＦに設定され、判定処理（ステップＳ１３５）が一度だけ行われ、処理が終了することとなる。次に、判定処理の詳細について説明する。
【００２８】
図６Ａ，図６Ｂにおいては、画質調整メニューと画像選択メニューの各ボタンＢ１〜Ｂ１４についての成立条件を例示したが、本実施形態では下記のイ）〜チ）に示す成立条件を判定することができる。
イ）タッチ状態ＯＮ設定の瞬間に成立
ロ）タッチ状態ＯＮ設定からｍ秒後までタッチ状態ＯＮが継続したとき成立
ハ）タッチ状態ＯＮの継続期間中におけるｈ秒ごとに成立
ニ）タッチ状態ＯＦＦ設定の瞬間に成立
ホ）タッチ状態ＯＮ設定からｍ秒後までタッチ状態ＯＮが継続した上でタッチ状態ＯＦＦ設定の瞬間に成立
へ）タッチ状態ＯＮ設定の瞬間、および、タッチ状態ＯＦＦ設定の瞬間に成立
ト）タッチ状態ＯＮ設定からｍ秒後までタッチ状態ＯＮが継続したとき、および、タッチ状態ＯＦＦ設定の瞬間に成立
チ）タッチ状態ＯＮの継続期間中におけるｈ秒ごと、および、タッチ状態ＯＦＦ設定の瞬間に成立
【００２９】
図７は、以上の成立条件をタイミングチャートによって説明している。同図においては、横軸が時間を示し、縦軸はタッチ状態ＯＮ／ＯＦＦを示している。なお、ｍ，ｈは任意に設定できる。上述したループ処理によれば、同一のボタンＢ１〜Ｂ３が継続してタッチされている限りタッチ状態がＯＮとなり、継続してタッチされなくなるとタッチ状態がＯＦＦとなる。また、タッチ状態が継続する時間（タッチ状態ＯＮの継続期間）は、監視周期Δｔにカウンタ値ｎを乗算（Δｔ×ｎ）することにより得ることができる。タッチ状態ＯＮ設定の瞬間は、タッチ状態がＯＮになった直後に相当する。タッチ状態ＯＮ設定からｍ秒は、タッチ状態がＯＮになってからＯＮが継続している時間に相当する。タッチ状態ＯＦＦ設定の瞬間は、タッチ状態がＯＦＦになった直後に相当する。このように、上述したループ処理によってタッチ状態ＯＮ／ＯＦＦのタイミングおよびタッチ状態ＯＮの継続期間を特定することができるため、ステップＳ１３５では対応データＣＤ１から取得した成立条件イ）〜チ）を判定することができる。
【００３０】
例えば、画質調整メニューにおいて、明るさ調整ボタンＢ１がタッチされたとすると、対応データＣＤ１からイ）の成立条件が取得される。ステップＳ１３５においては、イ）の成立条件を満足するか否かが判定されることとなる。従って、タッチ状態がＯＮになった直後の判定処理において成立し、その後の判定処理ではタッチ継続期間にかかわらず不成立となる。これにより、明るさ調整ボタンＢ１を最初にタッチしたタイミングで、明るさの調整量が受付可能な処理状態に遷移させることができる。例えば、画像選択メニューにおいて、上スクロールボタンＢ４と下スクロールボタンＢ５がタッチされたとすると、対応データＣＤ１からハ）の成立条件が取得される。従って、タッチ状態がＯＮの継続期間におけるｈ秒ごとに成立することとなる。これにより、上スクロールボタンＢ４と下スクロールボタンＢ５タッチしている間は、ｈ秒ごとに一定量ずつサムネイルをスクロールさせることができる。以上のようなループ処理および判定処理は、入力ドライバＩＤＲによって実行されるため、比較的、処理負荷の大きい画像処理や印刷制御処理等を実行するアプリケーションＡＰＬの処理負荷を軽減させることができる。また、入力ドライバＩＤＲはアプリケーションＡＰＬから応答された対応データＣＤ１に基づいて入力ＩＤへの変換や判定処理を行うため、アプリケーションＡＰＬの仕様が変更された場合でも入力ドライバＩＤＲを変更しなくてもよい。
【００３１】
以上においては、ステップＳ１１５において液晶パネル１８ａ上がタッチされたと判定された場合の処理を説明したが、固定表示パネル１８ｂ上がタッチされたと判定された場合には以上とは異なる処理を行うこととなる。
【００３２】
図８は、固定表示パネル１８ｂ上がタッチされた場合の処理の流れを示している。ステップＳ１１５にて固定表示パネル１８ｂ上がタッチされたと判定されると、ステップ１８０において入力ドライバＩＤＲはタッチされた座標が固定表示パネル１８ｂにおけるどの透光パターン（＋，−，ＯＫ，戻る）上であるかを特定し、該特定した透光パターンに対応する入力ＩＤを取得する。入力ドライバＩＤＲは、固定表示パネル１８ｂにおいて透光パターンが占める表示領域を特定する座標情報と、各透光パターンに対応する入力ＩＤとの対応関係を示す対応データＣＤ２を自ら有しており、当該対応データに基づいてタッチされた座標に対応する入力ＩＤを取得する。固定表示パネル１８ｂにおいて透光パターン（＋，−，ＯＫ，戻る）が占める表示領域はアプリケーションＡＰＬの処理状態に拘わらず一定であるため、対応データＣＤ２のデータ量は少なくて済む。
【００３３】
入力ＩＤが取得できる（ステップＳ１８５）と、入力ドライバＩＤＲはステップＳ１９０において入力ＩＤをアプリケーションＡＰＬに出力する。一方、入力ＩＤが取得できない場合には、有効な領域がタッチされていないとして、次のタッチを待機する（ステップＳ１００）。以降の処理は、アプリケーションＡＰＬが主体となって行われる。入力ＩＤが出力されると、ステップＳ４００において、アプリケーションＡＰＬは自己が有する対応データＣＤ３を取得する。そして、ステップＳ４０５において、アプリケーションＡＰＬは、出力された入力ＩＤが受付可能か否かを対応データＣＤ３に基づいて判定する。対応データＣＤ３は、アプリケーションＡＰＬの現在の処理状態において受付可能な入力ＩＤと該入力ＩＤの成立条件との対応関係を示すデータである。
【００３４】
図９Ａは対応データＣＤ２を示し、図９Ｂは対応データＣＤ３を示している。同図に示すように、入力ドライバＩＤＲが有する対応データＣＤ２は、すべての透光パターン（＋，−，ＯＫ，戻る）に対応する入力ＩＤと、各透光パターンが占める表示領域を特定する座標情報との対応関係を示すデータである。一方、アプリケーションＡＰＬが有する対応データＣＤ３は、各透光パターンに対応する入力ＩＤのうち、現在アプリケーションＡＰＬが受付可能な入力ＩＤと、該入力ＩＤの成立条件との対応関係を示すデータであり、アプリケーションＡＰＬの現在の処理状態に応じて変動するデータである。なお、基本的に現在アプリケーションＡＰＬが受付可能な入力ＩＤに対応する透光パターンが照明されるように、アプリケーションＡＰＬがＬＥＤ１８ｂ２の点灯制御を行っている。
【００３５】
図９Ｂは、明るさ調整ボタンＢ１に対応する入力ＩＤが成立（ステップＳ１３５）し、アプリケーションＡＰＬが明るさの調整量が受付可能な処理状態に遷移（ステップＳ３１０）した後の処理状態における対応データＣＤ３を示している。明るさの調整量が受付可能な処理状態では、透光パターン（＋，−，ＯＫ）がＬＥＤ１８ｂ２によって照明されるとともに、該透光パターンに対応する入力ＩＤが受付可能とされる。透光パターン（＋，−）についてはハ）の成立条件が対応付けられ、透光パターン（ＯＫ）についてはイ）の成立条件が対応付けられている。一方、透光パターン（戻る）については、ＬＥＤ１８ｂ２によって照明されないとともに、対応する入力ＩＤが受付不能とされている。ステップＳ４０５において、入力ドライバＩＤＲから出力された入力ＩＤが受付不能であると判定した場合には、有効な透光パターンがタッチされていないとして、次のタッチを待機する（ステップＳ１００）。
【００３６】
ステップＳ４０５において、入力ドライバＩＤＲから出力された入力ＩＤが受付可能であると判定した場合には、該入力ＩＤに対応する成立条件を対応データＣＤ３から取得する（ステップＳ４１０）。成立条件が取得できると、アプリケーションＡＰＬはステップＳ４１５以降の処理を実行する。ステップＳ４１５以降の処理は、上述したステップＳ１３５以降のループ処理と同様であるため説明を省略する。ただし、ループ処理を実行する主体がアプリケーションＡＰＬである点については相違している。
【００３７】
以上説明したように、本実施形態では、アプリケーションＡＰＬが現在の処理状態に対応する対応データＣＤ１を入力ドライバＩＤＲに応答することにより、入力ドライバＩＤＲが現在の処理状態にて受付可能な入力ＩＤに変換することができる。対応データＣＤ１は、現在の処理状態についてのものでよいため、データ量が少なく、対応データＣＤ１を伝送したり記憶したりするためのハードウェアを小規模なものとすることができる。また、入力ＩＤへの変換や成立条件の判定を入力ドライバＩＤＲが行うため、アプリケーションＡＰＬの処理負担を軽減することができる。
【図面の簡単な説明】
【００３８】
【図１】実施形態にかかるプリンタのハードウェアブロック図である。
【図２】タッチパネルの分解図である。
【図３】プリンタで実行されるソフトウェアブロック図である。
【図４】入力ドライバが実行する処理のフローチャートである。
【図５】アプリケーションが実行する処理のフローチャートである。
【図６】処理状態に対応する対応データを示す図である。
【図７】成立条件を説明するタイミングチャートである。
【図８】固定表示パネルがタッチされた場合の処理のフローチャートである。
【図９】対応データを示す図である。
【符号の説明】
【００３９】
１０…ＳＰＣ、１０ａ…バス、１１…ＣＰＵ、１２…ＲＯＭ、１３…ＲＡＭ、１４…プリンタ部、１５…スキャナ部、１６…メモリカードＩ／Ｆ、１７…ＵＳＢＩ／Ｆ、１８…タッチパネル、１９…スイッチ、ＯＳ…オペレーティングシステム、ＡＰＬ…アプリケーション、ＩＤＲ…入力ドライバ、ＣＤ…対応データ。
【図１】
2010097352.tif 000003
【図２】
2010097352.tif 000004
【図３】
2010097352.tif 000005
【図４】
2010097352.tif 000006
【図５】
2010097352.tif 000007
【図６】
2010097352.tif 000008
【図７】
2010097352.tif 000009
【図８】
2010097352.tif 000010
【図９】
2010097352.tif 000011