javax.media.nativewindow

## Interface UpstreamSurfaceHook

- All Known Subinterfaces:
    UpstreamSurfaceHook.MutableSize

      public interface UpstreamSurfaceHook

  Interface allowing upstream caller to pass lifecycle actions and size info to a `ProxySurface` instance.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `UpstreamSurfaceHook.MutableSize` `UpstreamSurfaceHook` w/ mutable size, allowing it's `ProxySurface` user to resize.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `create(ProxySurface s)` called within `ProxySurface.createNotify()` within lock, before using surface.
    `void` | `destroy(ProxySurface s)` called within `ProxySurface.destroyNotify()` within lock, before clearing fields.
    `int` | `getSurfaceHeight(ProxySurface s)` Returns the height of the upstream surface in pixels, used if `ProxySurface#UPSTREAM_PROVIDES_SIZE` is set.
    `int` | `getSurfaceWidth(ProxySurface s)` Returns the width of the upstream surface in pixels, used if `ProxySurface#UPSTREAM_PROVIDES_SIZE` is set.
    `NativeSurface` | `getUpstreamSurface()` Returns the optional upstream `NativeSurface` if used by implementation, otherwise `null`.

- - ### Method Detail

    - #### create

          void create(ProxySurface s)

      called within `ProxySurface.createNotify()` within lock, before using surface.

    - #### destroy

          void destroy(ProxySurface s)

      called within `ProxySurface.destroyNotify()` within lock, before clearing fields.

    - #### getUpstreamSurface

          NativeSurface getUpstreamSurface()

      Returns the optional upstream `NativeSurface` if used by implementation, otherwise `null`.

      One example is the JOGL EGLWrappedSurface, which might be backed up by a native platform NativeSurface (X11, WGL, CGL, ..).

    - #### getSurfaceWidth

          int getSurfaceWidth(ProxySurface s)

      Returns the width of the upstream surface in pixels, used if `ProxySurface#UPSTREAM_PROVIDES_SIZE` is set.

    - #### getSurfaceHeight

          int getSurfaceHeight(ProxySurface s)

      Returns the height of the upstream surface in pixels, used if `ProxySurface#UPSTREAM_PROVIDES_SIZE` is set.

Copyright 2010 JogAmp Community.