OpenCascade OpenGLDriver

Halo Everybody,

ich write a new fuction for the V3_View. It should capture the OpenGL Buffer.
Something like this:

void EXPORT call_togl_ReadPixels( CALL_DEF_VIEW *aview, int theWidth,int theHeight, unsigned int * theBuffer)
{
CMN_KEY_DATA data;
TsmGetWSAttri (aview->WsId, WSWindow, &data);
glReadPixels (0, 0, theWidth, theHeight, GL_RGBA, GL_UNSIGNED_BYTE, theBuffer);
}

It works sometimes, but.......
The point is, I have a lot of View's. What is the right command to say, what view (aview) is to capture ????

Thank you
Dmitry

Dmitry Khabi's picture

void EXPORT call_togl_ReadPixels( CALL_DEF_VIEW *aview, int theWidth,int theHeight, unsigned int * theBuffer)
{
CMN_KEY_DATA data;
TsmGetWSAttri (aview->WsId, WSWindow, &data);
if (TxglWinset (call_thedisplay, (Window) data.ldata) == TSuccess)
{
glReadPixels (0, 0, theWidth, theHeight, GL_RGBA, GL_UNSIGNED_BYTE, theBuffer);
}
}