## GstAggregatorPad GstAggregatorPad — GstPad subclass for pads managed by GstAggregator |

## Functions

GstBuffer * | gst_aggregator_pad_pop_buffer ()
GstBuffer * | gst_aggregator_pad_peek_buffer ()
gboolean | gst_aggregator_pad_drop_buffer ()
gboolean | gst_aggregator_pad_is_eos ()
gboolean | gst_aggregator_pad_has_buffer ()

## Properties

gboolean | emit-signals | Read / Write

## Signals

void | buffer-consumed | Run First

## Types and Values

struct | GstAggregatorPad
struct | GstAggregatorPadClass

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstPad
                    ╰── GstAggregatorPad

## Includes

    #include <gst/base/base.h>

## Description

Pads managed by a GstAggregor subclass.

This class used to live in gst-plugins-bad and was moved to core.

## Functions

### gst_aggregator_pad_pop_buffer ()

    GstBuffer *
    gst_aggregator_pad_pop_buffer (GstAggregatorPad *pad);

Steal the ref to the buffer currently queued in `pad` .

#### Parameters

pad | the pad to get buffer from |

#### Returns

The buffer in `pad` or NULL if no buffer was queued. You should unref the buffer after usage.

[transfer full]

### gst_aggregator_pad_peek_buffer ()

    GstBuffer *
    gst_aggregator_pad_peek_buffer (GstAggregatorPad *pad);

#### Parameters

pad | the pad to get buffer from |

#### Returns

A reference to the buffer in `pad` or NULL if no buffer was queued. You should unref the buffer after usage.

[transfer full]

### gst_aggregator_pad_drop_buffer ()

    gboolean
    gst_aggregator_pad_drop_buffer (GstAggregatorPad *pad);

Drop the buffer currently queued in `pad` .

#### Parameters

pad | the pad where to drop any pending buffer |

#### Returns

TRUE if there was a buffer queued in `pad` , or FALSE if not.

### gst_aggregator_pad_is_eos ()

    gboolean
    gst_aggregator_pad_is_eos (GstAggregatorPad *pad);

#### Parameters

pad | an aggregator pad |

#### Returns

`TRUE` if the pad is EOS, otherwise `FALSE`.

### gst_aggregator_pad_has_buffer ()

    gboolean
    gst_aggregator_pad_has_buffer (GstAggregatorPad *pad);

This checks if a pad has a buffer available that will be returned by a call to `gst_aggregator_pad_peek_buffer()` or `gst_aggregator_pad_pop_buffer()`.

#### Parameters

pad | the pad to check the buffer on |

#### Returns

`TRUE` if the pad has a buffer available as the next thing.

Since: 1.14.1

## Types and Values

### struct GstAggregatorPad

    struct GstAggregatorPad {
      /* Protected by the OBJECT_LOCK */
      GstSegment segment;
    };

The implementation the GstPad to use with GstAggregator

#### Members

GstSegment `segment`; | last segment received. |

### struct GstAggregatorPadClass

    struct GstAggregatorPadClass {
      GstPadClass   parent_class;

      GstFlowReturn (*flush)       (GstAggregatorPad * aggpad, GstAggregator * aggregator);
      gboolean      (*skip_buffer) (GstAggregatorPad * aggpad, GstAggregator * aggregator, GstBuffer * buffer);
    };

#### Members

`flush` () | Optional Called when the pad has received a flush stop, this is the place to flush any information specific to the pad, it allows for individual pads to be flushed while others might not be. |
`skip_buffer` () | Optional Called before input buffers are queued in the pad, return `TRUE` if the buffer should be skipped. |

## Property Details

### The `“emit-signals”` property

      “emit-signals”             gboolean

Enables the emission of signals such as “buffer-consumed”

Flags: Read / Write

Default value: FALSE

Since: 1.16

## Signal Details

### The `“buffer-consumed”` signal

    void
    user_function (GstAggregatorPad *gstaggregatorpad,
                   GstBuffer        *arg1,
                   gpointer          user_data)

Signals that a buffer was consumed. As aggregator pads store buffers in an internal queue, there is no direct match between input and output buffers at any given time. This signal can be useful to forward metas such as GstVideoTimeCodeMeta or GstVideoCaptionMeta at the right time.

#### Parameters

user_data | user data set when the signal handler was connected. |

Flags: Run First

Since: 1.16

## See Also

gstcollectpads for historical reasons.