I am very new to GLX, i have created a xwindow as a drawable, i have a glxpixmap, i need to copy a bytearray data to this pixmap.
Is there any mechanism by which i can do this.
I am very new to GLX, i have created a xwindow as a drawable, i have a glxpixmap, i need to copy a bytearray data to this pixmap.
Is there any mechanism by which i can do this.
Last edited by Tan_has; 02-05-2013 at 08:52 PM.
Can you show some code ?
Have you looked at XCopyArea?
Also, if you don't need the window, you can create your GLXContext to target the pixmap directly.
Thanks!!!
I looked at XCopyArea, it says both drawables to be of same root window, my drawable is window.
I did one thing now by creating a XcreatepixmapfromBitmap, then copying, but it looks it would be very costly. My code architecture is such that i can use window only as drawable. So looking out for some thing which can directly copy the data into this window.
I dug up a Green Book ("OpenGL Programming for the X Window System") and it describes rendering into XPixmaps (not what you want exactly, but potentially useful).
Basically, glXCreateContext, XCreatePixmap to create an XPixmap, pass that to glXCreateGLXPixmap to create a GLXPixmap wrapper around the XPixmap, and then glXMakeCurrent on the GLXPixmap to make it active for rendering.
You might be able to use this to copy window data off to a PBO or somewhere, switch to the GLXPixmap, and then copy the data back to it. Or possibly copy between contexts with sharing enabled.
Here's the paraphrased code snippets:
Code cpp:cx = glXCreateContext( dpy, vi, NULL, False ); if ( !cx ) ouch; pmap = XCreatePixmap( dpy, RootWindow( dpy, vi->screen ), imageWidth, imageHeight, vi->depth ); glxpmap = GLXCreateGLXPixmap( dpy, vi, pmap ); glXMakeCurrent( dpy, glxpmap, cx );
Thanks!!!...
i am trying by making making current context to GLX ,at that time my process is giving a segmentation fault.
I also tried by creating a ximage and then putting that image into the pixmap and then doing a xcopy to the window, but my xcopy is giving a bad request.
Any Idea when XCopyArea generates bad request ?
Are you certain than the pmap and glxpmap returned values are valids ?
(the requested vi->depth can for example not to be handled by the XCreatePixmap and/or GLXCreateGLXPixmap funcs)
[I doubt that this can be this but in case of ...]
Last edited by The Little Body; 02-18-2013 at 05:56 PM.
@+
Yannoo
Yes it looks to me that pmap generated is fine, is there any way to cross check that ?
Where is your XCopyArea ?
Can you give a little more code ?
(something such as http://www-h.eng.cam.ac.uk/help/tpl/...R5/node25.html for example)
@+
Yannoo