Java 类sun.awt.Win32GraphicsDevice 实例源码

项目:OpenJSharp    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目: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);
}
项目:jdk8u-jdk    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目: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);
}
项目:openjdk-jdk10    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);
    Win32GraphicsDevice gd = graphicsConfig.getDevice();
    scaleX = gd.getDefaultScaleX();
    scaleY = gd.getDefaultScaleY();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目: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);
}
项目:openjdk-jdk10    文件:WGLSurfaceData.java   
protected WGLSurfaceData(WComponentPeer peer, WGLGraphicsConfig gc,
                         ColorModel cm, int type)
{
    super(gc, cm, type);
    this.peer = peer;
    this.graphicsConfig = gc;
    Win32GraphicsDevice device = gc.getDevice();
    this.scaleX = type == TEXTURE ? 1 : device.getDefaultScaleX();
    this.scaleY = type == TEXTURE ? 1 : device.getDefaultScaleY();

    long pConfigInfo = gc.getNativeConfigInfo();
    long hwnd = peer != null ? peer.getHWnd() : 0L;

    initOps(pConfigInfo, peer, hwnd);
}
项目:openjdk9    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);
    Win32GraphicsDevice gd = graphicsConfig.getDevice();
    scaleX = gd.getDefaultScaleX();
    scaleY = gd.getDefaultScaleY();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目: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);
}
项目:openjdk9    文件:WGLSurfaceData.java   
protected WGLSurfaceData(WComponentPeer peer, WGLGraphicsConfig gc,
                         ColorModel cm, int type)
{
    super(gc, cm, type);
    this.peer = peer;
    this.graphicsConfig = gc;
    Win32GraphicsDevice device = gc.getDevice();
    this.scaleX = type == TEXTURE ? 1 : device.getDefaultScaleX();
    this.scaleY = type == TEXTURE ? 1 : device.getDefaultScaleY();

    long pConfigInfo = gc.getNativeConfigInfo();
    long hwnd = peer != null ? peer.getHWnd() : 0L;

    initOps(pConfigInfo, peer, hwnd);
}
项目:jdk8u_jdk    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);
    Win32GraphicsDevice gd = graphicsConfig.getDevice();
    scaleX = gd.getDefaultScaleX();
    scaleY = gd.getDefaultScaleY();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目: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    文件:WGLSurfaceData.java   
protected WGLSurfaceData(WComponentPeer peer, WGLGraphicsConfig gc,
                         ColorModel cm, int type)
{
    super(gc, cm, type);
    this.peer = peer;
    this.graphicsConfig = gc;
    Win32GraphicsDevice device = gc.getDevice();
    this.scaleX = type == TEXTURE ? 1 : device.getDefaultScaleX();
    this.scaleY = type == TEXTURE ? 1 : device.getDefaultScaleY();

    long pConfigInfo = gc.getNativeConfigInfo();
    long hwnd = peer != null ? peer.getHWnd() : 0L;

    initOps(pConfigInfo, peer, hwnd);
}
项目:lookaside_java-1.8.0-openjdk    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:lookaside_java-1.8.0-openjdk    文件: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()));
}
项目:lookaside_java-1.8.0-openjdk    文件: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);
}
项目:infobip-open-jdk-8    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:infobip-open-jdk-8    文件: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()));
}
项目:infobip-open-jdk-8    文件: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-dev-jdk    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:jdk8u-dev-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-dev-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);
}
项目:jdk7-jdk    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:jdk7-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()));
}
项目:jdk7-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);
}
项目:openjdk-source-code-learn    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:openjdk-source-code-learn    文件: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()));
}
项目:openjdk-source-code-learn    文件: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);
}
项目:OLD-OpenJDK8    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:OLD-OpenJDK8    文件: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()));
}
项目:OLD-OpenJDK8    文件: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);
}
项目:openjdk-jdk7u-jdk    文件:GDIWindowSurfaceData.java   
private GDIWindowSurfaceData(WComponentPeer peer, SurfaceType sType) {
    super(sType, peer.getDeviceColorModel());
    ColorModel cm = peer.getDeviceColorModel();
    this.peer = peer;
    int rMask = 0, gMask = 0, bMask = 0;
    int depth;
    switch (cm.getPixelSize()) {
    case 32:
    case 24:
        if (cm instanceof DirectColorModel) {
            depth = 32;
        } else {
            depth = 24;
        }
        break;
    default:
        depth = cm.getPixelSize();
    }
    if (cm instanceof DirectColorModel) {
        DirectColorModel dcm = (DirectColorModel)cm;
        rMask = dcm.getRedMask();
        gMask = dcm.getGreenMask();
        bMask = dcm.getBlueMask();
    }
    this.graphicsConfig =
        (Win32GraphicsConfig) peer.getGraphicsConfiguration();
    this.solidloops = graphicsConfig.getSolidLoops(sType);

    Win32GraphicsDevice gd =
        (Win32GraphicsDevice)graphicsConfig.getDevice();
    initOps(peer, depth, rMask, gMask, bMask, gd.getScreen());
    setBlitProxyKey(graphicsConfig.getProxyKey());
}
项目:openjdk-jdk7u-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()));
}
项目:openjdk-jdk7u-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);
}
项目:j3d-core    文件:Win32NativeConfigTemplate3D.java   
@Override
   boolean hasSceneAntialiasingMultisample(Canvas3D c3d) {
GraphicsConfiguration gc = c3d.graphicsConfiguration;

       Win32GraphicsDevice gd =
    (Win32GraphicsDevice)((Win32GraphicsConfig)gc).getDevice();
int screen = NativeScreenInfo.getNativeScreenInfo().getScreen(gd);
/* Fix to issue 77 */ 
return isSceneAntialiasingMultisampleAvailable(c3d.fbConfig, c3d.offScreen, screen);
   }