Enum Class TagMergeMode

java.lang.Object
java.lang.Enum<TagMergeMode>
org.freedesktop.gstreamer.gst.TagMergeMode
All Implemented Interfaces:
Serializable, Comparable<TagMergeMode>, Constable, Enumeration

@Generated("org.javagi.JavaGI") public enum TagMergeMode extends Enum<TagMergeMode> implements Enumeration

The different tag merging modes are basically replace, overwrite and append, but they can be seen from two directions. Given two taglists: (A) the tags already in the element and (B) the ones that are supplied to the element ( e.g. via gst_tag_setter_merge_tags() / gst_tag_setter_add_tags() or a EventType.TAG), how are these tags merged? In the table below this is shown for the cases that a tag exists in the list (A) or does not exists (!A) and combinations thereof.

merge mode A + B A + !B !A + B !A + !B
REPLACE_ALL B ø B ø
REPLACE B A B ø
APPEND A, B A B ø
PREPEND B, A A B ø
KEEP A A B ø
KEEP_ALL A A ø ø
  • Enum Constant Details

    • UNDEFINED

      public static final TagMergeMode UNDEFINED
      undefined merge mode
    • REPLACE_ALL

      public static final TagMergeMode REPLACE_ALL
      replace all tags (clear list and append)
    • REPLACE

      public static final TagMergeMode REPLACE
      replace tags
    • APPEND

      public static final TagMergeMode APPEND
      append tags
    • PREPEND

      public static final TagMergeMode PREPEND
      prepend tags
    • KEEP

      public static final TagMergeMode KEEP
      keep existing tags
    • KEEP_ALL

      public static final TagMergeMode KEEP_ALL
      keep all existing tags
    • COUNT

      public static final TagMergeMode COUNT
      the number of merge modes
  • Method Details

    • values

      public static TagMergeMode[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static TagMergeMode valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • of

      public static TagMergeMode of(int value)
      Create a new TagMergeMode for the provided value
      Parameters:
      value - the enum value
      Returns:
      the enum for the provided value
    • getValue

      public int getValue()
      Get the numeric value of this enum
      Specified by:
      getValue in interface Enumeration
      Returns:
      the enum value
    • of

      public static TagMergeMode of(MemorySegment address)
      Create a new TagMergeMode for the value in the provided memory address.
      Parameters:
      address - the memory address holding a enum value
      Returns:
      the enum for the value in the provided memory address
    • getType

      public static @Nullable Type getType()
      Get the GType of the TagMergeMode class.
      Returns:
      the GType