Exemplo n.º 1
0
PvrEglWindowSurface::~PvrEglWindowSurface()
{
    // Release the PvrQwsDrawable.  If it is bound to an EGLSurface,
    // then it will stay around until a new PvrEglWindowSurface is
    // created for the widget.  If it is not bound to an EGLSurface,
    // it will be destroyed immediately.
    if (drawable && pvrQwsReleaseWindow(drawable))
        pvrQwsDestroyDrawable(drawable);

    delete pdevice;
}
Exemplo n.º 2
0
/* Delete a specific drawable */
static WSEGLError wseglDeleteDrawable(WSEGLDrawableHandle _drawable)
{
    PvrQwsDrawable *drawable = (PvrQwsDrawable *)_drawable;
    if (!drawable || drawable->type == PvrQwsScreen)
        return WSEGL_SUCCESS;
    if (pvrQwsDisplay.numFlipBuffers == 0)
        pvrQwsFreeBuffers(drawable);
    if (pvrQwsReleaseWindow(drawable))
        pvrQwsDestroyDrawable(drawable);
    return WSEGL_SUCCESS;
}