Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XCheckIfEvent(3X11) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XAnyEvent(3X11)

XNextEvent(3X11)

XPutBackEvent(3X11)

XSendEvent(3X11)

XIfEvent(3X11)  —  NEWS-OS Programmer’s Manual

名称

XIfEvent, XCheckIfEvent, XPeekIfEvent − 宣言した手続きでキューをチェックする

形式

XIfEvent(display, event_return, predicate, arg)
      Display ∗display;
      XEvent ∗event_return;
      Bool (∗predicate)();
      XPointer arg; Bool XCheckIfEvent(display, event_return, predicate, arg)
      Display ∗display;
      XEvent ∗event_return;
      Bool (∗predicate)();
      XPointer arg; XPeekIfEvent(display, event_return, predicate, arg)
      Display ∗display;
      XEvent ∗event_return;
      Bool (∗predicate)();
      XPointer arg;

引数

argユーザが判定関数に渡す引数を指定します。

displayX サーバへのコネクションを指定します。

event_return一致したイベントのコピーを返します。 Returns the matched event’s associated structure. 

predicateキューの次のイベントが希望するものと一致したか否か判断するため コールされる関数を指定します。

解説

XIfEvent 関数は、あるイベントについて判定関数が True を返した場合、 つまりキューに一致するイベントが見つかった場合にだけ、終了します。 XIfEvent は、以後のイベントを待って実行をブロックする場合、 出力バッファをフラッシュします。 XIfEvent は、キューから一致するイベントを削除し、 構造体をクライアントが与えた XEvent 構造体にコピーします。 宣言されている手続きが一致するものを見つけた場合、 XCheckIfEvent は一致するイベントをクライアントが与えた XEvent 構造体にコピーし、 True を返します (このイベントは、キューから削除されます)。 一致するものがなければ、 XCheckIfEvent は False を返し、出力バッファはフラッシュされます。 もともとキューにストアされていたイベントは削除されません。 XPeekIfEvent 関数は、指定された判定関数があるイベントについて True を返した場合にだけ、終了します。 判定関数が一致するものを見つけた場合、 XPeekIfEvent は、キューからイベントを削除することなしに、 一致したイベントをクライアントの与えた XEvent 構造体にコピーします。 XPeekIfEvent は、以後のイベントを待って実行をブロックする場合、 出力バッファをフラッシュします。

関連事項

XAnyEvent(3X11), XNextEvent(3X11), XPutBackEvent(3X11) XSendEvent(3X11)
Xlib − C Language X Interface

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026