GLXIMPORTCONTEXTEXT

名前
glXImportContextEXT - 他のプロセスの間接レンダリングコンテクストを取り込む

書式
GLXContext glXImportContextEXT( Display *dpy,
	GLXContextID contextID )

引き数

dpy X サーバへの接続を指定する。

contextID
    GLX レンダリングコンテクストを指定する。

説明
glXImportContextEXT は、既存の GLXContext の XID を与える GLXContext を生成する。 この関数を glXCreateContext の代わりに用いることで、他のプロセス と間接共有コンテクストを共有することができる。

X クライアントの間では、サーバ側のコンテクスト情報しか共有することがで きない。クライアント側の状態(ピクセルの格納モード等)を共有することはで きない。したがって、glXImportContextEXT はクライアント側の情報を 格納するためにメモリを割り当てなければならない。このメモリは、 glXFreeContextEXT を呼び出すことによって解放される。

この関数の呼び出しでは、新しい XID は生成されない。この関数は単に、 既存のオブジェクトを取り込みを行うクライアント(Display *)から利用でき るようにするだけである。 どんな XID でもそうであるが、この XID は XID を生成したクライアントが サーバへの接続を切った時や、ID が明示的に削除された時になくなる。 これは XID がなくなる時である点に注意すること。オブジェクトがなくなる のは、XID が無くなり、かつそのコンテクストがどのスレッドにとっても現在 のコンテクストでなくなった時である。

contextID が直接レンダリングコンテクストを指していてもエラーは生 成されないが、glXImportContextEXT は NULL を返す。

glXImportContextEXT は EXT_import_context 機能拡張の一部で あり、コアの GLX コマンド群の一部ではない。 引き数として GLX_EXTENSIONS を指定した呼び出した glXQueryExtensionsString が返す文字列に GLX_EXT_import_context が含まれている場合、機能拡張 EXT_import_context はサポートされている。

エラー
contextID が有効なコンテクストを指していなければ、 GLXBadContext が生成される。

関連項目
glXCreateContext, glXQueryVersion, glXQueryExtensionsString, glXGetContextIDEXT, glXFreeContextEXT