Clapper.Reactable
Description: Reference for Clapper.Reactable

### Interface

# ClapperReactable

since: 0.10

#### Description [src]

    interface Clapper.Reactable : Gst.Object

An interface for creating enhancers that react to the playback and/or events that should influence it.

Available since: 0.10

#### Prerequisite

In order to implement Reactable, your type must inherit from`GstObject`.

#### Instance methods

###### clapper_reactable_get_player

Get the `ClapperPlayer` that this reactable is reacting to.

since: 0.10

###### clapper_reactable_queue_append_sync

A convenience function that within application main thread synchronously appends an `item` to the playback queue of the player that `reactable` belongs to.

since: 0.10

###### clapper_reactable_queue_clear_sync

A convenience function that within application main thread synchronously clears the playback queue of the player that `reactable` belongs to.

since: 0.10

###### clapper_reactable_queue_insert_sync

A convenience function that within application main thread synchronously inserts an `item` to the playback queue position after `after_item` of the player that `reactable` belongs to.

since: 0.10

###### clapper_reactable_queue_remove_sync

A convenience function that within application main thread synchronously removes an `item` from the playback queue of the player that `reactable` belongs to.

since: 0.10

###### clapper_reactable_timeline_insert_sync

A convenience function that within application main thread synchronously inserts `marker` into `timeline`.

since: 0.10

###### clapper_reactable_timeline_remove_sync

A convenience function that within application main thread synchronously removes `marker` from `timeline`.

since: 0.10

#### Interface structure

    struct ClapperReactableInterface {
      GTypeInterface parent_iface;
      void (* state_changed) (
        ClapperReactable* reactable,
        ClapperPlayerState state
      );
      void (* position_changed) (
        ClapperReactable* reactable,
        gdouble position
      );
      void (* speed_changed) (
        ClapperReactable* reactable,
        gdouble speed
      );
      void (* volume_changed) (
        ClapperReactable* reactable,
        gdouble volume
      );
      void (* mute_changed) (
        ClapperReactable* reactable,
        gboolean mute
      );
      void (* played_item_changed) (
        ClapperReactable* reactable,
        ClapperMediaItem* item
      );
      void (* item_updated) (
        ClapperReactable* reactable,
        ClapperMediaItem* item,
        ClapperReactableItemUpdatedFlags flags
      );
      void (* queue_item_added) (
        ClapperReactable* reactable,
        ClapperMediaItem* item,
        guint index
      );
      void (* queue_item_removed) (
        ClapperReactable* reactable,
        ClapperMediaItem* item,
        guint index
      );
      void (* queue_item_repositioned) (
        ClapperReactable* reactable,
        guint before,
        guint after
      );
      void (* queue_cleared) (
        ClapperReactable* reactable
      );
      void (* queue_progression_changed) (
        ClapperReactable* reactable,
        ClapperQueueProgressionMode mode
      );
      void (* message_received) (
        ClapperReactable* reactable,
        GstMessage* msg
      );

    }

No description available.

###### Interface members

`parent_iface` |
    GTypeInterface
| The parent interface structure.
`state_changed` |
    void (* state_changed) (
        ClapperReactable* reactable,
        ClapperPlayerState state
      )
| Player state changed.
`position_changed` |
    void (* position_changed) (
        ClapperReactable* reactable,
        gdouble position
      )
| Player position changed.
`speed_changed` |
    void (* speed_changed) (
        ClapperReactable* reactable,
        gdouble speed
      )
| Player speed changed.
`volume_changed` |
    void (* volume_changed) (
        ClapperReactable* reactable,
        gdouble volume
      )
| Player volume changed.
`mute_changed` |
    void (* mute_changed) (
        ClapperReactable* reactable,
        gboolean mute
      )
| Player mute state changed.
`played_item_changed` |
    void (* played_item_changed) (
        ClapperReactable* reactable,
        ClapperMediaItem* item
      )
| New media item started playing.
`item_updated` |
    void (* item_updated) (
        ClapperReactable* reactable,
        ClapperMediaItem* item,
        ClapperReactableItemUpdatedFlags flags
      )
| An item in queue got updated.
`queue_item_added` |
    void (* queue_item_added) (
        ClapperReactable* reactable,
        ClapperMediaItem* item,
        guint index
      )
| An item was added to the queue.
`queue_item_removed` |
    void (* queue_item_removed) (
        ClapperReactable* reactable,
        ClapperMediaItem* item,
        guint index
      )
| An item was removed from queue.
`queue_item_repositioned` |
    void (* queue_item_repositioned) (
        ClapperReactable* reactable,
        guint before,
        guint after
      )
| An item changed position within queue.
`queue_cleared` |
    void (* queue_cleared) (
        ClapperReactable* reactable
      )
| All items were removed from queue.
`queue_progression_changed` |
    void (* queue_progression_changed) (
        ClapperReactable* reactable,
        ClapperQueueProgressionMode mode
      )
| Progression mode of the queue was changed.
`message_received` |
    void (* message_received) (
        ClapperReactable* reactable,
        GstMessage* msg
      )
| Custom message from user was received on reactables bus.

#### Virtual methods

###### Clapper.Reactable.item_updated

An item in queue got updated.

since: 0.10

###### Clapper.Reactable.message_received

Custom message from user was received on reactables bus.

since: 0.10

###### Clapper.Reactable.mute_changed

Player mute state changed.

since: 0.10

###### Clapper.Reactable.played_item_changed

New media item started playing. All following events (such as position changes) will be related to this `item` from now on.

since: 0.10

###### Clapper.Reactable.position_changed

Player position changed.

since: 0.10

###### Clapper.Reactable.queue_cleared

All items were removed from queue.

since: 0.10

###### Clapper.Reactable.queue_item_added

An item was added to the queue.

since: 0.10

###### Clapper.Reactable.queue_item_removed

An item was removed from queue.

since: 0.10

###### Clapper.Reactable.queue_item_repositioned

An item changed position within queue.

since: 0.10

###### Clapper.Reactable.queue_progression_changed

Progression mode of the queue was changed.

since: 0.10

###### Clapper.Reactable.speed_changed

Player speed changed.

since: 0.10

###### Clapper.Reactable.state_changed

Player state changed.

since: 0.10

###### Clapper.Reactable.volume_changed

Player volume changed.

since: 0.10