Class CMBufferCallbacks


  • public final class CMBufferCallbacks
    extends org.moe.natj.c.StructObject
    • Constructor Detail

      • CMBufferCallbacks

        public CMBufferCallbacks()
      • CMBufferCallbacks

        protected CMBufferCallbacks​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • version

        public int version()
        < Must be 0 or 1.
      • setVersion

        public void setVersion​(int value)
        < Must be 0 or 1.
      • refcon

        @Nullable
        public @Nullable org.moe.natj.general.ptr.VoidPtr refcon()
        < Client refcon to be passed to all callbacks (can be NULL, if the callbacks don't require it).
      • setRefcon

        public void setRefcon​(@Nullable
                              @Nullable org.moe.natj.general.ptr.VoidPtr value)
        < Client refcon to be passed to all callbacks (can be NULL, if the callbacks don't require it).
      • getDecodeTimeStamp

        @Nullable
        public @Nullable CMBufferCallbacks.Function_getDecodeTimeStamp getDecodeTimeStamp()
        < This callback is called from CMBufferQueueGetFirstDecodeTimeStamp (once), and from CMBufferQueueGetMinDecodeTimeStamp (multiple times). It should return the decode timestamp of the buffer. If there are multiple samples in the buffer, this callback should return the minimum decode timestamp in the buffer. Can be NULL (CMBufferQueueGetFirstDecodeTimeStamp and CMBufferQueueGetMinDecodeTimeStamp will return kCMTimeInvalid).
      • setGetDecodeTimeStamp

        public void setGetDecodeTimeStamp​(@Nullable
                                          @Nullable CMBufferCallbacks.Function_getDecodeTimeStamp value)
        < This callback is called from CMBufferQueueGetFirstDecodeTimeStamp (once), and from CMBufferQueueGetMinDecodeTimeStamp (multiple times). It should return the decode timestamp of the buffer. If there are multiple samples in the buffer, this callback should return the minimum decode timestamp in the buffer. Can be NULL (CMBufferQueueGetFirstDecodeTimeStamp and CMBufferQueueGetMinDecodeTimeStamp will return kCMTimeInvalid).
      • getPresentationTimeStamp

        @Nullable
        public @Nullable CMBufferCallbacks.Function_getPresentationTimeStamp getPresentationTimeStamp()
        < This callback is called from CMBufferQueueGetFirstPresentationTimeStamp (once) and from CMBufferQueueGetMinPresentationTimeStamp (multiple times). It should return the presentation timestamp of the buffer. If there are multiple samples in the buffer, this callback should return the minimum presentation timestamp in the buffer. Can be NULL (CMBufferQueueGetFirstPresentationTimeStamp and CMBufferQueueGetMinPresentationTimeStamp will return kCMTimeInvalid).
      • setGetPresentationTimeStamp

        public void setGetPresentationTimeStamp​(@Nullable
                                                @Nullable CMBufferCallbacks.Function_getPresentationTimeStamp value)
        < This callback is called from CMBufferQueueGetFirstPresentationTimeStamp (once) and from CMBufferQueueGetMinPresentationTimeStamp (multiple times). It should return the presentation timestamp of the buffer. If there are multiple samples in the buffer, this callback should return the minimum presentation timestamp in the buffer. Can be NULL (CMBufferQueueGetFirstPresentationTimeStamp and CMBufferQueueGetMinPresentationTimeStamp will return kCMTimeInvalid).
      • getDuration

        @NotNull
        public @NotNull CMBufferCallbacks.Function_getDuration getDuration()
        < This callback is called (once) during enqueue and dequeue operations to update the total duration of the queue. Must not be NULL.
      • setGetDuration

        public void setGetDuration​(@NotNull
                                   @NotNull CMBufferCallbacks.Function_getDuration value)
        < This callback is called (once) during enqueue and dequeue operations to update the total duration of the queue. Must not be NULL.
      • isDataReady

        @Nullable
        public @Nullable CMBufferCallbacks.Function_isDataReady isDataReady()
        < This callback is called from CMBufferQueueDequeueIfDataReadyAndRetain, to ask if the buffer that is about to be dequeued is ready. Can be NULL (data will be assumed to be ready).
      • setIsDataReady

        public void setIsDataReady​(@Nullable
                                   @Nullable CMBufferCallbacks.Function_isDataReady value)
        < This callback is called from CMBufferQueueDequeueIfDataReadyAndRetain, to ask if the buffer that is about to be dequeued is ready. Can be NULL (data will be assumed to be ready).
      • compare

        @Nullable
        public @Nullable CMBufferCallbacks.Function_compare compare()
        < This callback is called (multiple times) from CMBufferQueueEnqueue, to perform an insertion sort. Can be NULL (queue will be FIFO).
      • setCompare

        public void setCompare​(@Nullable
                               @Nullable CMBufferCallbacks.Function_compare value)
        < This callback is called (multiple times) from CMBufferQueueEnqueue, to perform an insertion sort. Can be NULL (queue will be FIFO).
      • dataBecameReadyNotification

        @Nullable
        public @Nullable CFStringRef dataBecameReadyNotification()
        < If triggers of type kCMBufferQueueTrigger_WhenDataBecomesReady are installed, the queue will listen for this notification on the head buffer. Can be NULL (then the queue won't listen for it).
      • setDataBecameReadyNotification

        public void setDataBecameReadyNotification​(@Nullable
                                                   @Nullable CFStringRef value)
        < If triggers of type kCMBufferQueueTrigger_WhenDataBecomesReady are installed, the queue will listen for this notification on the head buffer. Can be NULL (then the queue won't listen for it).
      • getSize

        @Nullable
        public @Nullable CMBufferCallbacks.Function_getSize getSize()
        < This callback is called (once) during enqueue and dequeue operation to update the total size of the queue. Can be NULL. Ignored if version < 1.
      • setGetSize

        public void setGetSize​(@Nullable
                               @Nullable CMBufferCallbacks.Function_getSize value)
        < This callback is called (once) during enqueue and dequeue operation to update the total size of the queue. Can be NULL. Ignored if version < 1.