TNB Library
クラス | 公開型 | 公開メンバ関数 | 静的公開メンバ関数 | 全メンバ一覧
CCeUsbHid クラス

USB-HIDアクセスクラス(CE専用) [詳解]

#include <TnbCeUsbHid.h>

+ CCeUsbHid の継承関係図

クラス

struct  TIoCtrlBlock_CheckDevice
 デバイスチェック. [詳解]
 
struct  TIoCtrlBlock_GetString
 文字列取得. [詳解]
 
struct  TIoCtrlBlock_Read
 読み込み. [詳解]
 
struct  TIoCtrlBlock_Write
 書き込み. [詳解]
 

公開型

enum  EState { OPENNING , CONNECTING , CLOSED }
 状態 [詳解]
 
enum  EStringType { INDEXED = 0 , MANUFACTURER , PRODUCT , SERIALNUMBER }
 文字タイプ [詳解]
 

公開メンバ関数

virtual bool CanReceive (void) const
 [確認] 受信可能確認. [詳解]
 
virtual bool CanSend (void) const
 [確認] 送信可能確認. [詳解]
 
 CCeUsbHid (void)
 コンストラクタ [詳解]
 
virtual EState Check (void) const
 [確認] チェック. [詳解]
 
virtual void Close (void)
 [処理] クローズ. [詳解]
 
const TIoCtrlBlock_CheckDeviceGetDeviceInfo (void) const
 [取得] デバイス情報取得 [詳解]
 
virtual const TPropertyGetProperty (void) const
 [取得] 性能取得. [詳解]
 
virtual size_t GetReceivingDataSize (void) const
 [確認] 受信データ確認. [詳解]
 
CStr GetString (EStringType type, INDEX index=0) const
 [取得] 文字列取得. [詳解]
 
virtual bool IsConnect (void) const
 [確認] 接続確認. [詳解]
 
virtual bool IsOpened (void) const
 [確認] オープン確認. [詳解]
 
virtual bool Open (void)
 [処理] オープン. [詳解]
 
virtual void Purge (void)
 [処理] パージ. [詳解]
 
virtual size_t Receive (size_t size, LPVOID _P)
 [処理] 受信. [詳解]
 
virtual size_t Send (size_t size, LPCVOID P)
 [処理] 送信. [詳解]
 
void SetDeviceIndex (int i)
 [設定] デバイスインデックス設定. [詳解]
 
bool SetReceiveTimeout (DWORD to)
 [設定] 受信タイムアウト時間設定. [詳解]
 
virtual ~CCeUsbHid (void)
 デストラクタ [詳解]
 

静的公開メンバ関数

static bool RegistDriver (WORD vendorId=0x20FC, WORD productId=1, WORD usagePage=0xFF00, WORD usageId=1, LPCTSTR lpszDriverName=_T("USBHID_T.DLL"))
 [設定] ドライバーレジストリ登録. [詳解]
 

詳解

USB-HIDアクセスクラス(CE専用)

専用のデバイスドライバ(USBHID_T.DLL)を使った HID デバイスの入出力をサポートします。
覚え書き
専用のデバイスドライバのレジストリ登録を行うメソッドも用意しています。→ RegistDriver()
必要ファイル
TnbCeUsbHid.h
日付
10/03/11 新規作成
11/06/15 ライブラリへ追加

TnbCeUsbHid.h55 行目に定義があります。

列挙型メンバ詳解

◆ EState

enum EState
inherited

状態

列挙値
OPENNING 

オープン状態

CONNECTING 

オープン&接続状態

CLOSED 

クローズ状態

TnbCommunication.h38 行目に定義があります。

◆ EStringType

文字タイプ

覚え書き
GetString() の第一引数で使用します。
列挙値
INDEXED 

String Index.

MANUFACTURER 

Manufacturer identifer.

PRODUCT 

Product identifer.

SERIALNUMBER 

Serial number.

TnbCeUsbHid.h146 行目に定義があります。

構築子と解体子

◆ CCeUsbHid()

CCeUsbHid ( void  )
explicit

コンストラクタ

TnbCeUsbHid.h159 行目に定義があります。

◆ ~CCeUsbHid()

virtual ~CCeUsbHid ( void  )
virtual

デストラクタ

TnbCeUsbHid.h165 行目に定義があります。

関数詳解

◆ CanReceive()

virtual bool CanReceive ( void  ) const
virtual

[確認] 受信可能確認.

戻り値
true受信可能。
false不可能。

ICommunicationを再実装しています。

TnbCeUsbHid.h277 行目に定義があります。

◆ CanSend()

virtual bool CanSend ( void  ) const
virtual

[確認] 送信可能確認.

戻り値
true送信可能。
false不可能。

ICommunicationを再実装しています。

TnbCeUsbHid.h267 行目に定義があります。

◆ Check()

