IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ワコムの特許一覧

特表2024-546001クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定
<>
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図1
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図2
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図3
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図4
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図5
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図6
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図7
  • 特表-クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-17
(54)【発明の名称】クライアントサイド及びホストサイドのタブレットデバイスドライバを使用するホスト型アプリケーションについてのアプリケーション固有の設定
(51)【国際特許分類】
   H04L 67/08 20220101AFI20241210BHJP
   G06F 3/03 20060101ALI20241210BHJP
   G06F 3/041 20060101ALI20241210BHJP
【FI】
H04L67/08
G06F3/03 400
G06F3/041 500
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024526721
(86)(22)【出願日】2022-10-27
(85)【翻訳文提出日】2024-05-02
(86)【国際出願番号】 US2022048016
(87)【国際公開番号】W WO2023086212
(87)【国際公開日】2023-05-19
(31)【優先権主張番号】17/524,600
(32)【優先日】2021-11-11
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.PYTHON
3.JAVASCRIPT
(71)【出願人】
【識別番号】000139403
【氏名又は名称】株式会社ワコム
(74)【代理人】
【識別番号】110004277
【氏名又は名称】弁理士法人そらおと
(72)【発明者】
【氏名】ジョセフ ボーン スライガー
(72)【発明者】
【氏名】ケントン ジェイ ロフタス
(72)【発明者】
【氏名】ジャロッド ダニフー
(72)【発明者】
【氏名】コンラッド ウィルヘルム ポールマン
(57)【要約】
ホストシステムは、ホスト型アプリケーションについてのアプリケーション固有の設定を有するデバイスドライバを含む。クライアントコンピュータシステムにおける1つ以上のタブレットデバイスによって、入力データが生成される。ホストサイドのデータ転送アプリケーションが、入力データを受信してホストサイドのドライバに転送し、ホストサイドのドライバは、入力データをホスト型アプリケーションへ送信する。ホスト型アプリケーションへ送信されたタブレットデータは、ホストサイドのドライバのアプリケーション固有の設定に従って構成され、ホストサイドのドライバは、複数のアプリケーションプログラミングインターフェースをサポートし得る。また、専用のドライバ間接続を使用して、クライアントサイドのドライバとホストサイドのドライバとの間でデータを伝送し得る。別の一実施例として、ホストが、現在使用中のホスト型アプリケーションの識別子をクライアントサイドのドライバへ送信し、クライアントサイドのドライバがその識別子を使用して、アプリケーション固有の設定を参照して、ホスト型アプリケーションへ送信されたタブレットデータに適用する。これにより、ホスト型アプリケーションについてのアプリケーション固有の設定を可能にしつつ、ホストサイドのドライバの必要性を排除することができる。
【特許請求の範囲】
【請求項1】
ペン入力タブレットデバイスを含むクライアントコンピュータシステムに対してホスト型アプリケーションサービスを提供するホストコンピュータシステムであって、
前記ホストコンピュータシステムは、
1つ以上のプロセッサと、
ネットワークインターフェースと、
非揮発性のコンピュータ可読媒体とを備え、
前記非揮発性のコンピュータ可読媒体は、
前記クライアントコンピュータシステムのユーザによってアクセスされるように構成された少なくとも1つのホスト型アプリケーションと、
前記少なくとも1つのホスト型アプリケーションについてのアプリケーション固有の設定を含むホストサイドのタブレットデバイスドライバと、
ホストサイドのデータ転送アプリケーションと、
コンピュータ可読命令であって、前記ホストコンピュータシステムに、
前記クライアントコンピュータシステムにおいて前記ペン入力タブレットデバイスにより生成された入力データを、前記ホストサイドのデータ転送アプリケーションにより、クライアントサイドのデータ転送アプリケーションを介して受信することと、
前記ペン入力タブレットデバイスによって生成された前記入力データを、前記ホストサイドのデータ転送アプリケーションから前記ホストサイドのタブレットデバイスドライバへ送信することと、
前記入力データを前記ホストサイドのタブレットデバイスドライバから前記少なくとも1つのホスト型アプリケーションへ送信することであって、前記少なくとも1つのホスト型アプリケーションへ送信される前記入力データは前記ホストサイドのタブレットデバイスドライバの前記アプリケーション固有の設定に従って構成される、前記入力データを送信することと、
を行わせるように構成されたコンピュータ可読命令とを備える、
ホストコンピュータシステム。
【請求項2】
前記クライアントサイドのデータ転送アプリケーションは、ウェブブラウザアプリケーションを含む、
請求項1に記載のホストコンピュータシステム。
【請求項3】
前記ペン入力タブレットデバイスによって生成された前記入力データは、複数のタブレットデバイスからの入力データを組み合わせた複合タブレットデータの形態で、クライアントサイドのタブレットデバイスドライバによって前記クライアントサイドのデータ転送アプリケーションに提供される、
請求項1に記載のホストコンピュータシステム。
【請求項4】
コンピュータ可読命令が記憶された非揮発性のコンピュータ可読媒体であって、
前記コンピュータ可読命令は、ホストコンピュータシステムに、
クライアントコンピュータシステムにおいて複数のタブレットデバイスによって生成された複合タブレットデータを、ホストサイドのタブレットデバイスドライバによってクライアントサイドのタブレットデバイスドライバから受信することであって、前記複数のタブレットデバイスは少なくとも1つのペン入力タブレットデバイスを含む、受信することと、
前記ホストサイドのタブレットデバイスドライバのアプリケーション固有の設定に従って前記複合タブレットデータを調整することと、
前記複合タブレットデータを前記ホストサイドのタブレットデバイスドライバから前記ホストコンピュータシステムにおける少なくとも1つのホスト型アプリケーションへ送信することであって、前記少なくとも1つのホスト型アプリケーションは、前記クライアントコンピュータシステムのユーザによってアクセスされ、かつ、前記ホストサイドのタブレットデバイスドライバのアプリケーション固有の設定に従って調整された前記複合タブレットデータを受信するように構成されている、送信することと、
を含むステップを実行させるように構成されている、
非揮発性のコンピュータ可読媒体。
【請求項5】
前記複合タブレットデータは、前記ホストサイドのタブレットデバイスドライバによって前記クライアントサイドのタブレットデバイスドライバから、専用のドライバ間接続を介して受信される、
請求項4に記載の非揮発性のコンピュータ可読媒体。
【請求項6】
前記複合タブレットデータは、前記ホストサイドのタブレットデバイスドライバによって、前記クライアントサイドのデータ転送アプリケーションを介して受信される、
請求項4に記載の非揮発性のコンピュータ可読媒体。
【請求項7】
前記クライアントサイドのデータ転送アプリケーションは、ウェブブラウザアプリケーションを含む、
請求項6に記載の非揮発性のコンピュータ可読媒体。
【請求項8】
ペン入力タブレットデバイスを含むクライアントコンピュータシステムにホスト型アプリケーションサービスを提供するホストコンピュータシステムであって、
前記ホストコンピュータシステムは、
1つ以上のプロセッサと、
ネットワークインターフェースと、
非揮発性のコンピュータ可読媒体とを備え、
前記非揮発性のコンピュータ可読媒体は、
前記クライアントコンピュータシステムのユーザによってアクセスされるように構成された複数のホスト型アプリケーションと、
コンピュータ可読命令であって、前記ホストコンピュータシステムに、
前記複数のホスト型アプリケーションのうち現在使用中であるものを判定することと、
現在使用中である前記ホスト型アプリケーションの識別子を前記ホストコンピュータシステムからクライアントサイドのタブレットデバイスドライバへ送信することと、
前記クライアントコンピュータシステムにおいて前記ペン入力タブレットデバイスによって生成された入力データを受信することと、
前記ペン入力タブレットデバイスによって生成された前記入力データを、現在使用中である前記ホスト型アプリケーションへ送信することと、
を行わせるように構成されたコンピュータ可読命令とを備える、
ホストコンピュータシステム。
【請求項9】
現在使用中である前記ホスト型アプリケーションの前記識別子は、前記クライアントサイドのタブレットデバイスドライバに、前記識別子に基づいてアプリケーション固有の設定を定めるように構成されている、
請求項8に記載のホストコンピュータシステム。
【請求項10】
前記入力データは、ホストサイドのタブレットデバイスドライバによって前記クライアントサイドのタブレットデバイスドライバから、専用のドライバ間接続を介して受信される、
請求項8に記載のホストコンピュータシステム。
【請求項11】
前記ペン入力タブレットデバイスによって生成された前記入力データは、複数のタブレットデバイスによって生成された複合タブレットデータに含められる、
請求項8に記載のホストコンピュータシステム。
【請求項12】
前記入力データは、ホストサイドのデータ転送アプリケーションによってクライアントサイドのデータ転送アプリケーションから受信される、
請求項8に記載のホストコンピュータシステム。
【請求項13】
現在使用中である前記ホスト型アプリケーションの前記識別子は、前記クライアントサイドのタブレットデバイスドライバに、現在使用中である前記ホスト型アプリケーションに関連付けられたクライアントサイドのアプリケーション固有の設定を判定させ、かつ前記クライアントサイドのアプリケーション固有の設定を、前記ペン入力タブレットデバイスによって生成されたさらなる入力データに適用させるように構成されている、
請求項8に記載のホストコンピュータシステム。
【請求項14】
現在使用中である前記ホスト型アプリケーションの前記識別子は、前記クライアントサイドのタブレットデバイスドライバが、現在使用中である前記ホスト型アプリケーションに関連付けられたクライアントサイドのアプリケーション固有の設定を判定でき、かつ、前記クライアントサイドのアプリケーション固有の設定を前記ホストコンピュータシステムへ送信して、ホストサイドのタブレットデバイスドライバにおける対応する設定を更新できるように構成されている、
請求項8に記載のホストコンピュータシステム。
【請求項15】
現在使用中である前記ホスト型アプリケーションの前記識別子は、前記ホストコンピュータシステムから専用の接続を介して前記クライアントサイドのタブレットデバイスドライバへ送信される、
請求項8に記載のホストコンピュータシステム。
【請求項16】
現在使用中である前記ホスト型アプリケーションの前記識別子は、ホストサイドのデータ転送アプリケーションからクライアントサイドのデータ転送アプリケーションへ送信され、
前記クライアントサイドのデータ転送アプリケーションは、前記識別子を前記クライアントサイドのタブレットデバイスドライバへ転送するように構成されている、
請求項8に記載のホストコンピュータシステム。
【請求項17】
前記識別子は、前記クライアントサイドのタブレットデバイスドライバが、前記アプリケーションのクライアントサイドバージョンについてのクライアントサイドのアプリケーション固有の設定を判定でき、かつ、前記ホストコンピュータシステムが前記アプリケーションのホストサイドバージョンを実行しているときに、同じ前記クライアントサイドのアプリケーション固有の設定を、前記ペン入力タブレットデバイスによって生成されたさらなる入力データに適用できるように構成されている、
請求項8に記載のホストコンピュータシステム。
【請求項18】
さらにモニタリングユーティリティを備え、現在使用中である前記ホスト型アプリケーションの前記識別子は、前記モニタリングユーティリティからクライアントサイドのタブレットデバイスドライバへ送信される、請求項8に記載のホストコンピュータシステム。
【請求項19】
現在使用中である前記ホスト型アプリケーションの前記識別子は、前記クライアントサイドのタブレットデバイスドライバに、現在使用中である前記ホスト型アプリケーションに関連付けられたクライアントサイドのアプリケーション固有の設定を判定させ、かつ前記クライアントサイドのアプリケーション固有の設定を、前記ペン入力タブレットデバイスによって生成された入力データに適用させるように構成されている、請求項18に記載のホストコンピュータシステム。
【請求項20】
ペン入力タブレットデバイスを含むクライアントコンピュータシステムにホスト型アプリケーションサービスを提供するホストコンピュータシステムであって、
前記ホストコンピュータシステムは、
1つ以上のプロセッサと、
ネットワークインターフェースと、
非揮発性のコンピュータ可読媒体とを備え、
前記非揮発性のコンピュータ可読媒体は、
前記クライアントコンピュータシステムのユーザによってアクセスされるように構成された複数のホスト型アプリケーションと、
ホストサイドのタブレットデバイスドライバと、
ホストサイドのデータ転送アプリケーションと、
コンピュータ可読命令であって、前記ホストコンピュータシステムに、
前記クライアントコンピュータシステムにおいて前記ペン入力タブレットデバイスによって生成された入力データを、前記ホストサイドのデータ転送アプリケーションによって、クライアントサイドのデータ転送アプリケーションを介して受信することと、
前記ペン入力タブレットデバイスによって生成された前記入力データを、前記ホストサイドのデータ転送アプリケーションから前記ホストサイドのタブレットデバイスドライバへ送信することと、
前記入力データを、前記ホストサイドのタブレットデバイスドライバから、それぞれのホスト型アプリケーションによって選択される複数の利用可能なアプリケーションプログラミングインターフェースへ送信することと、
を行わせるように構成されたコンピュータ可読命令とを備える、
ホストコンピュータシステム。
【請求項21】
前記複数のホスト型アプリケーションへ送信された前記タブレットデータは、前記ホストサイドのタブレットデバイスドライバのアプリケーション固有の設定に従って構成される、
請求項20に記載のホストコンピュータシステム。
【請求項22】
前記コンピュータ可読命令は、さらに、前記ホストコンピュータシステムに、現在使用中のホスト型アプリケーションの識別子をクライアントサイドのタブレットデバイスドライバへ送信させるように構成されており、
前記入力データは、前記クライアントサイドのタブレットデバイスドライバによって、前記現在使用中の前記ホスト型アプリケーションについてのアプリケーション固有の設定に従って調整される、
請求項20に記載のホストコンピュータシステム。
【発明の詳細な説明】
【背景技術】
【0001】
関連出願の相互参照
本願は、2021年11月11日に出願された米国特許出願第17/524,600号の優先権を主張するものであり、その全体の開示は、これにより、あるゆる目的で本明細書に援用される。
【0002】
一般的なリモートコンピューティングまたはクラウドコンピューティングのシナリオにおいて、エンドユーザは、クライアントコンピュータシステムにおいて(例えば、タッチスクリーン、キーボード、または他の入力デバイスを介して)入力データを生成し、クライアントコンピュータシステムは、入力データをホストコンピュータシステムへ送信し、ホストコンピュータシステムは、入力データをホスト上で動作するアプリケーションに提供する。このホスト型アプリケーションは、入力データを処理し、入力の結果を示すビデオデータなどの出力データを生成する。ペンタブレットまたはタッチスクリーンなどの入力デバイスの場合、そのような結果は、カーソル移動、デジタルリンク手書きまたはデジタルリンク描画などを含み得る。
【0003】
従前のシステムにおいて、入力データは種々の方法でホストに届けられるが、これらの従前の技法は重大な技術的問題を内包している。一例では、クライアントシステムは、ユニバーサルシリアルバス(universal serial bus、USB)インターフェースから取得された入力データを、処理のためにホスト上のデバイスドライバにリダイレクトする。クライアントコンピュータシステムは、ローカルアプリケーションに合う独自のデバイス設定がなされたクライアントサイドのデバイスドライバを有し得るが、それらの設定は、ホストシステムに利用可能ではない。クライアントサイドアプリケーションとホスト型アプリケーションとでは別々のデバイス設定が必要であり、そのことにより、デバイス設定を手動で調整することなくクライアントサイドアプリケーションとホスト型アプリケーションとをシームレスに切り替えたいとユーザが望む使用例において、複雑さが増している。第2の例では、クライアントシステムは、入力データをクライアントサイドのデバイスドライバにおいて処理してから、そのデータをホストへ伝送し、ホストは、ホストサイドのドライバを使用せずに入力データをホスト型アプリケーションへ転送する。この第2の例では、クライアントサイドのデバイスドライバは、最終的にホストシステムへ伝送されるデータを生成することになるが、アプリケーション固有の設定がホスト型アプリケーションに利用可能ではなく、そのことが、システムの柔軟性を制限する。
【発明の概要】
【発明が解決しようとする課題】
【0004】
この概要は、詳細な説明において詳しく後述される一連の(様々な)形態を簡潔に示すために提供されている。この概要は、特許請求される主題の主要な特徴を特定することを意図するものではなく、また、特許請求される主題の範囲を決定する一助として使用することを意図するものでもない。
【課題を解決するための手段】
【0005】
一態様において、ホストコンピュータシステムは、ペン入力タブレットデバイスを含むクライアントコンピュータシステムにホスト型アプリケーションサービスを提供する。ホストコンピュータシステムは、1つ以上のプロセッサと、ネットワークインターフェースと、非揮発性のコンピュータ可読媒体とを備え、非揮発性のコンピュータ可読媒体は、クライアントコンピュータシステムのユーザによってアクセスされるように構成された少なくとも1つのホスト型アプリケーションと、少なくとも1つのホスト型アプリケーションのアプリケーション固有の設定を含むホストサイドのタブレットデバイスドライバと、ホストサイドのデータ転送アプリケーションと、コンピュータ可読命令であって、ホストコンピュータシステムに、ホストサイドのデータ転送アプリケーションによってクライアントサイドのデータ転送アプリケーションを介して、クライアントコンピュータシステムにおいてペン入力タブレットデバイスによって生成された入力データを受信することと、ペン入力タブレットデバイスによって生成された入力データを、ホストサイドのデータ転送アプリケーションからホストサイドのタブレットデバイスドライバへ送信することと、入力データをホストサイドのタブレットデバイスドライバから少なくとも1つのホスト型アプリケーションへ送信することとを行わせるように構成されたコンピュータ可読命令とを備える。入力データは、ホストサイドのタブレットデバイスドライバのアプリケーション固有の設定に従って構成される。いくつかの実施形態において、ペン入力タブレットデバイスによって生成された入力データは、クライアントサイドのタブレットデバイスドライバによってクライアントサイドのデータ転送アプリケーションに提供される。
【0006】
別の一態様において、非揮発性のコンピュータ可読媒体は、コンピュータ可読命令を記憶しており、コンピュータ可読命令は、ホストコンピュータシステムに、ホストサイドのタブレットデバイスドライバによってクライアントサイドのタブレットデバイスドライバから、クライアントコンピュータシステムにおいて複数のタブレットデバイスによって生成された複合タブレットデータを受信することであって、複数のタブレットデバイスは、少なくとも1つのペン入力タブレットデバイスを含む、受信することと、複合タブレットデータをホストサイドのタブレットデバイスドライバからホストコンピュータシステムにおける少なくとも1つのホスト型アプリケーションへ送信することとを含むステップを含む方法を実行させるように構成されている。少なくとも1つのホスト型アプリケーションは、クライアントコンピュータシステムのユーザによってアクセスされるように、かつ複合タブレットデータを処理するように構成されており、複合タブレットデータは、ホストサイドのタブレットデバイスドライバによって定義されたアプリケーション固有の設定に従って構成されている。
【0007】
いくつかの実施形態において、複合タブレットデータは、ホストサイドのタブレットデバイスドライバによってクライアントサイドのタブレットデバイスドライバから、専用のドライバ間接続を介して受信される。他の実施形態において、複合タブレットデータは、ホストサイドのタブレットデバイスドライバによって、ウェブブラウザアプリケーションまたは他のデータ転送モジュールなどの、クライアントサイドのデータ転送アプリケーションを介して受信される。
【0008】
別の一態様において、ホストコンピュータシステムは、ペン入力タブレットデバイスを含むクライアントコンピュータシステムにホスト型アプリケーションサービスを提供する。ホストコンピュータシステムは、1つ以上のプロセッサと、ネットワークインターフェースと、非揮発性のコンピュータ可読媒体とを備え、非揮発性のコンピュータ可読媒体は、クライアントコンピュータシステムのユーザによってアクセスされるように構成された複数のホスト型アプリケーションと、コンピュータ可読命令であって、ホストコンピュータシステムに、クライアントコンピュータシステムにおいてペン入力タブレットデバイスによって生成された入力データを受信することと、現在使用中である、複数のホスト型アプリケーションのうちの1つを判定することと、ペン入力タブレットデバイスによって生成された入力データを、現在使用中であるホスト型アプリケーションへ送信することと、現在使用中であるホスト型アプリケーションの識別子をホストコンピュータシステムからクライアントサイドのタブレットデバイスドライバへ送信することと、クライアントコンピュータシステムにおいてペン入力タブレットデバイスによって生成された入力データを受信することと、ペン入力タブレットデバイスによって生成された入力データを、現在使用中であるホスト型アプリケーションへ送信することとを行わせるように構成されたコンピュータ可読命令とを備える。
【0009】
いくつかの実施形態において、現在使用中であるホスト型アプリケーションの識別子は、クライアントサイドのタブレットデバイスドライバに、識別子に基づいてアプリケーション固有の設定を定めるように構成されている。
【0010】
いくつかの実施形態において、ホストコンピュータシステムは、さらに、モニタリングユーティリティを備え、現在使用中であるホスト型アプリケーションの識別子は、モニタリングユーティリティからクライアントサイドのタブレットデバイスドライバへ送信される。他の実施形態において、ホストサイドのドライバは、現在使用中のホスト型アプリケーションを識別する機能性を含み、識別子は、ホストサイドのドライバからクライアントコンピュータシステムへ送信される。
【0011】
いくつかの実施形態において、識別子は、ホストコンピュータシステムから専用の接続を介してクライアントサイドのタブレットデバイスドライバへ送信される。他の実施形態において、識別子は、ホストサイドのデータ転送アプリケーションからクライアントサイドのデータ転送アプリケーションへ送信され、クライアントサイドのデータ転送アプリケーションは、識別子をクライアントサイドのタブレットデバイスドライバへ転送するように構成されている。
【0012】
いくつかの実施形態において、入力データは、ホストサイドのタブレットデバイスドライバによってクライアントサイドのタブレットデバイスドライバから、専用のドライバ間接続を介して受信される。他の実施形態において、入力データは、ホストサイドのデータ転送アプリケーションによってクライアントサイドのデータ転送アプリケーションから受信される。
【0013】
いくつかの実施形態において、ペン入力タブレットデバイスによって生成された入力データは、複数のタブレットデバイスによって生成された複合タブレットデータに含められる。
【0014】
いくつかの実施形態において、現在使用中であるホスト型アプリケーションの識別子は、クライアントサイドのタブレットデバイスドライバに、現在使用中であるホスト型アプリケーションに関連付けられたクライアントサイドのアプリケーション固有の設定を定めるように構成されている。このような実施形態において、クライアントサイドのタブレットデバイスドライバは、クライアントサイドのアプリケーション固有の設定を、ペン入力タブレットデバイスによって生成されたさらなる入力データに適用し、かつ/またはクライアントサイドのアプリケーション固有の設定をホストコンピュータシステムへ送信して、ホストサイドのタブレットデバイスドライバにおける対応する設定を更新する。
【0015】
いくつかの実施形態において、識別子は、クライアントサイドのタブレットデバイスドライバに、アプリケーションのクライアントサイドバージョンについてのクライアントサイドのアプリケーション固有の設定を判定させ、かつホストコンピュータシステムがアプリケーションのホストサイドバージョンを実行しているときに、同じクライアントサイドのアプリケーション固有の設定を、ペン入力タブレットデバイスによって生成されたさらなる入力データに適用させるように構成されている。
【0016】
別の一態様において、ホストコンピュータシステムは、クライアントコンピュータシステムのユーザによってアクセスされるように構成された複数のホスト型アプリケーションと、ホストサイドのタブレットデバイスドライバと、ホストサイドのデータ転送アプリケーションと、コンピュータ可読命令であって、ホストコンピュータシステムに、ホストサイドのデータ転送アプリケーションによってクライアントサイドのデータ転送アプリケーションを介して、クライアントコンピュータシステムにおいてペン入力タブレットデバイスによって生成された入力データを受信することと、ペン入力タブレットデバイスによって生成された入力データを、ホストサイドのデータ転送アプリケーションからホストサイドのタブレットデバイスドライバへ送信することと、入力データを、ホストサイドのタブレットデバイスドライバから、それぞれのホスト型アプリケーションによって選択される複数の利用可能なアプリケーションプログラミングインターフェースへ送信することとを行わせるように構成されたコンピュータ可読命令とを備える。いくつかの実施形態において、入力データは、ホストサイドのタブレットデバイスドライバによって提供されたアプリケーション固有の設定に従って調整される。他の実施形態において、ホストコンピュータシステムは、現在使用中のホスト型アプリケーションの識別子をクライアントサイドのタブレットデバイスドライバへ送信するように構成されており、ホストシステムによって受信された入力データは、クライアントサイドのタブレットデバイスドライバによって、現在使用中のホスト型アプリケーションについてのアプリケーション固有の設定に従って調整される。
【図面の簡単な説明】
【0017】
前述の態様と付随する効果の多くとは、これらが、添付の図面を併せて考慮して以下の詳細な説明を参照することによってより良く理解されるにつれて、より容易に了解されるものとなろう。
【0018】
図1】第1の例示的な実施形態の態様を含むコンピュータシステムのブロック図である。
図2】第2の例示的な実施形態の態様を含むコンピュータシステムのブロック図である。
図3】第3の例示的な実施形態の態様を含むコンピュータシステムのブロック図である。
図4】第4の例示的な実施形態の態様を含むコンピュータシステムのブロック図である。
図5】第5の例示的な実施形態の態様を含むコンピュータシステムのブロック図である。
図6】第6の例示的な実施形態の態様を含むコンピュータシステムのブロック図である。
図7】本明細書に記載した例示的な実施形態の態様を含む、ホストコンピュータシステムによって実行される例示的なプロセスのフロー図である。
図8】本明細書に記載した例示的な実施形態の態様を含む、ホストコンピュータシステムによって実行される例示的なプロセスのフロー図である。
【発明を実施するための形態】
【0019】
本明細書に記載した実施形態において、クライアントコンピュータシステム(デスクトップコンピュータ、ノートブックコンピュータ、または任意の他の好適なコンピューティングデバイスもしくはコンピューティングデバイスの組み合わせなど)は、クラウドコンピューティングシステムなどのホストコンピュータシステムによってホストされる1つ以上のアプリケーションにアクセスするように構成されている。クライアントコンピュータシステムは、ペンディスプレイ、ペンタブレット、または他のタブレットデバイスなどの、1つ以上のタブレットデバイスと通信可能に結合されている。いくつかの実施形態において、タブレットデバイスは、ペン位置データまたはペン圧力データ、ペンボタンデータまたはタブレットボタンデータ、タッチ入力データなどの形態のタブレットデータを収集するように構成されており、タブレットデータは、ホスト型アプリケーション(複数可)のコンテキストにおいて、ユーザが描画、手書きメモまたは手書き文字、署名、ジェスチャなどを生じさせる際に生成され得る。本明細書に開示された実施形態は、クライアントコンピュータシステムが、描画アプリケーション、デジタルペインティングアプリケーション、デジタル写真編集アプリケーションなどのような、ホスト型アプリケーションにアクセスするシナリオにおいて、性能を向上させ、システム設計を簡略化し、かつ/またはユーザ体験を向上させる新規な手法を提供する。
【0020】
本明細書に記載した実施形態において、タブレットデバイスドライバは、クライアントサイドまたはホストサイドのいずれかにおいて、それらのデバイスについてのアプリケーション固有の設定を提供することによって、タブレットデバイスの動作をサポートする。デバイスドライバは、コンピュータシステムによって使用される、ハードウェアデバイスの動作を制御またはサポートするコンピュータプログラムコードである。タブレットデバイスのドライバ機能性は、種々のコンピュータシステムに実装され得る。例えば、本明細書に記載したいくつかの実施形態において、タブレットデバイスが通信可能に結合されるクライアントコンピュータシステムはクライアントサイドのドライバを含む一方、タブレットデバイスから直接ではなくクライアントコンピュータシステムから入力データを受信するホストコンピュータシステムは、ホスト型アプリケーションについてのアプリケーション固有の設定を有するホストサイドのドライバを含む。
【0021】
一実施形態において、クライアントサイドのドライバは、1つ以上のタブレットデバイスから入力を受信し、入力データをクライアントサイドのデータ転送アプリケーションに提供し、クライアントサイドのデータ転送アプリケーションは、入力データをホストサイドのデータ転送アプリケーションへ伝送する。次いで、ホストサイドのデータ転送アプリケーションは、入力データをホストサイドのドライバに提供する。ホストサイドのドライバは、ホスト型アプリケーションについてのアプリケーション固有のタブレットデバイス設定(例えば、ペン設定、タッチ設定、ボタン設定など)を含む。ホストサイドのドライバは、入力データをホスト型アプリケーション(複数可)に提供し、ホスト型アプリケーション(複数可)は、入力データの処理と出力データの生成とを行う。出力データは、例えば、入力の結果を示すビデオデータ(例えば、カーソル移動、仮想キャンバス上に描画された線など)を含み得る。次いで、ホストコンピュータシステムは、効率的な方法による表示のために出力データをクライアントコンピュータシステムへ伝送する。この表示は、ユーザが、例えば、ホスト型アプリケーションについてのデバイス設定を手動で構成することを必要とせず、かつ顕著な時間遅延を伴わずに、ホスト型アプリケーションにおけるデジタルイラストレーション上で作業することを可能にする。別の一実施形態において、クライアントサイドのデータ転送アプリケーション及びホストサイドのデータ転送アプリケーションが省略されており、クライアントサイドのドライバとホストサイドのドライバとの間の専用のドライバ間接続が可能になっており、これにより、いくつかの状況において、設計が簡略化され、さらに、時間遅延が低減され得る。
【0022】
別の一実施形態において、アプリケーション固有の設定についてホストサイドのドライバに依拠する代わりに、ホストコンピュータシステムが、いずれのホスト型アプリケーションが現在使用中であるかを監視し、そのアプリケーションの識別子をクライアントコンピュータシステムに送信する。クライアントサイドのドライバは、その識別子に基づいて、現在使用中のホスト型アプリケーションの適正な構成を確保するデバイス設定を選択する。
【0023】
別の一実施形態において、ホストコンピュータシステムは、複数のホスト型アプリケーションと、ホスト型アプリケーションに対する複数のアプリケーションプログラミングインターフェース(application programming interface、API)をサポートするホストサイドのドライバとを含む。ホストサイドのドライバは、入力データを複数のAPIに提供し、ホスト型アプリケーションは、利用可能なAPIの中からの選定を行って、そのアプリケーションに対する適切なAPIから入力データを取得する。
【0024】
これらの実施形態並びに他の変形形態及び代替形態については、以下でさらに詳細に記載する。
【0025】
本明細書に記載した実施形態において、クライアントコンピュータシステムは、1つ以上のタブレットデバイスから入力データ(例えば、座標データ及び圧力データなどのペンイベントデータ、または、ペンイベントデータ以外の入力データ(例えば、コンテキストデータ、生体データ、タッチデータ、ボタンデータなど))を受信する。入力データの内容(例えば、ペン分解能、圧力レベル、ペンチルトサポート、ボタン入力など)は、タブレットデバイスとともに使用されているソフトウェアまたはタブレットデバイス自体の構成または能力に依存し得る。いくつかの実施形態において、タブレットデバイスは、電磁誘導(electromagnetic resonance、EMR)技術を使用し、この場合に、タブレットデバイスは、ペンの動きを検出するセンサ基板を内蔵する。センサ基板面によって生成された電磁場によって、ペンの共振回路にエネルギーが誘導される。次いで、ペンの共振回路は、このエネルギーを利用して、センサ基板面に電磁信号を返す。ペンから信号を受信し続けることができるようにペンがセンサ基板に十分に近接する範囲内に留まる限り、基板面は、たとえ電子ペンがセンサ基板面にタッチしなくても、一定の時間間隔でペンの座標位置を検出する。(実効的な信号範囲は使用されている特定の技術に応じて変わり得るが、一般に、数ミリメートル程度である。)
【0026】
代替的に、他の入力技術を使用することができる。例えば、電子ペンは、他の無線技術を使用してもよいし、デジタイザに有線接続されてもよい。別の一実施例として、電子ペンは、デジタイザの表面から離れて検出可能であってもよいし、なくてもよい。別の一実施例として、電子ペンは、電源駆動型であってもよいし、非電源駆動型であってもよい。電源駆動型のペンは、外部電源に接続された配線を介して、または搭載電池を介して電力を受け取り得る。別の一実施例として、電子ペンを用いずに(例えば、感圧式デジタルライティングパッド、タッチスクリーン、または電子ペンを必要としない何らかの他の入力デバイス上のスタイラスを介して)手書きデータを入力することが可能である。
【0027】
入力データの収集方法に関わらず、タブレットデバイスによって提供される入力データは、ペンイベント情報、デバイス情報、及び/または入力が行われたコンテキストに関するコンテキスト情報を含み得る。ペンイベント情報は、デジタイザ表面上の、またはデジタイザ表面の上方のペン先端部のx/y位置と、手書きの開始からの時間とを含み得る。ペンイベント情報は、x/y座標値に加えて、オプションとして、圧力(ペン圧)、角度(方位、仰角、及び/または回転)、及びペンダウンステータスなどの、電子手書きデバイスの能力の対象となる追加の情報を含んでもよい。
【0028】
第1の例示的な実施形態
【0029】
本節では、第1の例示的な実施形態について記載し、この実施形態において、クライアントコンピュータシステム(デスクトップコンピュータ、ノートブックコンピュータ、または任意の他の好適なコンピューティングデバイスもしくはデバイスの組み合わせなど)は、1つ以上のホスト型アプリケーションのコンテキストにおける入力を提供する複数のタブレットデバイスと通信可能に結合されている。第1の例示的な実施形態において、ホストサイドのタブレットデバイスドライバは、ホスト型アプリケーション(複数可)に対するアプリケーション固有のタブレットデバイス設定を含む。
【0030】
図1は、第1の例示的な実施形態によるシステムのブロック図である。図1に示す実施例において、クライアントコンピュータシステム100は、インターネットなどのネットワークを通じて、セキュアゲートウェイ140を介してホストコンピュータシステム150と通信する。クライアントコンピュータシステム100は、ホストコンピュータシステム150によってホストされる1つ以上のホスト型アプリケーション170へのアクセスを提供するように構成されている。クライアントコンピュータシステム100は、ホスト型アプリケーション170に関連付けられたホスト型アプリケーションユーザインターフェース(user interface、UI)112を表示する。図1に示す実施例において、このことは、クラウドコンピューティングベンダ(cloud computing vendor、CCV)クライアントエージェント110において行われ、また、CCVクライアントエージェント110は、クライアントサイドのデータ転送アプリケーション114を含む。例示的なシナリオにおいて、ユーザは、ホスト型アプリケーションUI112を介してアカウントデータ(例えば、アカウントID及びパスワード)を入力し、クライアントコンピュータシステム100は、ホストコンピュータシステム150へ認証要求を伝送し、ホストコンピュータシステム150は、ホスト型アプリケーション170へのアクセス権を付与する前に、認証要求が有効なユーザに関連付けられていることをチェックする。オプションとして、クライアントコンピュータシステム100はまた、1つ以上のローカルアプリケーション120を実行することもできる。
【0031】
クライアントコンピュータシステム100は、電子ペン入力をキャプチャする複数のタブレットデバイスから入力を受信する。この実施例において、タブレットデバイスは、対応するペン104及び108を有する、ペンディスプレイ102(例えば、Wacom(登録商標) One、Cintiq、もしくはCintiq Proクリエイティブペンディスプレイ、または何らかの他のペンディスプレイデバイス)及びペンタブレット106(例えば、Wacom(登録商標) Intuos、Intuos Pro、もしくはOne by Wacom(登録商標)クリエイティブペンタブレット、または何らかの他のタブレットデバイス)を含む。ペンディスプレイ102は、例えば、ペンディスプレイ102が入力を提供するのに使用される電子ドキュメント、ユーザインターフェース、またはグラフィックアートワークを表示するディスプレイデバイス(例えば、LCDスクリーン)を含む。代替的に、他の電子手書きキャプチャデバイスを使用してもよい。
【0032】
タブレットデバイスは、クライアントサイドのタブレットデバイスドライバ130に入力データ(本明細書ではタブレットデータとも称される)を提供する。図1に示す実施例において、クライアントサイドのタブレットデバイスドライバ130は、ペンディスプレイ102及びペンタブレット106からのタブレットデータを統合して複合タブレットデータにする。いくつかの実施形態において、複合タブレットデータは、異なるタブレットからの入力データを合成して単一のタブレットデバイスに関連付けられているかのような単一の合成データセットにした、仮想タブレットデータセットの形態で提示される。クライアントサイドのタブレットデバイスドライバ130は、複合タブレットデータを、ホストコンピュータシステム150への伝送のために、場合によってはキーボードデータ、マウスデータなどのような非タブレットデータとともに、クライアントサイドのデータ転送アプリケーション114へ転送する。このようにして、システムは、複数のタブレットデバイスからの入力を、単一のクライアントサイドのタブレットデバイスドライバ130を用いて扱うことが可能である。
【0033】
代替的に、1つのタブレットデバイスのみが存在する場合に、クライアントサイドのタブレットデバイスドライバ130は、入力データを、ホストコンピュータシステム150への伝送のために、そのタブレットデータからクライアントサイドのデータ転送アプリケーション114へ転送する。
【0034】
図1に示す実施例において、ホストコンピュータシステム150は、CCVホストエージェント160を含み、当該CCVホストエージェント160は、ホストサイドのデータ転送アプリケーション164を含む。この実施例において、ホストサイドのデータ転送アプリケーション164は、クライアントサイドのデータ転送アプリケーション114から複合タブレットデータを受信し、複合タブレットデータを、ホスト型アプリケーションについてのアプリケーション固有のタブレットデバイス設定(例えば、ペン設定、タッチ設定、ボタン設定など)を含むホストサイドのタブレットデバイスドライバ180へ転送する。ホストサイドのタブレットデバイスドライバ180は、1つ以上のホスト型アプリケーション170についてのアプリケーション固有の設定に基づいてタブレットデータを調整し、調整されたタブレットデータを複数のAPI190及び192に提供する。これにより、アクティブなホスト型アプリケーションが適切なAPIを選定して、そのアプリケーションに対してタブレットデータを取得することが可能になる。ホストコンピュータシステム150上に存在するAPIは、ホスト型アプリケーション(複数可)170の要件に応じて変わり得る。1つの例示的なシナリオにおいて、利用可能なAPIは、Microsoft Corporationから入手可能なWindows Inkと、Wacom Co.,Ltdから入手可能なWintab APIと、Apple.Inc.から入手可能なmacOS(登録商標) APIとを含む。代替的に、他のAPIまたはAPIの組み合わせを使用してもよい。
【0035】
1つ以上のホスト型アプリケーション170は、調整されたタブレットデータを処理し、CCVホストエージェント160に出力を提供する。CCVホストエージェント160は、CCVクライアントエージェント110を介したユーザへの表示のために、その出力をクライアントコンピュータシステム100へ伝送する。
【0036】
クライアントサイドのタブレットデバイスドライバ130の設定は、制御パネル132を介して(例えば、エンドユーザまたは管理者によって)調整され得る。同様に、ホストサイドのタブレットデバイスドライバ180の設定は、制御パネル182を使用して調整され得る。ホストサイドまたはクライアントサイドのデバイスドライバを使用して設定を調整する他の選択肢については、以下で他の例示的な実施形態のコンテキストにおいて、さらに詳細に記載する。
【0037】
第1の例示的な実施形態は、いくつかの技術的利点を有する。第1に、ホストコンピュータシステム150上の、ホスト型アプリケーション(複数可)170についてのアプリケーション固有の設定を有するホストサイドのタブレットデバイスドライバ180と、クライアントコンピュータシステム100上のクライアントサイドのタブレットデバイスドライバ130との組み合わせにより、ユーザが、タブレットデバイスを使用して、入力をクライアントサイドのローカルアプリケーション(複数可)120に提供することと、ホストサイドのホスト型アプリケーション(複数可)170に提供することとを容易に切り替えることが可能になる。いくつかの実施形態において、ホストサイドのタブレットデバイスドライバ180は、複数のAPIをサポートし、オペレーティングシステムの一部であるペン入力APIに限定されない。
【0038】
第2の例示的な実施形態
【0039】
本節では、第2の例示的な実施形態について記載し、この実施形態において、クライアントコンピュータシステムは、専用のドライバ間接続を使用して1つ以上のホスト型アプリケーションに入力を提供するのに使用され得るタブレットデバイスに通信可能に結合されている。第2の例示的な実施形態において、ホストサイドのタブレットデバイスドライバは、ホスト型アプリケーション(複数可)についてのアプリケーション固有のタブレットデバイス設定を含み、専用のドライバ間接続を使用してクライアントサイドのドライバと通信する。
【0040】
いくつかの実施形態において、専用のドライバ間接続は、表示に向けたホスト型アプリケーションUIデータを受信するのに使用され得る同じセキュアゲートウェイを使用するが、ホスト型アプリケーション(複数可)からの非タブレットデータ(例えば、キーボードデータまたはマウスデータ)または出力を伝送するのに使用される、クライアントエージェントとホストエージェントとの間の接続からは分離されている。
【0041】
図2は、第2の例示的な実施形態によるシステムのブロック図である。図2に示す実施例において、CCVクライアントエージェント110は、ホスト型アプリケーションUIデータを受信するが、クライアントサイドのデータ転送アプリケーション114は、省略されている。クライアントコンピュータシステム100は、ペンタブレット106などのタブレットデバイスから入力を受信する。代替的に、他の入力デバイスを使用してもよい。
【0042】
タブレットデバイスは、クライアントサイドのタブレットデバイスドライバ130にタブレットデータを提供する。図2に示す実施例において、クライアントサイドのタブレットデバイスドライバ130は、タブレットデータを、専用のドライバ間接続におけるセキュアゲートウェイ140を介して、ホストコンピュータシステム150のホストサイドのタブレットデバイスドライバ180へ転送する。ホストコンピュータシステム150はCCVホストエージェント160を含むが、ホストサイドのデータ転送アプリケーション164は、専用のドライバ間接続を優先することにより省略されている。ホストサイドのタブレットデバイスドライバ180は、1つ以上のホスト型アプリケーション170についてのアプリケーション固有の設定を含む。
【0043】
図2に示す実施例において、ホストサイドのタブレットデバイスドライバ180は、タブレットデータを単一のAPI192に提供し、API192によって、1つ以上のホスト型アプリケーション170がタブレットデータを取得する。代替的に、複数API配置を使用してもよい。1つ以上のホスト型アプリケーション170は、タブレットデータを処理し、CCVホストエージェント160に出力を提供する。CCVホストエージェント160は、表示のために、その出力をクライアントコンピュータシステム100へ伝送する。
【0044】
第2の例示的な実施形態は、いくつかの技術的利点を有する。第1の例示的な実施形態と同様に、ホスト型アプリケーション(複数可)170についてのアプリケーション固有の設定を有するホストサイドのタブレットデバイスドライバ180と、クライアントコンピュータシステム100上のクライアントサイドのタブレットデバイスドライバ130との組み合わせにより、ユーザが、クライアントサイドのローカルアプリケーション(複数可)120と、ホストサイドのホスト型アプリケーション(複数可)170とを容易に切り替えることが可能になる。専用のドライバ間接続により、第2の例示的な実施形態は、クライアントサイドのデータ転送アプリケーション114及びホストサイドのデータ転送アプリケーション164などのモジュールを省略し、それゆえ、システム設計を簡略化することが可能になる。いくつかの実施形態において、クライアントサイドのタブレットデバイスドライバ130は、ホストサイドのタブレットデバイスドライバ180へカスタムデータを送信することができる。クライアントサイドのタブレットデバイスドライバ130によって提供されるこのようなカスタムデータを使用して、例えば、ホストサイドのタブレットデバイスドライバ180の性能を最適化したり、Wacom(登録商標) Intuos Proペンタブレットで利用可能なExpressKeysデータなどの追加の特徴の対応を可能にしたりすることができる。第2の例示的な実施形態はまた、クライアントサイドのタブレットデバイスドライバ130が複合タブレットデータを提供するように構成される必要がなく、かつホストサイドのタブレットデバイスドライバ180が複合タブレットデータを処理するように構成される必要がないため、クライアントごとに単一のタブレットデバイスに限定されるシステムの設計を簡略化するという選択肢を提供する。
【0045】
第3の例示的な実施形態
【0046】
本節では、第3の例示的な実施形態について記載し、この実施形態において、クライアントコンピュータシステムは、専用のドライバ間接続を使用して1つ以上のホスト型アプリケーションに入力を提供するのに使用され得る複数のタブレットデバイスに通信可能に結合されている。
【0047】
図3は、第3の例示的な実施形態によるシステムのブロック図である。図3に示す実施例において、クライアントコンピュータシステム100は、ペンディスプレイ102及びペンタブレット106などの、複数のタブレットデバイスから入力を受信する。代替的に、他の電子手書きキャプチャデバイスを使用してもよい。図3に示す実施例において、図1に示す実施例と同様に、クライアントサイドのタブレットデバイスドライバ130は、タブレットデバイスからのタブレットデータを統合して複合タブレットデータにするが、図1に示す実施例とは異なり、クライアントサイドのタブレットデバイスドライバ130は、複合タブレットデータを、専用のドライバ間接続におけるセキュアゲートウェイ140を介してホストコンピュータシステム150のホストサイドのタブレットデバイスドライバ180へ転送する。ホストコンピュータシステム150はCCVホストエージェント160を含むが、ホストサイドのデータ転送アプリケーション164は、専用のドライバ間接続を優先することにより省略されている。
【0048】
ホストサイドのタブレットデバイスドライバ180は、1つ以上のホスト型アプリケーション170についてのアプリケーション固有の設定を含む。図3に示す実施例において、ホストサイドのタブレットデバイスドライバ180は、アプリケーション固有の設定に基づいてタブレットデータを調整し、調整されたタブレットデータを単一のAPI192に提供し、API192によって、1つ以上のホスト型アプリケーション170がタブレットデータを取得する。代替的に、複数のAPIを組み合わせたアレンジが使用され得る。1つ以上のホスト型アプリケーション170は、タブレットデータを処理し、CCVホストエージェント160に出力を提供する。CCVホストエージェント160は、表示のために、その出力をクライアントコンピュータシステム100へ伝送する。
【0049】
第3の例示的な実施形態は、いくつかの利点を有する。第1の例示的な実施形態と同様に、ホスト型アプリケーション(複数可)170についてのアプリケーション固有の設定を有するホストサイドのタブレットデバイスドライバ180と、クライアントコンピュータシステム100上のクライアントサイドのタブレットデバイスドライバ130との組み合わせにより、ユーザが、クライアントサイドのローカルアプリケーション(複数可)120と、ホストサイドのホスト型アプリケーション(複数可)170とを容易に切り替えることが可能になる。第3の例示的な実施形態では複数のタブレットデバイスの使用も可能であり、それらのデバイスに適用可能であるクライアントサイドのタブレットデバイスドライバ130に関する設定は、ホストコンピュータシステム150上でも自動的に使用され得る。第2の例示的な実施形態と同様に、専用のドライバ間接続により、第3の例示的な実施形態は、クライアントサイドのタブレットデバイスドライバ130がホストサイドのタブレットデバイスドライバ180へカスタムデータを送信することを可能にしながら、クライアントサイドのデータ転送アプリケーション114及びホストサイドのデータ転送アプリケーション164などの追加のモジュールを省略したり、少なくとも複合タブレットデータの伝送のために、追加のモジュールを使用することを回避したりすることも可能になる。クライアントサイドのタブレットデバイスドライバ130によって提供されるこのようなカスタムデータを使用して、例えば、ホストサイドのタブレットデバイスドライバ180の性能を最適化したり、追加の特徴のサポートを可能にしたりすることができる。
【0050】
第4、第5、及び第6の例示的な実施形態
【0051】
本節では、第4、第5、及び第6の例示的な実施形態について記載し、この実施形態において、ホストコンピュータシステムは、複数のホスト型アプリケーションと、ホスト型アプリケーションのうちのいずれが現在使用中であるかをクライアントサイドのドライバに示す機能性とを含む。これにより、クライアントコンピュータシステム100は、クライアントサイドのドライバを介して、アプリケーションのローカルバージョンとホスト型バージョンとの両方についてのアプリケーション固有の設定を提供することが可能になる。
【0052】
図4は、第4の例示的な実施形態によるシステムのブロック図である。図4に示す実施例において、クライアントコンピュータシステム100は、ペンディスプレイ102及びペンタブレット106などの、複数のタブレットデバイスから入力を受信する。図4に示す実施例において、図3に示す実施例と同様に、クライアントサイドのタブレットデバイスドライバ130は、タブレットデバイスからのタブレットデータを統合して複合タブレットデータにし、複合タブレットデータを、専用のドライバ間接続におけるホストサイドのタブレットデバイスドライバ180へ転送する。ホストサイドのタブレットデバイスドライバ180は、アプリケーション固有の設定に基づいてタブレットデータを調整し、調整されたタブレットデータを単一のAPI192に提供し、API192によって、ホスト型アプリケーション170がタブレットデータを取得する。代替的に、複数のAPIを組み合わせたアレンジが使用され得る。ホスト型アプリケーション170は、タブレットデータを処理し、出力を提供する。この出力はホストコンピュータシステム150によってクライアントコンピュータシステム100へ伝送され、表示される。
【0053】
図4に示す実施例において、ホストサイドのタブレットデバイスドライバ180はまた、ホスト型アプリケーション170のうちのいずれのものが現在使用中であるかを監視し、そのアプリケーションの識別子をクライアントサイドのタブレットデバイスドライバ130へ返信し、クライアントサイドのタブレットデバイスドライバ130は、識別子を受信し、その識別子に基づいて、使用中のホスト型アプリケーションについての対応する設定を参照する。この特徴により、クライアントサイドのタブレットデバイスドライバ130は、現在使用中のホスト型アプリケーションについての設定を決定することが可能になる。1つの選択肢として、クライアントサイドのタブレットデバイスドライバ130は、専用のドライバ間接続を使用してホストサイドのタブレットデバイスドライバ180へアプリケーション固有の設定を送信して、ホストサイドのタブレットデバイスドライバ180がそれらの設定に基づいて複合タブレットデータを調整することを可能にすることができる。代替的に、クライアントサイドのタブレットデバイスドライバ130は、それ自体で、それらのアプリケーション固有の設定に基づいてタブレットデータを調整し、適切に調整された複合タブレットデータをホストサイドのタブレットドライバへ送信することができる。この代替形態は有用である。なぜなら、ホストサイドのドライバがアプリケーション固有の設定に基づいてタブレットデータを調整する必要がなくなり、ホストサイドのタブレットデバイスドライバ180がそのような設定を別途格納する必要がなくなるからである。
【0054】
図5は、第5の例示的な実施形態によるシステムのブロック図である。図5に示す実施例において、第1の例示的な実施形態と同様に、クライアントサイドのタブレットデバイスドライバ130は、ホストコンピュータシステム150への伝送のために、複合タブレットデータをクライアントサイドのデータ転送アプリケーション114へ転送する。ホストコンピュータシステム150では、ホストサイドのデータ転送アプリケーション164が複合タブレットデータを受信し、それをホストサイドのタブレットデバイスドライバ180へ転送する。ただし、第5の例示的な実施形態は、第4の例示的な実施形態と同様に、クライアントサイドのドライバがアプリケーション固有の設定に基づいてタブレットデータを調整し、次いで、そのアプリケーションに対して適切に調整されたタブレットデータをホストサイドのタブレットドライバへ送信することができるように、ホストサイドのタブレットデバイスドライバ180が、ホスト型アプリケーション170のうちのいずれのものが現在使用中であるかを監視する機能性を含むという点で、第1の例示的な実施形態とは異なる。第5の例示的な実施形態において、ホストコンピュータシステム150は、専用のドライバ間接続を使用して、現在使用中のアプリケーションの識別子をクライアントサイドのタブレットデバイスドライバ130へ返信する。
【0055】
図6は、第6の例示的な実施形態によるシステムのブロック図である。図6に示す実施例において、クライアントコンピュータシステム100は、インターネットなどのネットワークを通じて、セキュアゲートウェイ140を介してホストコンピュータシステム150と通信する。クライアントコンピュータシステム100は、ホスト型アプリケーションに関連付けられたUI112を表示する。クライアントコンピュータシステム100はまた、ローカルアプリケーション120を含む。クライアントサイドのタブレットデバイスドライバ130は、複数のタブレットデバイスからのタブレットデータを統合して複合タブレットデータにし、複合タブレットデータをCCVクライアントエージェント110に提供し、CCVクライアントエージェント110は、複合タブレットデータを、セキュアゲートウェイ140を介してホストコンピュータシステム150へ転送する。次いで、ホストエージェント160は、タブレットデータを、API192を介してホスト型アプリケーション170へ転送する。ホスト型アプリケーション170は、タブレットデータを処理し、出力を生成する。この出力は、表示のために、セキュアゲートウェイ140を介してクライアントコンピュータシステム100へ返送される。
【0056】
図6に示す実施例において、図4に示す第4の例示的な実施形態と同様に、ホストコンピュータシステム150は、ホスト型アプリケーション170のうちのいずれのものが現在使用中であるかを監視し、そのアプリケーションの識別子を(例えば、セキュアゲートウェイ140を介して)クライアントサイドのタブレットデバイスドライバ130へ返信する機能性を含む。ただし、図6に示す実施例において、この機能性は、ホストサイドのタブレットデバイスドライバ180ではなく、アプリケーションモニタユーティリティ680によって提供される。クライアントサイドのタブレットデバイスドライバ130は、アプリケーションモニタユーティリティ680から、現在使用中のアプリケーションの識別子を受信し、そのアプリケーションとの使用に適切である、タブレットデータについての対応する設定を参照及び適用する。この設計により、ホストサイドのタブレットデバイスドライバ180をホストコンピュータシステム150から完全に省略しつつも、適切なデバイス設定をホスト型アプリケーション170に適用する機能性を提供することが可能になる。
【0057】
第4、第5、及び第6の例示的な実施形態は、いくつかの利点を有する。第1、第2、及び第3の例示的な実施形態に関して上述した利点のうちのいくつかを有することに加えて、ホストコンピュータシステム150を、現在使用中のホスト型アプリケーションの識別子を監視及び送信する(ホストサイドのタブレットデバイスドライバ180、アプリケーションモニタユーティリティ680のいずれかによって、または何らかの他の方法で)ように構成し、かつクライアントサイドのタブレットデバイスドライバ130を、識別子に基づいて識別されたアプリケーションについての適切なタブレットデータ設定を参照及び適用するように構成することによって、クライアントは、複数のタブレットについてのタブレット設定を制御することができるだけでなく、このような設定をホスト型アプリケーションとローカルアプリケーションとの両方に適用することもできる。同じアプリケーション固有の設定を、アプリケーションのホスト型バージョン及びローカルバージョンについて自動で適用することができる。これにより、ユーザは、例えば、クライアントサイドでのローカルアプリケーション(複数可)120の使用と、ホストサイドでのホスト型アプリケーション170の使用とを容易に切り替えることが可能になり、ホストコンピュータシステム150が個々のクライアントについてアプリケーション固有の設定を格納することが回避される。例示的なシナリオにおいて、ユーザは、どのホスト型アプリケーションを使用するかの指示に基づき、異なるホストシステムにおけるホスト型アプリケーションにアクセスし、クライアントコンピュータシステム100に格納された情報に基づいて、そのホスト型アプリケーションについての適切なタブレットデバイス設定を選択し得る。
【0058】
上述した実施形態の多くの代替形態が可能である。ほんの一実施例として、専用のCCVクライアントエージェントではなく、ウェブブラウザを用いてホスト型アプリケーションにアクセスしてもよい。このような一実施例において、ウェブブラウザは、ホスト型アプリケーションにアクセスする目的のCCVクライアントエージェントとして機能すると考えられる。このタイプの代替実装態様において、クライアントコンピュータシステムは、インターネットなどのネットワークを通じてHTTPSコネクションを介してホストコンピュータシステムと通信してもよく、ホスト型アプリケーションに関連付けられたUIをブラウザに表示してもよい。ブラウザは、データを送信するのにブラウザが使用することができるプロトコルのタイプの観点で制限を有し得るのに対して、専用のCCVクライアントエージェントは、そのように制限されないことが可能であるが、このことは、クライアントコンピュータシステム上で専用のCCVクライアントエージェントが利用可能でないか、または存在しない場合などの、いくつかのシナリオにおいて許容可能なトレードオフであり得る。
【0059】
例示的なプロセス
【0060】
本節に記載した例示的なプロセスは、本明細書に記載したコンピュータシステムの1つ以上の実施形態によって、または何らかの他の好適に構成されたコンピュータシステムによって、実行され得る。
【0061】
図7は、本明細書に記載した1つ以上の実施形態によるホストコンピュータシステム(例えば、図1、2、3、4、または5のホストコンピュータシステム150)によって実行される例示的なプロセス700のフロー図である。ステップ710において、ホストコンピュータシステムのホストサイドのタブレットデバイスドライバが、クライアントコンピュータシステムにおける1つ以上のタブレットデバイスによって生成されたタブレットデータを受信する。いくつかの実施形態において、タブレットデータは、複数のタブレットデバイスからの入力データを含む複合タブレットデータである。いくつかの実施形態において、ホストサイドのデータ転送アプリケーション(例えば、CCVホストエージェントのデータ転送アプリケーション)は、クライアントサイドのデータ転送アプリケーション(例えば、ウェブブラウザ、またはCCVクライアントエージェントのデータ転送アプリケーション)からタブレットデータを受信し、タブレットデータをホストサイドのタブレットデバイスドライバへ送信する。いくつかの実施形態において、ホストサイドのタブレットデバイスドライバは、タブレットデータを、クライアントサイドのタブレットデバイスドライバから、専用のドライバ間接続を介して受信する。ステップ720において、ホストサイドのタブレットデバイスドライバが、タブレットデータを少なくとも1つのホスト型アプリケーションへ送信し、そこでタブレットデータは、ホストサイドのタブレットデバイスドライバによって定義されたアプリケーション固有の設定に従って構成される。ホストサイドのタブレットデバイスドライバによって定義されたアプリケーション固有の設定は、手動更新または自動更新され得る。いくつかの実施形態において、クライアントコンピュータシステムは、クライアントサイドのアプリケーション固有の設定をホストコンピュータシステムへ送信して、ホストサイドのタブレットデバイスドライバにおける対応する設定を更新する。例えば、クライアントコンピュータシステムは、現在使用中のホスト型アプリケーションの識別子を受信し、その識別子に基づいてクライアントサイドのアプリケーション固有の設定を選択し、次いで、クライアントサイドのアプリケーション固有の設定をホストコンピュータシステムへ送信して、ホストサイドのタブレットデバイスドライバにおける対応する設定を更新する。ステップ730において、ホスト型アプリケーションが、ホストサイドのタブレットデバイスドライバによって定義されたアプリケーション固有の設定に従って構成されているタブレットデータを処理する。
【0062】
いくつかの実施形態において、ホストサイドのタブレットデバイスドライバは、タブレットデータを、ホスト型アプリケーションに関連付けられた複数の利用可能なAPIへ送信する。例えば、ホストコンピュータシステムは、利用可能なAPIのうちの適切なものを選択して、そのそれぞれのホスト型アプリケーションに対するタブレットデータを取得するように構成された複数のホスト型アプリケーションを含み得る。
【0063】
図8は、本明細書に記載した1つ以上の実施形態によるホストコンピュータシステム(例えば、図4、5、または6のホストコンピュータシステム150)によって実行される別の例示的なプロセス800のフロー図である。ステップ810において、ホストコンピュータシステムは、複数のホスト型アプリケーションのうちのいずれが現在使用中であるかを判定する。ステップ820において、ホストコンピュータシステムは、現在使用中のホスト型アプリケーションの識別子をクライアントサイドのタブレットデバイスドライバへ送信する。いくつかの実施形態において、現在使用中であるホスト型アプリケーションの識別子は、クライアントサイドのタブレットデバイスドライバが該識別子に基づいてアプリケーション固有の設定を定めるように構成されている。例えば、識別子は、クライアントサイドのタブレットデバイスドライバが、現在使用中であるホスト型アプリケーションに関連付けられたクライアントサイドのアプリケーション固有の設定を判定でき、クライアントサイドのアプリケーション固有の設定をペン入力タブレットデバイスによって生成されたさらなる入力データに適用でき、かつ/または、クライアントサイドのアプリケーション固有の設定をホストコンピュータシステムへ送信して、ホストサイドのタブレットデバイスドライバにおける対応する設定を更新できるように構成され得る。
【0064】
いくつかの実施形態において、識別子は、クライアントサイドのタブレットデバイスドライバが、アプリケーションのクライアントサイドバージョンについてのクライアントサイドのアプリケーション固有の設定を判定でき、かつ、ホストコンピュータシステムがアプリケーションのホストサイドバージョンを実行しているときに、同じクライアントサイドのアプリケーション固有の設定をペン入力タブレットデバイスによって生成されたさらなる入力データに適用できるように構成されている。
【0065】
いくつかの実施形態において、ホストサイドのクライアントデバイスドライバは、いずれのホスト型アプリケーションが現在使用中であるかを判定する機能性を含む。代替的に、ホストコンピュータシステムは、専用の監視ユーティリティまたは何らかの他のコンポーネントを使用して、この判定を行う。
【0066】
いくつかの実施形態において、識別子は、ホストサイドのデータ転送アプリケーションからクライアントサイドのデータ転送アプリケーションへ送信され、クライアントサイドのデータ転送アプリケーションは、識別子をクライアントサイドのタブレットデバイスドライバへ転送するように構成されている。代替的に、識別子は、専用のドライバ間接続、または監視ユーティリティからクライアントサイドのタブレットデバイスドライバまでなどの何らかの他の専用の接続を介して、ホストコンピュータシステムから、クライアントサイドのタブレットデバイスドライバへ送信される。
【0067】
例示的なコンピューティング環境
【0068】
本明細書に記載した実施形態を、好適にプログラム及び構成されたコンピューティングデバイスによって、個々に、または組み合わせて実装することができる。以下の説明は、本開示の実施形態に従って使用され得る、サーバ、パーソナルコンピュータ、携帯電話、スマートフォン、タブレットコンピュータ、組み込みコンピューティングデバイス、手書きデバイス、及び他の現在利用可能な、またはまだ開発されていないデバイスなどの、コンピューティングデバイスに適用可能である。
【0069】
コンピューティングデバイスは、そのほとんどの基本構成において、通信バスによって接続された、少なくとも1つのプロセッサ及びシステムメモリを含む。厳密なデバイスの構成及びタイプに応じて、システムメモリは、読み取り専用メモリ("ROM")、ランダムアクセスメモリ("RAM")、EEPROM、フラッシュメモリ、または他のメモリ技術などの、揮発性メモリまたは不揮発性メモリであってもよい。当業者は、システムメモリが、通常、直ちにアクセス可能であり、及び/またはプロセッサによって動作を受けている最中である、データ及び/またはプログラムモジュールを記憶していることを認識するであろう。これに関して、プロセッサは、命令の実行をサポートすることによって、コンピューティングデバイスの計算中心としての役割を果たしてもよい。
【0070】
コンピューティングデバイスは、ネットワークを通じて他のデバイスと通信する1つ以上のコンポーネントを備えるネットワークインターフェースを含んでもよい。本開示の実施形態は、ネットワークインターフェースを利用して一般的なネットワークプロトコルを使用する通信を実行する基本サービスにアクセスしてもよい。ネットワークインターフェースはまた、WiFi、2G、3G、4G、LTE、5G、WiMAX、Bluetoothなどの、1つ以上の無線通信プロトコルによって通信するように構成された無線ネットワークインターフェースを含む。
【0071】
コンピューティングデバイスはまた、記憶媒体を含んでもよい。ただし、サービスには、データをローカルの記憶媒体に永続させる手段を含まないコンピューティングデバイスを使用してアクセスしてもよい。したがって、記憶媒体は、任意選択による。いずれにせよ、記憶媒体は、揮発性であっても不揮発性であってもよく、リムーバムルであっても非リムーバブルであってもよく、限定されるものではないが、ハードドライブ、ソリッドステートドライブ、CD-ROM、DVD、または他のディスクストレージ、磁気テープ、磁気ディスクストレージなどのような、情報を記憶することが可能ないかなる技術を使用して実装されてもよい。
【0072】
本明細書で使用される場合、「コンピュータ可読媒体」という用語は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの、情報を記憶することが可能な任意の方法または技術で実装された、揮発性媒体及び不揮発性媒体、並びにリムーバブル媒体及び非リムーバブル媒体を含む。これに関して、システムメモリ及び記憶媒体は、コンピュータ可読媒体の例である。
【0073】
図示を容易にすることと、特許請求される主題の理解に重要ではないことを理由に、図は、多くのコンピューティングデバイスが一般的に有する構成要素の一部を示していない。これに関して、コンピューティングデバイスは、キーボード、キーパッド、マウス、トラックボール、マイクロフォン、ビデオカメラ、タッチパッド、タッチスクリーン、スタイラスなどの、入力デバイスを含んでもよい。このような入力デバイスは、RF、赤外線、シリアル、パラレル、Blutooth、USB、または、無線接続または物理接続を使用する他の好適な接続プロトコルによって、コンピューティングデバイスに結合されてもよい。
【0074】
記載した実施例のいずれにおいても、データを、入力デバイス(例えば、タブレットデバイスまたは他の電子手書きデバイス)によってキャプチャし、その後の処理のために伝送または記憶することができる。処理は、出力デバイスによる提示のために順次復号化され得る符号化データを含んでもよい。入力デバイスを、コンピューティングデバイスから分離して、コンピューティングデバイスに通信可能に結合することができるし、コンピューティングデバイスの一体的な構成要素とすることができる。コンピューティングデバイスはまた、ディスプレイまたはタッチスクリーンなどの、出力デバイスを含んでもよい。出力デバイスを、コンピューティングデバイスから分離して、コンピューティングデバイスに通信可能に結合することができるし、コンピューティングデバイスの一体的な構成要素とすることができる。入力機能性及び出力機能性は、同じ入力/出力デバイス(例えば、タッチスクリーン)に統合されてもよい。現在知られているにせよ、将来開発されるにせよ、任意の好適な入力デバイス、出力デバイス、または組み合わされた入力/出力デバイスを、記載したシステムとともに使用してもよい。
【0075】
一般に、本明細書に記載したコンピューティングデバイスの機能性を、C、C++、COBOL、JAVA(登録商標)、PHP、Perl、Python、Ruby、HTML、CSS、JavaScript、VBScript、ASPX、C#などのMicrosoft.NET(商標)言語などのようなプログラミング言語で記述され得るハードウェア命令またはソフトウェア命令で実施されたコンピューティングロジックで実装してもよい。コンピューティングロジックを、実行可能なプログラムにコンパイルしてもよいし、解釈型プログラミング言語で記述してもよい。一般に、本明細書に記載した機能性を、より大きい処理能力を提供するように複製したり、他のモジュールとマージしたり、サブジュールに分割したりすることができるロジックモジュールとして実装することができる。コンピューティングロジックを、任意のタイプのコンピュータ可読媒体(例えば、メモリまたは記憶媒体などの、非揮発性の媒体)またはコンピュータ記憶デバイスに記憶することができ、また、1つ以上の汎用または専用のプロセッサに記憶して、このプロセッサによって実行することができ、ひいては、本明細書に記載した機能性を提供するように構成された特殊目的のコンピューティングデバイスを作成することができる。
【0076】
拡張形態及び代替形態
【0077】
本明細書に記載したシステム及びデバイスの多くの代替形態が可能である。例えば、個々のモジュールまたはサブシステムを、より多くのモジュールまたはサブシステムに分離したり、より少ないモジュールまたはサブシステムに結合したりすることができる。別の一実施例として、モジュールまたはサブシステムを、省略したり、他のモジュールまたはサブシステムを用いて補ったりすることができる。別の一実施例として、特定のデバイス、モジュール、またはサブシステムによって実行されるものとして示された機能を、代わりに、1つ以上の他のデバイス、モジュール、またはサブシステムによって実行してもよい。本開示におけるいくつかの実施例は、特定のハードウェアコンポーネントを特定の配置で備えるデバイスの説明を含むが、本明細書に記載した技法及びツールを、異なるハードウェアコンポーネント、組み合わせ、または配置に対応するように変更することができる。さらに、本開示におけるいくつかの実施例は、特定の使用シナリオの説明を含むが、本明細書に記載した技法及びツールを、異なる使用シナリオに対応するように変更することができる。ソフトウェアで実装されるものとして記載された機能性を、代わりに、ハードウェアで実装してもよく、その逆も成り立つ。
【0078】
本明細書に記載した技法の多くの代替形態が可能である。例えば、様々な技法における処理段階を、より多くの段階に分離したり、より少ない段階に結合したりすることができる。別の一実施例として、様々な技法における処理段階を、省略したり、他の技法または処理段階を用いて補ったりすることができる。別の一実施例として、特定の順序で行われるものとして記載された処理段階を、代わりに、異なる順序で行うことができる。別の一実施例として、一連のステップで実行されるものとして記載された処理段階を、代わりに、複数のモジュールまたはソフトウェアプロセスが、図示された処理段階のうちの1つ以上を同時に操作して、並行して操作してもよい。別の一実施例として、特定のデバイスまたはモジュールによって実行されるものとして示された処理段階を、代わりに、1つ以上の他のデバイスまたはモジュールによって実行してもよい。
【0079】
この説明において、本開示の例示的な実施形態の完全な理解を提供するために、数多くの具体的詳細を述べた。しかしながら、当業者には、本開示の多くの実施形態が、具体的詳細の一部または全てを伴わずに実践されてもよいことが明らかであろう。いくつかの例において、本開示の様々な態様を不必要に不明瞭にしないために、周知のプロセスステップについては詳細に記載していない。さらに、本開示の実施形態が本明細書に記載した特徴の任意の組み合わせを採用してもよいことが了解されるであろう。
【0080】
例示的な実施形態が図示及び説明されているが、本発明の趣旨及び範囲から逸脱することなく、それらに様々な変更を行うことができることが了解されるであろう。
【0081】
独占的な財産権または特権が特許請求される本発明の実施形態を、以下に規定する。
図1
図2
図3
図4
図5
図6
図7
図8
【国際調査報告】