processing.opengl

## Class PSurfaceJOGL

- java.lang.Object
- - processing.opengl.PSurfaceJOGL

- All Implemented Interfaces:
    PSurface

      public class PSurfaceJOGL
      extends Object
      implements PSurface

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static com.jogamp.opengl.GLProfile` | `profile` Selected GL profile

    - ### Fields inherited from interface processing.core.PSurface

      `MIN_WINDOW_HEIGHT, MIN_WINDOW_WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PSurfaceJOGL(PGraphics graphics)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Component` | `getComponent()`
    `float` | `getPixelScale()`
    `void` | `hideCursor()`
    `void` | `initFrame(PApplet sketch)`
    `void` | `initOffscreen(PApplet sketch)`
    `boolean` | `isStopped()`
    `void` | `pauseThread()` On the next trip through the animation thread, things should go sleepy-bye.
    `void` | `placePresent(int stopColor)`
    `void` | `placeWindow(int[] location, int[] editorLocation)`
    `void` | `requestFocus()`
    `void` | `resumeThread()`
    `void` | `setCursor(int kind)`
    `void` | `setCursor(PImage image, int hotspotX, int hotspotY)`
    `void` | `setFrameRate(float fps)`
    `void` | `setResizable(boolean resizable)` Set true if we want to resize things (default is not resizable)
    `void` | `setSize(int width, int height)`
    `void` | `setSmooth(int level)` Sometimes smoothing must be set at the drawing surface level not just inside the renderer itself.
    `void` | `setTitle(String title)` Set the window (and dock, or whatever necessary) title.
    `void` | `setupExternalMessages()`
    `void` | `setVisible(boolean visible)` Show or hide the window.
    `void` | `showCursor()`
    `void` | `startThread()` Start the animation thread
    `boolean` | `stopThread()` Stop the animation thread (set it null)

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### profile

          public static com.jogamp.opengl.GLProfile profile

      Selected GL profile

  - ### Constructor Detail

    - #### PSurfaceJOGL

          public PSurfaceJOGL(PGraphics graphics)

  - ### Method Detail

    - #### initOffscreen

          public void initOffscreen(PApplet sketch)

      Specified by:
        `initOffscreen` in interface `PSurface`

    - #### initFrame

          public void initFrame(PApplet sketch)

      Specified by:
        `initFrame` in interface `PSurface`

    - #### setTitle

          public void setTitle(String title)

      Description copied from interface: `PSurface`
      Set the window (and dock, or whatever necessary) title.
      Specified by:
        `setTitle` in interface `PSurface`

    - #### setVisible

          public void setVisible(boolean visible)

      Description copied from interface: `PSurface`
      Show or hide the window.
      Specified by:
        `setVisible` in interface `PSurface`

    - #### setResizable

          public void setResizable(boolean resizable)

      Description copied from interface: `PSurface`
      Set true if we want to resize things (default is not resizable)
      Specified by:
        `setResizable` in interface `PSurface`

    - #### placeWindow

          public void placeWindow(int[] location,
                                  int[] editorLocation)

      Specified by:
        `placeWindow` in interface `PSurface`

    - #### placePresent

          public void placePresent(int stopColor)

      Specified by:
        `placePresent` in interface `PSurface`

    - #### setupExternalMessages

          public void setupExternalMessages()

      Specified by:
        `setupExternalMessages` in interface `PSurface`

    - #### startThread

          public void startThread()

      Description copied from interface: `PSurface`
      Start the animation thread
      Specified by:
        `startThread` in interface `PSurface`

    - #### pauseThread

          public void pauseThread()

      Description copied from interface: `PSurface`
      On the next trip through the animation thread, things should go sleepy-bye. Does not pause the thread immediately because that needs to happen on the animation thread itself, so fires on the next trip through draw().
      Specified by:
        `pauseThread` in interface `PSurface`

    - #### resumeThread

          public void resumeThread()

      Specified by:
        `resumeThread` in interface `PSurface`

    - #### stopThread

          public boolean stopThread()

      Description copied from interface: `PSurface`
      Stop the animation thread (set it null)
      Specified by:
        `stopThread` in interface `PSurface`
      Returns:
        false if already stopped

    - #### isStopped

          public boolean isStopped()

      Specified by:
        `isStopped` in interface `PSurface`

    - #### setSize

          public void setSize(int width,
                              int height)

      Specified by:
        `setSize` in interface `PSurface`

    - #### getPixelScale

          public float getPixelScale()

    - #### getComponent

          public Component getComponent()

    - #### setSmooth

          public void setSmooth(int level)

      Description copied from interface: `PSurface`
      Sometimes smoothing must be set at the drawing surface level not just inside the renderer itself.
      Specified by:
        `setSmooth` in interface `PSurface`

    - #### setFrameRate

          public void setFrameRate(float fps)

      Specified by:
        `setFrameRate` in interface `PSurface`

    - #### requestFocus

          public void requestFocus()

    - #### setCursor

          public void setCursor(int kind)

      Specified by:
        `setCursor` in interface `PSurface`

    - #### setCursor

          public void setCursor(PImage image,
                                int hotspotX,
                                int hotspotY)

      Specified by:
        `setCursor` in interface `PSurface`

    - #### showCursor

          public void showCursor()

      Specified by:
        `showCursor` in interface `PSurface`

    - #### hideCursor

          public void hideCursor()

      Specified by:
        `hideCursor` in interface `PSurface`