|
AM Daemon ライブラリリファレンス
|
USBデバイス関連処理を提供するMonostateクラス。 [詳解]
#include <UsbDevice.h>
公開メンバ関数 | |
| bool | startReconnect (std::uint16_t vendorId, std::uint16_t productId) |
| USBデバイスの再検出処理を開始する。 [詳解] | |
| bool | isReconnectBusy () const |
| USBデバイスの再検出処理中であるか否かを取得する。 [詳解] | |
| UsbDeviceReconnectResult | getLastReconnectResult () const |
| 直近のUSBデバイス再検出処理結果を取得する。 [詳解] | |
USBデバイス関連処理を提供するMonostateクラス。
Core クラスのメンバ関数 Core::execute 呼び出しによって内容が更新される。
このクラスはUSBデバイス全般に対する処理を行う。 セガ標準 USB I/O ボードへの入出力処理については、このクラスではなく UsbIO クラスやその関連クラスを用いること。
| bool amdaemon::UsbDevice::startReconnect | ( | std::uint16_t | vendorId, |
| std::uint16_t | productId | ||
| ) |
USBデバイスの再検出処理を開始する。
| [in] | vendorId | 対象デバイスのベンダーID。 |
| [in] | productId | 対象デバイスのプロダクトID。 |
| true | 処理の開始に成功した場合。 |
| false | 処理の開始に失敗したか、既に処理中である場合。 |
この関数は再検出処理の開始のみを行う。 この関数の呼び出し後にメンバ関数 isReconnectBusy を用いて 再検出処理中であるか否かを定期的に確認し、処理完了後にメンバ関数 getLastReconnectResult を用いて処理結果を確認すること。
再検出処理には最長で 50 秒程度掛かる場合がある。
メンバ関数 isReconnectBusy が true を返す状態でこの関数を呼び出すと、 何も行わずに false を返す。
Daemonプロセスが処理完了するまで呼び出し元スレッドをブロックする。
| bool amdaemon::UsbDevice::isReconnectBusy | ( | ) | const |
USBデバイスの再検出処理中であるか否かを取得する。
| true | 再検出処理中である場合。 |
| false | 再検出処理中ではない場合。 |
メンバ関数 startReconnect の呼び出しに成功すると true を返すようになる。
再検出処理が完了すると false を返すようになり、同時にメンバ関数 getLastReconnectResult で処理結果を取得できるようになる。
| UsbDeviceReconnectResult amdaemon::UsbDevice::getLastReconnectResult | ( | ) | const |
直近のUSBデバイス再検出処理結果を取得する。
メンバ関数 isReconnectBusy の戻り値が true から false に変化したタイミングで、この関数の戻り値も更新される。
1.8.11