Class Bin.BinClass

All Implemented Interfaces:
Proxy
Direct Known Subclasses:
Pipeline.PipelineClass
Enclosing class:
Bin

public static class Bin.BinClass extends Element.ElementClass

Subclasses can override GstBinClass::add_element and GstBinClass::remove_element to update the list of children in the bin.

The GstBinClass::handle_message method can be overridden to implement custom message handling.

GstBinClass::deep_element_added will be called when a new element has been added to any bin inside this bin, so it will also be called if a new child was added to a sub-bin of this bin. GstBin implementations that override this message should chain up to the parent class implementation so the GstBin::deep-element-added signal is emitted on all parents.

  • Constructor Details

    • BinClass

      public BinClass(MemorySegment address)
      Create a BinClass proxy instance for the provided memory address.
      Parameters:
      address - the memory address of the native object
  • Method Details

    • getMemoryLayout

      public static MemoryLayout getMemoryLayout()
      The memory layout of the native struct.
      Returns:
      the memory layout
    • readPool

      public ThreadPool readPool()
      Read the value of the field pool.
      Returns:
      The value of the field pool
    • writePool

      public void writePool(ThreadPool pool)
      Write a value in the field pool.
      Parameters:
      pool - The new value for the field pool
    • overrideElementAdded

      public void overrideElementAdded(Arena arena, @Nullable Method method)
      Override virtual method element_added.
      Parameters:
      method - the method to invoke
    • overrideElementRemoved

      public void overrideElementRemoved(Arena arena, @Nullable Method method)
      Override virtual method element_removed.
      Parameters:
      method - the method to invoke
    • overrideAddElement

      public void overrideAddElement(Arena arena, @Nullable Method method)
      Override virtual method add_element.
      Parameters:
      method - the method to invoke
    • overrideRemoveElement

      public void overrideRemoveElement(Arena arena, @Nullable Method method)
      Override virtual method remove_element.
      Parameters:
      method - the method to invoke
    • overrideHandleMessage

      public void overrideHandleMessage(Arena arena, @Nullable Method method)
      Override virtual method handle_message.
      Parameters:
      method - the method to invoke
    • overrideDoLatency

      public void overrideDoLatency(Arena arena, @Nullable Method method)
      Override virtual method do_latency.
      Parameters:
      method - the method to invoke
    • overrideDeepElementAdded

      public void overrideDeepElementAdded(Arena arena, @Nullable Method method)
      Override virtual method deep_element_added.
      Parameters:
      method - the method to invoke
    • overrideDeepElementRemoved

      public void overrideDeepElementRemoved(Arena arena, @Nullable Method method)
      Override virtual method deep_element_removed.
      Parameters:
      method - the method to invoke