## GstBus GstBus |

## Functions

gboolean | (*GstBusFunc) ()
GstBusSyncReply | (*GstBusSyncHandler) ()
GstBus * | gst_bus_new ()
gboolean | gst_bus_post ()
gboolean | gst_bus_have_pending ()
GstMessage * | gst_bus_peek ()
GstMessage * | gst_bus_pop ()
GstMessage * | gst_bus_pop_filtered ()
GstMessage * | gst_bus_timed_pop ()
GstMessage * | gst_bus_timed_pop_filtered ()
void | gst_bus_set_flushing ()
void | gst_bus_set_sync_handler ()
GstBusSyncReply | gst_bus_sync_signal_handler ()
GSource * | gst_bus_create_watch ()
guint | gst_bus_add_watch_full ()
guint | gst_bus_add_watch ()
gboolean | gst_bus_remove_watch ()
void | gst_bus_disable_sync_message_emission ()
void | gst_bus_enable_sync_message_emission ()
gboolean | gst_bus_async_signal_func ()
void | gst_bus_add_signal_watch ()
void | gst_bus_add_signal_watch_full ()
void | gst_bus_remove_signal_watch ()
GstMessage * | gst_bus_poll ()

## Properties

gboolean | enable-async | Write / Construct Only

## Signals

void | message | Has Details
void | sync-message | Has Details

## Types and Values

struct | GstBus
enum | GstBusFlags
enum | GstBusSyncReply

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstBus

## Includes

    #include <gst/gst.h>

## Description

## Functions

### GstBusFunc ()

    gboolean
    (*GstBusFunc) (GstBus *bus,
                   GstMessage *message,
                   gpointer user_data);

### GstBusSyncHandler ()

    GstBusSyncReply
    (*GstBusSyncHandler) (GstBus *bus,
                          GstMessage *message,
                          gpointer user_data);

### gst_bus_new ()

    GstBus *
    gst_bus_new (void);

### gst_bus_post ()

    gboolean
    gst_bus_post (GstBus *bus,
                  GstMessage *message);

### gst_bus_have_pending ()

    gboolean
    gst_bus_have_pending (GstBus *bus);

### gst_bus_peek ()

    GstMessage *
    gst_bus_peek (GstBus *bus);

### gst_bus_pop ()

    GstMessage *
    gst_bus_pop (GstBus *bus);

### gst_bus_pop_filtered ()

    GstMessage *
    gst_bus_pop_filtered (GstBus *bus,
                          GstMessageType types);

### gst_bus_timed_pop ()

    GstMessage *
    gst_bus_timed_pop (GstBus *bus,
                       GstClockTime timeout);

### gst_bus_timed_pop_filtered ()

    GstMessage *
    gst_bus_timed_pop_filtered (GstBus *bus,
                                GstClockTime timeout,
                                GstMessageType types);

### gst_bus_set_flushing ()

    void
    gst_bus_set_flushing (GstBus *bus,
                          gboolean flushing);

### gst_bus_set_sync_handler ()

    void
    gst_bus_set_sync_handler (GstBus *bus,
                              GstBusSyncHandler func,
                              gpointer user_data,
                              GDestroyNotify notify);

### gst_bus_sync_signal_handler ()

    GstBusSyncReply
    gst_bus_sync_signal_handler (GstBus *bus,
                                 GstMessage *message,
                                 gpointer data);

### gst_bus_create_watch ()

    GSource *
    gst_bus_create_watch (GstBus *bus);

### gst_bus_add_watch_full ()

    guint
    gst_bus_add_watch_full (GstBus *bus,
                            gint priority,
                            GstBusFunc func,
                            gpointer user_data,
                            GDestroyNotify notify);

### gst_bus_add_watch ()

    guint
    gst_bus_add_watch (GstBus *bus,
                       GstBusFunc func,
                       gpointer user_data);

### gst_bus_remove_watch ()

    gboolean
    gst_bus_remove_watch (GstBus *bus);

### gst_bus_disable_sync_message_emission ()

    void
    gst_bus_disable_sync_message_emission (GstBus *bus);

### gst_bus_enable_sync_message_emission ()

    void
    gst_bus_enable_sync_message_emission (GstBus *bus);

### gst_bus_async_signal_func ()

    gboolean
    gst_bus_async_signal_func (GstBus *bus,
                               GstMessage *message,
                               gpointer data);

### gst_bus_add_signal_watch ()

    void
    gst_bus_add_signal_watch (GstBus *bus);

### gst_bus_add_signal_watch_full ()

    void
    gst_bus_add_signal_watch_full (GstBus *bus,
                                   gint priority);

### gst_bus_remove_signal_watch ()

    void
    gst_bus_remove_signal_watch (GstBus *bus);

### gst_bus_poll ()

    GstMessage *
    gst_bus_poll (GstBus *bus,
                  GstMessageType events,
                  GstClockTime timeout);

## Types and Values

### struct GstBus

    struct GstBus;

### enum GstBusFlags

#### Members

GST_BUS_FLUSHING |  |
GST_BUS_FLAG_LAST |  |

### enum GstBusSyncReply

#### Members

GST_BUS_DROP |  |
GST_BUS_PASS |  |
GST_BUS_ASYNC |  |

## Property Details

### The `“enable-async”` property

      “enable-async”             gboolean

Enable async message delivery for bus watches and gst_bus_pop().

Flags: Write / Construct Only

Default value: TRUE

## Signal Details

### The `“message”` signal

    void
    user_function (GstBus     *gstbus,
                   GstMessage *arg1,
                   gpointer    user_data)

Flags: Has Details

### The `“sync-message”` signal

    void
    user_function (GstBus     *gstbus,
                   GstMessage *arg1,
                   gpointer    user_data)

Flags: Has Details