virtual EState Check ( void  ) const
virtual

[確認] チェック.

状態を確認します。

戻り値
CONNECTINGオープン&接続状態
CLOSEDクローズ状態

ICommunicationを再実装しています。

TnbCeUsbHid.h364 行目に定義があります。

◆ Close()

virtual void Close ( void  )
virtual

[処理] クローズ.

ICommunicationを実装しています。

TnbCeUsbHid.h232 行目に定義があります。

◆ GetDeviceInfo()

const TIoCtrlBlock_CheckDevice & GetDeviceInfo ( void  ) const

[取得] デバイス情報取得

覚え書き
Openしていない時の戻り値は不定です。
戻り値
デバイス情報

TnbCeUsbHid.h405 行目に定義があります。

◆ GetProperty()

virtual const TProperty & GetProperty ( void  ) const
virtual

[取得] 性能取得.

覚え書き
正確な情報は Open後に取得できます。
戻り値
性能情報

ICommunicationを実装しています。

TnbCeUsbHid.h186 行目に定義があります。

◆ GetReceivingDataSize()

virtual size_t GetReceivingDataSize ( void  ) const
virtual

[確認] 受信データ確認.

戻り値
INVALID_SIZE不明。
上記以外受信可能データサイズ。

ICommunicationを再実装しています。

TnbCeUsbHid.h353 行目に定義があります。

◆ GetString()

CStr GetString ( EStringType  type,
INDEX  index = 0 
) const

[取得] 文字列取得.

引数
type文字タイプ.
index文字タイプが INDEXED の場合、指定必須。1以上。
戻り値
Emptyエラー。
上記以外成功。文字列は取得した文字列。

TnbCeUsbHid.h382 行目に定義があります。

◆ IsConnect()

virtual bool IsConnect ( void  ) const
virtual

[確認] 接続確認.

戻り値
true接続中。
false切断中。

ICommunicationを再実装しています。

TnbCeUsbHid.h257 行目に定義があります。

◆ IsOpened()

virtual bool IsOpened ( void  ) const
virtual

[確認] オープン確認.

戻り値
trueオープン中。
falseクローズ中。

ICommunicationを実装しています。

TnbCeUsbHid.h247 行目に定義があります。

◆ Open()

virtual bool Open ( void  )
virtual

[処理] オープン.

戻り値
true成功。
false失敗。

ICommunicationを実装しています。

TnbCeUsbHid.h196 行目に定義があります。

◆ Purge()

virtual void Purge ( void  )
virtual

[処理] パージ.

通信のゴミを浄化

ICommunicationを再実装しています。

TnbCeUsbHid.h373 行目に定義があります。

◆ Receive()

virtual size_t Receive ( size_t  size,
LPVOID  _P 
)
virtual

[処理] 受信.

引数
[in]sizeサイズ。
[out]_Pデータ。size 分のメモリは確保しておく必要があります。
戻り値
INVALID_SIZEエラー。
0受信データなし。
上記以外受信データサイズ。

ICommunicationを実装しています。

TnbCeUsbHid.h329 行目に定義があります。

◆ RegistDriver()

static bool RegistDriver ( WORD  vendorId = 0x20FC,
WORD  productId = 1,
WORD  usagePage = 0xFF00,
WORD  usageId = 1,
LPCTSTR  lpszDriverName = _T("USBHID_T.DLL") 
)
static

[設定] ドライバーレジストリ登録.

引数
vendorIdベンダーID
productIdプロダクトID
usagePageUSAGEページ
usageIdUSAGE ID
lpszDriverNameドライバーDLL名
戻り値
true成功
false失敗.そのドライバーDLLが見つからない

TnbCeUsbHid.h420 行目に定義があります。

◆ Send()

virtual size_t Send ( size_t  size,
LPCVOID  P 
)
virtual

[処理] 送信.

覚え書き
OutputReport長で割り切れないデータサイズを渡すと、足りないところは0でPaddingされます。
引数
sizeサイズ。
Pデータ。
戻り値
INVALID_SIZEエラー。
上記以外送信データサイズ。

ICommunicationを実装しています。

TnbCeUsbHid.h302 行目に定義があります。

◆ SetDeviceIndex()

void SetDeviceIndex ( int  i)

[設定] デバイスインデックス設定.

デフォルトでは1です。通常、変更する必要はありません。

覚え書き
Open() の前に使用してください。
引数
iデバイスインデックス

TnbCeUsbHid.h176 行目に定義があります。

◆ SetReceiveTimeout()

bool SetReceiveTimeout ( DWORD  to)
virtual

[設定] 受信タイムアウト時間設定.

覚え書き
未設定時は 100ms です。
引数
toタイムアウト時間(ms)。
戻り値
true 固定

ICommunicationを実装しています。

TnbCeUsbHid.h288 行目に定義があります。