Java 类sun.java2d.pipe.hw.ContextCapabilities 实例源码

项目:OpenJSharp    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:OpenJSharp    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:jdk8u-jdk    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:jdk8u-jdk    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:openjdk-jdk10    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:openjdk-jdk10    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:openjdk9    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:openjdk9    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:jdk8u_jdk    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);
    refPConfigInfo(pConfigInfo);
    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:jdk8u_jdk    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:lookaside_java-1.8.0-openjdk    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:lookaside_java-1.8.0-openjdk    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:infobip-open-jdk-8    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:infobip-open-jdk-8    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:jdk8u-dev-jdk    文件:CGLGraphicsConfig.java   
private CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                          long configInfo, int maxTextureSize,
                          ContextCapabilities oglCaps) {
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    this.maxTextureSize = maxTextureSize;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));
}
项目:jdk8u-dev-jdk    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:jdk7-jdk    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:openjdk-source-code-learn    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:OLD-OpenJDK8    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:openjdk-jdk7u-jdk    文件:CGLGraphicsConfig.java   
protected CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));

    // 7200762: Workaround a deadlock by caching the value
    //          A fix for JDK 8 will remove the workaround
    this.cachedMaxTextureSize = _getMaxTextureSize();
}
项目:openjdk-jdk7u-jdk    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:openjdk-icedtea7    文件:CGLGraphicsConfig.java   
protected CGLGraphicsConfig(CGraphicsDevice device, int pixfmt,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device);

    this.pixfmt = pixfmt;
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // CGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new CGLGCDisposerRecord(pConfigInfo));

    // 7200762: Workaround a deadlock by caching the value
    //          A fix for JDK 8 will remove the workaround
    this.cachedMaxTextureSize = _getMaxTextureSize();
}
项目:openjdk-icedtea7    文件:D3DGraphicsDevice.java   
/**
 * Used to construct a Direct3D-enabled GraphicsDevice.
 *
 * @return a D3DGraphicsDevice if it could be created
 * successfully, null otherwise.
 */
