## 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)

Flags: Run First

## See Also

gstcollectpads for historical reasons.