タッチスクリーンデバイスでEVIOCGRABの使用を理解していない

タッチスクリーンデバイスでEVIOCGRABの使用を理解していない

私はLinuxカーネルのタッチスクリーンイベントを処理するユーザースペースライブラリを作業しています。

以下のコード行はそれが何であるかを理解していません。EVIOCGRABタッチスクリーンファイル記述子を使用してioctlに渡す目的は何ですか?なぜ必要ですか?

ioctl(fd, EVIOCGRAB, (void *)1);

EVIOCGRABインターネット検索では多くの情報が得られなかったようです。よろしくお願いします。

答え1

EVIOCGRABパラメータが1の場合、デバイスを排他的に試み、成功すると、キャプチャされたデバイスevdevによって生成されたすべてのイベントが所有クライアントにのみ送信されます。厳密に言えば、実際には必要はありません。libevdev出荷書類ビーチlibevdev_grab(これは図書館呼び出しラッパーEVIOCGRAB)説明する

これは一般的に悪い考えです。これをしないでください。

関連情報