com.io7m.jcanephora.lwjgl3

## Interface JCGLImplementationLWJGL3Type

- All Superinterfaces:
    JCGLImplementationType
  All Known Implementing Classes:
    JCGLImplementationLWJGL3

      public interface JCGLImplementationLWJGL3Type
      extends JCGLImplementationType

  LWJGL3-specific interface to JCGL implementations.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.io7m.jfunctional.Pair<JCGLContextType,JCGLContextType>` | `newSharedContextsFrom(long master_context, String master_name, long slave_context, String slave_name)` Construct a new context from the given context.
    `JCGLContextType` | `newUnsharedContextFrom(long context, String name)` Construct a new context from the given context.

- - ### Method Detail

    - #### newUnsharedContextFrom

          JCGLContextType newUnsharedContextFrom(long context,
                                                 String name)
                                          throws JCGLException,
                                                 JCGLExceptionUnsupported,
                                                 JCGLExceptionNonCompliant

      Construct a new context from the given context. The `long` value is a context value returned from `GLFW.glfwCreateWindow(int, int, CharSequence, long, long)`.

      The context is assumed not to be shared with any other context. The implementation trusts that this is the case and has no way to verify otherwise.

      Parameters:
        `context` - An existing context
        `name` - The name assigned to the context, for debugging purposes
      Returns:
        A new context
      Throws:
        `JCGLException` - On errors
        `JCGLExceptionUnsupported` - If the context is of a version that is not supported
        `JCGLExceptionNonCompliant` - If the context violates the OpenGL specification

    - #### newSharedContextsFrom

          com.io7m.jfunctional.Pair<JCGLContextType,JCGLContextType> newSharedContextsFrom(long master_context,
                                                                                           String master_name,
                                                                                           long slave_context,
                                                                                           String slave_name)
                                                                                    throws JCGLException,
                                                                                           JCGLExceptionUnsupported,
                                                                                           JCGLExceptionNonCompliant

      Construct a new context from the given context. The `long` values are context values returned from `GLFW.glfwCreateWindow(int, int, CharSequence, long, long)`.

      The pair of contexts are assumed to be shared with each other. The implementation trusts that this is the case and has no way to verify otherwise.

      On successfully returning, the `master_context` context will be current on the current thread.

      Parameters:
        `master_context` - An existing context
        `master_name` - The name assigned to the master context, for debugging purposes
        `slave_context` - An existing slave context
        `slave_name` - The name assigned to the slave context, for debugging purposes
      Returns:
        A new context
      Throws:
        `JCGLException` - On errors
        `JCGLExceptionUnsupported` - If the context is of a version that is not supported
        `JCGLExceptionNonCompliant` - If the context violates the OpenGL specification

Copyright © 2016 <code@io7m.com> http://io7m.com