Interface PadChainListFunction

All Superinterfaces:
FunctionPointer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface @Generated("org.javagi.JavaGI") public interface PadChainListFunction extends FunctionPointer

Functional interface declaration of the PadChainListFunction callback.

See Also:
  • Method Details

    • run

      FlowReturn run(Pad pad, @Nullable GstObject parent, BufferList list)

      A function that will be called on sinkpads when chaining buffer lists. The function typically processes the data contained in the buffer list and either consumes the data or passes it on to the internally linked pad(s).

      The implementer of this function receives a refcount to list and should gst_buffer_list_unref() when the list is no longer needed.

      When a chainlist function detects an error in the data stream, it must post an error on the bus and return an appropriate GstFlowReturn value.

      Parameters:
      pad - the sink GstPad that performed the chain.
      parent - the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, parent is guaranteed to be not-null and remain valid during the execution of this function.
      list - the GstBufferList that is chained, not null.
      Returns:
      GST_FLOW_OK for success
    • upcall

      default int upcall(MemorySegment pad, MemorySegment parent, MemorySegment list)
      The upcall method is called from native code. The parameters are marshaled and run(Pad, GstObject, BufferList) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(MemorySegment, MemorySegment, MemorySegment) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer