XStoreBytes(3X11) — NEWS-OS Programmer’s Manual
名称
XStoreBytes, XStoreBuffer, XFetchBytes, XFetchBuffer, XRotateBuffers − カットおよびペーストバッファを操作する
形式
XStoreBytes(display, bytes, nbytes)
Display ∗display;
char ∗bytes;
int nbytes;
XStoreBuffer(display, bytes, nbytes, buffer)
Display ∗display;
char ∗bytes;
int nbytes;
int buffer; char ∗XFetchBytes(display, nbytes_return)
Display ∗display;
int ∗nbytes_return; char ∗XFetchBuffer(display, nbytes_return, buffer)
Display ∗display;
int ∗nbytes_return;
int buffer; XRotateBuffers(display, rotate)
Display ∗display;
int rotate;
引数
bufferバイトをストアしたいバッファまたは、ストアされているデータを返してほし いバッファを指定します。
bytesバイト列を指定します。それは必ずしも ASCII 列またはナルで終わるバイト列 である必要はありません。
displayX サーバへのコネクションを指定します。
nbytesストアするバイト数を指定します。
nbytes_return
バッファ内のバイト数を返します。
rotateカットバッファをどの位ローテートするのか指定します。
解説
カットバッファの内容はテキストである必要はないので、 0 バイトを含んで いるかもしれないことに注意して下さい。 カットバッファの内容は、後で、 XFetchBytes. を呼び出すクライアントにより検索することができます。 XStoreBytes は、 BadAlloc エラーを生じることがあります。 バッファのプロパティが作成されていない場合は、結果として BadAtom エラーが生じます。 XStoreBuffer は、 BadAlloc および BadAtom エラーを生じることがあります。 XFetchBytes 関数は、 バッファがデータを含んでいる場合は、 nbytes_return 引数中の バイト数を返します。 そうでない場合は、 XFetchBytes 関数は NULL を返し、 nbytes を零に設定します。 記憶領域の適量が割当てられ、そのポインタが返されます。 クライアントは、この記憶領域に用がなくなったら、 XFree. によって解放しなければなりません。 カットバッファは、テキストのみを含んでいるとは限らないので、 零バイトを含んでいるかもしれないし、ナル・バイトで終わらない可能性も あるということに注意して下さい。 XFetchBuffer 関数は、バッファ内に何もデータがない場合は、 nbytes_return 引数へ 零を返します。 XFetchBuffer は、 BadValue エラーを生じることがあります。 XRotateBuffers 関数は、 例えばバッファ 0 がバッファ n に、 バッファ 1 が n + 1 mod 8 になるように、カットバッファをローテートします。 このカットバッファのナンバリングは、ディスプレイに対しグローバルです。 なお、 XRotateBuffers は、 8 つのバッファのどれかが作成されていない場合は、 BadMatch を生じることに注意して下さい。 XRotateBuffers は、 BadMatch エラーを生じることがあります。
診断
BadAlloc サーバが要求されたリソースまたはサーバメモリの割当てに失敗した。
BadAtom Atom 引数の値が定義された Atom を指さない。
BadMatch ある引数またはひと組の引数の型および範囲は正しいが、 リクエストにより要求されたその他の何かが一致しない。
BadValue ある数値が許容範囲を超えた。 引数の値の範囲が明示されない限り、 引数の型によって決まる最大の範囲まで指定可能です。 選択形式の引数も、このエラーを生じることがあります。
関連事項
XFree(3X11)
Xlib − C Language X Interface
NEWS-OSRelease 4.1C