public static D3DGraphicsDevice createDevice(int screen) {
    if (!d3dAvailable) {
        return null;
    }

    ContextCapabilities d3dCaps = getDeviceCaps(screen);
    // could not initialize the device successfully
    if ((d3dCaps.getCaps() & CAPS_DEVICE_OK) == 0) {
        if (WindowsFlags.isD3DVerbose()) {
            System.out.println("Could not enable Direct3D pipeline on " +
                               "screen " + screen);
        }
        return null;
    }
    if (WindowsFlags.isD3DVerbose()) {
        System.out.println("Direct3D pipeline enabled on screen " + screen);
    }

    D3DGraphicsDevice gd = new D3DGraphicsDevice(screen, d3dCaps);
    return gd;
}
项目:OpenJSharp    文件:WGLGraphicsConfig.java   
protected WGLGraphicsConfig(Win32GraphicsDevice device, int visualnum,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum);
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // WGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new WGLGCDisposerRecord(pConfigInfo,
                                               device.getScreen()));
}
项目:OpenJSharp    文件:WGLGraphicsConfig.java   
public static WGLGraphicsConfig getConfig(Win32GraphicsDevice device,
                                          int pixfmt)
{
    if (!wglAvailable) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getWGLConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        WGLGetConfigInfo action =
            new WGLGetConfigInfo(device.getScreen(), pixfmt);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new WGLGraphicsConfig(device, pixfmt, cfginfo, caps);
}
项目:OpenJSharp    文件:GLXGraphicsConfig.java   
private GLXGraphicsConfig(X11GraphicsDevice device, int visualnum,
                          long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum, 0, 0,
          (oglCaps.getCaps() & CAPS_DOUBLEBUFFERED) != 0);
    pConfigInfo = configInfo;
    initConfig(getAData(), configInfo);
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);
}
项目:OpenJSharp    文件:GLXGraphicsConfig.java   
public static GLXGraphicsConfig getConfig(X11GraphicsDevice device,
                                          int visualnum)
{
    if (!X11GraphicsEnvironment.isGLXAvailable()) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getGLXConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        GLXGetConfigInfo action =
            new GLXGetConfigInfo(device.getScreen(), visualnum);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new GLXGraphicsConfig(device, visualnum, cfginfo, caps);
}
项目:jdk8u-jdk    文件:WGLGraphicsConfig.java   
protected WGLGraphicsConfig(Win32GraphicsDevice device, int visualnum,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum);
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // WGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new WGLGCDisposerRecord(pConfigInfo,
                                               device.getScreen()));
}
项目:jdk8u-jdk    文件:WGLGraphicsConfig.java   
public static WGLGraphicsConfig getConfig(Win32GraphicsDevice device,
                                          int pixfmt)
{
    if (!wglAvailable) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getWGLConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        WGLGetConfigInfo action =
            new WGLGetConfigInfo(device.getScreen(), pixfmt);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new WGLGraphicsConfig(device, pixfmt, cfginfo, caps);
}
项目:jdk8u-jdk    文件:GLXGraphicsConfig.java   
private GLXGraphicsConfig(X11GraphicsDevice device, int visualnum,
                          long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum, 0, 0,
          (oglCaps.getCaps() & CAPS_DOUBLEBUFFERED) != 0);
    pConfigInfo = configInfo;
    initConfig(getAData(), configInfo);
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);
}
项目:jdk8u-jdk    文件:GLXGraphicsConfig.java   
public static GLXGraphicsConfig getConfig(X11GraphicsDevice device,
                                          int visualnum)
{
    if (!X11GraphicsEnvironment.isGLXAvailable()) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getGLXConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        GLXGetConfigInfo action =
            new GLXGetConfigInfo(device.getScreen(), visualnum);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new GLXGraphicsConfig(device, visualnum, cfginfo, caps);
}
项目:openjdk-jdk10    文件:GLXGraphicsConfig.java   
private GLXGraphicsConfig(X11GraphicsDevice device, int visualnum,
                          long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum, 0, 0,
          (oglCaps.getCaps() & CAPS_DOUBLEBUFFERED) != 0);
    pConfigInfo = configInfo;
    initConfig(getAData(), configInfo);
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);
}
项目:openjdk-jdk10    文件:GLXGraphicsConfig.java   
public static GLXGraphicsConfig getConfig(X11GraphicsDevice device,
                                          int visualnum)
{
    if (!X11GraphicsEnvironment.isGLXAvailable()) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getGLXConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        GLXGetConfigInfo action =
            new GLXGetConfigInfo(device.getScreen(), visualnum);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new GLXGraphicsConfig(device, visualnum, cfginfo, caps);
}
项目:openjdk-jdk10    文件:WGLGraphicsConfig.java   
@SuppressWarnings("deprecation")
protected WGLGraphicsConfig(Win32GraphicsDevice device, int visualnum,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum);
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // WGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new WGLGCDisposerRecord(pConfigInfo));
}
项目:openjdk-jdk10    文件:WGLGraphicsConfig.java   
public static WGLGraphicsConfig getConfig(Win32GraphicsDevice device,
                                          int pixfmt)
{
    if (!wglAvailable) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getWGLConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        WGLGetConfigInfo action =
            new WGLGetConfigInfo(device.getScreen(), pixfmt);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new WGLGraphicsConfig(device, pixfmt, cfginfo, caps);
}
项目:openjdk9    文件:GLXGraphicsConfig.java   
private GLXGraphicsConfig(X11GraphicsDevice device, int visualnum,
                          long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum, 0, 0,
          (oglCaps.getCaps() & CAPS_DOUBLEBUFFERED) != 0);
    pConfigInfo = configInfo;
    initConfig(getAData(), configInfo);
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);
}
项目:openjdk9    文件:GLXGraphicsConfig.java   
public static GLXGraphicsConfig getConfig(X11GraphicsDevice device,
                                          int visualnum)
{
    if (!X11GraphicsEnvironment.isGLXAvailable()) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getGLXConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        GLXGetConfigInfo action =
            new GLXGetConfigInfo(device.getScreen(), visualnum);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new GLXGraphicsConfig(device, visualnum, cfginfo, caps);
}
项目:openjdk9    文件:WGLGraphicsConfig.java   
@SuppressWarnings("deprecation")
protected WGLGraphicsConfig(Win32GraphicsDevice device, int visualnum,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum);
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // WGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new WGLGCDisposerRecord(pConfigInfo,
                                               device.getScreen()));
}
项目:openjdk9    文件:WGLGraphicsConfig.java   
public static WGLGraphicsConfig getConfig(Win32GraphicsDevice device,
                                          int pixfmt)
{
    if (!wglAvailable) {
        return null;
    }

    long cfginfo = 0;
    final String ids[] = new String[1];
    OGLRenderQueue rq = OGLRenderQueue.getInstance();
    rq.lock();
    try {
        // getWGLConfigInfo() creates and destroys temporary
        // surfaces/contexts, so we should first invalidate the current
        // Java-level context and flush the queue...
        OGLContext.invalidateCurrentContext();
        WGLGetConfigInfo action =
            new WGLGetConfigInfo(device.getScreen(), pixfmt);
        rq.flushAndInvokeNow(action);
        cfginfo = action.getConfigInfo();
        if (cfginfo != 0L) {
            OGLContext.setScratchSurface(cfginfo);
            rq.flushAndInvokeNow(new Runnable() {
                public void run() {
                    ids[0] = OGLContext.getOGLIdString();
                }
            });
        }
    } finally {
        rq.unlock();
    }
    if (cfginfo == 0) {
        return null;
    }

    int oglCaps = getOGLCapabilities(cfginfo);
    ContextCapabilities caps = new OGLContextCaps(oglCaps, ids[0]);

    return new WGLGraphicsConfig(device, pixfmt, cfginfo, caps);
}
项目:jdk8u_jdk    文件:WGLGraphicsConfig.java   
protected WGLGraphicsConfig(Win32GraphicsDevice device, int visualnum,
                            long configInfo, ContextCapabilities oglCaps)
{
    super(device, visualnum);
    this.pConfigInfo = configInfo;
    this.oglCaps = oglCaps;
    context = new OGLContext(OGLRenderQueue.getInstance(), this);

    // add a record to the Disposer so that we destroy the native
    // WGLGraphicsConfigInfo data when this object goes away
    Disposer.addRecord(disposerReferent,
                       new WGLGCDisposerRecord(pConfigInfo,
                                               device.getScreen()));
}