Class APPLESync


  • public class APPLESync
    extends java.lang.Object
    Native bindings to the APPLE_sync extension.

    This extension introduces the concept of "sync objects". Sync objects are a synchronization primitive - a representation of events whose completion status can be tested or waited upon. One specific type of sync object, the "fence sync object", is supported in this extension, and additional types can easily be added in the future.

    Fence sync objects have corresponding fences, which are inserted into the OpenGL command stream at the time the sync object is created. A sync object can be queried for a given condition. The only condition supported for fence sync objects is completion of the corresponding fence command. Fence completion allows applications to request a partial Finish, wherein all commands prior to the fence will be forced to complete before control is returned to the calling process.

    These new mechanisms allow for synchronization between the host CPU and the GPU, which may be accessing the same resources (typically memory), as well as between multiple GL contexts bound to multiple threads in the host CPU.

    Requires GLES 2.0.

    • Method Detail

      • glFenceSyncAPPLE

        public static long glFenceSyncAPPLE​(int condition,
                                            int flags)
      • nglIsSyncAPPLE

        public static boolean nglIsSyncAPPLE​(long sync)
      • glIsSyncAPPLE

        public static boolean glIsSyncAPPLE​(long sync)
      • nglDeleteSyncAPPLE

        public static void nglDeleteSyncAPPLE​(long sync)
      • glDeleteSyncAPPLE

        public static void glDeleteSyncAPPLE​(long sync)
      • nglClientWaitSyncAPPLE

        public static int nglClientWaitSyncAPPLE​(long sync,
                                                 int flags,
                                                 long timeout)
      • glClientWaitSyncAPPLE

        public static int glClientWaitSyncAPPLE​(long sync,
                                                int flags,
                                                long timeout)
      • nglWaitSyncAPPLE

        public static void nglWaitSyncAPPLE​(long sync,
                                            int flags,
                                            long timeout)
      • glWaitSyncAPPLE

        public static void glWaitSyncAPPLE​(long sync,
                                           int flags,
                                           long timeout)
      • nglGetInteger64vAPPLE

        public static void nglGetInteger64vAPPLE​(int pname,
                                                 long params)
      • glGetInteger64vAPPLE

        public static void glGetInteger64vAPPLE​(int pname,
                                                java.nio.LongBuffer params)
      • glGetInteger64APPLE

        public static long glGetInteger64APPLE​(int pname)
      • nglGetSyncivAPPLE

        public static void nglGetSyncivAPPLE​(long sync,
                                             int pname,
                                             int bufSize,
                                             long length,
                                             long values)
      • glGetSyncivAPPLE

        public static void glGetSyncivAPPLE​(long sync,
                                            int pname,
                                            @Nullable
                                            java.nio.IntBuffer length,
                                            java.nio.IntBuffer values)
      • glGetSynciAPPLE

        public static int glGetSynciAPPLE​(long sync,
                                          int pname,
                                          @Nullable
                                          java.nio.IntBuffer length)
      • glGetInteger64vAPPLE

        public static void glGetInteger64vAPPLE​(int pname,
                                                long[] params)
        Array version of: GetInteger64vAPPLE
      • glGetSyncivAPPLE

        public static void glGetSyncivAPPLE​(long sync,
                                            int pname,
                                            @Nullable
                                            int[] length,
                                            int[] values)
        Array version of: GetSyncivAPPLE